@inobeta/ui 18.0.1-build.1722007687

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 (369) hide show
  1. package/README.md +1 -0
  2. package/_index.scss +1 -0
  3. package/esm2022/inobeta-ui.mjs +5 -0
  4. package/esm2022/public_api.mjs +17 -0
  5. package/esm2022/src/app/inobeta-ui/core/filter.pipe.mjs +23 -0
  6. package/esm2022/src/app/inobeta-ui/core/index.mjs +2 -0
  7. package/esm2022/src/app/inobeta-ui/http/auth/guard.service.mjs +157 -0
  8. package/esm2022/src/app/inobeta-ui/http/auth/login.service.mjs +137 -0
  9. package/esm2022/src/app/inobeta-ui/http/auth/login.service.stub.spec.mjs +20 -0
  10. package/esm2022/src/app/inobeta-ui/http/auth/session.model.mjs +16 -0
  11. package/esm2022/src/app/inobeta-ui/http/http/auth.interceptor.mjs +79 -0
  12. package/esm2022/src/app/inobeta-ui/http/http/error.interceptor.mjs +76 -0
  13. package/esm2022/src/app/inobeta-ui/http/http/loader.interceptor.mjs +45 -0
  14. package/esm2022/src/app/inobeta-ui/http/http/loading-skeleton-container.component.mjs +36 -0
  15. package/esm2022/src/app/inobeta-ui/http/http/loading-skeleton.component.mjs +34 -0
  16. package/esm2022/src/app/inobeta-ui/http/http/loading-skeleton.directive.mjs +66 -0
  17. package/esm2022/src/app/inobeta-ui/http/http/loading-skeleton.directive.stub.spec.mjs +22 -0
  18. package/esm2022/src/app/inobeta-ui/http/http/messages.decorator.mjs +42 -0
  19. package/esm2022/src/app/inobeta-ui/http/http/role-check.directive.mjs +45 -0
  20. package/esm2022/src/app/inobeta-ui/http/http/spinner-loading.component.mjs +28 -0
  21. package/esm2022/src/app/inobeta-ui/http/http/spinner-loading.stub.spec.mjs +15 -0
  22. package/esm2022/src/app/inobeta-ui/http/http-test.module.mjs +35 -0
  23. package/esm2022/src/app/inobeta-ui/http/http.module.mjs +178 -0
  24. package/esm2022/src/app/inobeta-ui/http/index.mjs +26 -0
  25. package/esm2022/src/app/inobeta-ui/http/store/index.mjs +11 -0
  26. package/esm2022/src/app/inobeta-ui/http/store/loader/actions.mjs +7 -0
  27. package/esm2022/src/app/inobeta-ui/http/store/loader/interfaces.mjs +2 -0
  28. package/esm2022/src/app/inobeta-ui/http/store/loader/reducers.mjs +35 -0
  29. package/esm2022/src/app/inobeta-ui/http/store/loader/selectors.mjs +9 -0
  30. package/esm2022/src/app/inobeta-ui/http/store/session/actions.mjs +17 -0
  31. package/esm2022/src/app/inobeta-ui/http/store/session/effects.mjs +50 -0
  32. package/esm2022/src/app/inobeta-ui/http/store/session/interfaces.mjs +2 -0
  33. package/esm2022/src/app/inobeta-ui/http/store/session/reducers.mjs +12 -0
  34. package/esm2022/src/app/inobeta-ui/http/store/session/selectors.mjs +22 -0
  35. package/esm2022/src/app/inobeta-ui/http/translations.mjs +13 -0
  36. package/esm2022/src/app/inobeta-ui/hydration/actions.mjs +3 -0
  37. package/esm2022/src/app/inobeta-ui/hydration/effects.mjs +45 -0
  38. package/esm2022/src/app/inobeta-ui/hydration/index.mjs +21 -0
  39. package/esm2022/src/app/inobeta-ui/hydration/reducer.mjs +36 -0
  40. package/esm2022/src/app/inobeta-ui/storage/index.mjs +4 -0
  41. package/esm2022/src/app/inobeta-ui/storage/storage-test.module.mjs +23 -0
  42. package/esm2022/src/app/inobeta-ui/storage/storage.module.mjs +22 -0
  43. package/esm2022/src/app/inobeta-ui/storage/storage.service.mjs +105 -0
  44. package/esm2022/src/app/inobeta-ui/storage/storage.stub.spec.mjs +8 -0
  45. package/esm2022/src/app/inobeta-ui/translate/index.mjs +2 -0
  46. package/esm2022/src/app/inobeta-ui/translate/translate-loader.service.mjs +37 -0
  47. package/esm2022/src/app/inobeta-ui/ui/breadcrumb/breadcrumb.component.mjs +63 -0
  48. package/esm2022/src/app/inobeta-ui/ui/breadcrumb/breadcrumb.module.mjs +44 -0
  49. package/esm2022/src/app/inobeta-ui/ui/breadcrumb/index.mjs +4 -0
  50. package/esm2022/src/app/inobeta-ui/ui/breadcrumb/material-breadcrumb/material-breadcrumb.component.mjs +16 -0
  51. package/esm2022/src/app/inobeta-ui/ui/data-export/data-export.module.mjs +92 -0
  52. package/esm2022/src/app/inobeta-ui/ui/data-export/data-export.service.mjs +83 -0
  53. package/esm2022/src/app/inobeta-ui/ui/data-export/formats/csv-export.service.mjs +42 -0
  54. package/esm2022/src/app/inobeta-ui/ui/data-export/formats/pdf-export.service.mjs +66 -0
  55. package/esm2022/src/app/inobeta-ui/ui/data-export/formats/xlsx-export.service.mjs +26 -0
  56. package/esm2022/src/app/inobeta-ui/ui/data-export/index.mjs +10 -0
  57. package/esm2022/src/app/inobeta-ui/ui/data-export/provider.mjs +3 -0
  58. package/esm2022/src/app/inobeta-ui/ui/data-export/table-data-export-dialog.component.mjs +113 -0
  59. package/esm2022/src/app/inobeta-ui/ui/data-export/table-data-export.component.mjs +58 -0
  60. package/esm2022/src/app/inobeta-ui/ui/data-export/transformer.mjs +68 -0
  61. package/esm2022/src/app/inobeta-ui/ui/forms/array/array.mjs +26 -0
  62. package/esm2022/src/app/inobeta-ui/ui/forms/controls/checkbox.mjs +5 -0
  63. package/esm2022/src/app/inobeta-ui/ui/forms/controls/dropdown.mjs +5 -0
  64. package/esm2022/src/app/inobeta-ui/ui/forms/controls/form-control-base.mjs +80 -0
  65. package/esm2022/src/app/inobeta-ui/ui/forms/controls/radio.mjs +5 -0
  66. package/esm2022/src/app/inobeta-ui/ui/forms/controls/textbox.mjs +5 -0
  67. package/esm2022/src/app/inobeta-ui/ui/forms/dynamic-form/dynamic-form.component.mjs +118 -0
  68. package/esm2022/src/app/inobeta-ui/ui/forms/dynamic-form-array/dynamic-form-array.component.mjs +46 -0
  69. package/esm2022/src/app/inobeta-ui/ui/forms/dynamic-form-control/dynamic-form-control.component.mjs +28 -0
  70. package/esm2022/src/app/inobeta-ui/ui/forms/form-control.service.mjs +57 -0
  71. package/esm2022/src/app/inobeta-ui/ui/forms/forms.module.mjs +36 -0
  72. package/esm2022/src/app/inobeta-ui/ui/forms/forms.pipes.mjs +41 -0
  73. package/esm2022/src/app/inobeta-ui/ui/forms/forms.types.mjs +2 -0
  74. package/esm2022/src/app/inobeta-ui/ui/forms/index.mjs +12 -0
  75. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filter-button/filter-action-group.component.mjs +14 -0
  76. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filter-button/filter-button.component.mjs +31 -0
  77. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filter.component.mjs +149 -0
  78. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filter.types.mjs +30 -0
  79. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filters/base/filter-base.mjs +83 -0
  80. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filters/boolean/boolean-filter.component.mjs +48 -0
  81. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filters/date/filter-date.component.mjs +284 -0
  82. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filters/number/filter-number.component.mjs +111 -0
  83. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filters/search-bar/search-bar.component.mjs +99 -0
  84. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filters/tag/filter-tag.component.mjs +106 -0
  85. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filters/text/filter-text.component.mjs +98 -0
  86. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filters.mjs +109 -0
  87. package/esm2022/src/app/inobeta-ui/ui/kai-filter/filters.module.mjs +175 -0
  88. package/esm2022/src/app/inobeta-ui/ui/kai-filter/index.mjs +14 -0
  89. package/esm2022/src/app/inobeta-ui/ui/kai-filter/tokens.mjs +3 -0
  90. package/esm2022/src/app/inobeta-ui/ui/kai-filter/translations.mjs +51 -0
  91. package/esm2022/src/app/inobeta-ui/ui/kai-table/action.mjs +48 -0
  92. package/esm2022/src/app/inobeta-ui/ui/kai-table/cells.mjs +212 -0
  93. package/esm2022/src/app/inobeta-ui/ui/kai-table/columns/action-column.mjs +23 -0
  94. package/esm2022/src/app/inobeta-ui/ui/kai-table/columns/column.mjs +260 -0
  95. package/esm2022/src/app/inobeta-ui/ui/kai-table/columns/date-column.mjs +93 -0
  96. package/esm2022/src/app/inobeta-ui/ui/kai-table/columns/index.mjs +7 -0
  97. package/esm2022/src/app/inobeta-ui/ui/kai-table/columns/number-column.mjs +112 -0
  98. package/esm2022/src/app/inobeta-ui/ui/kai-table/columns/selection-column.mjs +149 -0
  99. package/esm2022/src/app/inobeta-ui/ui/kai-table/columns/text-column.mjs +90 -0
  100. package/esm2022/src/app/inobeta-ui/ui/kai-table/index.mjs +13 -0
  101. package/esm2022/src/app/inobeta-ui/ui/kai-table/paginator-intl.mjs +53 -0
  102. package/esm2022/src/app/inobeta-ui/ui/kai-table/remote-data-source.mjs +73 -0
  103. package/esm2022/src/app/inobeta-ui/ui/kai-table/rowgroup.mjs +17 -0
  104. package/esm2022/src/app/inobeta-ui/ui/kai-table/sort-header.mjs +37 -0
  105. package/esm2022/src/app/inobeta-ui/ui/kai-table/store/const.mjs +2 -0
  106. package/esm2022/src/app/inobeta-ui/ui/kai-table/store/index.mjs +9 -0
  107. package/esm2022/src/app/inobeta-ui/ui/kai-table/store/url-state/actions.mjs +13 -0
  108. package/esm2022/src/app/inobeta-ui/ui/kai-table/store/url-state/effects.mjs +47 -0
  109. package/esm2022/src/app/inobeta-ui/ui/kai-table/store/url-state/interfaces.mjs +2 -0
  110. package/esm2022/src/app/inobeta-ui/ui/kai-table/store/url-state/reducers.mjs +56 -0
  111. package/esm2022/src/app/inobeta-ui/ui/kai-table/store/url-state/selectors.mjs +19 -0
  112. package/esm2022/src/app/inobeta-ui/ui/kai-table/table-data-source.mjs +450 -0
  113. package/esm2022/src/app/inobeta-ui/ui/kai-table/table-url.service.mjs +129 -0
  114. package/esm2022/src/app/inobeta-ui/ui/kai-table/table.component.mjs +260 -0
  115. package/esm2022/src/app/inobeta-ui/ui/kai-table/table.module.mjs +150 -0
  116. package/esm2022/src/app/inobeta-ui/ui/kai-table/table.types.mjs +2 -0
  117. package/esm2022/src/app/inobeta-ui/ui/kai-table/tokens.mjs +13 -0
  118. package/esm2022/src/app/inobeta-ui/ui/kai-table/translations.mjs +41 -0
  119. package/esm2022/src/app/inobeta-ui/ui/main-menu/components/main-menu-bar/main-menu-bar.component.mjs +120 -0
  120. package/esm2022/src/app/inobeta-ui/ui/main-menu/components/main-menu-bar/main-menu-bar.stub.spec.mjs +38 -0
  121. package/esm2022/src/app/inobeta-ui/ui/main-menu/components/main-menu-dialog/main-menu-dialog.component.mjs +48 -0
  122. package/esm2022/src/app/inobeta-ui/ui/main-menu/components/main-menu-expanded/header-footer-buttons.component.mjs +139 -0
  123. package/esm2022/src/app/inobeta-ui/ui/main-menu/components/main-menu-expanded/main-menu-expanded.component.mjs +41 -0
  124. package/esm2022/src/app/inobeta-ui/ui/main-menu/index.mjs +13 -0
  125. package/esm2022/src/app/inobeta-ui/ui/main-menu/main-menu-test.module.mjs +24 -0
  126. package/esm2022/src/app/inobeta-ui/ui/main-menu/main-menu.module.mjs +63 -0
  127. package/esm2022/src/app/inobeta-ui/ui/main-menu/models/main-menu-button.model.mjs +2 -0
  128. package/esm2022/src/app/inobeta-ui/ui/main-menu/models/main-menu-data-set.model.mjs +2 -0
  129. package/esm2022/src/app/inobeta-ui/ui/main-menu/models/main-menu-data.model.mjs +2 -0
  130. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/autocomplete.mjs +108 -0
  131. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/button.mjs +80 -0
  132. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/checkbox.mjs +54 -0
  133. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/datepicker.mjs +96 -0
  134. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/dropdown.mjs +149 -0
  135. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/label.mjs +50 -0
  136. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/padding.mjs +26 -0
  137. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/radio.mjs +61 -0
  138. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/slide-toggle.mjs +62 -0
  139. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/textarea.mjs +63 -0
  140. package/esm2022/src/app/inobeta-ui/ui/material-forms/controls/textbox.mjs +205 -0
  141. package/esm2022/src/app/inobeta-ui/ui/material-forms/index.mjs +18 -0
  142. package/esm2022/src/app/inobeta-ui/ui/material-forms/intl/datepicker.intl.mjs +73 -0
  143. package/esm2022/src/app/inobeta-ui/ui/material-forms/material-form/material-form.component.mjs +48 -0
  144. package/esm2022/src/app/inobeta-ui/ui/material-forms/material-form/material-form.stub.spec.mjs +65 -0
  145. package/esm2022/src/app/inobeta-ui/ui/material-forms/material-form-array/material-form-array.component.mjs +18 -0
  146. package/esm2022/src/app/inobeta-ui/ui/material-forms/material-form-control/material-form-control.component.mjs +64 -0
  147. package/esm2022/src/app/inobeta-ui/ui/material-forms/material-form-test.module.mjs +32 -0
  148. package/esm2022/src/app/inobeta-ui/ui/material-forms/material-form.module.mjs +168 -0
  149. package/esm2022/src/app/inobeta-ui/ui/material-forms/translations.mjs +26 -0
  150. package/esm2022/src/app/inobeta-ui/ui/modal/index.mjs +7 -0
  151. package/esm2022/src/app/inobeta-ui/ui/modal/modal-message.component.mjs +76 -0
  152. package/esm2022/src/app/inobeta-ui/ui/modal/modal-message.model.mjs +2 -0
  153. package/esm2022/src/app/inobeta-ui/ui/modal/modal-message.service.mjs +64 -0
  154. package/esm2022/src/app/inobeta-ui/ui/modal/modal-message.service.stub.spec.mjs +15 -0
  155. package/esm2022/src/app/inobeta-ui/ui/modal/modal-test.module.mjs +26 -0
  156. package/esm2022/src/app/inobeta-ui/ui/modal/modal.module.mjs +46 -0
  157. package/esm2022/src/app/inobeta-ui/ui/modal/translations.mjs +10 -0
  158. package/esm2022/src/app/inobeta-ui/ui/toast/index.mjs +5 -0
  159. package/esm2022/src/app/inobeta-ui/ui/toast/toast-test.module.mjs +23 -0
  160. package/esm2022/src/app/inobeta-ui/ui/toast/toast.module.mjs +21 -0
  161. package/esm2022/src/app/inobeta-ui/ui/toast/toast.service.mjs +54 -0
  162. package/esm2022/src/app/inobeta-ui/ui/toast/toast.service.stub.spec.mjs +4 -0
  163. package/esm2022/src/app/inobeta-ui/ui/uploader/index.mjs +3 -0
  164. package/esm2022/src/app/inobeta-ui/ui/uploader/uploader.component.mjs +41 -0
  165. package/esm2022/src/app/inobeta-ui/ui/uploader/uploader.module.mjs +42 -0
  166. package/esm2022/src/app/inobeta-ui/ui/views/components/default-table-view/default-table-view.component.mjs +20 -0
  167. package/esm2022/src/app/inobeta-ui/ui/views/components/index.mjs +6 -0
  168. package/esm2022/src/app/inobeta-ui/ui/views/components/table-view/table-view.component.mjs +37 -0
  169. package/esm2022/src/app/inobeta-ui/ui/views/components/table-view-group/table-view-group.component.mjs +186 -0
  170. package/esm2022/src/app/inobeta-ui/ui/views/components/view-dialog/view-dialog.component.mjs +110 -0
  171. package/esm2022/src/app/inobeta-ui/ui/views/components/view-list/view-list.component.mjs +43 -0
  172. package/esm2022/src/app/inobeta-ui/ui/views/index.mjs +5 -0
  173. package/esm2022/src/app/inobeta-ui/ui/views/store/actions.mjs +11 -0
  174. package/esm2022/src/app/inobeta-ui/ui/views/store/index.mjs +3 -0
  175. package/esm2022/src/app/inobeta-ui/ui/views/store/reducer.mjs +5 -0
  176. package/esm2022/src/app/inobeta-ui/ui/views/store/views/index.mjs +4 -0
  177. package/esm2022/src/app/inobeta-ui/ui/views/store/views/reducer.mjs +19 -0
  178. package/esm2022/src/app/inobeta-ui/ui/views/store/views/selectors.mjs +5 -0
  179. package/esm2022/src/app/inobeta-ui/ui/views/store/views/table-view.mjs +13 -0
  180. package/esm2022/src/app/inobeta-ui/ui/views/translations.mjs +34 -0
  181. package/esm2022/src/app/inobeta-ui/ui/views/view.module.mjs +98 -0
  182. package/esm2022/src/app/inobeta-ui/ui/views/view.service.mjs +137 -0
  183. package/fesm2022/inobeta-ui.mjs +8610 -0
  184. package/fesm2022/inobeta-ui.mjs.map +1 -0
  185. package/index.d.ts +5 -0
  186. package/package.json +55 -0
  187. package/public_api.d.ts +16 -0
  188. package/src/app/inobeta-ui/core/filter.pipe.d.ts +7 -0
  189. package/src/app/inobeta-ui/core/index.d.ts +1 -0
  190. package/src/app/inobeta-ui/http/auth/guard.service.d.ts +96 -0
  191. package/src/app/inobeta-ui/http/auth/login.service.d.ts +63 -0
  192. package/src/app/inobeta-ui/http/auth/login.service.stub.spec.d.ts +9 -0
  193. package/src/app/inobeta-ui/http/auth/session.model.d.ts +18 -0
  194. package/src/app/inobeta-ui/http/http/auth.interceptor.d.ts +21 -0
  195. package/src/app/inobeta-ui/http/http/error.interceptor.d.ts +18 -0
  196. package/src/app/inobeta-ui/http/http/loader.interceptor.d.ts +17 -0
  197. package/src/app/inobeta-ui/http/http/loading-skeleton-container.component.d.ts +13 -0
  198. package/src/app/inobeta-ui/http/http/loading-skeleton.component.d.ts +12 -0
  199. package/src/app/inobeta-ui/http/http/loading-skeleton.directive.d.ts +27 -0
  200. package/src/app/inobeta-ui/http/http/loading-skeleton.directive.stub.spec.d.ts +13 -0
  201. package/src/app/inobeta-ui/http/http/messages.decorator.d.ts +18 -0
  202. package/src/app/inobeta-ui/http/http/role-check.directive.d.ts +17 -0
  203. package/src/app/inobeta-ui/http/http/spinner-loading.component.d.ts +9 -0
  204. package/src/app/inobeta-ui/http/http/spinner-loading.stub.spec.d.ts +5 -0
  205. package/src/app/inobeta-ui/http/http-test.module.d.ts +8 -0
  206. package/src/app/inobeta-ui/http/http.module.d.ts +20 -0
  207. package/src/app/inobeta-ui/http/index.d.ts +23 -0
  208. package/src/app/inobeta-ui/http/store/index.d.ts +10 -0
  209. package/src/app/inobeta-ui/http/store/loader/actions.d.ts +17 -0
  210. package/src/app/inobeta-ui/http/store/loader/interfaces.d.ts +8 -0
  211. package/src/app/inobeta-ui/http/store/loader/reducers.d.ts +3 -0
  212. package/src/app/inobeta-ui/http/store/loader/selectors.d.ts +5 -0
  213. package/src/app/inobeta-ui/http/store/session/actions.d.ts +20 -0
  214. package/src/app/inobeta-ui/http/store/session/effects.d.ts +16 -0
  215. package/src/app/inobeta-ui/http/store/session/interfaces.d.ts +4 -0
  216. package/src/app/inobeta-ui/http/store/session/reducers.d.ts +3 -0
  217. package/src/app/inobeta-ui/http/store/session/selectors.d.ts +4 -0
  218. package/src/app/inobeta-ui/http/translations.d.ts +12 -0
  219. package/src/app/inobeta-ui/hydration/actions.d.ts +1 -0
  220. package/src/app/inobeta-ui/hydration/effects.d.ts +13 -0
  221. package/src/app/inobeta-ui/hydration/index.d.ts +13 -0
  222. package/src/app/inobeta-ui/hydration/reducer.d.ts +2 -0
  223. package/src/app/inobeta-ui/storage/index.d.ts +3 -0
  224. package/src/app/inobeta-ui/storage/storage-test.module.d.ts +6 -0
  225. package/src/app/inobeta-ui/storage/storage.module.d.ts +6 -0
  226. package/src/app/inobeta-ui/storage/storage.service.d.ts +62 -0
  227. package/src/app/inobeta-ui/storage/storage.stub.spec.d.ts +5 -0
  228. package/src/app/inobeta-ui/translate/index.d.ts +1 -0
  229. package/src/app/inobeta-ui/translate/translate-loader.service.d.ts +11 -0
  230. package/src/app/inobeta-ui/ui/_index.scss +87 -0
  231. package/src/app/inobeta-ui/ui/breadcrumb/breadcrumb.component.d.ts +28 -0
  232. package/src/app/inobeta-ui/ui/breadcrumb/breadcrumb.module.d.ts +12 -0
  233. package/src/app/inobeta-ui/ui/breadcrumb/index.d.ts +3 -0
  234. package/src/app/inobeta-ui/ui/breadcrumb/material-breadcrumb/material-breadcrumb.component.d.ts +6 -0
  235. package/src/app/inobeta-ui/ui/data-export/data-export.module.d.ts +20 -0
  236. package/src/app/inobeta-ui/ui/data-export/data-export.service.d.ts +35 -0
  237. package/src/app/inobeta-ui/ui/data-export/formats/csv-export.service.d.ts +19 -0
  238. package/src/app/inobeta-ui/ui/data-export/formats/pdf-export.service.d.ts +20 -0
  239. package/src/app/inobeta-ui/ui/data-export/formats/xlsx-export.service.d.ts +14 -0
  240. package/src/app/inobeta-ui/ui/data-export/index.d.ts +9 -0
  241. package/src/app/inobeta-ui/ui/data-export/provider.d.ts +15 -0
  242. package/src/app/inobeta-ui/ui/data-export/table-data-export-dialog.component.d.ts +23 -0
  243. package/src/app/inobeta-ui/ui/data-export/table-data-export.component.d.ts +13 -0
  244. package/src/app/inobeta-ui/ui/data-export/transformer.d.ts +50 -0
  245. package/src/app/inobeta-ui/ui/forms/array/array.d.ts +32 -0
  246. package/src/app/inobeta-ui/ui/forms/controls/checkbox.d.ts +4 -0
  247. package/src/app/inobeta-ui/ui/forms/controls/dropdown.d.ts +4 -0
  248. package/src/app/inobeta-ui/ui/forms/controls/form-control-base.d.ts +88 -0
  249. package/src/app/inobeta-ui/ui/forms/controls/radio.d.ts +4 -0
  250. package/src/app/inobeta-ui/ui/forms/controls/textbox.d.ts +4 -0
  251. package/src/app/inobeta-ui/ui/forms/dynamic-form/dynamic-form.component.d.ts +50 -0
  252. package/src/app/inobeta-ui/ui/forms/dynamic-form-array/dynamic-form-array.component.d.ts +18 -0
  253. package/src/app/inobeta-ui/ui/forms/dynamic-form-control/dynamic-form-control.component.d.ts +11 -0
  254. package/src/app/inobeta-ui/ui/forms/form-control.service.d.ts +13 -0
  255. package/src/app/inobeta-ui/ui/forms/forms.module.d.ts +12 -0
  256. package/src/app/inobeta-ui/ui/forms/forms.pipes.d.ts +20 -0
  257. package/src/app/inobeta-ui/ui/forms/forms.types.d.ts +3 -0
  258. package/src/app/inobeta-ui/ui/forms/index.d.ts +11 -0
  259. package/src/app/inobeta-ui/ui/kai-filter/filter-button/filter-action-group.component.d.ts +5 -0
  260. package/src/app/inobeta-ui/ui/kai-filter/filter-button/filter-button.component.d.ts +8 -0
  261. package/src/app/inobeta-ui/ui/kai-filter/filter.component.d.ts +41 -0
  262. package/src/app/inobeta-ui/ui/kai-filter/filter.types.d.ts +141 -0
  263. package/src/app/inobeta-ui/ui/kai-filter/filters/base/filter-base.d.ts +42 -0
  264. package/src/app/inobeta-ui/ui/kai-filter/filters/boolean/boolean-filter.component.d.ts +12 -0
  265. package/src/app/inobeta-ui/ui/kai-filter/filters/date/filter-date.component.d.ts +56 -0
  266. package/src/app/inobeta-ui/ui/kai-filter/filters/number/filter-number.component.d.ts +27 -0
  267. package/src/app/inobeta-ui/ui/kai-filter/filters/search-bar/search-bar.component.d.ts +16 -0
  268. package/src/app/inobeta-ui/ui/kai-filter/filters/tag/filter-tag.component.d.ts +28 -0
  269. package/src/app/inobeta-ui/ui/kai-filter/filters/text/filter-text.component.d.ts +21 -0
  270. package/src/app/inobeta-ui/ui/kai-filter/filters.d.ts +16 -0
  271. package/src/app/inobeta-ui/ui/kai-filter/filters.module.d.ts +35 -0
  272. package/src/app/inobeta-ui/ui/kai-filter/index.d.ts +13 -0
  273. package/src/app/inobeta-ui/ui/kai-filter/tokens.d.ts +2 -0
  274. package/src/app/inobeta-ui/ui/kai-filter/translations.d.ts +50 -0
  275. package/src/app/inobeta-ui/ui/kai-table/_table-theme.scss +123 -0
  276. package/src/app/inobeta-ui/ui/kai-table/action.d.ts +19 -0
  277. package/src/app/inobeta-ui/ui/kai-table/cells.d.ts +88 -0
  278. package/src/app/inobeta-ui/ui/kai-table/columns/action-column.d.ts +9 -0
  279. package/src/app/inobeta-ui/ui/kai-table/columns/column.d.ts +87 -0
  280. package/src/app/inobeta-ui/ui/kai-table/columns/date-column.d.ts +21 -0
  281. package/src/app/inobeta-ui/ui/kai-table/columns/index.d.ts +6 -0
  282. package/src/app/inobeta-ui/ui/kai-table/columns/number-column.d.ts +16 -0
  283. package/src/app/inobeta-ui/ui/kai-table/columns/selection-column.d.ts +26 -0
  284. package/src/app/inobeta-ui/ui/kai-table/columns/text-column.d.ts +16 -0
  285. package/src/app/inobeta-ui/ui/kai-table/index.d.ts +12 -0
  286. package/src/app/inobeta-ui/ui/kai-table/paginator-intl.d.ts +18 -0
  287. package/src/app/inobeta-ui/ui/kai-table/remote-data-source.d.ts +60 -0
  288. package/src/app/inobeta-ui/ui/kai-table/rowgroup.d.ts +8 -0
  289. package/src/app/inobeta-ui/ui/kai-table/sort-header.d.ts +20 -0
  290. package/src/app/inobeta-ui/ui/kai-table/store/const.d.ts +1 -0
  291. package/src/app/inobeta-ui/ui/kai-table/store/index.d.ts +8 -0
  292. package/src/app/inobeta-ui/ui/kai-table/store/url-state/actions.d.ts +59 -0
  293. package/src/app/inobeta-ui/ui/kai-table/store/url-state/effects.d.ts +15 -0
  294. package/src/app/inobeta-ui/ui/kai-table/store/url-state/interfaces.d.ts +16 -0
  295. package/src/app/inobeta-ui/ui/kai-table/store/url-state/reducers.d.ts +2 -0
  296. package/src/app/inobeta-ui/ui/kai-table/store/url-state/selectors.d.ts +3 -0
  297. package/src/app/inobeta-ui/ui/kai-table/table-data-source.d.ts +164 -0
  298. package/src/app/inobeta-ui/ui/kai-table/table-url.service.d.ts +51 -0
  299. package/src/app/inobeta-ui/ui/kai-table/table.component.d.ts +79 -0
  300. package/src/app/inobeta-ui/ui/kai-table/table.module.d.ts +30 -0
  301. package/src/app/inobeta-ui/ui/kai-table/table.types.d.ts +21 -0
  302. package/src/app/inobeta-ui/ui/kai-table/tokens.d.ts +22 -0
  303. package/src/app/inobeta-ui/ui/kai-table/translations.d.ts +40 -0
  304. package/src/app/inobeta-ui/ui/main-menu/_main-menu-theme.scss +226 -0
  305. package/src/app/inobeta-ui/ui/main-menu/components/main-menu-bar/main-menu-bar.component.d.ts +56 -0
  306. package/src/app/inobeta-ui/ui/main-menu/components/main-menu-bar/main-menu-bar.stub.spec.d.ts +18 -0
  307. package/src/app/inobeta-ui/ui/main-menu/components/main-menu-dialog/main-menu-dialog.component.d.ts +13 -0
  308. package/src/app/inobeta-ui/ui/main-menu/components/main-menu-expanded/header-footer-buttons.component.d.ts +9 -0
  309. package/src/app/inobeta-ui/ui/main-menu/components/main-menu-expanded/main-menu-expanded.component.d.ts +16 -0
  310. package/src/app/inobeta-ui/ui/main-menu/index.d.ts +10 -0
  311. package/src/app/inobeta-ui/ui/main-menu/main-menu-test.module.d.ts +8 -0
  312. package/src/app/inobeta-ui/ui/main-menu/main-menu.module.d.ts +16 -0
  313. package/src/app/inobeta-ui/ui/main-menu/models/main-menu-button.model.d.ts +8 -0
  314. package/src/app/inobeta-ui/ui/main-menu/models/main-menu-data-set.model.d.ts +14 -0
  315. package/src/app/inobeta-ui/ui/main-menu/models/main-menu-data.model.d.ts +4 -0
  316. package/src/app/inobeta-ui/ui/material-forms/controls/autocomplete.d.ts +14 -0
  317. package/src/app/inobeta-ui/ui/material-forms/controls/button.d.ts +28 -0
  318. package/src/app/inobeta-ui/ui/material-forms/controls/checkbox.d.ts +10 -0
  319. package/src/app/inobeta-ui/ui/material-forms/controls/datepicker.d.ts +17 -0
  320. package/src/app/inobeta-ui/ui/material-forms/controls/dropdown.d.ts +29 -0
  321. package/src/app/inobeta-ui/ui/material-forms/controls/label.d.ts +10 -0
  322. package/src/app/inobeta-ui/ui/material-forms/controls/padding.d.ts +10 -0
  323. package/src/app/inobeta-ui/ui/material-forms/controls/radio.d.ts +10 -0
  324. package/src/app/inobeta-ui/ui/material-forms/controls/slide-toggle.d.ts +10 -0
  325. package/src/app/inobeta-ui/ui/material-forms/controls/textarea.d.ts +17 -0
  326. package/src/app/inobeta-ui/ui/material-forms/controls/textbox.d.ts +21 -0
  327. package/src/app/inobeta-ui/ui/material-forms/index.d.ts +17 -0
  328. package/src/app/inobeta-ui/ui/material-forms/intl/datepicker.intl.d.ts +25 -0
  329. package/src/app/inobeta-ui/ui/material-forms/material-form/material-form.component.d.ts +26 -0
  330. package/src/app/inobeta-ui/ui/material-forms/material-form/material-form.stub.spec.d.ts +21 -0
  331. package/src/app/inobeta-ui/ui/material-forms/material-form-array/material-form-array.component.d.ts +6 -0
  332. package/src/app/inobeta-ui/ui/material-forms/material-form-control/material-form-control.component.d.ts +19 -0
  333. package/src/app/inobeta-ui/ui/material-forms/material-form-test.module.d.ts +9 -0
  334. package/src/app/inobeta-ui/ui/material-forms/material-form.module.d.ts +49 -0
  335. package/src/app/inobeta-ui/ui/material-forms/translations.d.ts +25 -0
  336. package/src/app/inobeta-ui/ui/modal/index.d.ts +6 -0
  337. package/src/app/inobeta-ui/ui/modal/modal-message.component.d.ts +10 -0
  338. package/src/app/inobeta-ui/ui/modal/modal-message.model.d.ts +32 -0
  339. package/src/app/inobeta-ui/ui/modal/modal-message.service.d.ts +49 -0
  340. package/src/app/inobeta-ui/ui/modal/modal-message.service.stub.spec.d.ts +6 -0
  341. package/src/app/inobeta-ui/ui/modal/modal-test.module.d.ts +7 -0
  342. package/src/app/inobeta-ui/ui/modal/modal.module.d.ts +11 -0
  343. package/src/app/inobeta-ui/ui/modal/translations.d.ts +9 -0
  344. package/src/app/inobeta-ui/ui/toast/_toast-theme.scss +56 -0
  345. package/src/app/inobeta-ui/ui/toast/index.d.ts +4 -0
  346. package/src/app/inobeta-ui/ui/toast/toast-test.module.d.ts +6 -0
  347. package/src/app/inobeta-ui/ui/toast/toast.module.d.ts +7 -0
  348. package/src/app/inobeta-ui/ui/toast/toast.service.d.ts +36 -0
  349. package/src/app/inobeta-ui/ui/toast/toast.service.stub.spec.d.ts +3 -0
  350. package/src/app/inobeta-ui/ui/uploader/index.d.ts +2 -0
  351. package/src/app/inobeta-ui/ui/uploader/uploader.component.d.ts +12 -0
  352. package/src/app/inobeta-ui/ui/uploader/uploader.module.d.ts +10 -0
  353. package/src/app/inobeta-ui/ui/views/components/default-table-view/default-table-view.component.d.ts +8 -0
  354. package/src/app/inobeta-ui/ui/views/components/index.d.ts +5 -0
  355. package/src/app/inobeta-ui/ui/views/components/table-view/table-view.component.d.ts +14 -0
  356. package/src/app/inobeta-ui/ui/views/components/table-view-group/table-view-group.component.d.ts +45 -0
  357. package/src/app/inobeta-ui/ui/views/components/view-dialog/view-dialog.component.d.ts +22 -0
  358. package/src/app/inobeta-ui/ui/views/components/view-list/view-list.component.d.ts +16 -0
  359. package/src/app/inobeta-ui/ui/views/index.d.ts +4 -0
  360. package/src/app/inobeta-ui/ui/views/store/actions.d.ts +27 -0
  361. package/src/app/inobeta-ui/ui/views/store/index.d.ts +2 -0
  362. package/src/app/inobeta-ui/ui/views/store/reducer.d.ts +7 -0
  363. package/src/app/inobeta-ui/ui/views/store/views/index.d.ts +3 -0
  364. package/src/app/inobeta-ui/ui/views/store/views/reducer.d.ts +3 -0
  365. package/src/app/inobeta-ui/ui/views/store/views/selectors.d.ts +4 -0
  366. package/src/app/inobeta-ui/ui/views/store/views/table-view.d.ts +22 -0
  367. package/src/app/inobeta-ui/ui/views/translations.d.ts +33 -0
  368. package/src/app/inobeta-ui/ui/views/view.module.d.ts +23 -0
  369. package/src/app/inobeta-ui/ui/views/view.service.d.ts +40 -0
