@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,260 @@
1
+ import { NgTemplateOutlet } from "@angular/common";
2
+ import { ChangeDetectionStrategy, Component, ContentChild, Input, ViewChild, booleanAttribute, inject, } from "@angular/core";
3
+ import { MatSortModule } from "@angular/material/sort";
4
+ import { MatCellDef, MatColumnDef, MatFooterCellDef, MatHeaderCellDef, MatTableModule, } from "@angular/material/table";
5
+ import { IbAggregateCell, IbCellDef } from "../cells";
6
+ import { IbSortHeader } from "../sort-header";
7
+ import { IB_COLUMN_OPTIONS, IB_TABLE } from "../tokens";
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/material/sort";
10
+ import * as i2 from "@angular/material/table";
11
+ /**
12
+ * Column that shows any arbitrary content for the row cells.
13
+ *
14
+ * It requires a single element with the `*ibCellDef` directive in its template.
15
+ *
16
+ * By default, the name of this column will be the header text and data property accessor.
17
+ * The header text can be overridden with the `headerText` input. Cell values can be overridden with
18
+ * the `dataAccessor` input.
19
+ */
20
+ export class IbColumn {
21
+ /** Column name that should be used to reference this column. */
22
+ get name() {
23
+ return this._name;
24
+ }
25
+ set name(name) {
26
+ this._name = name;
27
+ // With Ivy, inputs can be initialized before static query results are
28
+ // available. In that case, we defer the synchronization until "ngOnInit" fires.
29
+ this._syncColumnDefName();
30
+ }
31
+ _name;
32
+ /**
33
+ * Text label that should be used for the column header. If this property is not
34
+ * set, the header text will default to the column name with its first letter capitalized.
35
+ */
36
+ headerText;
37
+ /**
38
+ * Accessor function to retrieve the data rendered for each cell. If this
39
+ * property is not set, the data cells will render the value found in the data's property matching
40
+ * the column's name. For example, if the column is named `id`, then the rendered value will be
41
+ * value defined by the data's `id` property.
42
+ */
43
+ dataAccessor;
44
+ /**
45
+ * Data accessor function that is used to retrieve data properties for sorting
46
+ */
47
+ sortingDataAccessor;
48
+ /**
49
+ * Data accessor function that is used to retrieve data properties for filtering
50
+ */
51
+ filterDataAccessor;
52
+ /**
53
+ * Enables sorting for the column.
54
+ */
55
+ sort = false;
56
+ /** Whether sticky positioning should be applied. */
57
+ sticky = false;
58
+ /** Whether this column should be sticky positioned on the end of the row. */
59
+ stickyEnd = false;
60
+ /** Whether this column should display in the roll-up footer. */
61
+ aggregate = false;
62
+ get aggregationFunction() {
63
+ return this._table.dataSource.aggregatedColumns?.[this.name];
64
+ }
65
+ get aggregatedData() {
66
+ return this._table.dataSource.aggregatedData[this.name];
67
+ }
68
+ ibCellDef;
69
+ /** @ignore */
70
+ columnDef;
71
+ /**
72
+ * The column cell, headerCell, and footerCell are provided to the column during `ngOnInit` with a static query.
73
+ * Normally, this will be retrieved by the column using `ContentChild`, but that assumes the
74
+ * column definition was provided in the same view as the table, which is not the case with this
75
+ * component.
76
+ * @ignore
77
+ */
78
+ cell;
79
+ headerCell;
80
+ footerCell;
81
+ aggregateCell;
82
+ /** @ignore */
83
+ get matSort() {
84
+ return this._table.sort;
85
+ }
86
+ _table = inject(IB_TABLE, { optional: true });
87
+ _options = inject(IB_COLUMN_OPTIONS, { optional: true }) || {};
88
+ ngOnInit() {
89
+ this._syncColumnDefName();
90
+ if (this.headerText === undefined) {
91
+ this.headerText = this._createDefaultHeaderText();
92
+ }
93
+ if (!this.dataAccessor) {
94
+ this.dataAccessor =
95
+ this._options.defaultDataAccessor ||
96
+ ((data, name) => data[name]);
97
+ }
98
+ if (!this.sortingDataAccessor) {
99
+ this.sortingDataAccessor = this.dataAccessor;
100
+ }
101
+ if (!this.filterDataAccessor) {
102
+ this.filterDataAccessor = this.dataAccessor;
103
+ }
104
+ if (this._table) {
105
+ // Provide the cell and headerCell directly to the table with the static `ViewChild` query,
106
+ // since the columnDef will not pick up its content by the time the table finishes checking
107
+ // its content and initializing the rows.
108
+ this.columnDef.cell = this.cell;
109
+ this.columnDef.headerCell = this.headerCell;
110
+ this.columnDef.footerCell = this.footerCell;
111
+ this._table.matTable.addColumnDef(this.columnDef);
112
+ }
113
+ }
114
+ ngOnDestroy() {
115
+ if (this._table) {
116
+ this._table.matTable.removeColumnDef(this.columnDef);
117
+ }
118
+ }
119
+ /**
120
+ * Creates a default header text. Use the options' header text transformation function if one
121
+ * has been provided. Otherwise simply capitalize the column name.
122
+ */
123
+ _createDefaultHeaderText() {
124
+ const name = this.name;
125
+ if (!name) {
126
+ throw Error(`Table column must have a name.`);
127
+ }
128
+ if (this._options && this._options.defaultHeaderTextTransform) {
129
+ return this._options.defaultHeaderTextTransform(name);
130
+ }
131
+ return name[0].toUpperCase() + name.slice(1);
132
+ }
133
+ handleAggregationChange(fun) {
134
+ this._table.dataSource.aggregate.next({
135
+ columnName: this.name,
136
+ function: fun,
137
+ });
138
+ }
139
+ /** Synchronizes the column definition name with the text column name. */
140
+ _syncColumnDefName() {
141
+ if (this.columnDef) {
142
+ this.columnDef.name = this.name;
143
+ }
144
+ }
145
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbColumn, deps: [], target: i0.ɵɵFactoryTarget.Component });
146
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.1.1", type: IbColumn, isStandalone: true, selector: "ib-column", inputs: { name: "name", headerText: "headerText", dataAccessor: "dataAccessor", sortingDataAccessor: "sortingDataAccessor", filterDataAccessor: "filterDataAccessor", sort: ["sort", "sort", booleanAttribute], sticky: ["sticky", "sticky", booleanAttribute], stickyEnd: ["stickyEnd", "stickyEnd", booleanAttribute], aggregate: ["aggregate", "aggregate", booleanAttribute] }, queries: [{ propertyName: "ibCellDef", first: true, predicate: IbCellDef, descendants: true, static: true }], viewQueries: [{ propertyName: "columnDef", first: true, predicate: MatColumnDef, descendants: true, static: true }, { propertyName: "cell", first: true, predicate: MatCellDef, descendants: true, static: true }, { propertyName: "headerCell", first: true, predicate: MatHeaderCellDef, descendants: true, static: true }, { propertyName: "footerCell", first: true, predicate: MatFooterCellDef, descendants: true, static: true }, { propertyName: "aggregateCell", first: true, predicate: IbAggregateCell, descendants: true }], ngImport: i0, template: `
147
+ <ng-container
148
+ matColumnDef
149
+ matSort
150
+ [sticky]="sticky"
151
+ [stickyEnd]="stickyEnd"
152
+ >
153
+ <th
154
+ class="ib-table__header-cell"
155
+ mat-header-cell
156
+ *matHeaderCellDef
157
+ [ibSortHeaderFor]="matSort"
158
+ mat-sort-header
159
+ [disabled]="!sort"
160
+ >
161
+ {{ headerText }}
162
+ </th>
163
+ <td mat-cell *matCellDef="let data">
164
+ <ng-container
165
+ *ngTemplateOutlet="
166
+ ibCellDef.templateRef;
167
+ context: { $implicit: data }
168
+ "
169
+ >
170
+ </ng-container>
171
+ </td>
172
+ <td mat-footer-cell *matFooterCellDef></td>
173
+ </ng-container>
174
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: MatSortModule }, { kind: "directive", type: i1.MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i1.MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "ngmodule", type: MatTableModule }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i2.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "directive", type: IbSortHeader, selector: "[ib-sort-header-for], [ibSortHeaderFor]", inputs: ["ibSortHeaderFor"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.Default });
175
+ }
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbColumn, decorators: [{
177
+ type: Component,
178
+ args: [{
179
+ selector: "ib-column",
180
+ template: `
181
+ <ng-container
182
+ matColumnDef
183
+ matSort
184
+ [sticky]="sticky"
185
+ [stickyEnd]="stickyEnd"
186
+ >
187
+ <th
188
+ class="ib-table__header-cell"
189
+ mat-header-cell
190
+ *matHeaderCellDef
191
+ [ibSortHeaderFor]="matSort"
192
+ mat-sort-header
193
+ [disabled]="!sort"
194
+ >
195
+ {{ headerText }}
196
+ </th>
197
+ <td mat-cell *matCellDef="let data">
198
+ <ng-container
199
+ *ngTemplateOutlet="
200
+ ibCellDef.templateRef;
201
+ context: { $implicit: data }
202
+ "
203
+ >
204
+ </ng-container>
205
+ </td>
206
+ <td mat-footer-cell *matFooterCellDef></td>
207
+ </ng-container>
208
+ `,
209
+ // Change detection is intentionally not set to OnPush. This component's template will be provided
210
+ // to the table to be inserted into its view. This is problematic when change detection runs since
211
+ // the bindings in this template will be evaluated _after_ the table's view is evaluated, which
212
+ // mean's the template in the table's view will not have the updated value (and in fact will cause
213
+ // an ExpressionChangedAfterItHasBeenCheckedError).
214
+ // tslint:disable-next-line:validate-decorators
215
+ changeDetection: ChangeDetectionStrategy.Default,
216
+ standalone: true,
217
+ imports: [MatSortModule, MatTableModule, IbSortHeader, NgTemplateOutlet],
218
+ }]
219
+ }], propDecorators: { name: [{
220
+ type: Input
221
+ }], headerText: [{
222
+ type: Input
223
+ }], dataAccessor: [{
224
+ type: Input
225
+ }], sortingDataAccessor: [{
226
+ type: Input
227
+ }], filterDataAccessor: [{
228
+ type: Input
229
+ }], sort: [{
230
+ type: Input,
231
+ args: [{ transform: booleanAttribute }]
232
+ }], sticky: [{
233
+ type: Input,
234
+ args: [{ transform: booleanAttribute }]
235
+ }], stickyEnd: [{
236
+ type: Input,
237
+ args: [{ transform: booleanAttribute }]
238
+ }], aggregate: [{
239
+ type: Input,
240
+ args: [{ transform: booleanAttribute }]
241
+ }], ibCellDef: [{
242
+ type: ContentChild,
243
+ args: [IbCellDef, { static: true }]
244
+ }], columnDef: [{
245
+ type: ViewChild,
246
+ args: [MatColumnDef, { static: true }]
247
+ }], cell: [{
248
+ type: ViewChild,
249
+ args: [MatCellDef, { static: true }]
250
+ }], headerCell: [{
251
+ type: ViewChild,
252
+ args: [MatHeaderCellDef, { static: true }]
253
+ }], footerCell: [{
254
+ type: ViewChild,
255
+ args: [MatFooterCellDef, { static: true }]
256
+ }], aggregateCell: [{
257
+ type: ViewChild,
258
+ args: [IbAggregateCell]
259
+ }] } });
260
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9pbm9iZXRhLXVpL3VpL2thaS10YWJsZS9jb2x1bW5zL2NvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLFNBQVMsRUFDVCxnQkFBZ0IsRUFDaEIsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQ0wsVUFBVSxFQUNWLFlBQVksRUFDWixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLGNBQWMsR0FDZixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFtQixNQUFNLFdBQVcsQ0FBQzs7OztBQUV6RTs7Ozs7Ozs7R0FRRztBQTBDSCxNQUFNLE9BQU8sUUFBUTtJQUNuQixnRUFBZ0U7SUFDaEUsSUFDSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxJQUFZO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBRWxCLHNFQUFzRTtRQUN0RSxnRkFBZ0Y7UUFDaEYsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUNELEtBQUssQ0FBUztJQUVkOzs7T0FHRztJQUNNLFVBQVUsQ0FBUztJQUU1Qjs7Ozs7T0FLRztJQUNNLFlBQVks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LE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ0UsVUFBVTtzQkFBeEQsU0FBUzt1QkFBQyxnQkFBZ0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBRWpCLGFBQWE7c0JBQXhDLFNBQVM7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVmlld0NoaWxkLFxuICBib29sZWFuQXR0cmlidXRlLFxuICBpbmplY3QsXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBNYXRTb3J0TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NvcnRcIjtcbmltcG9ydCB7XG4gIE1hdENlbGxEZWYsXG4gIE1hdENvbHVtbkRlZixcbiAgTWF0Rm9vdGVyQ2VsbERlZixcbiAgTWF0SGVhZGVyQ2VsbERlZixcbiAgTWF0VGFibGVNb2R1bGUsXG59IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC90YWJsZVwiO1xuaW1wb3J0IHsgSWJBZ2dyZWdhdGVDZWxsLCBJYkNlbGxEZWYgfSBmcm9tIFwiLi4vY2VsbHNcIjtcbmltcG9ydCB7IEliU29ydEhlYWRlciB9IGZyb20gXCIuLi9zb3J0LWhlYWRlclwiO1xuaW1wb3J0IHsgSWJUYWJsZSB9IGZyb20gXCIuLi90YWJsZS5jb21wb25lbnRcIjtcbmltcG9ydCB7IElCX0NPTFVNTl9PUFRJT05TLCBJQl9UQUJMRSwgSWJDb2x1bW5PcHRpb25zIH0gZnJvbSBcIi4uL3Rva2Vuc1wiO1xuXG4vKipcbiAqIENvbHVtbiB0aGF0IHNob3dzIGFueSBhcmJpdHJhcnkgY29udGVudCBmb3IgdGhlIHJvdyBjZWxscy5cbiAqXG4gKiBJdCByZXF1aXJlcyBhIHNpbmdsZSBlbGVtZW50IHdpdGggdGhlIGAqaWJDZWxsRGVmYCBkaXJlY3RpdmUgaW4gaXRzIHRlbXBsYXRlLlxuICpcbiAqIEJ5IGRlZmF1bHQsIHRoZSBuYW1lIG9mIHRoaXMgY29sdW1uIHdpbGwgYmUgdGhlIGhlYWRlciB0ZXh0IGFuZCBkYXRhIHByb3BlcnR5IGFjY2Vzc29yLlxuICogVGhlIGhlYWRlciB0ZXh0IGNhbiBiZSBvdmVycmlkZGVuIHdpdGggdGhlIGBoZWFkZXJUZXh0YCBpbnB1dC4gQ2VsbCB2YWx1ZXMgY2FuIGJlIG92ZXJyaWRkZW4gd2l0aFxuICogdGhlIGBkYXRhQWNjZXNzb3JgIGlucHV0LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiaWItY29sdW1uXCIsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgbWF0Q29sdW1uRGVmXG4gICAgICBtYXRTb3J0XG4gICAgICBbc3RpY2t5XT1cInN0aWNreVwiXG4gICAgICBbc3RpY2t5RW5kXT1cInN0aWNreUVuZFwiXG4gICAgPlxuICAgICAgPHRoXG4gICAgICAgIGNsYXNzPVwiaWItdGFibGVfX2hlYWRlci1jZWxsXCJcbiAgICAgICAgbWF0LWhlYWRlci1jZWxsXG4gICAgICAgICptYXRIZWFkZXJDZWxsRGVmXG4gICAgICAgIFtpYlNvcnRIZWFkZXJGb3JdPVwibWF0U29ydFwiXG4gICAgICAgIG1hdC1zb3J0LWhlYWRlclxuICAgICAgICBbZGlzYWJsZWRdPVwiIXNvcnRcIlxuICAgICAgPlxuICAgICAgICB7eyBoZWFkZXJUZXh0IH19XG4gICAgICA8L3RoPlxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGRhdGFcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICBpYkNlbGxEZWYudGVtcGxhdGVSZWY7XG4gICAgICAgICAgICBjb250ZXh0OiB7ICRpbXBsaWNpdDogZGF0YSB9XG4gICAgICAgICAgXCJcbiAgICAgICAgPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvdGQ+XG4gICAgICA8dGQgbWF0LWZvb3Rlci1jZWxsICptYXRGb290ZXJDZWxsRGVmPjwvdGQ+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIGAsXG4gIC8vIENoYW5nZSBkZXRlY3Rpb24gaXMgaW50ZW50aW9uYWxseSBub3Qgc2V0IHRvIE9uUHVzaC4gVGhpcyBjb21wb25lbnQncyB0ZW1wbGF0ZSB3aWxsIGJlIHByb3ZpZGVkXG4gIC8vIHRvIHRoZSB0YWJsZSB0byBiZSBpbnNlcnRlZCBpbnRvIGl0cyB2aWV3LiBUaGlzIGlzIHByb2JsZW1hdGljIHdoZW4gY2hhbmdlIGRldGVjdGlvbiBydW5zIHNpbmNlXG4gIC8vIHRoZSBiaW5kaW5ncyBpbiB0aGlzIHRlbXBsYXRlIHdpbGwgYmUgZXZhbHVhdGVkIF9hZnRlcl8gdGhlIHRhYmxlJ3MgdmlldyBpcyBldmFsdWF0ZWQsIHdoaWNoXG4gIC8vIG1lYW4ncyB0aGUgdGVtcGxhdGUgaW4gdGhlIHRhYmxlJ3MgdmlldyB3aWxsIG5vdCBoYXZlIHRoZSB1cGRhdGVkIHZhbHVlIChhbmQgaW4gZmFjdCB3aWxsIGNhdXNlXG4gIC8vIGFuIEV4cHJlc3Npb25DaGFuZ2VkQWZ0ZXJJdEhhc0JlZW5DaGVja2VkRXJyb3IpLlxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dmFsaWRhdGUtZGVjb3JhdG9yc1xuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtNYXRTb3J0TW9kdWxlLCBNYXRUYWJsZU1vZHVsZSwgSWJTb3J0SGVhZGVyLCBOZ1RlbXBsYXRlT3V0bGV0XSxcbn0pXG5leHBvcnQgY2xhc3MgSWJDb2x1bW48VD4gaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCB7XG4gIC8qKiBDb2x1bW4gbmFtZSB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIHJlZmVyZW5jZSB0aGlzIGNvbHVtbi4gKi9cbiAgQElucHV0KClcbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuICBzZXQgbmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9uYW1lID0gbmFtZTtcblxuICAgIC8vIFdpdGggSXZ5LCBpbnB1dHMgY2FuIGJlIGluaXRpYWxpemVkIGJlZm9yZSBzdGF0aWMgcXVlcnkgcmVzdWx0cyBhcmVcbiAgICAvLyBhdmFpbGFibGUuIEluIHRoYXQgY2FzZSwgd2UgZGVmZXIgdGhlIHN5bmNocm9uaXphdGlvbiB1bnRpbCBcIm5nT25Jbml0XCIgZmlyZXMuXG4gICAgdGhpcy5fc3luY0NvbHVtbkRlZk5hbWUoKTtcbiAgfVxuICBfbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUZXh0IGxhYmVsIHRoYXQgc2hvdWxkIGJlIHVzZWQgZm9yIHRoZSBjb2x1bW4gaGVhZGVyLiBJZiB0aGlzIHByb3BlcnR5IGlzIG5vdFxuICAgKiBzZXQsIHRoZSBoZWFkZXIgdGV4dCB3aWxsIGRlZmF1bHQgdG8gdGhlIGNvbHVtbiBuYW1lIHdpdGggaXRzIGZpcnN0IGxldHRlciBjYXBpdGFsaXplZC5cbiAgICovXG4gIEBJbnB1dCgpIGhlYWRlclRleHQ6IHN0cmluZztcblxuICAvKipcbiAgICogQWNjZXNzb3IgZnVuY3Rpb24gdG8gcmV0cmlldmUgdGhlIGRhdGEgcmVuZGVyZWQgZm9yIGVhY2ggY2VsbC4gSWYgdGhpc1xuICAgKiBwcm9wZXJ0eSBpcyBub3Qgc2V0LCB0aGUgZGF0YSBjZWxscyB3aWxsIHJlbmRlciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIGRhdGEncyBwcm9wZXJ0eSBtYXRjaGluZ1xuICAgKiB0aGUgY29sdW1uJ3MgbmFtZS4gRm9yIGV4YW1wbGUsIGlmIHRoZSBjb2x1bW4gaXMgbmFtZWQgYGlkYCwgdGhlbiB0aGUgcmVuZGVyZWQgdmFsdWUgd2lsbCBiZVxuICAgKiB2YWx1ZSBkZWZpbmVkIGJ5IHRoZSBkYXRhJ3MgYGlkYCBwcm9wZXJ0eS5cbiAgICovXG4gIEBJbnB1dCgpIGRhdGFBY2Nlc3NvcjogKGRhdGE6IFQsIG5hbWU6IHN0cmluZykgPT4gbnVtYmVyIHwgc3RyaW5nO1xuICAvKipcbiAgICogRGF0YSBhY2Nlc3NvciBmdW5jdGlvbiB0aGF0IGlzIHVzZWQgdG8gcmV0cmlldmUgZGF0YSBwcm9wZXJ0aWVzIGZvciBzb3J0aW5nXG4gICAqL1xuICBASW5wdXQoKSBzb3J0aW5nRGF0YUFjY2Vzc29yOiAoZGF0YTogVCwgbmFtZTogc3RyaW5nKSA9PiBudW1iZXIgfCBzdHJpbmc7XG4gIC8qKlxuICAgKiBEYXRhIGFjY2Vzc29yIGZ1bmN0aW9uIHRoYXQgaXMgdXNlZCB0byByZXRyaWV2ZSBkYXRhIHByb3BlcnRpZXMgZm9yIGZpbHRlcmluZ1xuICAgKi9cbiAgQElucHV0KCkgZmlsdGVyRGF0YUFjY2Vzc29yOiAoZGF0YTogVCwgbmFtZTogc3RyaW5nKSA9PiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVuYWJsZXMgc29ydGluZyBmb3IgdGhlIGNvbHVtbi5cbiAgICovXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBzb3J0ID0gZmFsc2U7XG5cbiAgLyoqIFdoZXRoZXIgc3RpY2t5IHBvc2l0aW9uaW5nIHNob3VsZCBiZSBhcHBsaWVkLiAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgc3RpY2t5ID0gZmFsc2U7XG5cbiAgLyoqIFdoZXRoZXIgdGhpcyBjb2x1bW4gc2hvdWxkIGJlIHN0aWNreSBwb3NpdGlvbmVkIG9uIHRoZSBlbmQgb2YgdGhlIHJvdy4gKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIHN0aWNreUVuZCA9IGZhbHNlO1xuXG4gIC8qKiBXaGV0aGVyIHRoaXMgY29sdW1uIHNob3VsZCBkaXNwbGF5IGluIHRoZSByb2xsLXVwIGZvb3Rlci4gKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGFnZ3JlZ2F0ZSA9IGZhbHNlO1xuXG4gIGdldCBhZ2dyZWdhdGlvbkZ1bmN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLl90YWJsZS5kYXRhU291cmNlLmFnZ3JlZ2F0ZWRDb2x1bW5zPy5bdGhpcy5uYW1lXTtcbiAgfVxuXG4gIGdldCBhZ2dyZWdhdGVkRGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy5fdGFibGUuZGF0YVNvdXJjZS5hZ2dyZWdhdGVkRGF0YVt0aGlzLm5hbWVdO1xuICB9XG5cbiAgQENvbnRlbnRDaGlsZChJYkNlbGxEZWYsIHsgc3RhdGljOiB0cnVlIH0pIGliQ2VsbERlZjogSWJDZWxsRGVmO1xuXG4gIC8qKiBAaWdub3JlICovXG4gIEBWaWV3Q2hpbGQoTWF0Q29sdW1uRGVmLCB7IHN0YXRpYzogdHJ1ZSB9KSBjb2x1bW5EZWY6IE1hdENvbHVtbkRlZjtcblxuICAvKipcbiAgICogVGhlIGNvbHVtbiBjZWxsLCBoZWFkZXJDZWxsLCBhbmQgZm9vdGVyQ2VsbCBhcmUgcHJvdmlkZWQgdG8gdGhlIGNvbHVtbiBkdXJpbmcgYG5nT25Jbml0YCB3aXRoIGEgc3RhdGljIHF1ZXJ5LlxuICAgKiBOb3JtYWxseSwgdGhpcyB3aWxsIGJlIHJldHJpZXZlZCBieSB0aGUgY29sdW1uIHVzaW5nIGBDb250ZW50Q2hpbGRgLCBidXQgdGhhdCBhc3N1bWVzIHRoZVxuICAgKiBjb2x1bW4gZGVmaW5pdGlvbiB3YXMgcHJvdmlkZWQgaW4gdGhlIHNhbWUgdmlldyBhcyB0aGUgdGFibGUsIHdoaWNoIGlzIG5vdCB0aGUgY2FzZSB3aXRoIHRoaXNcbiAgICogY29tcG9uZW50LlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKE1hdENlbGxEZWYsIHsgc3RhdGljOiB0cnVlIH0pIGNlbGw6IE1hdENlbGxEZWY7XG4gIEBWaWV3Q2hpbGQoTWF0SGVhZGVyQ2VsbERlZiwgeyBzdGF0aWM6IHRydWUgfSkgaGVhZGVyQ2VsbDogTWF0SGVhZGVyQ2VsbERlZjtcbiAgQFZpZXdDaGlsZChNYXRGb290ZXJDZWxsRGVmLCB7IHN0YXRpYzogdHJ1ZSB9KSBmb290ZXJDZWxsOiBNYXRGb290ZXJDZWxsRGVmO1xuXG4gIEBWaWV3Q2hpbGQoSWJBZ2dyZWdhdGVDZWxsKSBhZ2dyZWdhdGVDZWxsOiBJYkFnZ3JlZ2F0ZUNlbGw7XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgZ2V0IG1hdFNvcnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3RhYmxlLnNvcnQ7XG4gIH1cblxuICBfdGFibGU6IEliVGFibGUgPSBpbmplY3QoSUJfVEFCTEUsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIF9vcHRpb25zOiBJYkNvbHVtbk9wdGlvbnM8VD4gPVxuICAgIGluamVjdChJQl9DT0xVTU5fT1BUSU9OUywgeyBvcHRpb25hbDogdHJ1ZSB9KSB8fCB7fTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9zeW5jQ29sdW1uRGVmTmFtZSgpO1xuXG4gICAgaWYgKHRoaXMuaGVhZGVyVGV4dCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmhlYWRlclRleHQgPSB0aGlzLl9jcmVhdGVEZWZhdWx0SGVhZGVyVGV4dCgpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5kYXRhQWNjZXNzb3IpIHtcbiAgICAgIHRoaXMuZGF0YUFjY2Vzc29yID1cbiAgICAgICAgdGhpcy5fb3B0aW9ucy5kZWZhdWx0RGF0YUFjY2Vzc29yIHx8XG4gICAgICAgICgoZGF0YTogVCwgbmFtZTogc3RyaW5nKSA9PiAoZGF0YSBhcyBhbnkpW25hbWVdKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuc29ydGluZ0RhdGFBY2Nlc3Nvcikge1xuICAgICAgdGhpcy5zb3J0aW5nRGF0YUFjY2Vzc29yID0gdGhpcy5kYXRhQWNjZXNzb3I7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmZpbHRlckRhdGFBY2Nlc3Nvcikge1xuICAgICAgdGhpcy5maWx0ZXJEYXRhQWNjZXNzb3IgPSB0aGlzLmRhdGFBY2Nlc3NvcjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fdGFibGUpIHtcbiAgICAgIC8vIFByb3ZpZGUgdGhlIGNlbGwgYW5kIGhlYWRlckNlbGwgZGlyZWN0bHkgdG8gdGhlIHRhYmxlIHdpdGggdGhlIHN0YXRpYyBgVmlld0NoaWxkYCBxdWVyeSxcbiAgICAgIC8vIHNpbmNlIHRoZSBjb2x1bW5EZWYgd2lsbCBub3QgcGljayB1cCBpdHMgY29udGVudCBieSB0aGUgdGltZSB0aGUgdGFibGUgZmluaXNoZXMgY2hlY2tpbmdcbiAgICAgIC8vIGl0cyBjb250ZW50IGFuZCBpbml0aWFsaXppbmcgdGhlIHJvd3MuXG4gICAgICB0aGlzLmNvbHVtbkRlZi5jZWxsID0gdGhpcy5jZWxsO1xuICAgICAgdGhpcy5jb2x1bW5EZWYuaGVhZGVyQ2VsbCA9IHRoaXMuaGVhZGVyQ2VsbDtcbiAgICAgIHRoaXMuY29sdW1uRGVmLmZvb3RlckNlbGwgPSB0aGlzLmZvb3RlckNlbGw7XG4gICAgICB0aGlzLl90YWJsZS5tYXRUYWJsZS5hZGRDb2x1bW5EZWYodGhpcy5jb2x1bW5EZWYpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLl90YWJsZSkge1xuICAgICAgdGhpcy5fdGFibGUubWF0VGFibGUucmVtb3ZlQ29sdW1uRGVmKHRoaXMuY29sdW1uRGVmKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIGRlZmF1bHQgaGVhZGVyIHRleHQuIFVzZSB0aGUgb3B0aW9ucycgaGVhZGVyIHRleHQgdHJhbnNmb3JtYXRpb24gZnVuY3Rpb24gaWYgb25lXG4gICAqIGhhcyBiZWVuIHByb3ZpZGVkLiBPdGhlcndpc2Ugc2ltcGx5IGNhcGl0YWxpemUgdGhlIGNvbHVtbiBuYW1lLlxuICAgKi9cbiAgX2NyZWF0ZURlZmF1bHRIZWFkZXJUZXh0KCkge1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLm5hbWU7XG5cbiAgICBpZiAoIW5hbWUpIHtcbiAgICAgIHRocm93IEVycm9yKGBUYWJsZSBjb2x1bW4gbXVzdCBoYXZlIGEgbmFtZS5gKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fb3B0aW9ucyAmJiB0aGlzLl9vcHRpb25zLmRlZmF1bHRIZWFkZXJUZXh0VHJhbnNmb3JtKSB7XG4gICAgICByZXR1cm4gdGhpcy5fb3B0aW9ucy5kZWZhdWx0SGVhZGVyVGV4dFRyYW5zZm9ybShuYW1lKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmFtZVswXS50b1VwcGVyQ2FzZSgpICsgbmFtZS5zbGljZSgxKTtcbiAgfVxuXG4gIGhhbmRsZUFnZ3JlZ2F0aW9uQ2hhbmdlKGZ1bjogc3RyaW5nKSB7XG4gICAgdGhpcy5fdGFibGUuZGF0YVNvdXJjZS5hZ2dyZWdhdGUubmV4dCh7XG4gICAgICBjb2x1bW5OYW1lOiB0aGlzLm5hbWUsXG4gICAgICBmdW5jdGlvbjogZnVuLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqIFN5bmNocm9uaXplcyB0aGUgY29sdW1uIGRlZmluaXRpb24gbmFtZSB3aXRoIHRoZSB0ZXh0IGNvbHVtbiBuYW1lLiAqL1xuICBwcml2YXRlIF9zeW5jQ29sdW1uRGVmTmFtZSgpIHtcbiAgICBpZiAodGhpcy5jb2x1bW5EZWYpIHtcbiAgICAgIHRoaXMuY29sdW1uRGVmLm5hbWUgPSB0aGlzLm5hbWU7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,93 @@
1
+ import { formatDate } from "@angular/common";
2
+ import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, } from "@angular/core";
3
+ import { IB_COLUMN } from "../tokens";
4
+ import { IbColumn } from "./column";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../sort-header";
7
+ import * as i2 from "@angular/material/table";
8
+ import * as i3 from "@angular/material/sort";
9
+ import * as i4 from "@angular/common";
10
+ /**
11
+ * Column that shows a formatted date for the row cells.
12
+ *
13
+ * By default, the name of this column will be the header text and data property accessor.
14
+ * The header text can be overridden with the `headerText` input. Cell values can be overridden with
15
+ * the `dataAccessor` input. Change the date-time components using
16
+ * the `format` input. Same as `DatePipe` or `formatDate` function.
17
+ */
18
+ export class IbDateColumn extends IbColumn {
19
+ format = "dd/MM/yyyy HH:mm z";
20
+ locale = "it";
21
+ filterDataAccessor = (data, name) => new Date(this.dataAccessor(data, name)).getTime();
22
+ /** @ignore */
23
+ transform = { pdf: (data) => formatDate(data, this.format, this.locale) };
24
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbDateColumn, deps: null, target: i0.ɵɵFactoryTarget.Component });
25
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: IbDateColumn, selector: "ib-date-column", inputs: { format: "format", locale: "locale" }, providers: [
26
+ { provide: IbColumn, useExisting: IbDateColumn },
27
+ { provide: IB_COLUMN, useExisting: IbDateColumn },
28
+ ], usesInheritance: true, ngImport: i0, template: `
29
+ <ng-container
30
+ matColumnDef
31
+ matSort
32
+ [sticky]="sticky"
33
+ [stickyEnd]="stickyEnd"
34
+ >
35
+ <th
36
+ class="ib-table__header-cell"
37
+ mat-header-cell
38
+ *matHeaderCellDef
39
+ [ibSortHeaderFor]="matSort"
40
+ mat-sort-header
41
+ [disabled]="!sort"
42
+ >
43
+ {{ headerText }}
44
+ </th>
45
+ <td mat-cell *matCellDef="let data">
46
+ {{ dataAccessor(data, name) | date : format : undefined : locale }}
47
+ </td>
48
+ <td mat-footer-cell *matFooterCellDef>
49
+ </td>
50
+ </ng-container>
51
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.IbSortHeader, selector: "[ib-sort-header-for], [ibSortHeaderFor]", inputs: ["ibSortHeaderFor"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i2.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "directive", type: i3.MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i3.MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "pipe", type: i4.DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
52
+ }
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbDateColumn, decorators: [{
54
+ type: Component,
55
+ args: [{
56
+ selector: "ib-date-column",
57
+ template: `
58
+ <ng-container
59
+ matColumnDef
60
+ matSort
61
+ [sticky]="sticky"
62
+ [stickyEnd]="stickyEnd"
63
+ >
64
+ <th
65
+ class="ib-table__header-cell"
66
+ mat-header-cell
67
+ *matHeaderCellDef
68
+ [ibSortHeaderFor]="matSort"
69
+ mat-sort-header
70
+ [disabled]="!sort"
71
+ >
72
+ {{ headerText }}
73
+ </th>
74
+ <td mat-cell *matCellDef="let data">
75
+ {{ dataAccessor(data, name) | date : format : undefined : locale }}
76
+ </td>
77
+ <td mat-footer-cell *matFooterCellDef>
78
+ </td>
79
+ </ng-container>
80
+ `,
81
+ encapsulation: ViewEncapsulation.None,
82
+ changeDetection: ChangeDetectionStrategy.Default,
83
+ providers: [
84
+ { provide: IbColumn, useExisting: IbDateColumn },
85
+ { provide: IB_COLUMN, useExisting: IbDateColumn },
86
+ ],
87
+ }]
88
+ }], propDecorators: { format: [{
89
+ type: Input
90
+ }], locale: [{
91
+ type: Input
92
+ }] } });
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1jb2x1bW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2lub2JldGEtdWkvdWkva2FpLXRhYmxlL2NvbHVtbnMvZGF0ZS1jb2x1bW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFDTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7Ozs7QUFFcEM7Ozs7Ozs7R0FPRztBQWtDSCxNQUFNLE9BQU8sWUFBZ0IsU0FBUSxRQUFXO0lBQ3JDLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQztJQUM5QixNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3ZCLGtCQUFrQixHQUFHLENBQUMsSUFBTyxFQUFFLElBQVksRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUVsRyxjQUFjO0lBQ2QsU0FBUyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7dUdBTi9ELFlBQVk7MkZBQVosWUFBWSx5RkFMWjtZQUNULEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFO1lBQ2hELEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFO1NBQ2xELGlEQTdCUzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1QlQ7OzJGQVFVLFlBQVk7a0JBakN4QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1QlQ7b0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPO29CQUNoRCxTQUFTLEVBQUU7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsY0FBYyxFQUFFO3dCQUNoRCxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxjQUFjLEVBQUU7cUJBQ2xEO2lCQUNGOzhCQUVVLE1BQU07c0JBQWQsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXREYXRlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSUJfQ09MVU1OIH0gZnJvbSBcIi4uL3Rva2Vuc1wiO1xuaW1wb3J0IHsgSWJDb2x1bW4gfSBmcm9tIFwiLi9jb2x1bW5cIjtcblxuLyoqXG4gKiBDb2x1bW4gdGhhdCBzaG93cyBhIGZvcm1hdHRlZCBkYXRlIGZvciB0aGUgcm93IGNlbGxzLlxuICpcbiAqIEJ5IGRlZmF1bHQsIHRoZSBuYW1lIG9mIHRoaXMgY29sdW1uIHdpbGwgYmUgdGhlIGhlYWRlciB0ZXh0IGFuZCBkYXRhIHByb3BlcnR5IGFjY2Vzc29yLlxuICogVGhlIGhlYWRlciB0ZXh0IGNhbiBiZSBvdmVycmlkZGVuIHdpdGggdGhlIGBoZWFkZXJUZXh0YCBpbnB1dC4gQ2VsbCB2YWx1ZXMgY2FuIGJlIG92ZXJyaWRkZW4gd2l0aFxuICogdGhlIGBkYXRhQWNjZXNzb3JgIGlucHV0LiBDaGFuZ2UgdGhlIGRhdGUtdGltZSBjb21wb25lbnRzIHVzaW5nXG4gKiB0aGUgYGZvcm1hdGAgaW5wdXQuIFNhbWUgYXMgYERhdGVQaXBlYCBvciBgZm9ybWF0RGF0ZWAgZnVuY3Rpb24uXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJpYi1kYXRlLWNvbHVtblwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXJcbiAgICAgIG1hdENvbHVtbkRlZlxuICAgICAgbWF0U29ydFxuICAgICAgW3N0aWNreV09XCJzdGlja3lcIlxuICAgICAgW3N0aWNreUVuZF09XCJzdGlja3lFbmRcIlxuICAgID5cbiAgICAgIDx0aFxuICAgICAgICBjbGFzcz1cImliLXRhYmxlX19oZWFkZXItY2VsbFwiXG4gICAgICAgIG1hdC1oZWFkZXItY2VsbFxuICAgICAgICAqbWF0SGVhZGVyQ2VsbERlZlxuICAgICAgICBbaWJTb3J0SGVhZGVyRm9yXT1cIm1hdFNvcnRcIlxuICAgICAgICBtYXQtc29ydC1oZWFkZXJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFzb3J0XCJcbiAgICAgID5cbiAgICAgICAge3sgaGVhZGVyVGV4dCB9fVxuICAgICAgPC90aD5cbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBkYXRhXCI+XG4gICAgICAgIHt7IGRhdGFBY2Nlc3NvcihkYXRhLCBuYW1lKSB8IGRhdGUgOiBmb3JtYXQgOiB1bmRlZmluZWQgOiBsb2NhbGUgfX1cbiAgICAgIDwvdGQ+XG4gICAgICA8dGQgbWF0LWZvb3Rlci1jZWxsICptYXRGb290ZXJDZWxsRGVmPlxuICAgICAgPC90ZD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgYCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEliQ29sdW1uLCB1c2VFeGlzdGluZzogSWJEYXRlQ29sdW1uIH0sXG4gICAgeyBwcm92aWRlOiBJQl9DT0xVTU4sIHVzZUV4aXN0aW5nOiBJYkRhdGVDb2x1bW4gfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgSWJEYXRlQ29sdW1uPFQ+IGV4dGVuZHMgSWJDb2x1bW48VD4ge1xuICBASW5wdXQoKSBmb3JtYXQgPSBcImRkL01NL3l5eXkgSEg6bW0gelwiO1xuICBASW5wdXQoKSBsb2NhbGUgPSBcIml0XCI7XG4gIGZpbHRlckRhdGFBY2Nlc3NvciA9IChkYXRhOiBULCBuYW1lOiBzdHJpbmcpID0+IG5ldyBEYXRlKHRoaXMuZGF0YUFjY2Vzc29yKGRhdGEsIG5hbWUpKS5nZXRUaW1lKCk7XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgdHJhbnNmb3JtID0geyBwZGY6IChkYXRhKSA9PiBmb3JtYXREYXRlKGRhdGEsIHRoaXMuZm9ybWF0LCB0aGlzLmxvY2FsZSkgfTtcbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ export * from "./action-column";
2
+ export * from "./column";
3
+ export * from "./date-column";
4
+ export * from "./number-column";
5
+ export * from "./selection-column";
6
+ export * from "./text-column";
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2lub2JldGEtdWkvdWkva2FpLXRhYmxlL2NvbHVtbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9hY3Rpb24tY29sdW1uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb2x1bW5cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2RhdGUtY29sdW1uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9udW1iZXItY29sdW1uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zZWxlY3Rpb24tY29sdW1uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90ZXh0LWNvbHVtblwiO1xuIl19
@@ -0,0 +1,112 @@
1
+ import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, } from "@angular/core";
2
+ import { IB_AGGREGATE_TYPE, IB_COLUMN } from "../tokens";
3
+ import { IbColumn } from "./column";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "../sort-header";
7
+ import * as i3 from "@angular/material/table";
8
+ import * as i4 from "@angular/material/sort";
9
+ import * as i5 from "../cells";
10
+ /**
11
+ * Column that shows a formatted number for the row cells.
12
+ *
13
+ * By default, the name of this column will be the header text and data property accessor.
14
+ * The header text can be overridden with the `headerText` input. Cell values can be overridden with
15
+ * the `dataAccessor` input. Change the decimal representation using the
16
+ * `digitsInfo` input. Same as `DecimalPipe` or `formatNumber` function.
17
+ */
18
+ export class IbNumberColumn extends IbColumn {
19
+ digitsInfo = "1.0-2";
20
+ locale = "it";
21
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbNumberColumn, deps: null, target: i0.ɵɵFactoryTarget.Component });
22
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: IbNumberColumn, selector: "ib-number-column", inputs: { digitsInfo: "digitsInfo", locale: "locale" }, providers: [
23
+ {
24
+ provide: IbColumn,
25
+ useExisting: IbNumberColumn,
26
+ },
27
+ { provide: IB_COLUMN, useExisting: IbNumberColumn },
28
+ { provide: IB_AGGREGATE_TYPE, useValue: "number" },
29
+ ], usesInheritance: true, ngImport: i0, template: `
30
+ <ng-container
31
+ matColumnDef
32
+ matSort
33
+ [sticky]="sticky"
34
+ [stickyEnd]="stickyEnd"
35
+ >
36
+ <th
37
+ class="ib-table__header-cell"
38
+ mat-header-cell
39
+ *matHeaderCellDef
40
+ [ibSortHeaderFor]="matSort"
41
+ mat-sort-header
42
+ [disabled]="!sort"
43
+ >
44
+ {{ headerText }}
45
+ </th>
46
+ <td mat-cell *matCellDef="let data" [style.text-align]="'end'">
47
+ {{ dataAccessor(data, name) | number : digitsInfo : locale }}
48
+ </td>
49
+ <td mat-footer-cell *matFooterCellDef style="max-width: fit-content">
50
+ <ib-aggregate
51
+ *ngIf="aggregate"
52
+ [showTotal]="!_table.isRemote"
53
+ [result]="aggregatedData"
54
+ [function]="aggregationFunction"
55
+ (ibFunctionChange)="handleAggregationChange($event)"
56
+ />
57
+ </td>
58
+ </ng-container>
59
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.IbSortHeader, selector: "[ib-sort-header-for], [ibSortHeaderFor]", inputs: ["ibSortHeaderFor"] }, { kind: "directive", type: i3.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i3.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i3.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i3.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i3.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i3.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i3.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "directive", type: i4.MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i4.MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: i5.IbAggregateCell, selector: "ib-aggregate", inputs: ["function", "result", "showTotal"], outputs: ["ibFunctionChange"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
60
+ }
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: IbNumberColumn, decorators: [{
62
+ type: Component,
63
+ args: [{
64
+ selector: "ib-number-column",
65
+ template: `
66
+ <ng-container
67
+ matColumnDef
68
+ matSort
69
+ [sticky]="sticky"
70
+ [stickyEnd]="stickyEnd"
71
+ >
72
+ <th
73
+ class="ib-table__header-cell"
74
+ mat-header-cell
75
+ *matHeaderCellDef
76
+ [ibSortHeaderFor]="matSort"
77
+ mat-sort-header
78
+ [disabled]="!sort"
79
+ >
80
+ {{ headerText }}
81
+ </th>
82
+ <td mat-cell *matCellDef="let data" [style.text-align]="'end'">
83
+ {{ dataAccessor(data, name) | number : digitsInfo : locale }}
84
+ </td>
85
+ <td mat-footer-cell *matFooterCellDef style="max-width: fit-content">
86
+ <ib-aggregate
87
+ *ngIf="aggregate"
88
+ [showTotal]="!_table.isRemote"
89
+ [result]="aggregatedData"
90
+ [function]="aggregationFunction"
91
+ (ibFunctionChange)="handleAggregationChange($event)"
92
+ />
93
+ </td>
94
+ </ng-container>
95
+ `,
96
+ encapsulation: ViewEncapsulation.None,
97
+ changeDetection: ChangeDetectionStrategy.Default,
98
+ providers: [
99
+ {
100
+ provide: IbColumn,
101
+ useExisting: IbNumberColumn,
102
+ },
103
+ { provide: IB_COLUMN, useExisting: IbNumberColumn },
104
+ { provide: IB_AGGREGATE_TYPE, useValue: "number" },
105
+ ],
106
+ }]
107
+ }], propDecorators: { digitsInfo: [{
108
+ type: Input
109
+ }], locale: [{
110
+ type: Input
111
+ }] } });
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvaW5vYmV0YS11aS91aS9rYWktdGFibGUvY29sdW1ucy9udW1iZXItY29sdW1uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFDTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7Ozs7O0FBRXBDOzs7Ozs7O0dBT0c7QUE2Q0gsTUFBTSxPQUFPLGNBQWtCLFNBQVEsUUFBVztJQUN2QyxVQUFVLEdBQUcsT0FBTyxDQUFDO0lBQ3JCLE1BQU0sR0FBRyxJQUFJLENBQUM7dUdBRlosY0FBYzsyRkFBZCxjQUFjLG1HQVRkO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLFFBQVE7Z0JBQ2pCLFdBQVcsRUFBRSxjQUFjO2FBQzVCO1lBQ0QsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUU7WUFDbkQsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRTtTQUNuRCxpREF4Q1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThCVDs7MkZBWVUsY0FBYztrQkE1QzFCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4QlQ7b0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPO29CQUNoRCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLFFBQVE7NEJBQ2pCLFdBQVcsZ0JBQWdCO3lCQUM1Qjt3QkFDRCxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxnQkFBZ0IsRUFBRTt3QkFDbkQsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRTtxQkFDbkQ7aUJBQ0Y7OEJBRVUsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJQl9BR0dSRUdBVEVfVFlQRSwgSUJfQ09MVU1OIH0gZnJvbSBcIi4uL3Rva2Vuc1wiO1xuaW1wb3J0IHsgSWJDb2x1bW4gfSBmcm9tIFwiLi9jb2x1bW5cIjtcblxuLyoqXG4gKiBDb2x1bW4gdGhhdCBzaG93cyBhIGZvcm1hdHRlZCBudW1iZXIgZm9yIHRoZSByb3cgY2VsbHMuXG4gKlxuICogQnkgZGVmYXVsdCwgdGhlIG5hbWUgb2YgdGhpcyBjb2x1bW4gd2lsbCBiZSB0aGUgaGVhZGVyIHRleHQgYW5kIGRhdGEgcHJvcGVydHkgYWNjZXNzb3IuXG4gKiBUaGUgaGVhZGVyIHRleHQgY2FuIGJlIG92ZXJyaWRkZW4gd2l0aCB0aGUgYGhlYWRlclRleHRgIGlucHV0LiBDZWxsIHZhbHVlcyBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoXG4gKiB0aGUgYGRhdGFBY2Nlc3NvcmAgaW5wdXQuIENoYW5nZSB0aGUgZGVjaW1hbCByZXByZXNlbnRhdGlvbiB1c2luZyB0aGVcbiAqIGBkaWdpdHNJbmZvYCBpbnB1dC4gU2FtZSBhcyBgRGVjaW1hbFBpcGVgIG9yIGBmb3JtYXROdW1iZXJgIGZ1bmN0aW9uLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiaWItbnVtYmVyLWNvbHVtblwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXJcbiAgICAgIG1hdENvbHVtbkRlZlxuICAgICAgbWF0U29ydFxuICAgICAgW3N0aWNreV09XCJzdGlja3lcIlxuICAgICAgW3N0aWNreUVuZF09XCJzdGlja3lFbmRcIlxuICAgID5cbiAgICAgIDx0aFxuICAgICAgICBjbGFzcz1cImliLXRhYmxlX19oZWFkZXItY2VsbFwiXG4gICAgICAgIG1hdC1oZWFkZXItY2VsbFxuICAgICAgICAqbWF0SGVhZGVyQ2VsbERlZlxuICAgICAgICBbaWJTb3J0SGVhZGVyRm9yXT1cIm1hdFNvcnRcIlxuICAgICAgICBtYXQtc29ydC1oZWFkZXJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFzb3J0XCJcbiAgICAgID5cbiAgICAgICAge3sgaGVhZGVyVGV4dCB9fVxuICAgICAgPC90aD5cbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBkYXRhXCIgW3N0eWxlLnRleHQtYWxpZ25dPVwiJ2VuZCdcIj5cbiAgICAgICAge3sgZGF0YUFjY2Vzc29yKGRhdGEsIG5hbWUpIHwgbnVtYmVyIDogZGlnaXRzSW5mbyA6IGxvY2FsZSB9fVxuICAgICAgPC90ZD5cbiAgICAgIDx0ZCBtYXQtZm9vdGVyLWNlbGwgKm1hdEZvb3RlckNlbGxEZWYgc3R5bGU9XCJtYXgtd2lkdGg6IGZpdC1jb250ZW50XCI+XG4gICAgICAgIDxpYi1hZ2dyZWdhdGVcbiAgICAgICAgICAqbmdJZj1cImFnZ3JlZ2F0ZVwiXG4gICAgICAgICAgW3Nob3dUb3RhbF09XCIhX3RhYmxlLmlzUmVtb3RlXCJcbiAgICAgICAgICBbcmVzdWx0XT1cImFnZ3JlZ2F0ZWREYXRhXCJcbiAgICAgICAgICBbZnVuY3Rpb25dPVwiYWdncmVnYXRpb25GdW5jdGlvblwiXG4gICAgICAgICAgKGliRnVuY3Rpb25DaGFuZ2UpPVwiaGFuZGxlQWdncmVnYXRpb25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIC8+XG4gICAgICA8L3RkPlxuICAgIDwvbmctY29udGFpbmVyPlxuICBgLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEliQ29sdW1uLFxuICAgICAgdXNlRXhpc3Rpbmc6IEliTnVtYmVyQ29sdW1uLFxuICAgIH0sXG4gICAgeyBwcm92aWRlOiBJQl9DT0xVTU4sIHVzZUV4aXN0aW5nOiBJYk51bWJlckNvbHVtbiB9LFxuICAgIHsgcHJvdmlkZTogSUJfQUdHUkVHQVRFX1RZUEUsIHVzZVZhbHVlOiBcIm51bWJlclwiIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEliTnVtYmVyQ29sdW1uPFQ+IGV4dGVuZHMgSWJDb2x1bW48VD4ge1xuICBASW5wdXQoKSBkaWdpdHNJbmZvID0gXCIxLjAtMlwiO1xuICBASW5wdXQoKSBsb2NhbGUgPSBcIml0XCI7XG59XG4iXX0=