@@ -0,0 +1,149 @@
1
+ import { Component, ContentChildren, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, } from "@angular/core";
2
+ import { FormGroup } from "@angular/forms";
3
+ import { ReplaySubject } from "rxjs";
4
+ import { IbKaiTableAction } from "../kai-table/action";
5
+ import { IbFilterBase } from "./filters/base/filter-base";
6
+ import { IB_FILTER } from "./tokens";
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/common";
9
+ import * as i2 from "@angular/material/button";
10
+ import * as i3 from "@angular/material/icon";
11
+ import * as i4 from "../kai-table/action";
12
+ import * as i5 from "@angular/material/tooltip";
13
+ import * as i6 from "@ngx-translate/core";
14
+ export class IbFilter {
15
+ /** @ignore */
16
+ filters;
17
+ /** @ignore */
18
+ hideFilterAction;
19
+ /**
20
+ * Manually sets a filter
21
+ *
22
+ * @example
23
+ * { category: ['pants'] }
24
+ * */
25
+ set value(value) {
26
+ if (!value) {
27
+ return;
28
+ }
29
+ // as indicated in NG01000
30
+ setTimeout(() => {
31
+ this.form.patchValue(value);
32
+ this.update();
33
+ });
34
+ }
35
+ get value() {
36
+ return this._value;
37
+ }
38
+ _value = {};
39
+ ibFilterUpdated = new EventEmitter();
40
+ ibQueryUpdated = new EventEmitter();
41
+ form = new FormGroup({});
42
+ initialRawValue = {};
43
+ get selectedCriteria() {
44
+ return this.form.getRawValue();
45
+ }
46
+ query = {};
47
+ hideFilters = false;
48
+ initialized = new ReplaySubject(1);
49
+ ngOnInit() {
50
+ }
51
+ ngAfterViewInit() {
52
+ this.initialRawValue = this.form.getRawValue();
53
+ this._markInitialized();
54
+ }
55
+ update() {
56
+ this._value = this.buildFilter();
57
+ this.query = this.toQuery();
58
+ this.ibFilterUpdated.emit(this._value);
59
+ this.ibQueryUpdated.emit(this.query);
60
+ }
61
+ reset() {
62
+ this.form.reset();
63
+ this.update();
64
+ }
65
+ toQuery() {
66
+ let output = {};
67
+ const filters = this.filters?.toArray() ?? [];
68
+ for (const filter of filters) {
69
+ output[filter.name] = filter.toQuery();
70
+ }
71
+ return output;
72
+ }
73
+ /** @ignore */
74
+ buildFilter() {
75
+ let output = {};
76
+ const filters = this.filters?.toArray() ?? [];
77
+ for (const filter of filters) {
78
+ output[filter.name] = filter.build();
79
+ }
80
+ return output;
81
+ }
82
+ _markInitialized() {
83
+ this.initialized.next();
84
+ this.initialized.complete();
85
+ }
86
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbFilter, deps: [], target: i0.ɵɵFactoryTarget.Component });
87
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: IbFilter, selector: "ib-filter", inputs: { value: "value" }, outputs: { ibFilterUpdated: "ibFilterUpdated", ibQueryUpdated: "ibQueryUpdated" }, providers: [{ provide: IB_FILTER, useExisting: IbFilter }], queries: [{ propertyName: "filters", predicate: IbFilterBase }], viewQueries: [{ propertyName: "hideFilterAction", first: true, predicate: IbKaiTableAction, descendants: true }], ngImport: i0, template: `
88
+ <section
89
+ class="ib-filter"
90
+ [class.ib-filter--hidden]="hideFilters"
91
+ [attr.aria-hidden]="hideFilters"
92
+ >
93
+ <ng-content select="ib-search-bar"></ng-content>
94
+ <section #list class="ib-filter__list">
95
+ <mat-icon *ngIf="list.children.length > 1">filter_list</mat-icon>
96
+ <ng-content></ng-content>
97
+ </section>
98
+ </section>
99
+
100
+ <button
101
+ *ibTableAction
102
+ mat-icon-button
103
+ [matTooltip]="'shared.ibTableView.showFilters' | translate"
104
+ [color]="!hideFilters ? 'primary' : ''"
105
+ (click)="hideFilters = !hideFilters"
106
+ >
107
+ <mat-icon>{{ "filter_alt" }}</mat-icon>
108
+ </button>
109
+ `, isInline: true, styles: [":host{display:block}section.ib-filter{opacity:1;overflow:hidden}section.ib-filter ib-search-bar{display:block}section.ib-filter__list{display:flex;max-height:56px;padding:12px 0 12px 12px;flex-wrap:wrap;align-items:center;gap:.4em;--mdc-text-button-container-height: 32px;--mdc-filled-button-container-height: 32px;--mdc-protected-button-container-height: 32px;--mdc-outlined-button-container-height: 32px;--mat-text-button-touch-target-display: block;--mat-filled-button-touch-target-display: block;--mat-protected-button-touch-target-display: block;--mat-outlined-button-touch-target-display: block}section.ib-filter__list .ib-filter-button,section.ib-filter__list .ib-add-filter-button{font-size:12px;border-radius:20px}section.ib-filter__list .ib-add-column-filter-button .mdc-evolution-chip__cell--primary .mdc-evolution-chip__action{padding-left:0}section.ib-filter__list mat-icon:first-child{margin:0 12px}.cdk-overlay-container .mat-mdc-menu-panel{overflow-x:hidden;border-radius:8px;margin-top:8px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.IbKaiTableAction, selector: "[ibTableAction]" }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None });
110
+ }
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbFilter, decorators: [{
112
+ type: Component,
113
+ args: [{ selector: "ib-filter", template: `
114
+ <section
115
+ class="ib-filter"
116
+ [class.ib-filter--hidden]="hideFilters"
117
+ [attr.aria-hidden]="hideFilters"
118
+ >
119
+ <ng-content select="ib-search-bar"></ng-content>
120
+ <section #list class="ib-filter__list">
121
+ <mat-icon *ngIf="list.children.length > 1">filter_list</mat-icon>
122
+ <ng-content></ng-content>
123
+ </section>
124
+ </section>
125
+
126
+ <button
127
+ *ibTableAction
128
+ mat-icon-button
129
+ [matTooltip]="'shared.ibTableView.showFilters' | translate"
130
+ [color]="!hideFilters ? 'primary' : ''"
131
+ (click)="hideFilters = !hideFilters"
132
+ >
133
+ <mat-icon>{{ "filter_alt" }}</mat-icon>
134
+ </button>
135
+ `, encapsulation: ViewEncapsulation.None, providers: [{ provide: IB_FILTER, useExisting: IbFilter }], styles: [":host{display:block}section.ib-filter{opacity:1;overflow:hidden}section.ib-filter ib-search-bar{display:block}section.ib-filter__list{display:flex;max-height:56px;padding:12px 0 12px 12px;flex-wrap:wrap;align-items:center;gap:.4em;--mdc-text-button-container-height: 32px;--mdc-filled-button-container-height: 32px;--mdc-protected-button-container-height: 32px;--mdc-outlined-button-container-height: 32px;--mat-text-button-touch-target-display: block;--mat-filled-button-touch-target-display: block;--mat-protected-button-touch-target-display: block;--mat-outlined-button-touch-target-display: block}section.ib-filter__list .ib-filter-button,section.ib-filter__list .ib-add-filter-button{font-size:12px;border-radius:20px}section.ib-filter__list .ib-add-column-filter-button .mdc-evolution-chip__cell--primary .mdc-evolution-chip__action{padding-left:0}section.ib-filter__list mat-icon:first-child{margin:0 12px}.cdk-overlay-container .mat-mdc-menu-panel{overflow-x:hidden;border-radius:8px;margin-top:8px}\n"] }]
136
+ }], propDecorators: { filters: [{
137
+ type: ContentChildren,
138
+ args: [IbFilterBase]
139
+ }], hideFilterAction: [{
140
+ type: ViewChild,
141
+ args: [IbKaiTableAction]
142
+ }], value: [{
143
+ type: Input
144
+ }], ibFilterUpdated: [{
145
+ type: Output
146
+ }], ibQueryUpdated: [{
147
+ type: Output
148
+ }] } });
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvaW5vYmV0YS11aS91aS9rYWktZmlsdGVyL2ZpbHRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4sU0FBUyxFQUNULGlCQUFpQixHQUVsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7Ozs7QUErQnJDLE1BQU0sT0FBTyxRQUFRO0lBQ25CLGNBQWM7SUFFZCxPQUFPLENBQTBCO0lBRWpDLGNBQWM7SUFDZSxnQkFBZ0IsQ0FBbUI7SUFFaEU7Ozs7O1NBS0s7SUFDTCxJQUNJLEtBQUssQ0FBQyxLQUE2QjtRQUNyQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxPQUFPO1FBQ1QsQ0FBQztRQUVELDBCQUEwQjtRQUMxQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRU8sTUFBTSxHQUEyQixFQUFFLENBQUM7SUFFbEMsZUFBZSxHQUFHLElBQUksWUFBWSxFQUEwQixDQUFDO0lBQzdELGNBQWMsR0FBRyxJQUFJLFlBQVksRUFBdUIsQ0FBQztJQUVuRSxJQUFJLEdBQWMsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFcEMsZUFBZSxHQUEyQixFQUFFLENBQUM7SUFDN0MsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFDRCxLQUFLLEdBQXdCLEVBQUUsQ0FBQztJQUVoQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBRXBCLFdBQVcsR0FBRyxJQUFJLGFBQWEsQ0FBTyxDQUFDLENBQUMsQ0FBQztJQUV6QyxRQUFRO0lBQ1IsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDaEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFFOUMsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUM3QixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN6QyxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELGNBQWM7SUFDTixXQUFXO1FBQ2pCLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUU5QyxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlCLENBQUM7dUdBOUZVLFFBQVE7MkZBQVIsUUFBUSxtSkFGUixDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLENBQUMsa0RBSXpDLFlBQVksK0VBSWxCLGdCQUFnQixnREFqQ2pCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JUOzsyRkFLVSxRQUFRO2tCQTdCcEIsU0FBUzsrQkFDRSxXQUFXLFlBQ1g7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQlQsaUJBRWMsaUJBQWlCLENBQUMsSUFBSSxhQUMxQixDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLFVBQVUsRUFBRSxDQUFDOzhCQUsxRCxPQUFPO3NCQUROLGVBQWU7dUJBQUMsWUFBWTtnQkFJQSxnQkFBZ0I7c0JBQTVDLFNBQVM7dUJBQUMsZ0JBQWdCO2dCQVN2QixLQUFLO3NCQURSLEtBQUs7Z0JBbUJJLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgaW5qZWN0LFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBIYXNJbml0aWFsaXplZCB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9jb3JlXCI7XG5pbXBvcnQgeyBSZXBsYXlTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEliS2FpVGFibGVBY3Rpb24gfSBmcm9tIFwiLi4va2FpLXRhYmxlL2FjdGlvblwiO1xuaW1wb3J0IHsgSWJGaWx0ZXJTeW50YXgsIEliRmlsdGVyU3ludGF4RXh0ZW5kZWQgfSBmcm9tIFwiLi9maWx0ZXIudHlwZXNcIjtcbmltcG9ydCB7IEliRmlsdGVyQmFzZSB9IGZyb20gXCIuL2ZpbHRlcnMvYmFzZS9maWx0ZXItYmFzZVwiO1xuaW1wb3J0IHsgSUJfRklMVEVSIH0gZnJvbSBcIi4vdG9rZW5zXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJpYi1maWx0ZXJcIixcbiAgdGVtcGxhdGU6IGBcbiAgICA8c2VjdGlvblxuICAgICAgY2xhc3M9XCJpYi1maWx0ZXJcIlxuICAgICAgW2NsYXNzLmliLWZpbHRlci0taGlkZGVuXT1cImhpZGVGaWx0ZXJzXCJcbiAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cImhpZGVGaWx0ZXJzXCJcbiAgICA+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJpYi1zZWFyY2gtYmFyXCI+PC9uZy1jb250ZW50PlxuICAgICAgPHNlY3Rpb24gI2xpc3QgY2xhc3M9XCJpYi1maWx0ZXJfX2xpc3RcIj5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwibGlzdC5jaGlsZHJlbi5sZW5ndGggPiAxXCI+ZmlsdGVyX2xpc3Q8L21hdC1pY29uPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9zZWN0aW9uPlxuXG4gICAgPGJ1dHRvblxuICAgICAgKmliVGFibGVBY3Rpb25cbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgW21hdFRvb2x0aXBdPVwiJ3NoYXJlZC5pYlRhYmxlVmlldy5zaG93RmlsdGVycycgfCB0cmFuc2xhdGVcIlxuICAgICAgW2NvbG9yXT1cIiFoaWRlRmlsdGVycyA/ICdwcmltYXJ5JyA6ICcnXCJcbiAgICAgIChjbGljayk9XCJoaWRlRmlsdGVycyA9ICFoaWRlRmlsdGVyc1wiXG4gICAgPlxuICAgICAgPG1hdC1pY29uPnt7IFwiZmlsdGVyX2FsdFwiIH19PC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbXCIuL2ZpbHRlci5jb21wb25lbnQuc2Nzc1wiXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBJQl9GSUxURVIsIHVzZUV4aXN0aW5nOiBJYkZpbHRlciB9XSxcbn0pXG5leHBvcnQgY2xhc3MgSWJGaWx0ZXIgaW1wbGVtZW50cyBIYXNJbml0aWFsaXplZCB7XG4gIC8qKiBAaWdub3JlICovXG4gIEBDb250ZW50Q2hpbGRyZW4oSWJGaWx0ZXJCYXNlKVxuICBmaWx0ZXJzOiBRdWVyeUxpc3Q8SWJGaWx0ZXJCYXNlPjtcblxuICAvKiogQGlnbm9yZSAqL1xuICBAVmlld0NoaWxkKEliS2FpVGFibGVBY3Rpb24pIGhpZGVGaWx0ZXJBY3Rpb246IEliS2FpVGFibGVBY3Rpb247XG5cbiAgLyoqXG4gICAqIE1hbnVhbGx5IHNldHMgYSBmaWx0ZXJcbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogeyBjYXRlZ29yeTogWydwYW50cyddIH1cbiAgICogKi9cbiAgQElucHV0KClcbiAgc2V0IHZhbHVlKHZhbHVlOiBJYkZpbHRlclN5bnRheEV4dGVuZGVkKSB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIGFzIGluZGljYXRlZCBpbiBORzAxMDAwXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh2YWx1ZSk7XG4gICAgICB0aGlzLnVwZGF0ZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0IHZhbHVlKCk6IEliRmlsdGVyU3ludGF4RXh0ZW5kZWQge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgX3ZhbHVlOiBJYkZpbHRlclN5bnRheEV4dGVuZGVkID0ge307XG5cbiAgQE91dHB1dCgpIGliRmlsdGVyVXBkYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8SWJGaWx0ZXJTeW50YXhFeHRlbmRlZD4oKTtcbiAgQE91dHB1dCgpIGliUXVlcnlVcGRhdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxSZWNvcmQ8c3RyaW5nLCBhbnk+PigpO1xuXG4gIGZvcm06IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xuXG4gIGluaXRpYWxSYXdWYWx1ZTogSWJGaWx0ZXJTeW50YXhFeHRlbmRlZCA9IHt9O1xuICBnZXQgc2VsZWN0ZWRDcml0ZXJpYSgpe1xuICAgIHJldHVybiB0aGlzLmZvcm0uZ2V0UmF3VmFsdWUoKTtcbiAgfVxuICBxdWVyeTogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuXG4gIGhpZGVGaWx0ZXJzID0gZmFsc2U7XG5cbiAgaW5pdGlhbGl6ZWQgPSBuZXcgUmVwbGF5U3ViamVjdDx2b2lkPigxKTtcblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmluaXRpYWxSYXdWYWx1ZSA9IHRoaXMuZm9ybS5nZXRSYXdWYWx1ZSgpO1xuICAgIHRoaXMuX21hcmtJbml0aWFsaXplZCgpO1xuICB9XG5cbiAgdXBkYXRlKCkge1xuICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5idWlsZEZpbHRlcigpO1xuICAgIHRoaXMucXVlcnkgPSB0aGlzLnRvUXVlcnkoKTtcbiAgICB0aGlzLmliRmlsdGVyVXBkYXRlZC5lbWl0KHRoaXMuX3ZhbHVlKTtcbiAgICB0aGlzLmliUXVlcnlVcGRhdGVkLmVtaXQodGhpcy5xdWVyeSk7XG4gIH1cblxuICByZXNldCgpIHtcbiAgICB0aGlzLmZvcm0ucmVzZXQoKTtcbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9XG5cbiAgdG9RdWVyeSgpIHtcbiAgICBsZXQgb3V0cHV0ID0ge307XG4gICAgY29uc3QgZmlsdGVycyA9IHRoaXMuZmlsdGVycz8udG9BcnJheSgpID8/IFtdO1xuXG4gICAgZm9yIChjb25zdCBmaWx0ZXIgb2YgZmlsdGVycykge1xuICAgICAgb3V0cHV0W2ZpbHRlci5uYW1lXSA9IGZpbHRlci50b1F1ZXJ5KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG91dHB1dDtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgYnVpbGRGaWx0ZXIoKTogSWJGaWx0ZXJTeW50YXgge1xuICAgIGxldCBvdXRwdXQgPSB7fTtcbiAgICBjb25zdCBmaWx0ZXJzID0gdGhpcy5maWx0ZXJzPy50b0FycmF5KCkgPz8gW107XG5cbiAgICBmb3IgKGNvbnN0IGZpbHRlciBvZiBmaWx0ZXJzKSB7XG4gICAgICBvdXRwdXRbZmlsdGVyLm5hbWVdID0gZmlsdGVyLmJ1aWxkKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG91dHB1dDtcbiAgfVxuXG4gIF9tYXJrSW5pdGlhbGl6ZWQoKSB7XG4gICAgdGhpcy5pbml0aWFsaXplZC5uZXh0KCk7XG4gICAgdGhpcy5pbml0aWFsaXplZC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,30 @@
1
+ export var IbFilterOperator;
2
+ (function (IbFilterOperator) {
3
+ IbFilterOperator[IbFilterOperator["NONE"] = 0] = "NONE";
4
+ IbFilterOperator[IbFilterOperator["EQUALS"] = 1] = "EQUALS";
5
+ IbFilterOperator[IbFilterOperator["NOT_EQUALS"] = 2] = "NOT_EQUALS";
6
+ IbFilterOperator[IbFilterOperator["LESS_THAN"] = 3] = "LESS_THAN";
7
+ IbFilterOperator[IbFilterOperator["LESS_THAN_EQUALS"] = 4] = "LESS_THAN_EQUALS";
8
+ IbFilterOperator[IbFilterOperator["GREATER_THAN"] = 5] = "GREATER_THAN";
9
+ IbFilterOperator[IbFilterOperator["GREATER_THAN_EQUALS"] = 6] = "GREATER_THAN_EQUALS";
10
+ IbFilterOperator[IbFilterOperator["CONTAINS"] = 7] = "CONTAINS";
11
+ IbFilterOperator[IbFilterOperator["NOT_CONTAINS"] = 8] = "NOT_CONTAINS";
12
+ IbFilterOperator[IbFilterOperator["STARTS_WITH"] = 9] = "STARTS_WITH";
13
+ IbFilterOperator[IbFilterOperator["ENDS_WITH"] = 10] = "ENDS_WITH";
14
+ IbFilterOperator[IbFilterOperator["AND"] = 11] = "AND";
15
+ IbFilterOperator[IbFilterOperator["OR"] = 12] = "OR";
16
+ })(IbFilterOperator || (IbFilterOperator = {}));
17
+ export var IbDateFilterCategory;
18
+ (function (IbDateFilterCategory) {
19
+ IbDateFilterCategory["WITHIN"] = "within";
20
+ IbDateFilterCategory["MORE_THAN"] = "moreThan";
21
+ IbDateFilterCategory["RANGE"] = "range";
22
+ })(IbDateFilterCategory || (IbDateFilterCategory = {}));
23
+ export var IbDateFilterPeriod;
24
+ (function (IbDateFilterPeriod) {
25
+ IbDateFilterPeriod[IbDateFilterPeriod["MINUTES"] = 1] = "MINUTES";
26
+ IbDateFilterPeriod[IbDateFilterPeriod["HOURS"] = 2] = "HOURS";
27
+ IbDateFilterPeriod[IbDateFilterPeriod["DAYS"] = 3] = "DAYS";
28
+ IbDateFilterPeriod[IbDateFilterPeriod["WEEKS"] = 4] = "WEEKS";
29
+ })(IbDateFilterPeriod || (IbDateFilterPeriod = {}));
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9pbm9iZXRhLXVpL3VpL2thaS1maWx0ZXIvZmlsdGVyLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGdCQWNYO0FBZEQsV0FBWSxnQkFBZ0I7SUFDMUIsdURBQUksQ0FBQTtJQUNKLDJEQUFNLENBQUE7SUFDTixtRUFBVSxDQUFBO0lBQ1YsaUVBQVMsQ0FBQTtJQUNULCtFQUFnQixDQUFBO0lBQ2hCLHVFQUFZLENBQUE7SUFDWixxRkFBbUIsQ0FBQTtJQUNuQiwrREFBUSxDQUFBO0lBQ1IsdUVBQVksQ0FBQTtJQUNaLHFFQUFXLENBQUE7SUFDWCxrRUFBUyxDQUFBO0lBQ1Qsc0RBQUcsQ0FBQTtJQUNILG9EQUFFLENBQUE7QUFDSixDQUFDLEVBZFcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQWMzQjtBQXVCRCxNQUFNLENBQU4sSUFBWSxvQkFJWDtBQUpELFdBQVksb0JBQW9CO0lBQzlCLHlDQUFpQixDQUFBO0lBQ2pCLDhDQUFzQixDQUFBO0lBQ3RCLHVDQUFlLENBQUE7QUFDakIsQ0FBQyxFQUpXLG9CQUFvQixLQUFwQixvQkFBb0IsUUFJL0I7QUFFRCxNQUFNLENBQU4sSUFBWSxrQkFLWDtBQUxELFdBQVksa0JBQWtCO0lBQzVCLGlFQUFXLENBQUE7SUFDWCw2REFBSyxDQUFBO0lBQ0wsMkRBQUksQ0FBQTtJQUNKLDZEQUFLLENBQUE7QUFDUCxDQUFDLEVBTFcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUs3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEliRmlsdGVyT3BlcmF0b3Ige1xuICBOT05FLFxuICBFUVVBTFMsXG4gIE5PVF9FUVVBTFMsXG4gIExFU1NfVEhBTixcbiAgTEVTU19USEFOX0VRVUFMUyxcbiAgR1JFQVRFUl9USEFOLFxuICBHUkVBVEVSX1RIQU5fRVFVQUxTLFxuICBDT05UQUlOUyxcbiAgTk9UX0NPTlRBSU5TLFxuICBTVEFSVFNfV0lUSCxcbiAgRU5EU19XSVRILFxuICBBTkQsXG4gIE9SLFxufVxuXG5leHBvcnQgdHlwZSBJYkZpbHRlckRlZiA9IHtcbiAgb3BlcmF0b3I6IEliRmlsdGVyT3BlcmF0b3I7XG4gIHZhbHVlOiBJYkZpbHRlckRlZltdIHwgc3RyaW5nIHwgbnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgSWJGaWx0ZXJTeW50YXggPSBSZWNvcmQ8c3RyaW5nLCBJYkZpbHRlckRlZj47XG4vL0ZJWE1FOiB3aHkgaWJTZWFyY2hCYXIgaXMgbm90IGluIEliRmlsdGVyU3ludGF4PyBJdCBzaG91bGQgYmUgYSB0ZXh0IGZpbHRlciB3aXRoIG9wZXJhdG9yIFwiY29udGFpbnNcIlxuZXhwb3J0IHR5cGUgSWJGaWx0ZXJTeW50YXhFeHRlbmRlZCA9IEliRmlsdGVyU3ludGF4ICYgeyBpYlNlYXJjaEJhcj86IHN0cmluZyB9O1xuXG5leHBvcnQgdHlwZSBJYlRleHRGaWx0ZXJDcml0ZXJpYSA9IHtcbiAgb3BlcmF0b3I6IEliRmlsdGVyT3BlcmF0b3I7XG4gIHZhbHVlOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBJYlRhZ0ZpbHRlckNyaXRlcmlhPFQgPSBzdHJpbmc+ID0gVFtdO1xuXG5leHBvcnQgdHlwZSBJYk51bWJlckZpbHRlckNyaXRlcmlhID0ge1xuICBtaW46IG51bWJlcjtcbiAgbWF4OiBudW1iZXI7XG59O1xuXG5leHBvcnQgZW51bSBJYkRhdGVGaWx0ZXJDYXRlZ29yeSB7XG4gIFdJVEhJTiA9IFwid2l0aGluXCIsXG4gIE1PUkVfVEhBTiA9IFwibW9yZVRoYW5cIixcbiAgUkFOR0UgPSBcInJhbmdlXCIsXG59XG5cbmV4cG9ydCBlbnVtIEliRGF0ZUZpbHRlclBlcmlvZCB7XG4gIE1JTlVURVMgPSAxLFxuICBIT1VSUyxcbiAgREFZUyxcbiAgV0VFS1MsXG59XG5cbmV4cG9ydCB0eXBlIEliRGF0ZUZpbHRlclBlcmlvZENyaXRlcmlhID0ge1xuICBwZXJpb2Q6IEliRGF0ZUZpbHRlclBlcmlvZDtcbiAgdmFsdWU6IG51bWJlcjtcbn07XG5cbmV4cG9ydCB0eXBlIEliRGF0ZUZpbHRlclJhbmdlQ3JpdGVyaWEgPSB7XG4gIHN0YXJ0OiBEYXRlO1xuICBlbmQ6IERhdGU7XG59O1xuXG5leHBvcnQgdHlwZSBJYkRhdGVGaWx0ZXJDcml0ZXJpYSA9IHtcbiAgY2F0ZWdvcnlTZWxlY3RlZDogSWJEYXRlRmlsdGVyQ2F0ZWdvcnk7XG4gIG1vcmVUaGFuOiBJYkRhdGVGaWx0ZXJQZXJpb2RDcml0ZXJpYTtcbiAgd2l0aGluOiBJYkRhdGVGaWx0ZXJQZXJpb2RDcml0ZXJpYTtcbiAgcmFuZ2U6IEliRGF0ZUZpbHRlclJhbmdlQ3JpdGVyaWE7XG59O1xuXG4vKipcbiAqIFRleHQgcXVlcnkgb2JqZWN0LlxuICpcbiAqIFByb3ZpZGVzIGEgcmVndWxhciBleHByZXNzaW9uIG9yIGEgYGxpa2VgIHBhdHRlcm4uXG4gKi9cbmV4cG9ydCB0eXBlIEliVGV4dFF1ZXJ5ID0ge1xuICAvKipcbiAgICogR2VuZXJhdGVkIHJlZ3VsYXIgZXhwcmVzc2lvbi5cbiAgICogVGhlIHJlc3VsdCBkZXBlbmRzIG9uIHRoZSBzZWxlY3RlZCBjb25kaXRpb24uXG4gICAqXG4gICAqIHwgQ29uZGl0aW9uICAgfCBSZWdleCAgICAgICB8XG4gICAqIHwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS18XG4gICAqIHwgQ29udGFpbnMgICAgfCBgLiphcHBsZS4qYCB8XG4gICAqIHwgU3RhcnRzIHdpdGggfCBgXmFwcGxlLipgICB8XG4gICAqIHwgRW5kcyB3aXRoICAgfCBgLiphcHBsZSRgICB8XG4gICAqIHwgRXF1YWxzICAgICAgfCBgXmFwcGxlJGAgICB8XG4gICAqL1xuICByZWdleDogc3RyaW5nO1xuICAvKipcbiAgICogR2VuZXJhdGVkIHBhdHRlcm4gdG8gYmUgdXNlZCBpbiBhIFNRTCBMSUtFIG9wZXJhdGlvbi5cbiAgICogVGhlIHJlc3VsdCBkZXBlbmRzIG9uIHRoZSBzZWxlY3RlZCBjb25kaXRpb24uXG4gICAqXG4gICAqIHwgQ29uZGl0aW9uICAgfCBQYXR0ZXJuICAgfFxuICAgKiB8LS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLXxcbiAgICogfCBDb250YWlucyAgICB8IGAlYXBwbGUlYCB8XG4gICAqIHwgU3RhcnRzIHdpdGggfCBgYXBwbGUlYCAgfFxuICAgKiB8IEVuZHMgd2l0aCAgIHwgYCVhcHBsZWAgIHxcbiAgICogfCBFcXVhbHMgICAgICB8IGBhcHBsZWAgICB8XG4gICAqL1xuICBsaWtlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDb25kaXRpb24gcHJvdmlkZWQgYnkgdGhlIHVzZXJcbiAgICpcbiAgICogfCBDb25kaXRpb24gICB8IE9wZXJhdG9yICAgfFxuICAgKiB8LS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLXxcbiAgICogfCBDb250YWlucyAgICB8IEliRmlsdGVyT3BlcmF0b3IuQ09OVEFJTlMgICAgfFxuICAgKiB8IFN0YXJ0cyB3aXRoIHwgSWJGaWx0ZXJPcGVyYXRvci5TVEFSVFNfV0lUSCB8XG4gICAqIHwgRW5kcyB3aXRoICAgfCBJYkZpbHRlck9wZXJhdG9yLkVORFNfV0lUSCAgIHxcbiAgICogfCBFcXVhbHMgICAgICB8IEliRmlsdGVyT3BlcmF0b3IuRVFVQUxTICAgICAgfFxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGlmIChmaWx0ZXIudGl0bGUuY29uZGl0aW9uID09PSBJYkZpbHRlck9wZXJhdG9yLlNUQVJUU19XSVRIKSB7XG4gICAqICAgIC8vIHlvdXIgbG9naW5cbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIGNvbmRpdGlvbjogSWJGaWx0ZXJPcGVyYXRvcjtcbiAgLyoqIFF1ZXJ5IHByb3ZpZGVkIGJ5IHRoZSB1c2VyICovXG4gIHRleHQ6IHN0cmluZztcbn07XG5cbi8qKlxuICogTnVtYmVyIHF1ZXJ5IG9iamVjdC5cbiAqXG4gKiBQcm92aWRlcyBhIHJhbmdlIG9mIG51bWJlcnMuXG4gKi9cbmV4cG9ydCB0eXBlIEliTnVtYmVyUXVlcnkgPSB7XG4gIC8qKiBNaW5pbXVtIHZhbHVlIG9mIHRoZSByYW5nZSAqL1xuICBtaW46IG51bWJlcjtcbiAgLyoqIE1heGltdW0gdmFsdWUgb2YgdGhlIHJhbmdlICovXG4gIG1heDogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBPcHRpb25zIHF1ZXJ5IG9iamVjdC5cbiAqXG4gKiBQcm92aWRlcyBhIGxpc3Qgb2Ygb3B0aW9ucyBzZWxlY3RlZC5cbiAqL1xuZXhwb3J0IHR5cGUgSWJUYWdRdWVyeTxUID0gc3RyaW5nPiA9IHtcbiAgLyoqIEFycmF5IG9mIG9wdGlvbnMgc2VsZWN0ZWQgKi9cbiAgaXRlbXM6IFRbXTtcbiAgLyoqIFN0cmluZyBvZiBvcHRpb25zIHNlcGFyYXRlZCBieSBhIGNvbW1hICovXG4gIGpvaW5lZDogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBEYXRlIHF1ZXJ5IG9iamVjdC5cbiAqXG4gKiBQcm92aWRlcyBhIHJhbmdlIG9mIGEgZGF0ZXMuXG4gKi9cbmV4cG9ydCB0eXBlIEliRGF0ZVF1ZXJ5ID0ge1xuICAvKiogU3RhcnQgZGF0ZSBvZiB0aGUgaW50ZXJ2YWwgaW4gSVNPIGZvcm1hdCAqL1xuICBzdGFydDogc3RyaW5nO1xuICAvKiogRW5kIGRhdGUgb2YgdGhlIGludGVydmFsIGluIElTTyBmb3JtYXQgKi9cbiAgZW5kOiBzdHJpbmc7XG59O1xuIl19
@@ -0,0 +1,83 @@
1
+ import { Directive, Input, ViewChild, inject } from "@angular/core";
2
+ import { Subject } from "rxjs";
3
+ import { takeUntil } from "rxjs/operators";
4
+ import { IbFilterButton } from "../../filter-button/filter-button.component";
5
+ import { IB_FILTER } from "../../tokens";
6
+ import * as i0 from "@angular/core";
7
+ export class IbFilterBase {
8
+ button;
9
+ name;
10
+ searchCriteria;
11
+ get rawValue() {
12
+ return this.filter?.selectedCriteria[this.name];
13
+ }
14
+ get isDirty() {
15
+ const value = this.filter.value[this.name]?.value;
16
+ return value != null || value != undefined;
17
+ }
18
+ _destroyed = new Subject();
19
+ filter = inject(IB_FILTER);
20
+ ngOnInit() {
21
+ if (!this.name) {
22
+ throw Error("Filter must have a name.");
23
+ }
24
+ if (!this.searchCriteria) {
25
+ throw Error(`Filter ${this.name} has no search criteria`);
26
+ }
27
+ this.filter.form.addControl(this.name, this.searchCriteria);
28
+ }
29
+ ngAfterViewInit() {
30
+ this.button?.trigger.menuClosed
31
+ .pipe(takeUntil(this._destroyed))
32
+ .subscribe(() => {
33
+ this.revertFilter();
34
+ });
35
+ }
36
+ ngOnDestroy() {
37
+ this.filter.form.removeControl(this.name);
38
+ this.filter.update();
39
+ this._destroyed.next();
40
+ this._destroyed.complete();
41
+ }
42
+ revertFilter() {
43
+ this.searchCriteria.patchValue(this.rawValue);
44
+ }
45
+ build() {
46
+ throw Error(`Filter ${this.name} has no build method defined.`);
47
+ }
48
+ toQuery() {
49
+ throw Error(`Filter ${this.name} has no toQuery method defined.`);
50
+ }
51
+ applyFilter() {
52
+ if (!this.searchCriteria.valid) {
53
+ this.searchCriteria.markAllAsTouched();
54
+ return;
55
+ }
56
+ this.filter?.update();
57
+ this.closeMenu();
58
+ }
59
+ initializeFromColumn(data) { }
60
+ clear() {
61
+ this.searchCriteria.markAsPristine();
62
+ this.searchCriteria.clearValidators();
63
+ this.searchCriteria.reset();
64
+ this.filter?.update();
65
+ }
66
+ closeMenu() {
67
+ this.button?.closeMenu();
68
+ }
69
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbFilterBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
70
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.1", type: IbFilterBase, selector: "ib-filter-base", inputs: { name: "name" }, viewQueries: [{ propertyName: "button", first: true, predicate: IbFilterButton, descendants: true }], ngImport: i0 });
71
+ }
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbFilterBase, decorators: [{
73
+ type: Directive,
74
+ args: [{
75
+ selector: "ib-filter-base",
76
+ }]
77
+ }], propDecorators: { button: [{
78
+ type: ViewChild,
79
+ args: [IbFilterButton]
80
+ }], name: [{
81
+ type: Input
82
+ }] } });
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2lub2JldGEtdWkvdWkva2FpLWZpbHRlci9maWx0ZXJzL2Jhc2UvZmlsdGVyLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFHN0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFzQnpDLE1BQU0sT0FBTyxZQUFZO0lBQ0ksTUFBTSxDQUFpQjtJQUV6QyxJQUFJLENBQVM7SUFFdEIsY0FBYyxDQUEwQjtJQUV4QyxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDO1FBQ2xELE9BQU8sS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLElBQUksU0FBUyxDQUFDO0lBQzdDLENBQUM7SUFFUyxVQUFVLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUMzQyxNQUFNLEdBQWEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRXJDLFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2YsTUFBTSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixNQUFNLEtBQUssQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLHlCQUF5QixDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLFVBQVU7YUFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDaEMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsS0FBSztRQUNILE1BQU0sS0FBSyxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksK0JBQStCLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsT0FBTztRQUNMLE1BQU0sS0FBSyxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksaUNBQWlDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUN2QyxPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxJQUFXLElBQVMsQ0FBQztJQUUxQyxLQUFLO1FBQ0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFDM0IsQ0FBQzt1R0E5RVUsWUFBWTsyRkFBWixZQUFZLHdIQUNaLGNBQWM7OzJGQURkLFlBQVk7a0JBSHhCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtpQkFDM0I7OEJBRTRCLE1BQU07c0JBQWhDLFNBQVM7dUJBQUMsY0FBYztnQkFFaEIsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgVmlld0NoaWxkLCBpbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IEliRmlsdGVyQnV0dG9uIH0gZnJvbSBcIi4uLy4uL2ZpbHRlci1idXR0b24vZmlsdGVyLWJ1dHRvbi5jb21wb25lbnRcIjtcbmltcG9ydCB7IEliRmlsdGVyIH0gZnJvbSBcIi4uLy4uL2ZpbHRlci5jb21wb25lbnRcIjtcbmltcG9ydCB7IEliRmlsdGVyRGVmIH0gZnJvbSBcIi4uLy4uL2ZpbHRlci50eXBlc1wiO1xuaW1wb3J0IHsgSUJfRklMVEVSIH0gZnJvbSBcIi4uLy4uL3Rva2Vuc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIElGaWx0ZXJCYXNlIHtcbiAgLyoqIE5hbWUgdGhhdCBzaG91bGQgYmUgdXNlZCB0byByZWZlcmVuY2UgdGhpcyBmaWx0ZXIuICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIFJhICovXG4gIHNlYXJjaENyaXRlcmlhOiBGb3JtQ29udHJvbCB8IEZvcm1Hcm91cDtcblxuICAvKiogUGVyZm9ybSB2YWxpZGF0aW9uIGFuZCBjYWxsIGBmaWx0ZXIudXBkYXRlKClgICovXG4gIGFwcGx5RmlsdGVyKCk6IHZvaWQ7XG4gIC8qKiBSZXNldCBzZWFyY2ggY3JpdGVyaWEgYW5kIGNhbGwgYGZpbHRlci51cGRhdGUoKWAgKi9cbiAgY2xlYXIoKTogdm9pZDtcbiAgLyoqIEJ1aWxkIGZpbHRlciBzeW50YXggKi9cbiAgYnVpbGQoKTogSWJGaWx0ZXJEZWY7XG4gIHRvUXVlcnkoKTogYW55O1xuICAvKiogICovXG4gIGluaXRpYWxpemVGcm9tQ29sdW1uKGRhdGE6IGFueVtdKTogdm9pZDtcbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBcImliLWZpbHRlci1iYXNlXCIsXG59KVxuZXhwb3J0IGNsYXNzIEliRmlsdGVyQmFzZSBpbXBsZW1lbnRzIElGaWx0ZXJCYXNlIHtcbiAgQFZpZXdDaGlsZChJYkZpbHRlckJ1dHRvbikgYnV0dG9uOiBJYkZpbHRlckJ1dHRvbjtcblxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmc7XG5cbiAgc2VhcmNoQ3JpdGVyaWE6IEZvcm1Hcm91cCB8IEZvcm1Db250cm9sO1xuXG4gIGdldCByYXdWYWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXI/LnNlbGVjdGVkQ3JpdGVyaWFbdGhpcy5uYW1lXTtcbiAgfVxuXG4gIGdldCBpc0RpcnR5KCkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5maWx0ZXIudmFsdWVbdGhpcy5uYW1lXT8udmFsdWU7XG4gICAgcmV0dXJuIHZhbHVlICE9IG51bGwgfHwgdmFsdWUgIT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9kZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBmaWx0ZXI6IEliRmlsdGVyID0gaW5qZWN0KElCX0ZJTFRFUik7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKCF0aGlzLm5hbWUpIHtcbiAgICAgIHRocm93IEVycm9yKFwiRmlsdGVyIG11c3QgaGF2ZSBhIG5hbWUuXCIpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5zZWFyY2hDcml0ZXJpYSkge1xuICAgICAgdGhyb3cgRXJyb3IoYEZpbHRlciAke3RoaXMubmFtZX0gaGFzIG5vIHNlYXJjaCBjcml0ZXJpYWApO1xuICAgIH1cblxuICAgIHRoaXMuZmlsdGVyLmZvcm0uYWRkQ29udHJvbCh0aGlzLm5hbWUsIHRoaXMuc2VhcmNoQ3JpdGVyaWEpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuYnV0dG9uPy50cmlnZ2VyLm1lbnVDbG9zZWRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95ZWQpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMucmV2ZXJ0RmlsdGVyKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZmlsdGVyLmZvcm0ucmVtb3ZlQ29udHJvbCh0aGlzLm5hbWUpO1xuICAgIHRoaXMuZmlsdGVyLnVwZGF0ZSgpO1xuICAgIHRoaXMuX2Rlc3Ryb3llZC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveWVkLmNvbXBsZXRlKCk7XG4gIH1cblxuICByZXZlcnRGaWx0ZXIoKSB7XG4gICAgdGhpcy5zZWFyY2hDcml0ZXJpYS5wYXRjaFZhbHVlKHRoaXMucmF3VmFsdWUpO1xuICB9XG5cbiAgYnVpbGQoKTogSWJGaWx0ZXJEZWYge1xuICAgIHRocm93IEVycm9yKGBGaWx0ZXIgJHt0aGlzLm5hbWV9IGhhcyBubyBidWlsZCBtZXRob2QgZGVmaW5lZC5gKTtcbiAgfVxuXG4gIHRvUXVlcnkoKSB7XG4gICAgdGhyb3cgRXJyb3IoYEZpbHRlciAke3RoaXMubmFtZX0gaGFzIG5vIHRvUXVlcnkgbWV0aG9kIGRlZmluZWQuYCk7XG4gIH1cblxuICBhcHBseUZpbHRlcigpIHtcbiAgICBpZiAoIXRoaXMuc2VhcmNoQ3JpdGVyaWEudmFsaWQpIHtcbiAgICAgIHRoaXMuc2VhcmNoQ3JpdGVyaWEubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZpbHRlcj8udXBkYXRlKCk7XG4gICAgdGhpcy5jbG9zZU1lbnUoKTtcbiAgfVxuXG4gIGluaXRpYWxpemVGcm9tQ29sdW1uKGRhdGE6IGFueVtdKTogdm9pZCB7fVxuXG4gIGNsZWFyKCkge1xuICAgIHRoaXMuc2VhcmNoQ3JpdGVyaWEubWFya0FzUHJpc3RpbmUoKTtcbiAgICB0aGlzLnNlYXJjaENyaXRlcmlhLmNsZWFyVmFsaWRhdG9ycygpO1xuICAgIHRoaXMuc2VhcmNoQ3JpdGVyaWEucmVzZXQoKTtcbiAgICB0aGlzLmZpbHRlcj8udXBkYXRlKCk7XG4gIH1cblxuICBjbG9zZU1lbnUoKSB7XG4gICAgdGhpcy5idXR0b24/LmNsb3NlTWVudSgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,48 @@
1
+ import { LowerCasePipe, NgIf } from "@angular/common";
2
+ import { Component } from "@angular/core";
3
+ import { FormControl, ReactiveFormsModule } from "@angular/forms";
4
+ import { MatButtonModule } from "@angular/material/button";
5
+ import { MatButtonToggleModule } from "@angular/material/button-toggle";
6
+ import { MatRadioModule } from "@angular/material/radio";
7
+ import { TranslateModule } from "@ngx-translate/core";
8
+ import { IbFilterActionGroup } from "../../filter-button/filter-action-group.component";
9
+ import { IbFilterButton } from "../../filter-button/filter-button.component";
10
+ import { eq, none } from "../../filters";
11
+ import { IbFilterBase } from "../base/filter-base";
12
+ import * as i0 from "@angular/core";
13
+ import * as i1 from "@angular/forms";
14
+ import * as i2 from "@angular/material/button";
15
+ import * as i3 from "@angular/material/button-toggle";
16
+ import * as i4 from "@ngx-translate/core";
17
+ export class IbBooleanFilter extends IbFilterBase {
18
+ searchCriteria = new FormControl(null);
19
+ get displayValue() {
20
+ return this.rawValue;
21
+ }
22
+ build() {
23
+ if (this.searchCriteria.value === null) {
24
+ return none();
25
+ }
26
+ return eq(this.searchCriteria.value);
27
+ }
28
+ toQuery() {
29
+ return this.searchCriteria.value;
30
+ }
31
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbBooleanFilter, deps: null, target: i0.ɵɵFactoryTarget.Component });
32
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: IbBooleanFilter, isStandalone: true, selector: "ib-boolean-filter", providers: [{ provide: IbFilterBase, useExisting: IbBooleanFilter }], usesInheritance: true, ngImport: i0, template: "<ib-filter-button>\n <span ib-filter-name><ng-content></ng-content></span>\n <span ib-filter-value *ngIf=\"isDirty\">\n {{ (displayValue ? \"shared.ibFilter.true\" : \"shared.ibFilter.false\") | translate | lowercase }}\n </span>\n\n <section [formGroup]=\"filter.form\" style=\"padding: .5em 1em 1em 1em\">\n <mat-button-toggle-group [formControlName]=\"name\" style=\"width: 100%;\">\n <mat-button-toggle [value]=\"true\" style=\"width: 100%;\">{{ \"shared.ibFilter.true\" | translate }}</mat-button-toggle>\n <mat-button-toggle [value]=\"false\" style=\"width: 100%;\"> {{ \"shared.ibFilter.false\" | translate }}</mat-button-toggle>\n </mat-button-toggle-group>\n </section>\n\n <ib-filter-action-group>\n <button mat-button (click)=\"clear()\" [disabled]=\"!isDirty\">\n {{ \"shared.ibFilter.clear\" | translate }}\n </button>\n <button mat-button color=\"primary\" (click)=\"applyFilter()\">\n {{ \"shared.ibFilter.update\" | translate }}\n </button>\n </ib-filter-action-group>\n</ib-filter-button>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IbFilterButton, selector: "ib-filter-button" }, { kind: "directive", type: IbFilterActionGroup, selector: "ib-filter-action-group" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i3.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i3.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "pipe", type: LowerCasePipe, name: "lowercase" }] });
33
+ }
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbBooleanFilter, decorators: [{
35
+ type: Component,
36
+ args: [{ standalone: true, imports: [
37
+ NgIf,
38
+ IbFilterButton,
39
+ IbFilterActionGroup,
40
+ ReactiveFormsModule,
41
+ MatButtonModule,
42
+ MatButtonToggleModule,
43
+ MatRadioModule,
44
+ TranslateModule,
45
+ LowerCasePipe,
46
+ ], selector: "ib-boolean-filter", providers: [{ provide: IbFilterBase, useExisting: IbBooleanFilter }], template: "<ib-filter-button>\n <span ib-filter-name><ng-content></ng-content></span>\n <span ib-filter-value *ngIf=\"isDirty\">\n {{ (displayValue ? \"shared.ibFilter.true\" : \"shared.ibFilter.false\") | translate | lowercase }}\n </span>\n\n <section [formGroup]=\"filter.form\" style=\"padding: .5em 1em 1em 1em\">\n <mat-button-toggle-group [formControlName]=\"name\" style=\"width: 100%;\">\n <mat-button-toggle [value]=\"true\" style=\"width: 100%;\">{{ \"shared.ibFilter.true\" | translate }}</mat-button-toggle>\n <mat-button-toggle [value]=\"false\" style=\"width: 100%;\"> {{ \"shared.ibFilter.false\" | translate }}</mat-button-toggle>\n </mat-button-toggle-group>\n </section>\n\n <ib-filter-action-group>\n <button mat-button (click)=\"clear()\" [disabled]=\"!isDirty\">\n {{ \"shared.ibFilter.clear\" | translate }}\n </button>\n <button mat-button color=\"primary\" (click)=\"applyFilter()\">\n {{ \"shared.ibFilter.update\" | translate }}\n </button>\n </ib-filter-action-group>\n</ib-filter-button>" }]
47
+ }] });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9pbm9iZXRhLXVpL3VpL2thaS1maWx0ZXIvZmlsdGVycy9ib29sZWFuL2Jvb2xlYW4tZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvaW5vYmV0YS11aS91aS9rYWktZmlsdGVyL2ZpbHRlcnMvYm9vbGVhbi9ib29sZWFuLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUU3RSxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7OztBQW1CbkQsTUFBTSxPQUFPLGVBQWdCLFNBQVEsWUFBWTtJQUMvQyxjQUFjLEdBQUcsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFdkMsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN2QyxPQUFPLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztJQUNuQyxDQUFDO3VHQWpCVSxlQUFlOzJGQUFmLGVBQWUsZ0VBRmYsQ0FBQyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxDQUFDLGlEQzVCdEUsK2hDQXFCbUIsNENETGYsSUFBSSw2RkFDSixjQUFjLDZEQUNkLG1CQUFtQixrRUFDbkIsbUJBQW1CLG1sQkFDbkIsZUFBZSwyTkFDZixxQkFBcUIsd2xCQUNyQixjQUFjLDhCQUNkLGVBQWUsdUZBQ2YsYUFBYTs7MkZBTUosZUFBZTtrQkFqQjNCLFNBQVM7aUNBQ0ksSUFBSSxXQUNQO3dCQUNQLElBQUk7d0JBQ0osY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixhQUFhO3FCQUNkLFlBQ1MsbUJBQW1CLGFBRWxCLENBQUMsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsaUJBQWlCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvd2VyQ2FzZVBpcGUsIE5nSWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b25cIjtcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlXCI7XG5pbXBvcnQgeyBNYXRSYWRpb01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9yYWRpb1wiO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IEliRmlsdGVyQWN0aW9uR3JvdXAgfSBmcm9tIFwiLi4vLi4vZmlsdGVyLWJ1dHRvbi9maWx0ZXItYWN0aW9uLWdyb3VwLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgSWJGaWx0ZXJCdXR0b24gfSBmcm9tIFwiLi4vLi4vZmlsdGVyLWJ1dHRvbi9maWx0ZXItYnV0dG9uLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgSWJGaWx0ZXJEZWYgfSBmcm9tIFwiLi4vLi4vZmlsdGVyLnR5cGVzXCI7XG5pbXBvcnQgeyBlcSwgbm9uZSB9IGZyb20gXCIuLi8uLi9maWx0ZXJzXCI7XG5pbXBvcnQgeyBJYkZpbHRlckJhc2UgfSBmcm9tIFwiLi4vYmFzZS9maWx0ZXItYmFzZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgSWJGaWx0ZXJCdXR0b24sXG4gICAgSWJGaWx0ZXJBY3Rpb25Hcm91cCxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRCdXR0b25Ub2dnbGVNb2R1bGUsXG4gICAgTWF0UmFkaW9Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIExvd2VyQ2FzZVBpcGUsXG4gIF0sXG4gIHNlbGVjdG9yOiBcImliLWJvb2xlYW4tZmlsdGVyXCIsXG4gIHRlbXBsYXRlVXJsOiBcImJvb2xlYW4tZmlsdGVyLmNvbXBvbmVudC5odG1sXCIsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogSWJGaWx0ZXJCYXNlLCB1c2VFeGlzdGluZzogSWJCb29sZWFuRmlsdGVyIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBJYkJvb2xlYW5GaWx0ZXIgZXh0ZW5kcyBJYkZpbHRlckJhc2Uge1xuICBzZWFyY2hDcml0ZXJpYSA9IG5ldyBGb3JtQ29udHJvbChudWxsKTtcblxuICBnZXQgZGlzcGxheVZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnJhd1ZhbHVlO1xuICB9XG5cbiAgYnVpbGQoKTogSWJGaWx0ZXJEZWYge1xuICAgIGlmICh0aGlzLnNlYXJjaENyaXRlcmlhLnZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbm9uZSgpO1xuICAgIH1cblxuICAgIHJldHVybiBlcSh0aGlzLnNlYXJjaENyaXRlcmlhLnZhbHVlKTtcbiAgfVxuXG4gIHRvUXVlcnkoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoQ3JpdGVyaWEudmFsdWU7XG4gIH1cbn1cbiIsIjxpYi1maWx0ZXItYnV0dG9uPlxuICA8c3BhbiBpYi1maWx0ZXItbmFtZT48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9zcGFuPlxuICA8c3BhbiBpYi1maWx0ZXItdmFsdWUgKm5nSWY9XCJpc0RpcnR5XCI+XG4gICAge3sgKGRpc3BsYXlWYWx1ZSA/IFwic2hhcmVkLmliRmlsdGVyLnRydWVcIiA6IFwic2hhcmVkLmliRmlsdGVyLmZhbHNlXCIpIHwgdHJhbnNsYXRlIHwgbG93ZXJjYXNlIH19XG4gIDwvc3Bhbj5cblxuICA8c2VjdGlvbiBbZm9ybUdyb3VwXT1cImZpbHRlci5mb3JtXCIgc3R5bGU9XCJwYWRkaW5nOiAuNWVtIDFlbSAxZW0gMWVtXCI+XG4gICAgPG1hdC1idXR0b24tdG9nZ2xlLWdyb3VwIFtmb3JtQ29udHJvbE5hbWVdPVwibmFtZVwiIHN0eWxlPVwid2lkdGg6IDEwMCU7XCI+XG4gICAgICA8bWF0LWJ1dHRvbi10b2dnbGUgW3ZhbHVlXT1cInRydWVcIiBzdHlsZT1cIndpZHRoOiAxMDAlO1wiPnt7IFwic2hhcmVkLmliRmlsdGVyLnRydWVcIiB8IHRyYW5zbGF0ZSB9fTwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gICAgICA8bWF0LWJ1dHRvbi10b2dnbGUgW3ZhbHVlXT1cImZhbHNlXCIgc3R5bGU9XCJ3aWR0aDogMTAwJTtcIj4ge3sgXCJzaGFyZWQuaWJGaWx0ZXIuZmFsc2VcIiB8IHRyYW5zbGF0ZSB9fTwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gICAgPC9tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cD5cbiAgPC9zZWN0aW9uPlxuXG4gIDxpYi1maWx0ZXItYWN0aW9uLWdyb3VwPlxuICAgIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwiY2xlYXIoKVwiIFtkaXNhYmxlZF09XCIhaXNEaXJ0eVwiPlxuICAgICAge3sgXCJzaGFyZWQuaWJGaWx0ZXIuY2xlYXJcIiB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiYXBwbHlGaWx0ZXIoKVwiPlxuICAgICAge3sgXCJzaGFyZWQuaWJGaWx0ZXIudXBkYXRlXCIgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9pYi1maWx0ZXItYWN0aW9uLWdyb3VwPlxuPC9pYi1maWx0ZXItYnV0dG9uPiJdfQ==