@one-paragon/angular-utilities 1.2.16 → 1.2.18

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 (407) hide show
  1. package/karma.conf.js +44 -0
  2. package/ng-package.json +7 -0
  3. package/package.json +16 -30
  4. package/src/action-state/action-state-spinner/action-state-spinner.component.css +16 -0
  5. package/src/action-state/action-state-spinner/action-state-spinner.component.html +6 -0
  6. package/src/action-state/action-state-spinner/action-state-spinner.component.spec.ts +25 -0
  7. package/src/action-state/action-state-spinner/action-state-spinner.component.ts +26 -0
  8. package/src/action-state/action-state-ui/action-state-ui.module.ts +13 -0
  9. package/{action-state/index.d.ts → src/action-state/index.ts} +8 -4
  10. package/src/action-state/ngrx-ext/ngrx-ext.module.ts +15 -0
  11. package/src/action-state/ngrx.ts +69 -0
  12. package/src/http-request-state/HttpRequestStateFactory.ts +66 -0
  13. package/src/http-request-state/HttpRequestStateStore.ts +191 -0
  14. package/src/http-request-state/directives/HttpStateDirectiveBase.ts +29 -0
  15. package/src/http-request-state/directives/http-error-state-directive.ts +21 -0
  16. package/src/http-request-state/directives/http-inProgress-state-directive.ts +19 -0
  17. package/src/http-request-state/directives/http-notStarted-state-directive.ts +19 -0
  18. package/src/http-request-state/directives/http-success-state-directive.ts +29 -0
  19. package/{http-request-state/directives/index.d.ts → src/http-request-state/directives/index.ts} +5 -5
  20. package/src/http-request-state/directives/request-state-directive.spec.ts +72 -0
  21. package/src/http-request-state/directives/request-state-directive.ts +78 -0
  22. package/src/http-request-state/helpers.ts +30 -0
  23. package/src/http-request-state/http-request-state.ts +69 -0
  24. package/src/http-request-state/http-state-module.ts +23 -0
  25. package/{http-request-state/index.d.ts → src/http-request-state/index.ts} +6 -6
  26. package/src/http-request-state/observable.spec.ts +43 -0
  27. package/src/http-request-state/rxjs/getRequestorBody.ts +10 -0
  28. package/src/http-request-state/rxjs/getRequestorState.ts +8 -0
  29. package/{http-request-state/rxjs/index.d.ts → src/http-request-state/rxjs/index.ts} +4 -4
  30. package/src/http-request-state/rxjs/tapError.ts +16 -0
  31. package/src/http-request-state/rxjs/tapSuccess.ts +16 -0
  32. package/src/http-request-state/strategies.spec.ts +42 -0
  33. package/src/http-request-state/types.ts +55 -0
  34. package/src/ngrx/actionable-selector.ts +152 -0
  35. package/src/ngrx/index.ts +1 -0
  36. package/{public-api.d.ts → src/public-api.ts} +35 -16
  37. package/src/rxjs/defaultShareReplay.ts +8 -0
  38. package/{rxjs/index.d.ts → src/rxjs/index.ts} +5 -5
  39. package/src/rxjs/mapError.ts +8 -0
  40. package/src/rxjs/rxjs-operators.ts +132 -0
  41. package/src/rxjs/subjectifier.ts +17 -0
  42. package/src/rxjs/subscriber.directive.ts +57 -0
  43. package/src/specs/clickSubject.spec.ts +95 -0
  44. package/src/specs/dialog.spec.ts +101 -0
  45. package/src/specs/toggleGroupDirective.spec.ts +229 -0
  46. package/src/table-builder/classes/DefaultSettings.ts +11 -0
  47. package/src/table-builder/classes/MatTableObservableDataSource.ts +23 -0
  48. package/src/table-builder/classes/TableBuilderConfig.ts +36 -0
  49. package/src/table-builder/classes/TableBuilderDataSource.ts +61 -0
  50. package/src/table-builder/classes/TableState.ts +93 -0
  51. package/src/table-builder/classes/data-store.ts +10 -0
  52. package/{table-builder/classes/display-col.d.ts → src/table-builder/classes/display-col.ts} +5 -5
  53. package/src/table-builder/classes/filter-info.ts +108 -0
  54. package/src/table-builder/classes/table-builder-general-settings.ts +141 -0
  55. package/src/table-builder/classes/table-builder.ts +95 -0
  56. package/src/table-builder/classes/table-store.ts +476 -0
  57. package/src/table-builder/components/array-column.component.ts +36 -0
  58. package/src/table-builder/components/column-builder/column-builder.component.html +61 -0
  59. package/src/table-builder/components/column-builder/column-builder.component.scss +43 -0
  60. package/src/table-builder/components/column-builder/column-builder.component.spec.ts +49 -0
  61. package/src/table-builder/components/column-builder/column-builder.component.ts +146 -0
  62. package/src/table-builder/components/column-builder/column-helpers.ts +52 -0
  63. package/src/table-builder/components/date-filter/date-filter.component.html +23 -0
  64. package/src/table-builder/components/date-filter/date-filter.component.ts +24 -0
  65. package/src/table-builder/components/date-time-filter/date-time-filter.component.html +9 -0
  66. package/src/table-builder/components/date-time-filter/date-time-filter.component.ts +22 -0
  67. package/src/table-builder/components/filter/filter.component.html +91 -0
  68. package/src/table-builder/components/filter/filter.component.scss +60 -0
  69. package/src/table-builder/components/filter/filter.component.spec.ts +87 -0
  70. package/src/table-builder/components/filter/filter.component.ts +60 -0
  71. package/src/table-builder/components/filter/in-list/in-list-filter.component.ts +93 -0
  72. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.html +55 -0
  73. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.scss +57 -0
  74. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.ts +46 -0
  75. package/src/table-builder/components/generic-table/generic-table.component.html +77 -0
  76. package/src/table-builder/components/generic-table/generic-table.component.scss +38 -0
  77. package/src/table-builder/components/generic-table/generic-table.component.ts +325 -0
  78. package/src/table-builder/components/generic-table/paginator.component.ts +99 -0
  79. package/src/table-builder/components/group-by-list/group-by-list.component.css +8 -0
  80. package/src/table-builder/components/group-by-list/group-by-list.component.html +12 -0
  81. package/src/table-builder/components/group-by-list/group-by-list.component.spec.ts +23 -0
  82. package/src/table-builder/components/group-by-list/group-by-list.component.ts +21 -0
  83. package/src/table-builder/components/header-menu/header-menu.component.html +104 -0
  84. package/src/table-builder/components/header-menu/header-menu.component.scss +96 -0
  85. package/src/table-builder/components/header-menu/header-menu.component.ts +99 -0
  86. package/src/table-builder/components/in-filter/in-filter.component.css +3 -0
  87. package/src/table-builder/components/in-filter/in-filter.component.html +20 -0
  88. package/src/table-builder/components/in-filter/in-filter.component.ts +66 -0
  89. package/{table-builder/components/index.d.ts → src/table-builder/components/index.ts} +9 -9
  90. package/src/table-builder/components/initialization-component/initialization-component.html +29 -0
  91. package/src/table-builder/components/initialization-component/initialization-component.ts +24 -0
  92. package/src/table-builder/components/link-column.component.ts +47 -0
  93. package/src/table-builder/components/number-filter/number-filter.component.css +10 -0
  94. package/src/table-builder/components/number-filter/number-filter.component.html +19 -0
  95. package/src/table-builder/components/number-filter/number-filter.component.spec.ts +30 -0
  96. package/src/table-builder/components/number-filter/number-filter.component.ts +25 -0
  97. package/src/table-builder/components/profiles-menu/profiles-menu.component.html +78 -0
  98. package/src/table-builder/components/profiles-menu/profiles-menu.component.scss +126 -0
  99. package/src/table-builder/components/profiles-menu/profiles-menu.component.spec.ts +23 -0
  100. package/src/table-builder/components/profiles-menu/profiles-menu.component.ts +65 -0
  101. package/src/table-builder/components/scroll-strategy.ts +76 -0
  102. package/src/table-builder/components/sort-menu/sort-menu.component-store.ts +66 -0
  103. package/src/table-builder/components/sort-menu/sort-menu.component.html +111 -0
  104. package/src/table-builder/components/sort-menu/sort-menu.component.scss +119 -0
  105. package/src/table-builder/components/sort-menu/sort-menu.component.ts +98 -0
  106. package/{table-builder/components/table-container/table-container-imports.d.ts → src/table-builder/components/table-container/table-container-imports.ts} +32 -14
  107. package/src/table-builder/components/table-container/table-container.helpers/data-state.helpers.ts +141 -0
  108. package/src/table-builder/components/table-container/table-container.helpers/filter-state.helpers.ts +106 -0
  109. package/src/table-builder/components/table-container/table-container.helpers/groupBy.helpers.ts +86 -0
  110. package/src/table-builder/components/table-container/table-container.helpers/sort-state.helpers.ts +45 -0
  111. package/src/table-builder/components/table-container/table-container.html +94 -0
  112. package/src/table-builder/components/table-container/table-container.scss +47 -0
  113. package/src/table-builder/components/table-container/table-container.spec.ts +154 -0
  114. package/src/table-builder/components/table-container/table-container.ts +356 -0
  115. package/src/table-builder/components/table-container/tableProps.ts +20 -0
  116. package/src/table-builder/components/table-container/virtual-scroll-container.ts +156 -0
  117. package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.html +31 -0
  118. package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.ts +46 -0
  119. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.css +42 -0
  120. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.html +10 -0
  121. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.spec.ts +85 -0
  122. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.ts +33 -0
  123. package/src/table-builder/components/table-container-filter/table-wrapper-filter-store.ts +23 -0
  124. package/src/table-builder/directives/custom-cell-directive.ts +58 -0
  125. package/{table-builder/directives/index.d.ts → src/table-builder/directives/index.ts} +6 -5
  126. package/src/table-builder/directives/multi-sort.directive.spec.ts +124 -0
  127. package/src/table-builder/directives/multi-sort.directive.ts +51 -0
  128. package/src/table-builder/directives/resize-column.directive.ts +108 -0
  129. package/src/table-builder/directives/table-wrapper.directive.ts +14 -0
  130. package/src/table-builder/directives/tb-filter.directive.ts +382 -0
  131. package/src/table-builder/enums/filterTypes.ts +40 -0
  132. package/src/table-builder/functions/boolean-filter-function.ts +12 -0
  133. package/src/table-builder/functions/date-filter-function.ts +68 -0
  134. package/src/table-builder/functions/download-data.ts +11 -0
  135. package/src/table-builder/functions/null-filter-function.ts +9 -0
  136. package/src/table-builder/functions/number-filter-function.ts +41 -0
  137. package/src/table-builder/functions/sort-data-function.ts +23 -0
  138. package/src/table-builder/functions/string-filter-function.ts +51 -0
  139. package/{table-builder/interfaces/ColumnInfo.d.ts → src/table-builder/interfaces/ColumnInfo.ts} +7 -6
  140. package/src/table-builder/interfaces/column-template.ts +9 -0
  141. package/{table-builder/interfaces/dictionary.d.ts → src/table-builder/interfaces/dictionary.ts} +3 -3
  142. package/src/table-builder/interfaces/report-def.ts +155 -0
  143. package/src/table-builder/ngrx/tableBuilderStateStore.ts +199 -0
  144. package/src/table-builder/pipes/column-total.pipe.ts +17 -0
  145. package/src/table-builder/pipes/format-filter-type.pipe.ts +12 -0
  146. package/src/table-builder/pipes/format-filter-value.pipe.ts +42 -0
  147. package/src/table-builder/pipes/key-display.ts +16 -0
  148. package/src/table-builder/services/export-to-csv.service.ts +78 -0
  149. package/src/table-builder/services/link-creator.service.ts +67 -0
  150. package/src/table-builder/services/table-template-service.ts +59 -0
  151. package/src/table-builder/services/transform-creator.ts +95 -0
  152. package/src/table-builder/specs/table-custom-filters.spec.ts +262 -0
  153. package/src/table-builder/styles/collapser.styles.scss +16 -0
  154. package/src/table-builder/table-builder.module.ts +73 -0
  155. package/src/test.ts +17 -0
  156. package/src/utilities/array-helpers.ts +13 -0
  157. package/src/utilities/directives/auto-focus.directive.ts +21 -0
  158. package/src/utilities/directives/clickEmitterDirective.ts +16 -0
  159. package/src/utilities/directives/clickSubject.ts +20 -0
  160. package/src/utilities/directives/conditional-classes.directive.ts +36 -0
  161. package/src/utilities/directives/dialog-service.ts +19 -0
  162. package/src/utilities/directives/dialog.ts +144 -0
  163. package/src/utilities/directives/mat-toggle-group-directive.ts +61 -0
  164. package/src/utilities/directives/prevent-enter.directive.ts +13 -0
  165. package/src/utilities/directives/stop-propagation.directive.ts +20 -0
  166. package/src/utilities/directives/styler.ts +40 -0
  167. package/src/utilities/directives/trim-whitespace.directive.ts +21 -0
  168. package/{utilities/index.d.ts → src/utilities/index.ts} +22 -15
  169. package/src/utilities/module.ts +55 -0
  170. package/src/utilities/pipes/function.pipe.ts +16 -0
  171. package/src/utilities/pipes/phone.pipe.ts +15 -0
  172. package/src/utilities/pipes/space-case.pipes.spec.ts +47 -0
  173. package/src/utilities/pipes/space-case.pipes.ts +23 -0
  174. package/tsconfig.lib.json +19 -0
  175. package/tsconfig.lib.prod.json +10 -0
  176. package/tsconfig.spec.json +17 -0
  177. package/action-state/action-state-spinner/action-state-spinner.component.d.ts +0 -12
  178. package/action-state/action-state-ui/action-state-ui.module.d.ts +0 -7
  179. package/action-state/ngrx-ext/ngrx-ext.module.d.ts +0 -8
  180. package/action-state/ngrx.d.ts +0 -31
  181. package/esm2022/action-state/action-state-spinner/action-state-spinner.component.mjs +0 -24
  182. package/esm2022/action-state/action-state-ui/action-state-ui.module.mjs +0 -20
  183. package/esm2022/action-state/index.mjs +0 -8
  184. package/esm2022/action-state/ngrx-ext/ngrx-ext.module.mjs +0 -23
  185. package/esm2022/action-state/ngrx.mjs +0 -47
  186. package/esm2022/http-request-state/HttpRequestStateFactory.mjs +0 -51
  187. package/esm2022/http-request-state/HttpRequestStateStore.mjs +0 -121
  188. package/esm2022/http-request-state/directives/HttpStateDirectiveBase.mjs +0 -30
  189. package/esm2022/http-request-state/directives/http-error-state-directive.mjs +0 -23
  190. package/esm2022/http-request-state/directives/http-inProgress-state-directive.mjs +0 -23
  191. package/esm2022/http-request-state/directives/http-notStarted-state-directive.mjs +0 -23
  192. package/esm2022/http-request-state/directives/http-success-state-directive.mjs +0 -29
  193. package/esm2022/http-request-state/directives/index.mjs +0 -6
  194. package/esm2022/http-request-state/directives/request-state-directive.mjs +0 -61
  195. package/esm2022/http-request-state/helpers.mjs +0 -22
  196. package/esm2022/http-request-state/http-request-state.mjs +0 -39
  197. package/esm2022/http-request-state/http-state-module.mjs +0 -40
  198. package/esm2022/http-request-state/index.mjs +0 -7
  199. package/esm2022/http-request-state/rxjs/getRequestorBody.mjs +0 -4
  200. package/esm2022/http-request-state/rxjs/getRequestorState.mjs +0 -3
  201. package/esm2022/http-request-state/rxjs/index.mjs +0 -5
  202. package/esm2022/http-request-state/rxjs/tapError.mjs +0 -12
  203. package/esm2022/http-request-state/rxjs/tapSuccess.mjs +0 -12
  204. package/esm2022/http-request-state/types.mjs +0 -16
  205. package/esm2022/ngrx/actionable-selector.mjs +0 -71
  206. package/esm2022/ngrx/index.mjs +0 -2
  207. package/esm2022/one-paragon-angular-utilities.mjs +0 -5
  208. package/esm2022/public-api.mjs +0 -20
  209. package/esm2022/rxjs/defaultShareReplay.mjs +0 -7
  210. package/esm2022/rxjs/index.mjs +0 -6
  211. package/esm2022/rxjs/mapError.mjs +0 -8
  212. package/esm2022/rxjs/rxjs-operators.mjs +0 -92
  213. package/esm2022/rxjs/subjectifier.mjs +0 -15
  214. package/esm2022/rxjs/subscriber.directive.mjs +0 -50
  215. package/esm2022/table-builder/classes/DefaultSettings.mjs +0 -6
  216. package/esm2022/table-builder/classes/MatTableObservableDataSource.mjs +0 -23
  217. package/esm2022/table-builder/classes/TableBuilderConfig.mjs +0 -18
  218. package/esm2022/table-builder/classes/TableBuilderDataSource.mjs +0 -48
  219. package/esm2022/table-builder/classes/TableState.mjs +0 -48
  220. package/esm2022/table-builder/classes/data-store.mjs +0 -15
  221. package/esm2022/table-builder/classes/display-col.mjs +0 -2
  222. package/esm2022/table-builder/classes/filter-info.mjs +0 -61
  223. package/esm2022/table-builder/classes/table-builder-general-settings.mjs +0 -116
  224. package/esm2022/table-builder/classes/table-builder.mjs +0 -77
  225. package/esm2022/table-builder/classes/table-store.mjs +0 -388
  226. package/esm2022/table-builder/components/array-column.component.mjs +0 -53
  227. package/esm2022/table-builder/components/column-builder/column-builder.component.mjs +0 -134
  228. package/esm2022/table-builder/components/column-builder/column-helpers.mjs +0 -45
  229. package/esm2022/table-builder/components/date-filter/date-filter.component.mjs +0 -29
  230. package/esm2022/table-builder/components/date-time-filter/date-time-filter.component.mjs +0 -24
  231. package/esm2022/table-builder/components/filter/filter.component.mjs +0 -64
  232. package/esm2022/table-builder/components/filter/in-list/in-list-filter.component.mjs +0 -102
  233. package/esm2022/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +0 -47
  234. package/esm2022/table-builder/components/generic-table/generic-table.component.mjs +0 -310
  235. package/esm2022/table-builder/components/generic-table/paginator.component.mjs +0 -100
  236. package/esm2022/table-builder/components/group-by-list/group-by-list.component.mjs +0 -21
  237. package/esm2022/table-builder/components/header-menu/header-menu.component.mjs +0 -103
  238. package/esm2022/table-builder/components/in-filter/in-filter.component.mjs +0 -65
  239. package/esm2022/table-builder/components/index.mjs +0 -10
  240. package/esm2022/table-builder/components/initialization-component/initialization-component.mjs +0 -47
  241. package/esm2022/table-builder/components/link-column.component.mjs +0 -74
  242. package/esm2022/table-builder/components/number-filter/number-filter.component.mjs +0 -29
  243. package/esm2022/table-builder/components/profiles-menu/profiles-menu.component.mjs +0 -64
  244. package/esm2022/table-builder/components/scroll-strategy.mjs +0 -60
  245. package/esm2022/table-builder/components/sort-menu/sort-menu.component-store.mjs +0 -46
  246. package/esm2022/table-builder/components/sort-menu/sort-menu.component.mjs +0 -82
  247. package/esm2022/table-builder/components/table-container/table-container-imports.mjs +0 -26
  248. package/esm2022/table-builder/components/table-container/table-container.helpers/data-state.helpers.mjs +0 -135
  249. package/esm2022/table-builder/components/table-container/table-container.helpers/filter-state.helpers.mjs +0 -83
  250. package/esm2022/table-builder/components/table-container/table-container.helpers/groupBy.helpers.mjs +0 -71
  251. package/esm2022/table-builder/components/table-container/table-container.helpers/sort-state.helpers.mjs +0 -36
  252. package/esm2022/table-builder/components/table-container/table-container.mjs +0 -336
  253. package/esm2022/table-builder/components/table-container/tableProps.mjs +0 -8
  254. package/esm2022/table-builder/components/table-container/virtual-scroll-container.mjs +0 -155
  255. package/esm2022/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +0 -44
  256. package/esm2022/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +0 -36
  257. package/esm2022/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +0 -25
  258. package/esm2022/table-builder/directives/custom-cell-directive.mjs +0 -73
  259. package/esm2022/table-builder/directives/index.mjs +0 -6
  260. package/esm2022/table-builder/directives/multi-sort.directive.mjs +0 -50
  261. package/esm2022/table-builder/directives/resize-column.directive.mjs +0 -87
  262. package/esm2022/table-builder/directives/table-wrapper.directive.mjs +0 -18
  263. package/esm2022/table-builder/directives/tb-filter.directive.mjs +0 -396
  264. package/esm2022/table-builder/enums/filterTypes.mjs +0 -29
  265. package/esm2022/table-builder/functions/boolean-filter-function.mjs +0 -10
  266. package/esm2022/table-builder/functions/date-filter-function.mjs +0 -58
  267. package/esm2022/table-builder/functions/download-data.mjs +0 -12
  268. package/esm2022/table-builder/functions/null-filter-function.mjs +0 -8
  269. package/esm2022/table-builder/functions/number-filter-function.mjs +0 -32
  270. package/esm2022/table-builder/functions/sort-data-function.mjs +0 -17
  271. package/esm2022/table-builder/functions/string-filter-function.mjs +0 -41
  272. package/esm2022/table-builder/interfaces/ColumnInfo.mjs +0 -2
  273. package/esm2022/table-builder/interfaces/dictionary.mjs +0 -2
  274. package/esm2022/table-builder/interfaces/report-def.mjs +0 -50
  275. package/esm2022/table-builder/ngrx/tableBuilderStateStore.mjs +0 -154
  276. package/esm2022/table-builder/pipes/column-total.pipe.mjs +0 -22
  277. package/esm2022/table-builder/pipes/format-filter-type.pipe.mjs +0 -18
  278. package/esm2022/table-builder/pipes/format-filter-value.pipe.mjs +0 -43
  279. package/esm2022/table-builder/pipes/key-display.mjs +0 -18
  280. package/esm2022/table-builder/services/export-to-csv.service.mjs +0 -75
  281. package/esm2022/table-builder/services/link-creator.service.mjs +0 -50
  282. package/esm2022/table-builder/services/table-template-service.mjs +0 -60
  283. package/esm2022/table-builder/services/transform-creator.mjs +0 -100
  284. package/esm2022/table-builder/table-builder.module.mjs +0 -124
  285. package/esm2022/utilities/array-helpers.mjs +0 -14
  286. package/esm2022/utilities/directives/auto-focus.directive.mjs +0 -25
  287. package/esm2022/utilities/directives/clickEmitterDirective.mjs +0 -22
  288. package/esm2022/utilities/directives/clickSubject.mjs +0 -29
  289. package/esm2022/utilities/directives/conditional-classes.directive.mjs +0 -36
  290. package/esm2022/utilities/directives/dialog-service.mjs +0 -21
  291. package/esm2022/utilities/directives/dialog.mjs +0 -145
  292. package/esm2022/utilities/directives/mat-toggle-group-directive.mjs +0 -59
  293. package/esm2022/utilities/directives/prevent-enter.directive.mjs +0 -20
  294. package/esm2022/utilities/directives/stop-propagation.directive.mjs +0 -26
  295. package/esm2022/utilities/directives/styler.mjs +0 -41
  296. package/esm2022/utilities/directives/trim-whitespace.directive.mjs +0 -28
  297. package/esm2022/utilities/index.mjs +0 -16
  298. package/esm2022/utilities/module.mjs +0 -90
  299. package/esm2022/utilities/pipes/function.pipe.mjs +0 -22
  300. package/esm2022/utilities/pipes/phone.pipe.mjs +0 -20
  301. package/esm2022/utilities/pipes/space-case.pipes.mjs +0 -28
  302. package/fesm2022/one-paragon-angular-utilities.mjs +0 -5700
  303. package/fesm2022/one-paragon-angular-utilities.mjs.map +0 -1
  304. package/http-request-state/HttpRequestStateFactory.d.ts +0 -17
  305. package/http-request-state/HttpRequestStateStore.d.ts +0 -54
  306. package/http-request-state/directives/HttpStateDirectiveBase.d.ts +0 -14
  307. package/http-request-state/directives/http-error-state-directive.d.ts +0 -9
  308. package/http-request-state/directives/http-inProgress-state-directive.d.ts +0 -9
  309. package/http-request-state/directives/http-notStarted-state-directive.d.ts +0 -9
  310. package/http-request-state/directives/http-success-state-directive.d.ts +0 -16
  311. package/http-request-state/directives/request-state-directive.d.ts +0 -34
  312. package/http-request-state/helpers.d.ts +0 -9
  313. package/http-request-state/http-request-state.d.ts +0 -12
  314. package/http-request-state/http-state-module.d.ts +0 -11
  315. package/http-request-state/rxjs/getRequestorBody.d.ts +0 -3
  316. package/http-request-state/rxjs/getRequestorState.d.ts +0 -3
  317. package/http-request-state/rxjs/tapError.d.ts +0 -3
  318. package/http-request-state/rxjs/tapSuccess.d.ts +0 -3
  319. package/http-request-state/types.d.ts +0 -41
  320. package/index.d.ts +0 -5
  321. package/ngrx/actionable-selector.d.ts +0 -17
  322. package/ngrx/index.d.ts +0 -1
  323. package/rxjs/defaultShareReplay.d.ts +0 -2
  324. package/rxjs/mapError.d.ts +0 -2
  325. package/rxjs/rxjs-operators.d.ts +0 -13
  326. package/rxjs/subjectifier.d.ts +0 -8
  327. package/rxjs/subscriber.directive.d.ts +0 -14
  328. package/table-builder/classes/DefaultSettings.d.ts +0 -9
  329. package/table-builder/classes/MatTableObservableDataSource.d.ts +0 -9
  330. package/table-builder/classes/TableBuilderConfig.d.ts +0 -23
  331. package/table-builder/classes/TableBuilderDataSource.d.ts +0 -12
  332. package/table-builder/classes/TableState.d.ts +0 -66
  333. package/table-builder/classes/data-store.d.ts +0 -8
  334. package/table-builder/classes/filter-info.d.ts +0 -35
  335. package/table-builder/classes/table-builder-general-settings.d.ts +0 -85
  336. package/table-builder/classes/table-builder.d.ts +0 -18
  337. package/table-builder/classes/table-store.d.ts +0 -138
  338. package/table-builder/components/array-column.component.d.ts +0 -15
  339. package/table-builder/components/column-builder/column-builder.component.d.ts +0 -47
  340. package/table-builder/components/column-builder/column-helpers.d.ts +0 -36
  341. package/table-builder/components/date-filter/date-filter.component.d.ts +0 -37
  342. package/table-builder/components/date-time-filter/date-time-filter.component.d.ts +0 -37
  343. package/table-builder/components/filter/filter.component.d.ts +0 -46
  344. package/table-builder/components/filter/in-list/in-list-filter.component.d.ts +0 -24
  345. package/table-builder/components/gen-col-displayer/gen-col-displayer.component.d.ts +0 -17
  346. package/table-builder/components/generic-table/generic-table.component.d.ts +0 -89
  347. package/table-builder/components/generic-table/paginator.component.d.ts +0 -30
  348. package/table-builder/components/group-by-list/group-by-list.component.d.ts +0 -7
  349. package/table-builder/components/header-menu/header-menu.component.d.ts +0 -51
  350. package/table-builder/components/in-filter/in-filter.component.d.ts +0 -20
  351. package/table-builder/components/initialization-component/initialization-component.d.ts +0 -13
  352. package/table-builder/components/link-column.component.d.ts +0 -25
  353. package/table-builder/components/number-filter/number-filter.component.d.ts +0 -39
  354. package/table-builder/components/profiles-menu/profiles-menu.component.d.ts +0 -32
  355. package/table-builder/components/scroll-strategy.d.ts +0 -22
  356. package/table-builder/components/sort-menu/sort-menu.component-store.d.ts +0 -24
  357. package/table-builder/components/sort-menu/sort-menu.component.d.ts +0 -24
  358. package/table-builder/components/table-container/table-container.d.ts +0 -80
  359. package/table-builder/components/table-container/table-container.helpers/data-state.helpers.d.ts +0 -6
  360. package/table-builder/components/table-container/table-container.helpers/filter-state.helpers.d.ts +0 -17
  361. package/table-builder/components/table-container/table-container.helpers/groupBy.helpers.d.ts +0 -17
  362. package/table-builder/components/table-container/table-container.helpers/sort-state.helpers.d.ts +0 -8
  363. package/table-builder/components/table-container/tableProps.d.ts +0 -12
  364. package/table-builder/components/table-container/virtual-scroll-container.d.ts +0 -36
  365. package/table-builder/components/table-container-filter/filter-list/filter-list.component.d.ts +0 -15
  366. package/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.d.ts +0 -12
  367. package/table-builder/components/table-container-filter/table-wrapper-filter-store.d.ts +0 -14
  368. package/table-builder/directives/custom-cell-directive.d.ts +0 -33
  369. package/table-builder/directives/multi-sort.directive.d.ts +0 -10
  370. package/table-builder/directives/resize-column.directive.d.ts +0 -43
  371. package/table-builder/directives/table-wrapper.directive.d.ts +0 -8
  372. package/table-builder/directives/tb-filter.directive.d.ts +0 -115
  373. package/table-builder/enums/filterTypes.d.ts +0 -36
  374. package/table-builder/functions/boolean-filter-function.d.ts +0 -3
  375. package/table-builder/functions/date-filter-function.d.ts +0 -4
  376. package/table-builder/functions/download-data.d.ts +0 -1
  377. package/table-builder/functions/null-filter-function.d.ts +0 -2
  378. package/table-builder/functions/number-filter-function.d.ts +0 -4
  379. package/table-builder/functions/sort-data-function.d.ts +0 -6
  380. package/table-builder/functions/string-filter-function.d.ts +0 -5
  381. package/table-builder/interfaces/report-def.d.ts +0 -147
  382. package/table-builder/ngrx/tableBuilderStateStore.d.ts +0 -70
  383. package/table-builder/pipes/column-total.pipe.d.ts +0 -8
  384. package/table-builder/pipes/format-filter-type.pipe.d.ts +0 -8
  385. package/table-builder/pipes/format-filter-value.pipe.d.ts +0 -12
  386. package/table-builder/pipes/key-display.d.ts +0 -10
  387. package/table-builder/services/export-to-csv.service.d.ts +0 -14
  388. package/table-builder/services/link-creator.service.d.ts +0 -16
  389. package/table-builder/services/table-template-service.d.ts +0 -14
  390. package/table-builder/services/transform-creator.d.ts +0 -16
  391. package/table-builder/table-builder.module.d.ts +0 -21
  392. package/utilities/array-helpers.d.ts +0 -1
  393. package/utilities/directives/auto-focus.directive.d.ts +0 -9
  394. package/utilities/directives/clickEmitterDirective.d.ts +0 -7
  395. package/utilities/directives/clickSubject.d.ts +0 -9
  396. package/utilities/directives/conditional-classes.directive.d.ts +0 -13
  397. package/utilities/directives/dialog-service.d.ts +0 -10
  398. package/utilities/directives/dialog.d.ts +0 -44
  399. package/utilities/directives/mat-toggle-group-directive.d.ts +0 -21
  400. package/utilities/directives/prevent-enter.directive.d.ts +0 -6
  401. package/utilities/directives/stop-propagation.directive.d.ts +0 -7
  402. package/utilities/directives/styler.d.ts +0 -15
  403. package/utilities/directives/trim-whitespace.directive.d.ts +0 -7
  404. package/utilities/module.d.ts +0 -19
  405. package/utilities/pipes/function.pipe.d.ts +0 -7
  406. package/utilities/pipes/phone.pipe.d.ts +0 -7
  407. package/utilities/pipes/space-case.pipes.d.ts +0 -17
@@ -1,18 +0,0 @@
1
- import { InjectionToken, makeEnvironmentProviders } from '@angular/core';
2
- import { defaultTableState } from './TableState';
3
- import { MultiSortDirective } from '../directives';
4
- import { PhoneNumberPipe } from '../../utilities/pipes/phone.pipe';
5
- import { CurrencyPipe, DatePipe } from '@angular/common';
6
- import { SpaceCasePipe } from '../../utilities/pipes/space-case.pipes';
7
- export const TableBuilderConfigToken = new InjectionToken('TableBuilderConfig');
8
- export function provideTableBuilder(config) {
9
- return makeEnvironmentProviders([
10
- MultiSortDirective,
11
- SpaceCasePipe,
12
- DatePipe,
13
- CurrencyPipe,
14
- PhoneNumberPipe,
15
- { provide: TableBuilderConfigToken, useValue: config || defaultTableState }
16
- ]);
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVCdWlsZGVyQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvY2xhc3Nlcy9UYWJsZUJ1aWxkZXJDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3QixjQUFjLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR2pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFpQnZFLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLElBQUksY0FBYyxDQUFxQixvQkFBb0IsQ0FBQyxDQUFDO0FBRXBHLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxNQUEyQjtJQUM3RCxPQUFPLHdCQUF3QixDQUFDO1FBQzlCLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2IsUUFBUTtRQUNSLFlBQVk7UUFDWixlQUFlO1FBQ2YsRUFBRSxPQUFPLEVBQUcsdUJBQXVCLEVBQUcsUUFBUSxFQUFFLE1BQU0sSUFBSSxpQkFBaUIsRUFBQztLQUM3RSxDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW52aXJvbm1lbnRQcm92aWRlcnMsIEluamVjdGlvblRva2VuLCBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZGVmYXVsdFRhYmxlU3RhdGUgfSBmcm9tICcuL1RhYmxlU3RhdGUnO1xyXG5pbXBvcnQgeyBEZWZhdWx0U2V0dGluZ3MgfSBmcm9tICcuL0RlZmF1bHRTZXR0aW5ncyc7XHJcbmltcG9ydCB7IEFycmF5QWRkaXRpb25hbCwgRmllbGRUeXBlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcclxuaW1wb3J0IHsgTXVsdGlTb3J0RGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IFBob25lTnVtYmVyUGlwZSB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9waXBlcy9waG9uZS5waXBlJztcclxuaW1wb3J0IHsgQ3VycmVuY3lQaXBlLCBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFNwYWNlQ2FzZVBpcGUgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvcGlwZXMvc3BhY2UtY2FzZS5waXBlcyc7XHJcbmltcG9ydCB7IFRhYmxlQnVpbGRlclNldHRpbmdzIH0gZnJvbSAnLi90YWJsZS1idWlsZGVyLWdlbmVyYWwtc2V0dGluZ3MnO1xyXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlQnVpbGRlckNvbmZpZyB7XHJcbiAgZGVmYXVsdFRhYmxlU2V0dGluZ3M6IFBhcnRpYWw8T21pdDxUYWJsZUJ1aWxkZXJTZXR0aW5ncywgJ2luamVjdG9yJyA+PiAmIHsgcGFnZVNpemU/OiBudW1iZXIgfTtcclxuICBleHBvcnQ/OiBUYWJsZUJ1aWxkZXJFeHBvcnQ7XHJcbiAgZGF0ZUZvcm1hdHM/OiBEZWZhdWx0U2V0dGluZ3M7XHJcbiAgYXJyYXlEZWZhdWx0cz86IEFycmF5QWRkaXRpb25hbDtcclxuICB0cmFuc2Zvcm1lcnM/OiBQYXJ0aWFsPHsgW2tleSBpbiBrZXlvZiB0eXBlb2YgRmllbGRUeXBlXTogKHZhbDogYW55KSA9PiBhbnkgfT5cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUJ1aWxkZXJFeHBvcnQge1xyXG4gIGRhdGVGb3JtYXQ/OiBzdHJpbmc7XHJcbiAgZGF0ZVRpbWVGb3JtYXQ/OiBzdHJpbmc7XHJcbiAgb25TYXZlPzogKGV2ZW50PzogYW55KSA9PiB2b2lkO1xyXG4gIHByZXBlbmQ/IDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgVGFibGVCdWlsZGVyQ29uZmlnVG9rZW4gPSBuZXcgSW5qZWN0aW9uVG9rZW48VGFibGVCdWlsZGVyQ29uZmlnPignVGFibGVCdWlsZGVyQ29uZmlnJyk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVRhYmxlQnVpbGRlcihjb25maWc/OiBUYWJsZUJ1aWxkZXJDb25maWcpIDogRW52aXJvbm1lbnRQcm92aWRlcnMge1xyXG4gIHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW1xyXG4gICAgTXVsdGlTb3J0RGlyZWN0aXZlLFxyXG4gICAgU3BhY2VDYXNlUGlwZSxcclxuICAgIERhdGVQaXBlLFxyXG4gICAgQ3VycmVuY3lQaXBlLFxyXG4gICAgUGhvbmVOdW1iZXJQaXBlLFxyXG4gICAgeyBwcm92aWRlIDogVGFibGVCdWlsZGVyQ29uZmlnVG9rZW4gLCB1c2VWYWx1ZTogY29uZmlnIHx8IGRlZmF1bHRUYWJsZVN0YXRlfVxyXG4gIF0pXHJcbn1cclxuIl19
@@ -1,48 +0,0 @@
1
- import { MatTableDataSource } from '@angular/material/table';
2
- import { computed, effect, untracked } from '@angular/core';
3
- export class TableBuilderDataSource extends MatTableDataSource {
4
- dataSrc;
5
- subscription;
6
- constructor(dataSrc, state, data) {
7
- super([]);
8
- this.dataSrc = dataSrc;
9
- const $currentPage = state.$currentPage;
10
- const $pageSize = state.$pageSize;
11
- const $virtualEnds = data.selectSignal(d => d.virtualEnds);
12
- const $dataLength = computed(() => dataSrc().length);
13
- const $dataSize = computed(() => {
14
- const viewType = state.$viewType();
15
- const dataLength = $dataLength();
16
- const currentPage = $currentPage();
17
- const pageSize = $pageSize();
18
- const virtualEnds = $virtualEnds();
19
- const previousPageRecords = currentPage * pageSize;
20
- if (viewType === 'virtual paginator') {
21
- return ({ start: virtualEnds.start + previousPageRecords, end: Math.min(virtualEnds.end, pageSize) + previousPageRecords });
22
- }
23
- if (viewType === 'paginator') {
24
- return ({ start: previousPageRecords, end: previousPageRecords + pageSize });
25
- }
26
- if (viewType === 'all') {
27
- return ({ start: 0, end: dataLength });
28
- }
29
- return ({ start: virtualEnds.start, end: virtualEnds.end });
30
- });
31
- const $dataToShow = computed(() => dataSrc().slice($dataSize().start, $dataSize().end));
32
- effect(() => {
33
- const dataToShow = $dataToShow();
34
- untracked(() => this.data = dataToShow);
35
- });
36
- }
37
- connect() {
38
- return super.connect();
39
- }
40
- disconnect() {
41
- if (this.subscription) {
42
- this.subscription.unsubscribe();
43
- this.subscription = undefined;
44
- }
45
- super.disconnect();
46
- }
47
- }
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVCdWlsZGVyRGF0YVNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2NsYXNzZXMvVGFibGVCdWlsZGVyRGF0YVNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUk3RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEUsTUFBTSxPQUFPLHNCQUEwQixTQUFRLGtCQUFxQjtJQUd6RDtJQUZULFlBQVksQ0FBZ0I7SUFDNUIsWUFDUyxPQUFvQixFQUMzQixLQUFpQixFQUNqQixJQUFlO1FBRWYsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBSkgsWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQU8zQixNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDO1FBQ3hDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFDbEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUUzRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFckQsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM5QixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkMsTUFBTSxVQUFVLEdBQUcsV0FBVyxFQUFFLENBQUM7WUFDakMsTUFBTSxXQUFXLEdBQUcsWUFBWSxFQUFFLENBQUM7WUFDbkMsTUFBTSxRQUFRLEdBQUcsU0FBUyxFQUFFLENBQUM7WUFDN0IsTUFBTSxXQUFXLEdBQUcsWUFBWSxFQUFFLENBQUM7WUFDbkMsTUFBTSxtQkFBbUIsR0FBRyxXQUFXLEdBQUcsUUFBUSxDQUFDO1lBQ25ELElBQUcsUUFBUSxLQUFLLG1CQUFtQixFQUFDLENBQUM7Z0JBQ25DLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBQyxXQUFXLENBQUMsS0FBSyxHQUFHLG1CQUFtQixFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLEdBQUcsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO1lBQzdILENBQUM7WUFDRCxJQUFHLFFBQVEsS0FBSyxXQUFXLEVBQUMsQ0FBQztnQkFDM0IsT0FBTyxDQUFDLEVBQUUsS0FBSyxFQUFFLG1CQUFtQixFQUFFLEdBQUcsRUFBRSxtQkFBbUIsR0FBRyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQy9FLENBQUM7WUFDRCxJQUFHLFFBQVEsS0FBSyxLQUFLLEVBQUMsQ0FBQztnQkFDckIsT0FBTyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUN6QyxDQUFDO1lBQ0QsT0FBTyxDQUFDLEVBQUUsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUNoQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFdkQsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNWLE1BQU0sVUFBVSxHQUFHLFdBQVcsRUFBRSxDQUFDO1lBQ2pDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELE9BQU87UUFDTCxPQUFPLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBQ0QsVUFBVTtRQUNSLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUM7UUFDaEMsQ0FBQztRQUNELEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNyQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUYWJsZVN0b3JlIH0gZnJvbSAnLi90YWJsZS1zdG9yZSc7XHJcbmltcG9ydCB7IERhdGFTdG9yZSB9IGZyb20gJy4vZGF0YS1zdG9yZSc7XHJcbmltcG9ydCB7IGNvbXB1dGVkLCBlZmZlY3QsIFNpZ25hbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgVGFibGVCdWlsZGVyRGF0YVNvdXJjZTxUPiBleHRlbmRzIE1hdFRhYmxlRGF0YVNvdXJjZTxUPiB7XHJcbiAgc3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGRhdGFTcmM6IFNpZ25hbDxUW10+LFxyXG4gICAgc3RhdGU6IFRhYmxlU3RvcmUsXHJcbiAgICBkYXRhOiBEYXRhU3RvcmUsXHJcbiAgKSB7XHJcbiAgICBzdXBlcihbXSk7XHJcbiAgXHJcblxyXG4gICAgY29uc3QgJGN1cnJlbnRQYWdlID0gc3RhdGUuJGN1cnJlbnRQYWdlO1xyXG4gICAgY29uc3QgJHBhZ2VTaXplID0gc3RhdGUuJHBhZ2VTaXplO1xyXG4gICAgY29uc3QgJHZpcnR1YWxFbmRzID0gZGF0YS5zZWxlY3RTaWduYWwoZCA9PiBkLnZpcnR1YWxFbmRzKTtcclxuXHJcbiAgICBjb25zdCAkZGF0YUxlbmd0aCA9IGNvbXB1dGVkKCgpID0+IGRhdGFTcmMoKS5sZW5ndGgpO1xyXG5cclxuICAgIGNvbnN0ICRkYXRhU2l6ZSA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgICAgY29uc3Qgdmlld1R5cGUgPSBzdGF0ZS4kdmlld1R5cGUoKTtcclxuICAgICAgY29uc3QgZGF0YUxlbmd0aCA9ICRkYXRhTGVuZ3RoKCk7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRQYWdlID0gJGN1cnJlbnRQYWdlKCk7XHJcbiAgICAgIGNvbnN0IHBhZ2VTaXplID0gJHBhZ2VTaXplKCk7XHJcbiAgICAgIGNvbnN0IHZpcnR1YWxFbmRzID0gJHZpcnR1YWxFbmRzKCk7XHJcbiAgICAgIGNvbnN0IHByZXZpb3VzUGFnZVJlY29yZHMgPSBjdXJyZW50UGFnZSAqIHBhZ2VTaXplO1xyXG4gICAgICBpZih2aWV3VHlwZSA9PT0gJ3ZpcnR1YWwgcGFnaW5hdG9yJyl7XHJcbiAgICAgICAgcmV0dXJuICh7IHN0YXJ0OnZpcnR1YWxFbmRzLnN0YXJ0ICsgcHJldmlvdXNQYWdlUmVjb3JkcywgZW5kOiBNYXRoLm1pbih2aXJ0dWFsRW5kcy5lbmQsIHBhZ2VTaXplKSArIHByZXZpb3VzUGFnZVJlY29yZHMgfSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYodmlld1R5cGUgPT09ICdwYWdpbmF0b3InKXtcclxuICAgICAgICByZXR1cm4gKHsgc3RhcnQ6IHByZXZpb3VzUGFnZVJlY29yZHMsIGVuZDogcHJldmlvdXNQYWdlUmVjb3JkcyArIHBhZ2VTaXplIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGlmKHZpZXdUeXBlID09PSAnYWxsJyl7XHJcbiAgICAgICAgcmV0dXJuICh7IHN0YXJ0OiAwLCBlbmQ6IGRhdGFMZW5ndGggfSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuICh7IHN0YXJ0OiB2aXJ0dWFsRW5kcy5zdGFydCwgZW5kOiB2aXJ0dWFsRW5kcy5lbmQgfSk7XHJcbiAgICB9KTtcclxuICAgIGNvbnN0ICRkYXRhVG9TaG93ID0gY29tcHV0ZWQoKCkgPT5cclxuICAgICAgZGF0YVNyYygpLnNsaWNlKCRkYXRhU2l6ZSgpLnN0YXJ0LCAkZGF0YVNpemUoKS5lbmQpKTtcclxuICBcclxuICAgIGVmZmVjdCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGRhdGFUb1Nob3cgPSAkZGF0YVRvU2hvdygpO1xyXG4gICAgICB1bnRyYWNrZWQoKCkgPT4gdGhpcy5kYXRhID0gZGF0YVRvU2hvdyk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuICBjb25uZWN0KCkge1xyXG4gICAgcmV0dXJuIHN1cGVyLmNvbm5lY3QoKTtcclxuICB9XHJcbiAgZGlzY29ubmVjdCgpIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICAgIHN1cGVyLmRpc2Nvbm5lY3QoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,48 +0,0 @@
1
- import { NotPersistedTableSettings, PersistedTableSettings } from './table-builder-general-settings';
2
- class KeysToDelete {
3
- initializationState = null;
4
- metaData = null;
5
- notPersistedTableSettings = null;
6
- linkMaps = null;
7
- pageSize = null;
8
- currentPage = null;
9
- virtualScrollOffset = null;
10
- dataLen = null;
11
- virtualEnds = null;
12
- virtualEnd = null;
13
- props = null;
14
- showAll = null;
15
- minColumnWidth = null;
16
- }
17
- export const keysToDelete = Object.keys(new KeysToDelete());
18
- export var InitializationState;
19
- (function (InitializationState) {
20
- InitializationState[InitializationState["Created"] = 0] = "Created";
21
- InitializationState[InitializationState["MetaDataLoaded"] = 1] = "MetaDataLoaded";
22
- InitializationState[InitializationState["LoadedFromStore"] = 2] = "LoadedFromStore";
23
- InitializationState[InitializationState["Ready"] = 3] = "Ready";
24
- })(InitializationState || (InitializationState = {}));
25
- export const defaultTableState = {
26
- initializationState: InitializationState.Created,
27
- metaData: {},
28
- filters: {},
29
- hiddenKeys: [],
30
- sorted: [],
31
- userDefined: { order: {}, widths: {}, table: {} },
32
- persistedTableSettings: new PersistedTableSettings(),
33
- notPersistedTableSettings: new NotPersistedTableSettings(),
34
- pageSize: 10,
35
- linkMaps: {},
36
- groupBy: [],
37
- currentPage: 0,
38
- props: {},
39
- showAll: false,
40
- };
41
- export const defaultDataState = {
42
- virtualScrollOffset: 0,
43
- dataLen: 0,
44
- virtualEnds: {
45
- start: 0, end: 20
46
- },
47
- };
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVTdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2NsYXNzZXMvVGFibGVTdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQXlDckcsTUFBTSxZQUFZO0lBQ2hCLG1CQUFtQixHQUFHLElBQUksQ0FBQztJQUMzQixRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ2hCLHlCQUF5QixHQUFHLElBQUksQ0FBQztJQUNqQyxRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ2hCLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDaEIsV0FBVyxHQUFHLElBQUksQ0FBQztJQUNuQixtQkFBbUIsR0FBRyxJQUFJLENBQUM7SUFDM0IsT0FBTyxHQUFHLElBQUksQ0FBQztJQUNmLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDbkIsVUFBVSxHQUFHLElBQUksQ0FBQztJQUNsQixLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ2IsT0FBTyxHQUFHLElBQUksQ0FBQztJQUNmLGNBQWMsR0FBRyxJQUFJLENBQUM7Q0FDdkI7QUFDRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFlBQVksRUFBRSxDQUFDLENBQUM7QUFFNUQsTUFBTSxDQUFOLElBQVksbUJBS1g7QUFMRCxXQUFZLG1CQUFtQjtJQUM3QixtRUFBTyxDQUFBO0lBQ1AsaUZBQWMsQ0FBQTtJQUNkLG1GQUFlLENBQUE7SUFDZiwrREFBSyxDQUFBO0FBQ1AsQ0FBQyxFQUxXLG1CQUFtQixLQUFuQixtQkFBbUIsUUFLOUI7QUFFRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBZTtJQUMzQyxtQkFBbUIsRUFBRSxtQkFBbUIsQ0FBQyxPQUFPO0lBQ2hELFFBQVEsRUFBRSxFQUFFO0lBQ1osT0FBTyxFQUFFLEVBQUU7SUFDWCxVQUFVLEVBQUUsRUFBRTtJQUNkLE1BQU0sRUFBRSxFQUFFO0lBQ1YsV0FBVyxFQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUM7SUFDL0Msc0JBQXNCLEVBQUcsSUFBSSxzQkFBc0IsRUFBRTtJQUNyRCx5QkFBeUIsRUFBRyxJQUFJLHlCQUF5QixFQUFFO0lBQzNELFFBQVEsRUFBRSxFQUFFO0lBQ1osUUFBUSxFQUFFLEVBQUU7SUFDWixPQUFPLEVBQUUsRUFBRTtJQUNYLFdBQVcsRUFBRSxDQUFDO0lBRWQsS0FBSyxFQUFFLEVBQWdCO0lBQ3ZCLE9BQU8sRUFBRSxLQUFLO0NBQ2YsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLG1CQUFtQixFQUFFLENBQUM7SUFDdEIsT0FBTyxFQUFFLENBQUM7SUFDVixXQUFXLEVBQUU7UUFDWCxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFO0tBQ2xCO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1c3RvbUZpbHRlciwgRmlsdGVySW5mbyB9IGZyb20gJy4vZmlsdGVyLWluZm8nO1xyXG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9kaWN0aW9uYXJ5JztcclxuaW1wb3J0IHsgU29ydCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xyXG5pbXBvcnQgeyBNZXRhRGF0YSwgVGFyZ2V0IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcclxuaW1wb3J0IHsgTm90UGVyc2lzdGVkVGFibGVTZXR0aW5ncywgUGVyc2lzdGVkVGFibGVTZXR0aW5ncyB9IGZyb20gJy4vdGFibGUtYnVpbGRlci1nZW5lcmFsLXNldHRpbmdzJztcclxuaW1wb3J0IHsgTGlua0luZm8gfSBmcm9tICcuLi9zZXJ2aWNlcy9saW5rLWNyZWF0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7IFRhYmxlUHJvcHMgfSBmcm9tICcuLi9jb21wb25lbnRzL3RhYmxlLWNvbnRhaW5lci90YWJsZVByb3BzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgR3JvdXAge1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIGdyb3VwTmFtZTogc3RyaW5nO1xyXG4gIGNoaWxkcmVuOiBhbnlbXTtcclxuICBpc0dyb3VwSGVhZGVyOiB0cnVlO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEdyb3VwZWREYXRhIHtcclxuICBrZXk6IHN0cmluZyxcclxuICBleHBhbmRlZEhlYWRlcnM6IHN0cmluZ1tdXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGVyc2lzdGVkVGFibGVTdGF0ZSB7XHJcbiAgaGlkZGVuS2V5cz86IHN0cmluZyBbXTtcclxuICBmaWx0ZXJzOiBEaWN0aW9uYXJ5PEZpbHRlckluZm8gfCBDdXN0b21GaWx0ZXI+O1xyXG4gIHNvcnRlZCA6IFNvcnQgW107XHJcbiAgdXNlckRlZmluZWQgOiB7IG9yZGVyOkRpY3Rpb25hcnk8bnVtYmVyPiwgd2lkdGhzOkRpY3Rpb25hcnk8bnVtYmVyPiwgdGFibGU6eyB3aWR0aD86bnVtYmVyIH0sIHBhZ2VTaXplPzogbnVtYmVyIH07XHJcbiAgcGVyc2lzdGVkVGFibGVTZXR0aW5ncyA6IFBlcnNpc3RlZFRhYmxlU2V0dGluZ3M7XHJcbiAgZ3JvdXBCeTogR3JvdXBlZERhdGFbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUYWJsZVN0YXRlIGV4dGVuZHMgUmVxdWlyZWQ8UGVyc2lzdGVkVGFibGVTdGF0ZT4ge1xyXG4gIGluaXRpYWxpemF0aW9uU3RhdGU6IEluaXRpYWxpemF0aW9uU3RhdGU7XHJcbiAgbWV0YURhdGE6IERpY3Rpb25hcnk8TWV0YURhdGE+O1xyXG4gIG5vdFBlcnNpc3RlZFRhYmxlU2V0dGluZ3MgOiBOb3RQZXJzaXN0ZWRUYWJsZVNldHRpbmdzO1xyXG4gIHBhZ2VTaXplOiBudW1iZXI7XHJcbiAgY3VycmVudFBhZ2U6IG51bWJlcjtcclxuICBsaW5rTWFwczogRGljdGlvbmFyeTxMaW5rSW5mbz47XHJcbiAgcHJvcHM6IFRhYmxlUHJvcHM7XHJcbiAgc2hvd0FsbDogYm9vbGVhbjtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIERhdGFTdGF0ZSB7XHJcbiAgdmlydHVhbFNjcm9sbE9mZnNldDogbnVtYmVyO1xyXG4gIHZpcnR1YWxFbmRzOiB7c3RhcnQ6IG51bWJlciwgZW5kOiBudW1iZXJ9O1xyXG4gIGRhdGFMZW46IG51bWJlcjtcclxufVxyXG50eXBlIFJlcXVpcmVOdWxsPFQ+ID0geyBbSyBpbiBrZXlvZiBUXTogbnVsbCB9O1xyXG5jbGFzcyBLZXlzVG9EZWxldGUgaW1wbGVtZW50cyAgUmVxdWlyZU51bGw8T21pdDxUYWJsZVN0YXRlLCBrZXlvZiBQZXJzaXN0ZWRUYWJsZVN0YXRlPj4ge1xyXG4gIGluaXRpYWxpemF0aW9uU3RhdGUgPSBudWxsO1xyXG4gIG1ldGFEYXRhID0gbnVsbDtcclxuICBub3RQZXJzaXN0ZWRUYWJsZVNldHRpbmdzID0gbnVsbDtcclxuICBsaW5rTWFwcyA9IG51bGw7XHJcbiAgcGFnZVNpemUgPSBudWxsO1xyXG4gIGN1cnJlbnRQYWdlID0gbnVsbDtcclxuICB2aXJ0dWFsU2Nyb2xsT2Zmc2V0ID0gbnVsbDtcclxuICBkYXRhTGVuID0gbnVsbDtcclxuICB2aXJ0dWFsRW5kcyA9IG51bGw7XHJcbiAgdmlydHVhbEVuZCA9IG51bGw7XHJcbiAgcHJvcHMgPSBudWxsO1xyXG4gIHNob3dBbGwgPSBudWxsO1xyXG4gIG1pbkNvbHVtbldpZHRoID0gbnVsbDtcclxufVxyXG5leHBvcnQgY29uc3Qga2V5c1RvRGVsZXRlID0gT2JqZWN0LmtleXMobmV3IEtleXNUb0RlbGV0ZSgpKTtcclxuXHJcbmV4cG9ydCBlbnVtIEluaXRpYWxpemF0aW9uU3RhdGUge1xyXG4gIENyZWF0ZWQsXHJcbiAgTWV0YURhdGFMb2FkZWQsXHJcbiAgTG9hZGVkRnJvbVN0b3JlLFxyXG4gIFJlYWR5LFxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZGVmYXVsdFRhYmxlU3RhdGU6IFRhYmxlU3RhdGUgPSB7XHJcbiAgaW5pdGlhbGl6YXRpb25TdGF0ZTogSW5pdGlhbGl6YXRpb25TdGF0ZS5DcmVhdGVkLFxyXG4gIG1ldGFEYXRhOiB7fSxcclxuICBmaWx0ZXJzOiB7fSxcclxuICBoaWRkZW5LZXlzOiBbXSxcclxuICBzb3J0ZWQ6IFtdLFxyXG4gIHVzZXJEZWZpbmVkOnsgb3JkZXI6IHt9LCB3aWR0aHM6IHt9LCB0YWJsZToge319LFxyXG4gIHBlcnNpc3RlZFRhYmxlU2V0dGluZ3MgOiBuZXcgUGVyc2lzdGVkVGFibGVTZXR0aW5ncygpLFxyXG4gIG5vdFBlcnNpc3RlZFRhYmxlU2V0dGluZ3MgOiBuZXcgTm90UGVyc2lzdGVkVGFibGVTZXR0aW5ncygpLFxyXG4gIHBhZ2VTaXplOiAxMCxcclxuICBsaW5rTWFwczoge30sXHJcbiAgZ3JvdXBCeTogW10sXHJcbiAgY3VycmVudFBhZ2U6IDAsXHJcblxyXG4gIHByb3BzOiB7fSBhcyBUYWJsZVByb3BzLFxyXG4gIHNob3dBbGw6IGZhbHNlLFxyXG59O1xyXG5leHBvcnQgY29uc3QgZGVmYXVsdERhdGFTdGF0ZSA9IHtcclxuICB2aXJ0dWFsU2Nyb2xsT2Zmc2V0OiAwLFxyXG4gIGRhdGFMZW46IDAsXHJcbiAgdmlydHVhbEVuZHM6IHtcclxuICAgIHN0YXJ0OiAwLCBlbmQ6IDIwXHJcbiAgfSxcclxufSBcclxuIl19
@@ -1,15 +0,0 @@
1
- import { Injectable } from "@angular/core";
2
- import { ComponentStore } from "@ngrx/component-store";
3
- import { defaultDataState } from "./TableState";
4
- import * as i0 from "@angular/core";
5
- export class DataStore extends ComponentStore {
6
- constructor() {
7
- super({ ...defaultDataState });
8
- }
9
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DataStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
10
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DataStore });
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DataStore, decorators: [{
13
- type: Injectable
14
- }], ctorParameters: () => [] });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2NsYXNzZXMvZGF0YS1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQWEsZ0JBQWdCLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBRzNELE1BQU0sT0FBTyxTQUFVLFNBQVEsY0FBeUI7SUFDdEQ7UUFDRSxLQUFLLENBQUMsRUFBRSxHQUFHLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO3VHQUhVLFNBQVM7MkdBQVQsU0FBUzs7MkZBQVQsU0FBUztrQkFEckIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnRTdG9yZSB9IGZyb20gXCJAbmdyeC9jb21wb25lbnQtc3RvcmVcIjtcclxuaW1wb3J0IHsgRGF0YVN0YXRlLCBkZWZhdWx0RGF0YVN0YXRlIH0gZnJvbSBcIi4vVGFibGVTdGF0ZVwiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRGF0YVN0b3JlIGV4dGVuZHMgQ29tcG9uZW50U3RvcmU8RGF0YVN0YXRlPiB7XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcih7IC4uLmRlZmF1bHREYXRhU3RhdGUgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS1jb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jbGFzc2VzL2Rpc3BsYXktY29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIERpc3BsYXlDb2wge1xyXG4gICAga2V5OiBzdHJpbmc7XHJcbiAgICBkaXNwbGF5TmFtZT86IHN0cmluZztcclxuICAgIGlzVmlzaWJsZTogYm9vbGVhbjtcclxufVxyXG4iXX0=
@@ -1,61 +0,0 @@
1
- import { FilterTypes } from '../enums/filterTypes';
2
- import { EnumFilterFuncs, StringFilterFuncs } from '../functions/string-filter-function';
3
- import { NumberFilterFuncs } from '../functions/number-filter-function';
4
- import { DateFilterFuncs, DateTimeFilterFuncs } from '../functions/date-filter-function';
5
- import { BooleanFilterFuncs } from '../functions/boolean-filter-function';
6
- import { FieldType } from '../interfaces/report-def';
7
- import { get } from 'lodash';
8
- const filterFactoryMap = {
9
- [FilterTypes.And]: (filter) => {
10
- const filters = filter.filterValue.map(createFilterFunc);
11
- return (obj) => filters.every(f => f(obj));
12
- },
13
- [FilterTypes.In]: (filter) => {
14
- const filters = filter.filterValue.map(createFilterFunc);
15
- return (obj) => filters.some(f => f(obj));
16
- },
17
- };
18
- const filterTypeFuncMap = {
19
- [FieldType.Array]: StringFilterFuncs,
20
- [FieldType.Boolean]: BooleanFilterFuncs,
21
- [FieldType.Currency]: NumberFilterFuncs,
22
- [FieldType.Date]: DateFilterFuncs,
23
- [FieldType.DateTime]: DateTimeFilterFuncs,
24
- [FieldType.Enum]: EnumFilterFuncs,
25
- [FieldType.Link]: StringFilterFuncs,
26
- [FieldType.Number]: NumberFilterFuncs,
27
- [FieldType.PhoneNumber]: StringFilterFuncs,
28
- [FieldType.String]: StringFilterFuncs,
29
- [FieldType.Unknown]: StringFilterFuncs,
30
- };
31
- export const filterTypeMap = Object.entries(filterTypeFuncMap).reduce((acc, [key, value]) => ({ ...acc, [key]: Object.keys(value) }), {});
32
- export function isCustomFilter(filter) {
33
- return filter && filter.filterType === FilterTypes.Custom;
34
- }
35
- export function isFilterInfo(filter) {
36
- return filter && typeof filter.key === 'string' && filter.filterType !== FilterTypes.Custom;
37
- }
38
- const defaultPredicate = () => true;
39
- export function createFilterFunc(filter) {
40
- if (isCustomFilter(filter)) {
41
- return filter.active ? filter.predicate : defaultPredicate;
42
- }
43
- if (filter.filterValue === undefined) {
44
- return defaultPredicate;
45
- }
46
- const func = filterTypeFuncMap[filter.fieldType][filter.filterType](filter);
47
- if (!func) {
48
- if (filterFactoryMap[filter.filterType]) {
49
- return filterFactoryMap[filter.filterType](filter);
50
- }
51
- }
52
- const cannotBeTrueForNull = !FalseyValueCanBeIncludedFilterTypes.includes(filter.filterType);
53
- return (rowObj) => {
54
- const value = get(rowObj, filter.key);
55
- return ((value == undefined) && cannotBeTrueForNull)
56
- ? false
57
- : func(value);
58
- };
59
- }
60
- const FalseyValueCanBeIncludedFilterTypes = [FilterTypes.IsNull, FilterTypes.NumberNotEqual, FilterTypes.DateIsNotOn, FilterTypes.StringDoesNotContain];
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWluZm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jbGFzc2VzL2ZpbHRlci1pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdyRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRTdCLE1BQU0sZ0JBQWdCLEdBQW9DO0lBQ3hELENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUFHLENBQUMsTUFBa0IsRUFBNEIsRUFBRTtRQUNuRSxNQUFNLE9BQU8sR0FBSSxNQUFNLENBQUMsV0FBNEIsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUMzRSxPQUFPLENBQUMsR0FBUSxFQUFZLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUNELENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxFQUFHLENBQUMsTUFBa0IsRUFBMEIsRUFBRTtRQUNoRSxNQUFNLE9BQU8sR0FBSSxNQUFNLENBQUMsV0FBNEIsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUMzRSxP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QyxNQUFNLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sQ0FBQyxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsSUFBSSxtQkFBbUIsQ0FBQztZQUNsRCxDQUFDLENBQUMsS0FBSztZQUNQLENBQUMsQ0FBQyxJQUFJLENBQUUsS0FBSyxDQUFDLENBQUM7SUFDbkIsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUtELE1BQU0sbUNBQW1DLEdBQUcsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUMsV0FBVyxDQUFDLFdBQVcsRUFBQyxXQUFXLENBQUMsb0JBQW9CLENBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWx0ZXJUeXBlcywgRmlsdGVyVHlwZSB9IGZyb20gJy4uL2VudW1zL2ZpbHRlclR5cGVzJztcclxuaW1wb3J0IHsgRW51bUZpbHRlckZ1bmNzLCBTdHJpbmdGaWx0ZXJGdW5jcyB9IGZyb20gJy4uL2Z1bmN0aW9ucy9zdHJpbmctZmlsdGVyLWZ1bmN0aW9uJztcclxuaW1wb3J0IHsgTnVtYmVyRmlsdGVyRnVuY3MgfSBmcm9tICcuLi9mdW5jdGlvbnMvbnVtYmVyLWZpbHRlci1mdW5jdGlvbic7XHJcbmltcG9ydCB7IERhdGVGaWx0ZXJGdW5jcywgRGF0ZVRpbWVGaWx0ZXJGdW5jcyB9IGZyb20gJy4uL2Z1bmN0aW9ucy9kYXRlLWZpbHRlci1mdW5jdGlvbic7XHJcbmltcG9ydCB7IEJvb2xlYW5GaWx0ZXJGdW5jcyB9IGZyb20gJy4uL2Z1bmN0aW9ucy9ib29sZWFuLWZpbHRlci1mdW5jdGlvbic7XHJcbmltcG9ydCB7IEZpZWxkVHlwZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvcmVwb3J0LWRlZic7XHJcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2RpY3Rpb25hcnknO1xyXG5pbXBvcnQgeyBQcmVkaWNhdGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZ2V0IH0gZnJvbSAnbG9kYXNoJztcclxuXHJcbmNvbnN0IGZpbHRlckZhY3RvcnlNYXA6IERpY3Rpb25hcnk8RmlsdGVyRnVuYzxhbnksYW55Pj4gPSB7XHJcbiAgW0ZpbHRlclR5cGVzLkFuZF0gOiAoZmlsdGVyOiBGaWx0ZXJJbmZvICk6ICgob2JqOiBhbnkpID0+IGJvb2xlYW4pID0+ICB7XHJcbiAgICBjb25zdCBmaWx0ZXJzID0gKGZpbHRlci5maWx0ZXJWYWx1ZSBhcyBGaWx0ZXJJbmZvW10pLm1hcChjcmVhdGVGaWx0ZXJGdW5jKTtcclxuICAgIHJldHVybiAob2JqOiBhbnkpIDogYm9vbGVhbiA9PiBmaWx0ZXJzLmV2ZXJ5KCBmID0+IGYob2JqKSk7XHJcbiAgfSxcclxuICBbRmlsdGVyVHlwZXMuSW5dIDogKGZpbHRlcjogRmlsdGVySW5mbyApOiAob2JqOiBhbnkpID0+IGJvb2xlYW4gPT4gIHtcclxuICAgIGNvbnN0IGZpbHRlcnMgPSAoZmlsdGVyLmZpbHRlclZhbHVlIGFzIEZpbHRlckluZm9bXSkubWFwKGNyZWF0ZUZpbHRlckZ1bmMpO1xyXG4gICAgcmV0dXJuIChvYmo6IGFueSkgOiBib29sZWFuID0+IGZpbHRlcnMuc29tZSggZiA9PiBmKG9iaikpO1xyXG4gIH0sXHJcbn07XHJcblxyXG5jb25zdCBmaWx0ZXJUeXBlRnVuY01hcCA6IFJlY29yZDxGaWVsZFR5cGUsIEZpbHRlckZ1bmNzPGFueT4+ICA9IHtcclxuICBbRmllbGRUeXBlLkFycmF5XSA6IFN0cmluZ0ZpbHRlckZ1bmNzLFxyXG4gIFtGaWVsZFR5cGUuQm9vbGVhbl0gOiBCb29sZWFuRmlsdGVyRnVuY3MsXHJcbiAgW0ZpZWxkVHlwZS5DdXJyZW5jeV0gOiBOdW1iZXJGaWx0ZXJGdW5jcyxcclxuICBbRmllbGRUeXBlLkRhdGVdIDogRGF0ZUZpbHRlckZ1bmNzLFxyXG4gIFtGaWVsZFR5cGUuRGF0ZVRpbWVdIDogRGF0ZVRpbWVGaWx0ZXJGdW5jcyxcclxuICBbRmllbGRUeXBlLkVudW1dIDogRW51bUZpbHRlckZ1bmNzICxcclxuICBbRmllbGRUeXBlLkxpbmtdIDogU3RyaW5nRmlsdGVyRnVuY3MsXHJcbiAgW0ZpZWxkVHlwZS5OdW1iZXJdIDogTnVtYmVyRmlsdGVyRnVuY3MsXHJcbiAgW0ZpZWxkVHlwZS5QaG9uZU51bWJlcl0gOiBTdHJpbmdGaWx0ZXJGdW5jcyxcclxuICBbRmllbGRUeXBlLlN0cmluZ10gOiBTdHJpbmdGaWx0ZXJGdW5jcyxcclxuICBbRmllbGRUeXBlLlVua25vd25dIDogU3RyaW5nRmlsdGVyRnVuY3MsXHJcbn0gYXMgUmVjb3JkPEZpZWxkVHlwZSwgRmlsdGVyRnVuY3M8YW55Pj47XHJcblxyXG5leHBvcnQgY29uc3QgZmlsdGVyVHlwZU1hcCA9IE9iamVjdC5lbnRyaWVzKGZpbHRlclR5cGVGdW5jTWFwKS5yZWR1Y2UoXHJcbiAgKGFjYywgW2tleSwgdmFsdWVdKSA9PiAoeyAuLi5hY2MsIFtrZXldOiBPYmplY3Qua2V5cyh2YWx1ZSkgfSksIHt9IGFzIFJlY29yZDxGaWVsZFR5cGUsIEZpbHRlclR5cGVbXT5cclxuKVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJTdGF0ZSB7XHJcbiAgZmlsdGVySWQ6IHN0cmluZztcclxuICBmaWx0ZXJUeXBlOiBGaWx0ZXJUeXBlO1xyXG4gIGZpbHRlclZhbHVlPzogYW55O1xyXG4gIGFjdGl2ZT86IGJvb2xlYW47XHJcblxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEZpbHRlckluZm88VCBleHRlbmRzIEZpZWxkVHlwZSA9IGFueSwgVSA9IGFueT4gZXh0ZW5kcyBGaWx0ZXJTdGF0ZSB7XHJcbiAgICBrZXk6IHN0cmluZyAmIGtleW9mIFU7XHJcbiAgICBmaWVsZFR5cGU6IFQ7XHJcbiAgICBfaXNFeHRlcm5hbGx5TWFuYWdlZD86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGFydGlhbEZpbHRlciB7XHJcbiAgZmlsdGVySWQ/OiBzdHJpbmc7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgZmllbGRUeXBlOiBGaWVsZFR5cGU7XHJcbiAgZmlsdGVyVHlwZT86IEZpbHRlclR5cGU7XHJcbiAgZmlsdGVyVmFsdWU/OiBhbnk7XHJcbn1cclxuXHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21GaWx0ZXI8VCBleHRlbmRzIEZpZWxkVHlwZSA9IGFueT4gIGV4dGVuZHMgRmlsdGVyU3RhdGUge1xyXG4gIHByZWRpY2F0ZTogUHJlZGljYXRlPFQ+O1xyXG4gIGZpbHRlclR5cGU6IHR5cGVvZiBGaWx0ZXJUeXBlcy5DdXN0b207XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0N1c3RvbUZpbHRlcihmaWx0ZXIgOiBGaWx0ZXJJbmZvIHwgQ3VzdG9tRmlsdGVyKSA6ICBmaWx0ZXIgaXMgQ3VzdG9tRmlsdGVyIHtcclxuICByZXR1cm4gZmlsdGVyICYmIGZpbHRlci5maWx0ZXJUeXBlID09PSBGaWx0ZXJUeXBlcy5DdXN0b207XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0ZpbHRlckluZm8oZmlsdGVyIDogRmlsdGVySW5mbyB8IEN1c3RvbUZpbHRlcikgOiAgZmlsdGVyIGlzIEZpbHRlckluZm8ge1xyXG4gIHJldHVybiAgZmlsdGVyICYmIHR5cGVvZiAoZmlsdGVyIGFzIEZpbHRlckluZm8pLmtleSA9PT0gJ3N0cmluZycgJiYgZmlsdGVyLmZpbHRlclR5cGUgIT09IEZpbHRlclR5cGVzLkN1c3RvbTtcclxufVxyXG5cclxuY29uc3QgZGVmYXVsdFByZWRpY2F0ZTogUHJlZGljYXRlPGFueT4gPSAoKSA9PiB0cnVlO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZpbHRlckZ1bmMoZmlsdGVyOiBGaWx0ZXJJbmZvIHwgQ3VzdG9tRmlsdGVyKTogUHJlZGljYXRlPGFueT4gIHtcclxuICBpZihpc0N1c3RvbUZpbHRlcihmaWx0ZXIpKSB7XHJcbiAgICByZXR1cm4gZmlsdGVyLmFjdGl2ZSA/IGZpbHRlci5wcmVkaWNhdGUgOiBkZWZhdWx0UHJlZGljYXRlO1xyXG4gIH1cclxuICBpZiAoZmlsdGVyLmZpbHRlclZhbHVlID09PSB1bmRlZmluZWQpIHtcclxuICAgIHJldHVybiBkZWZhdWx0UHJlZGljYXRlO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgZnVuYyA9IGZpbHRlclR5cGVGdW5jTWFwW2ZpbHRlci5maWVsZFR5cGVdW2ZpbHRlci5maWx0ZXJUeXBlXShmaWx0ZXIpO1xyXG4gIGlmKCFmdW5jKSB7XHJcbiAgICBpZihmaWx0ZXJGYWN0b3J5TWFwW2ZpbHRlci5maWx0ZXJUeXBlXSl7XHJcbiAgICAgIHJldHVybiBmaWx0ZXJGYWN0b3J5TWFwW2ZpbHRlci5maWx0ZXJUeXBlIV0oZmlsdGVyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0IGNhbm5vdEJlVHJ1ZUZvck51bGwgPSAhRmFsc2V5VmFsdWVDYW5CZUluY2x1ZGVkRmlsdGVyVHlwZXMuaW5jbHVkZXMoZmlsdGVyLmZpbHRlclR5cGUhKTtcclxuICByZXR1cm4gKHJvd09iaikgPT4ge1xyXG4gICAgY29uc3QgdmFsdWUgPSBnZXQocm93T2JqLCBmaWx0ZXIua2V5KTtcclxuICAgIHJldHVybiAoKHZhbHVlID09IHVuZGVmaW5lZCkgJiYgY2Fubm90QmVUcnVlRm9yTnVsbClcclxuICAgICAgPyBmYWxzZVxyXG4gICAgICA6IGZ1bmMoIHZhbHVlKTtcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBGaWx0ZXJGdW5jPFQsViA9IFQ+ID0gKGZpbHRlckluZm86RmlsdGVySW5mbykgPT4gKHZhbDpWKSA9PiBib29sZWFuO1xyXG5leHBvcnQgdHlwZSBSYW5nZTxUPiA9IHsgU3RhcnQ6VCwgRW5kOlQgfTtcclxuXHJcbmNvbnN0IEZhbHNleVZhbHVlQ2FuQmVJbmNsdWRlZEZpbHRlclR5cGVzID0gW0ZpbHRlclR5cGVzLklzTnVsbCxGaWx0ZXJUeXBlcy5OdW1iZXJOb3RFcXVhbCxGaWx0ZXJUeXBlcy5EYXRlSXNOb3RPbixGaWx0ZXJUeXBlcy5TdHJpbmdEb2VzTm90Q29udGFpbl0gYXMgRmlsdGVyVHlwZVtdO1xyXG5cclxuZXhwb3J0IHR5cGUgRmlsdGVyRnVuY3M8VCBleHRlbmRzICBGaWx0ZXJUeXBlID4gPSBQYXJ0aWFsPFJlY29yZDxULCBGaWx0ZXJGdW5jPGFueSxhbnk+Pj47XHJcbiJdfQ==
@@ -1,116 +0,0 @@
1
- import { merge } from "lodash";
2
- export class GeneralTableSettings {
3
- headerSettings = new TableWrapperHeaderSettings();
4
- footerSettings = new TableWrapperFooterSettings();
5
- columnHeaderSettings = new TableColumnHeaderSettings();
6
- tableSettings = new TableSettings();
7
- injector;
8
- }
9
- export class TableWrapperHeaderSettings {
10
- hideExport = false;
11
- hideFilter = false;
12
- hideColumnSettings = false;
13
- hideHeader = false;
14
- hideSort = false;
15
- collapse = false;
16
- showTitleWhenCollapsed = true;
17
- headerHeight = undefined;
18
- }
19
- export class TableWrapperFooterSettings {
20
- collapse = false;
21
- }
22
- export class TableColumnHeaderSettings {
23
- noFilters = false;
24
- noHeader = false;
25
- }
26
- export class TableSettings {
27
- usePaginator = true;
28
- useVirtualScroll = undefined;
29
- includeAllInPaginatorOptions = false;
30
- rowHeight = undefined;
31
- groupHeaderHeight = undefined;
32
- minColumnWidth;
33
- }
34
- export class PersistedTableSettings {
35
- constructor(tableSettings) {
36
- if (tableSettings) {
37
- this.collapseHeader = tableSettings.collapseHeader;
38
- this.collapseFooter = tableSettings.collapseFooter;
39
- }
40
- }
41
- merge(tableSettings) {
42
- const newPts = new PersistedTableSettings(this);
43
- if (tableSettings) {
44
- newPts.collapseHeader = tableSettings.headerSettings?.collapse ?? newPts.collapseHeader;
45
- newPts.collapseFooter = tableSettings.footerSettings?.collapse ?? newPts.collapseFooter;
46
- }
47
- return newPts;
48
- }
49
- collapseHeader = false;
50
- collapseFooter = false;
51
- }
52
- export class NotPersistedTableSettings {
53
- merge(tableSettings) {
54
- const newNpts = merge(this, new NotPersistedTableSettings());
55
- if (tableSettings) {
56
- newNpts.hideExport = tableSettings.headerSettings?.hideExport ?? newNpts.hideExport;
57
- newNpts.hideColumnSettings = tableSettings.headerSettings?.hideColumnSettings ?? newNpts.hideColumnSettings;
58
- newNpts.hideFilter = tableSettings.headerSettings?.hideFilter ?? newNpts.hideFilter;
59
- newNpts.hideSort = tableSettings.headerSettings?.hideSort ?? newNpts.hideSort;
60
- newNpts.showTitleWhenHeaderCollapsed = tableSettings.headerSettings?.showTitleWhenCollapsed ?? newNpts.showTitleWhenHeaderCollapsed;
61
- newNpts.hideHeader = tableSettings.headerSettings?.hideHeader ?? newNpts.hideHeader;
62
- newNpts.hideColumnHeaderFilters = tableSettings.columnHeaderSettings?.noFilters ?? newNpts.hideColumnHeaderFilters;
63
- newNpts.hideColumnHeader = tableSettings.columnHeaderSettings?.noHeader ?? newNpts.hideColumnHeader;
64
- newNpts.usePaginator = tableSettings.tableSettings?.usePaginator ?? newNpts.usePaginator;
65
- newNpts.useVirtualScroll = tableSettings.tableSettings?.useVirtualScroll ?? newNpts.useVirtualScroll;
66
- newNpts.includeAllInPaginatorOptions = tableSettings.tableSettings?.includeAllInPaginatorOptions ?? newNpts.includeAllInPaginatorOptions;
67
- newNpts.rowHeight = tableSettings.tableSettings?.rowHeight ?? newNpts.rowHeight;
68
- newNpts.headerHeight = tableSettings.headerSettings?.headerHeight ?? newNpts.headerHeight;
69
- newNpts.groupHeaderHeight = tableSettings.tableSettings?.groupHeaderHeight ?? newNpts.groupHeaderHeight;
70
- newNpts.minColumnWidth = tableSettings.tableSettings?.minColumnWidth ?? newNpts.minColumnWidth;
71
- if (tableSettings.tableSettings?.useVirtualScroll) {
72
- const currVirt = tableSettings.tableSettings.useVirtualScroll === true ? new VirtualScrollOptions() : tableSettings.tableSettings.useVirtualScroll;
73
- if (!currVirt.headerHeight || tableSettings.tableSettings.useVirtualScroll === true) {
74
- currVirt.headerHeight = (typeof tableSettings.headerSettings?.headerHeight === 'number' ? tableSettings.headerSettings?.headerHeight : DefaultVirtualScrollOptions.headerHeight);
75
- }
76
- if (!currVirt.rowHeight || tableSettings.tableSettings.useVirtualScroll === true) {
77
- currVirt.rowHeight = (typeof tableSettings.tableSettings?.rowHeight === 'number' ? tableSettings.tableSettings?.rowHeight : DefaultVirtualScrollOptions.rowHeight);
78
- }
79
- this.useVirtualScroll = { ...new VirtualScrollOptions(), ...currVirt };
80
- }
81
- }
82
- return newNpts;
83
- }
84
- hideExport = false;
85
- hideFilter = false;
86
- hideColumnSettings = false;
87
- hideSort = false;
88
- showTitleWhenHeaderCollapsed = true;
89
- hideHeader = false;
90
- hideColumnHeaderFilters = false;
91
- hideColumnHeader = false;
92
- usePaginator = true;
93
- useVirtualScroll = undefined;
94
- includeAllInPaginatorOptions = false;
95
- groupHeaderHeight = undefined;
96
- rowHeight;
97
- headerHeight = undefined;
98
- minColumnWidth;
99
- }
100
- export class VirtualScrollOptions {
101
- virtualAsDefault = true;
102
- rowHeight = 48;
103
- enforceRowHeight = true;
104
- headerHeight = 56;
105
- enforceHeaderHeight = true;
106
- amountOfVisibleItems = 10;
107
- /**
108
- * This will win over `amountOfVisibleItems`
109
- */
110
- maxViewPortHeight = undefined;
111
- }
112
- export const DefaultVirtualScrollOptions = {
113
- rowHeight: 48,
114
- headerHeight: 56,
115
- };
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYnVpbGRlci1nZW5lcmFsLXNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvY2xhc3Nlcy90YWJsZS1idWlsZGVyLWdlbmVyYWwtc2V0dGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUUvQixNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLGNBQWMsR0FBRyxJQUFJLDBCQUEwQixFQUFFLENBQUM7SUFDbEQsY0FBYyxHQUFHLElBQUksMEJBQTBCLEVBQUUsQ0FBQztJQUNsRCxvQkFBb0IsR0FBRyxJQUFJLHlCQUF5QixFQUFFLENBQUM7SUFDdkQsYUFBYSxHQUFHLElBQUksYUFBYSxFQUFFLENBQUM7SUFDcEMsUUFBUSxDQUFhO0NBQ3RCO0FBVUQsTUFBTSxPQUFPLDBCQUEwQjtJQUNyQyxVQUFVLEdBQUcsS0FBSyxDQUFBO0lBQ2xCLFVBQVUsR0FBRyxLQUFLLENBQUE7SUFDbEIsa0JBQWtCLEdBQUcsS0FBSyxDQUFBO0lBQzFCLFVBQVUsR0FBRyxLQUFLLENBQUE7SUFDbEIsUUFBUSxHQUFHLEtBQUssQ0FBQTtJQUNoQixRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ2hCLHNCQUFzQixHQUFHLElBQUksQ0FBQztJQUM5QixZQUFZLEdBQWdDLFNBQVMsQ0FBQztDQUN2RDtBQUVELE1BQU0sT0FBTywwQkFBMEI7SUFDckMsUUFBUSxHQUFHLEtBQUssQ0FBQTtDQUNqQjtBQUVELE1BQU0sT0FBTyx5QkFBeUI7SUFDcEMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQixRQUFRLEdBQUcsS0FBSyxDQUFDO0NBQ2xCO0FBRUQsTUFBTSxPQUFPLGFBQWE7SUFDeEIsWUFBWSxHQUFHLElBQUksQ0FBQztJQUNwQixnQkFBZ0IsR0FBcUQsU0FBUyxDQUFDO0lB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QUcsUUFBUSxFQUFFLENBQUE7WUFDeEUsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBQ0QsVUFBVSxHQUFHLEtBQUssQ0FBQTtJQUNsQixVQUFVLEdBQUcsS0FBSyxDQUFBO0lBQ2xCLGtCQUFrQixHQUFHLEtBQUssQ0FBQTtJQUMxQixRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ2hCLDRCQUE0QixHQUFHLElBQUksQ0FBQztJQUNwQyxVQUFVLEdBQUcsS0FBSyxDQUFBO0lBQ2xCLHVCQUF1QixHQUFHLEtBQUssQ0FBQztJQUNoQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDekIsWUFBWSxHQUFHLElBQUksQ0FBQztJQUNwQixnQkFBZ0IsR0FBcUQsU0FBUyxDQUFDO0lBQy9FLDRCQUE0QixHQUFHLEtBQUssQ0FBQztJQUNyQyxpQkFBaUIsR0FBWSxTQUFTLENBQUM7SUFDdkMsU0FBUyxDQUErQjtJQUN4QyxZQUFZLEdBQXFCLFNBQVMsQ0FBQztJQUMzQyxjQUFjLENBQXNCO0NBQ3JDO0FBRUQsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixnQkFBZ0IsR0FBRyxJQUFJLENBQUM7SUFDeEIsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUNmLGdCQUFnQixHQUFHLElBQUksQ0FBQztJQUN4QixZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ2xCLG1CQUFtQixHQUFHLElBQUksQ0FBQztJQUMzQixvQkFBb0IsR0FBRyxFQUFFLENBQUM7SUFDMUI7O09BRUc7SUFDSCxpQkFBaUIsR0FBdUIsU0FBUyxDQUFDO0NBQ25EO0FBRUQsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUc7SUFDekMsU0FBUyxFQUFHLEVBQUU7SUFDZCxZQUFZLEVBQUcsRUFBRTtDQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBtZXJnZSB9IGZyb20gXCJsb2Rhc2hcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBHZW5lcmFsVGFibGVTZXR0aW5ncyBpbXBsZW1lbnRzIFRhYmxlQnVpbGRlclNldHRpbmdzIHtcclxuICBoZWFkZXJTZXR0aW5ncyA9IG5ldyBUYWJsZVdyYXBwZXJIZWFkZXJTZXR0aW5ncygpO1xyXG4gIGZvb3RlclNldHRpbmdzID0gbmV3IFRhYmxlV3JhcHBlckZvb3RlclNldHRpbmdzKCk7XHJcbiAgY29sdW1uSGVhZGVyU2V0dGluZ3MgPSBuZXcgVGFibGVDb2x1bW5IZWFkZXJTZXR0aW5ncygpO1xyXG4gIHRhYmxlU2V0dGluZ3MgPSBuZXcgVGFibGVTZXR0aW5ncygpO1xyXG4gIGluamVjdG9yPyA6IEluamVjdG9yO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlQnVpbGRlclNldHRpbmdzIHtcclxuICBoZWFkZXJTZXR0aW5ncz8gOiBQYXJ0aWFsPFRhYmxlV3JhcHBlckhlYWRlclNldHRpbmdzPjtcclxuICBmb290ZXJTZXR0aW5ncz8gOiBQYXJ0aWFsPFRhYmxlV3JhcHBlckZvb3RlclNldHRpbmdzPjtcclxuICBjb2x1bW5IZWFkZXJTZXR0aW5ncz8gOiBQYXJ0aWFsPFRhYmxlQ29sdW1uSGVhZGVyU2V0dGluZ3M+O1xyXG4gIHRhYmxlU2V0dGluZ3M/IDogUGFydGlhbDxUYWJsZVNldHRpbmdzPjtcclxuICBpbmplY3Rvcj8gOiBJbmplY3RvcjtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFRhYmxlV3JhcHBlckhlYWRlclNldHRpbmdzIHtcclxuICBoaWRlRXhwb3J0ID0gZmFsc2VcclxuICBoaWRlRmlsdGVyID0gZmFsc2VcclxuICBoaWRlQ29sdW1uU2V0dGluZ3MgPSBmYWxzZVxyXG4gIGhpZGVIZWFkZXIgPSBmYWxzZVxyXG4gIGhpZGVTb3J0ID0gZmFsc2VcclxuICBjb2xsYXBzZSA9IGZhbHNlXHJcbiAgc2hvd1RpdGxlV2hlbkNvbGxhcHNlZCA9IHRydWU7XHJcbiAgaGVhZGVySGVpZ2h0OiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVdyYXBwZXJGb290ZXJTZXR0aW5ncyB7XHJcbiAgY29sbGFwc2UgPSBmYWxzZVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgVGFibGVDb2x1bW5IZWFkZXJTZXR0aW5ncyB7XHJcbiAgbm9GaWx0ZXJzID0gZmFsc2U7XHJcbiAgbm9IZWFkZXIgPSBmYWxzZTtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFRhYmxlU2V0dGluZ3Mge1xyXG4gIHVzZVBhZ2luYXRvciA9IHRydWU7XHJcbiAgdXNlVmlydHVhbFNjcm9sbDogdHJ1ZSB8IFBhcnRpYWw8VmlydHVhbFNjcm9sbE9wdGlvbnM+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xyXG4gIGluY2x1ZGVBbGxJblBhZ2luYXRvck9wdGlvbnMgPSBmYWxzZTtcclxuICByb3dIZWlnaHQ6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxuICBncm91cEhlYWRlckhlaWdodD86IG51bWJlciA9IHVuZGVmaW5lZDtcclxuICBtaW5Db2x1bW5XaWR0aDogbnVtYmVyIHwgdW5kZWZpbmVkO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgUGVyc2lzdGVkVGFibGVTZXR0aW5ncyB7XHJcbiAgY29uc3RydWN0b3IodGFibGVTZXR0aW5ncz86IE5vbkZ1bmN0aW9uUHJvcGVydGllczxQZXJzaXN0ZWRUYWJsZVNldHRpbmdzPil7XHJcbiAgICBpZiAodGFibGVTZXR0aW5ncyl7XHJcbiAgICAgIHRoaXMuY29sbGFwc2VIZWFkZXIgPSB0YWJsZVNldHRpbmdzLmNvbGxhcHNlSGVhZGVyO1xyXG4gICAgICB0aGlzLmNvbGxhcHNlRm9vdGVyID0gdGFibGVTZXR0aW5ncy5jb2xsYXBzZUZvb3RlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG1lcmdlKHRhYmxlU2V0dGluZ3M/OiBUYWJsZUJ1aWxkZXJTZXR0aW5ncyl7XHJcbiAgICBjb25zdCBuZXdQdHMgPSBuZXcgUGVyc2lzdGVkVGFibGVTZXR0aW5ncyh0aGlzKTtcclxuICAgIGlmKHRhYmxlU2V0dGluZ3Mpe1xyXG4gICAgICBuZXdQdHMuY29sbGFwc2VIZWFkZXIgPSB0YWJsZVNldHRpbmdzLmhlYWRlclNldHRpbmdzPy5jb2xsYXBzZSA/PyBuZXdQdHMuY29sbGFwc2VIZWFkZXI7XHJcbiAgICAgIG5ld1B0cy5jb2xsYXBzZUZvb3RlciA9IHRhYmxlU2V0dGluZ3MuZm9vdGVyU2V0dGluZ3M/LmNvbGxhcHNlID8/IG5ld1B0cy5jb2xsYXBzZUZvb3RlcjtcclxuICAgIH1cclxuICAgIHJldHVybiBuZXdQdHM7XHJcbiAgfVxyXG5cclxuICBjb2xsYXBzZUhlYWRlciA9IGZhbHNlO1xyXG4gIGNvbGxhcHNlRm9vdGVyID0gZmFsc2U7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBOb3RQZXJzaXN0ZWRUYWJsZVNldHRpbmdzIHtcclxuICBtZXJnZSh0YWJsZVNldHRpbmdzPzogVGFibGVCdWlsZGVyU2V0dGluZ3Mpe1xyXG4gICAgY29uc3QgbmV3TnB0cyA9IG1lcmdlKHRoaXMsIG5ldyBOb3RQZXJzaXN0ZWRUYWJsZVNldHRpbmdzKCkpO1xyXG4gICAgaWYodGFibGVTZXR0aW5ncyl7XHJcbiAgICAgIG5ld05wdHMuaGlkZUV4cG9ydCA9IHRhYmxlU2V0dGluZ3MuaGVhZGVyU2V0dGluZ3M/LmhpZGVFeHBvcnQgPz8gbmV3TnB0cy5oaWRlRXhwb3J0O1xyXG4gICAgICBuZXdOcHRzLmhpZGVDb2x1bW5TZXR0aW5ncyA9IHRhYmxlU2V0dGluZ3MuaGVhZGVyU2V0dGluZ3M/LmhpZGVDb2x1bW5TZXR0aW5ncyA/PyBuZXdOcHRzLmhpZGVDb2x1bW5TZXR0aW5ncztcclxuICAgICAgbmV3TnB0cy5oaWRlRmlsdGVyID0gdGFibGVTZXR0aW5ncy5oZWFkZXJTZXR0aW5ncz8uaGlkZUZpbHRlciA/PyBuZXdOcHRzLmhpZGVGaWx0ZXI7XHJcbiAgICAgIG5ld05wdHMuaGlkZVNvcnQgPSB0YWJsZVNldHRpbmdzLmhlYWRlclNldHRpbmdzPy5oaWRlU29ydCA/PyBuZXdOcHRzLmhpZGVTb3J0O1xyXG4gICAgICBuZXdOcHRzLnNob3dUaXRsZVdoZW5IZWFkZXJDb2xsYXBzZWQgPSB0YWJsZVNldHRpbmdzLmhlYWRlclNldHRpbmdzPy5zaG93VGl0bGVXaGVuQ29sbGFwc2VkID8/IG5ld05wdHMuc2hvd1RpdGxlV2hlbkhlYWRlckNvbGxhcHNlZDtcclxuICAgICAgbmV3TnB0cy5oaWRlSGVhZGVyID0gdGFibGVTZXR0aW5ncy5oZWFkZXJTZXR0aW5ncz8uaGlkZUhlYWRlciA/PyBuZXdOcHRzLmhpZGVIZWFkZXI7XHJcbiAgICAgIG5ld05wdHMuaGlkZUNvbHVtbkhlYWRlckZpbHRlcnMgPSB0YWJsZVNldHRpbmdzLmNvbHVtbkhlYWRlclNldHRpbmdzPy5ub0ZpbHRlcnMgPz8gbmV3TnB0cy5oaWRlQ29sdW1uSGVhZGVyRmlsdGVycztcclxuICAgICAgbmV3TnB0cy5oaWRlQ29sdW1uSGVhZGVyID0gdGFibGVTZXR0aW5ncy5jb2x1bW5IZWFkZXJTZXR0aW5ncz8ubm9IZWFkZXIgPz8gbmV3TnB0cy5oaWRlQ29sdW1uSGVhZGVyO1xyXG4gICAgICBuZXdOcHRzLnVzZVBhZ2luYXRvciA9IHRhYmxlU2V0dGluZ3MudGFibGVTZXR0aW5ncz8udXNlUGFnaW5hdG9yID8/IG5ld05wdHMudXNlUGFnaW5hdG9yO1xyXG4gICAgICBuZXdOcHRzLnVzZVZpcnR1YWxTY3JvbGwgPSB0YWJsZVNldHRpbmdzLnRhYmxlU2V0dGluZ3M/LnVzZVZpcnR1YWxTY3JvbGwgPz8gbmV3TnB0cy51c2VWaXJ0dWFsU2Nyb2xsO1xyXG4gICAgICBuZXdOcHRzLmluY2x1ZGVBbGxJblBhZ2luYXRvck9wdGlvbnMgPSB0YWJsZVNldHRpbmdzLnRhYmxlU2V0dGluZ3M/LmluY2x1ZGVBbGxJblBhZ2luYXRvck9wdGlvbnMgPz8gbmV3TnB0cy5pbmNsdWRlQWxsSW5QYWdpbmF0b3JPcHRpb25zO1xyXG4gICAgICBuZXdOcHRzLnJvd0hlaWdodCA9IHRhYmxlU2V0dGluZ3MudGFibGVTZXR0aW5ncz8ucm93SGVpZ2h0ID8/IG5ld05wdHMucm93SGVpZ2h0O1xyXG4gICAgICBuZXdOcHRzLmhlYWRlckhlaWdodCA9IHRhYmxlU2V0dGluZ3MuaGVhZGVyU2V0dGluZ3M/LmhlYWRlckhlaWdodCA/PyBuZXdOcHRzLmhlYWRlckhlaWdodDtcclxuICAgICAgbmV3TnB0cy5ncm91cEhlYWRlckhlaWdodCA9IHRhYmxlU2V0dGluZ3MudGFibGVTZXR0aW5ncz8uZ3JvdXBIZWFkZXJIZWlnaHQgPz8gbmV3TnB0cy5ncm91cEhlYWRlckhlaWdodDtcclxuICAgICAgbmV3TnB0cy5taW5Db2x1bW5XaWR0aCA9IHRhYmxlU2V0dGluZ3MudGFibGVTZXR0aW5ncz8ubWluQ29sdW1uV2lkdGggPz8gbmV3TnB0cy5taW5Db2x1bW5XaWR0aDtcclxuICAgICAgaWYodGFibGVTZXR0aW5ncy50YWJsZVNldHRpbmdzPy51c2VWaXJ0dWFsU2Nyb2xsKXtcclxuICAgICAgICBjb25zdCBjdXJyVmlydCA9IHRhYmxlU2V0dGluZ3MudGFibGVTZXR0aW5ncy51c2VWaXJ0dWFsU2Nyb2xsID09PSB0cnVlID8gbmV3IFZpcnR1YWxTY3JvbGxPcHRpb25zKCkgOiB0YWJsZVNldHRpbmdzLnRhYmxlU2V0dGluZ3MudXNlVmlydHVhbFNjcm9sbDtcclxuICAgICAgICBpZighY3VyclZpcnQuaGVhZGVySGVpZ2h0IHx8IHRhYmxlU2V0dGluZ3MudGFibGVTZXR0aW5ncy51c2VWaXJ0dWFsU2Nyb2xsID09PSB0cnVlKXtcclxuICAgICAgICAgIGN1cnJWaXJ0LmhlYWRlckhlaWdodCA9ICh0eXBlb2YgdGFibGVTZXR0aW5ncy5oZWFkZXJTZXR0aW5ncz8uaGVhZGVySGVpZ2h0ID09PSAnbnVtYmVyJyA/IHRhYmxlU2V0dGluZ3MuaGVhZGVyU2V0dGluZ3M/LmhlYWRlckhlaWdodCA6IERlZmF1bHRWaXJ0dWFsU2Nyb2xsT3B0aW9ucy5oZWFkZXJIZWlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZighY3VyclZpcnQucm93SGVpZ2h0IHx8IHRhYmxlU2V0dGluZ3MudGFibGVTZXR0aW5ncy51c2VWaXJ0dWFsU2Nyb2xsID09PSB0cnVlKXtcclxuICAgICAgICAgIGN1cnJWaXJ0LnJvd0hlaWdodCA9ICh0eXBlb2YgdGFibGVTZXR0aW5ncy50YWJsZVNldHRpbmdzPy5yb3dIZWlnaHQgPT09ICdudW1iZXInID8gdGFibGVTZXR0aW5ncy50YWJsZVNldHRpbmdzPy5yb3dIZWlnaHQgOiBEZWZhdWx0VmlydHVhbFNjcm9sbE9wdGlvbnMucm93SGVpZ2h0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy51c2VWaXJ0dWFsU2Nyb2xsID0geyAuLi5uZXcgVmlydHVhbFNjcm9sbE9wdGlvbnMoKSwgLi4uY3VyclZpcnQgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3TnB0cztcclxuICB9XHJcbiAgaGlkZUV4cG9ydCA9IGZhbHNlXHJcbiAgaGlkZUZpbHRlciA9IGZhbHNlXHJcbiAgaGlkZUNvbHVtblNldHRpbmdzID0gZmFsc2VcclxuICBoaWRlU29ydCA9IGZhbHNlXHJcbiAgc2hvd1RpdGxlV2hlbkhlYWRlckNvbGxhcHNlZCA9IHRydWU7XHJcbiAgaGlkZUhlYWRlciA9IGZhbHNlXHJcbiAgaGlkZUNvbHVtbkhlYWRlckZpbHRlcnMgPSBmYWxzZTtcclxuICBoaWRlQ29sdW1uSGVhZGVyID0gZmFsc2U7XHJcbiAgdXNlUGFnaW5hdG9yID0gdHJ1ZTtcclxuICB1c2VWaXJ0dWFsU2Nyb2xsOiB0cnVlIHwgUGFydGlhbDxWaXJ0dWFsU2Nyb2xsT3B0aW9ucz4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbiAgaW5jbHVkZUFsbEluUGFnaW5hdG9yT3B0aW9ucyA9IGZhbHNlO1xyXG4gIGdyb3VwSGVhZGVySGVpZ2h0PzogbnVtYmVyID0gdW5kZWZpbmVkO1xyXG4gIHJvd0hlaWdodD86IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZDtcclxuICBoZWFkZXJIZWlnaHQ/OiBzdHJpbmcgfCBudW1iZXIgPSB1bmRlZmluZWQ7XHJcbiAgbWluQ29sdW1uV2lkdGg/OiBudW1iZXIgfCB1bmRlZmluZWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBWaXJ0dWFsU2Nyb2xsT3B0aW9ucyB7XHJcbiAgdmlydHVhbEFzRGVmYXVsdCA9IHRydWU7XHJcbiAgcm93SGVpZ2h0ID0gNDg7XHJcbiAgZW5mb3JjZVJvd0hlaWdodCA9IHRydWU7XHJcbiAgaGVhZGVySGVpZ2h0ID0gNTY7XHJcbiAgZW5mb3JjZUhlYWRlckhlaWdodCA9IHRydWU7XHJcbiAgYW1vdW50T2ZWaXNpYmxlSXRlbXMgPSAxMDtcclxuICAvKipcclxuICAgKiBUaGlzIHdpbGwgd2luIG92ZXIgYGFtb3VudE9mVmlzaWJsZUl0ZW1zYFxyXG4gICAqL1xyXG4gIG1heFZpZXdQb3J0SGVpZ2h0OiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBEZWZhdWx0VmlydHVhbFNjcm9sbE9wdGlvbnMgPSB7XHJcbiAgcm93SGVpZ2h0IDogNDgsXHJcbiAgaGVhZGVySGVpZ2h0IDogNTYsXHJcbn07XHJcblxyXG50eXBlIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxUPiA9IHtcclxuICBbSyBpbiBrZXlvZiBUXTogVFtLXSBleHRlbmRzIEZ1bmN0aW9uID8gbmV2ZXIgOiBLXHJcbn1ba2V5b2YgVF07XHJcblxyXG5leHBvcnQgdHlwZSBOb25GdW5jdGlvblByb3BlcnRpZXM8VD4gPSBQaWNrPFQsIE5vbkZ1bmN0aW9uUHJvcGVydHlOYW1lczxUPj47XHJcbiJdfQ==
@@ -1,77 +0,0 @@
1
- import { isObservable, of } from 'rxjs';
2
- import { FieldType } from '../interfaces/report-def';
3
- import { first, map, switchMap } from 'rxjs/operators';
4
- import { GeneralTableSettings } from './table-builder-general-settings';
5
- import { defaultShareReplay, notNull } from '../../rxjs';
6
- import { initIndexSymbol } from '../components/table-container/table-container.helpers/sort-state.helpers';
7
- import { createDataCleaners } from '../components/table-container/table-container.helpers/data-state.helpers';
8
- import { isSignal } from '@angular/core';
9
- import { toObservable } from '@angular/core/rxjs-interop';
10
- export class TableBuilder {
11
- metaData$;
12
- data$;
13
- settings;
14
- constructor(data, metaData, settings = new GeneralTableSettings()) {
15
- this.settings = this.coerceSettingsToObservable(settings)
16
- .pipe(defaultShareReplay());
17
- this.data$ = this.coerceToObservable(data, this.settings)
18
- .pipe(notNull(), defaultShareReplay());
19
- this.metaData$ = metaData ?
20
- this.coerceToObservable(metaData, this.settings).pipe(defaultShareReplay())
21
- :
22
- this.data$.pipe(first(), map(d => this.createMetaData(d[0])), defaultShareReplay());
23
- }
24
- getData$() {
25
- return this.metaData$.pipe(map(md => createDataCleaners(md)), switchMap(cleaner => this.data$.pipe(map((datas, ii) => {
26
- return datas.map((data, i) => {
27
- const cleaned = cleaner(data);
28
- cleaned[initIndexSymbol] = i * ((ii % 2) + 1);
29
- return cleaned;
30
- });
31
- }))), defaultShareReplay());
32
- }
33
- createMetaData(obj) {
34
- return Object.keys(obj ?? {})
35
- .map(key => ({
36
- key,
37
- fieldType: FieldType.Unknown,
38
- order: -1
39
- }));
40
- }
41
- coerceToObservable(arg, settings) {
42
- if (isObservable(arg)) {
43
- return arg;
44
- }
45
- else if (isSignal(arg)) {
46
- return settings.pipe(switchMap(s => {
47
- this.assertInjector(s);
48
- return toObservable(arg, { injector: s.injector });
49
- }));
50
- }
51
- else {
52
- return of(arg);
53
- }
54
- }
55
- coerceSettingsToObservable(settings) {
56
- if (isObservable(settings)) {
57
- return settings;
58
- }
59
- else if (isSignal(settings)) {
60
- this.assertInjector(settings());
61
- return toObservable(settings, { injector: settings().injector });
62
- }
63
- else {
64
- return of(settings);
65
- }
66
- }
67
- assertInjector(s) {
68
- if (!s.injector) {
69
- throw new Error('Injector must be provided when passing a signal to table builder');
70
- }
71
- }
72
- }
73
- export const CreateTableBuilder = (reportDef$) => {
74
- reportDef$ = reportDef$.pipe(defaultShareReplay());
75
- return new TableBuilder(reportDef$.pipe(map(r => r.data)), reportDef$.pipe(map(r => r.metaData)));
76
- };
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2NsYXNzZXMvdGFibGUtYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQVksU0FBUyxFQUFhLE1BQU0sMEJBQTBCLENBQUM7QUFDMUUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9CQUFvQixFQUF3QixNQUFNLGtDQUFrQyxDQUFDO0FBQzlGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBQzNHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBQzlHLE9BQU8sRUFBRSxRQUFRLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTFELE1BQU0sT0FBTyxZQUFZO0lBRXZCLFNBQVMsQ0FBNEI7SUFDckMsS0FBSyxDQUFrQjtJQUN2QixRQUFRLENBQW9DO0lBRTVDLFlBQ0UsSUFBMkIsRUFDM0IsUUFBOEMsRUFDOUMsV0FBbUQsSUFBSSxvQkFBb0IsRUFBRTtRQUU3RSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxRQUFRLENBQUM7YUFDdEQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztRQUU5QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFFB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QU0sQ0FBQztZQUNOLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RCLENBQUM7SUFDSCxDQUFDO0lBRUQsY0FBYyxDQUFDLENBQXVCO1FBQ3BDLElBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFDLENBQUM7WUFDZCxNQUFNLElBQUksS0FBSyxDQUFDLGtFQUFrRSxDQUFDLENBQUM7UUFDdEYsQ0FBQztJQUNILENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsVUFBaUMsRUFBaUIsRUFBRTtJQUNyRixVQUFVLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7SUFDbkQsT0FBTyxJQUFJLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBRSxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUUsR0FBRyxDQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFFLENBQUMsQ0FBQztBQUMxRyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc09ic2VydmFibGUsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE1ldGFEYXRhLCBGaWVsZFR5cGUsIFJlcG9ydERlZiB9IGZyb20gJy4uL2ludGVyZmFjZXMvcmVwb3J0LWRlZic7XHJcbmltcG9ydCB7IGZpcnN0LCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgR2VuZXJhbFRhYmxlU2V0dGluZ3MsIFRhYmxlQnVpbGRlclNldHRpbmdzIH0gZnJvbSAnLi90YWJsZS1idWlsZGVyLWdlbmVyYWwtc2V0dGluZ3MnO1xyXG5pbXBvcnQgeyBkZWZhdWx0U2hhcmVSZXBsYXksIG5vdE51bGwgfSBmcm9tICcuLi8uLi9yeGpzJztcclxuaW1wb3J0IHsgaW5pdEluZGV4U3ltYm9sIH0gZnJvbSAnLi4vY29tcG9uZW50cy90YWJsZS1jb250YWluZXIvdGFibGUtY29udGFpbmVyLmhlbHBlcnMvc29ydC1zdGF0ZS5oZWxwZXJzJztcclxuaW1wb3J0IHsgY3JlYXRlRGF0YUNsZWFuZXJzIH0gZnJvbSAnLi4vY29tcG9uZW50cy90YWJsZS1jb250YWluZXIvdGFibGUtY29udGFpbmVyLmhlbHBlcnMvZGF0YS1zdGF0ZS5oZWxwZXJzJztcclxuaW1wb3J0IHsgaXNTaWduYWwsIFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcblxyXG5leHBvcnQgY2xhc3MgVGFibGVCdWlsZGVyPFQgPSBhbnk+IHtcclxuXHJcbiAgbWV0YURhdGEkOiBPYnNlcnZhYmxlPE1ldGFEYXRhPFQ+W10+O1xyXG4gIGRhdGEkOiBPYnNlcnZhYmxlPFRbXT47XHJcbiAgc2V0dGluZ3MgOiBPYnNlcnZhYmxlPFRhYmxlQnVpbGRlclNldHRpbmdzPjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBkYXRhOiBUYWJsZUJ1aWxkZXJBcmdzPFRbXT4sIFxyXG4gICAgbWV0YURhdGE/OiBUYWJsZUJ1aWxkZXJBcmdzPE1ldGFEYXRhPFQsYW55PltdPixcclxuICAgIHNldHRpbmdzOiBUYWJsZUJ1aWxkZXJBcmdzPFRhYmxlQnVpbGRlclNldHRpbmdzPiA9IG5ldyBHZW5lcmFsVGFibGVTZXR0aW5ncygpXHJcbiAgKSB7XHJcbiAgICB0aGlzLnNldHRpbmdzID0gdGhpcy5jb2VyY2VTZXR0aW5nc1RvT2JzZXJ2YWJsZShzZXR0aW5ncylcclxuICAgICAgLnBpcGUoZGVmYXVsdFNoYXJlUmVwbGF5KCkpO1xyXG5cclxuICAgIHRoaXMuZGF0YSQgPSB0aGlzLmNvZXJjZVRvT2JzZXJ2YWJsZShkYXRhLCB0aGlzLnNldHRpbmdzKVxyXG4gICAgICAucGlwZShub3ROdWxsKCksIGRlZmF1bHRTaGFyZVJlcGxheSgpKTtcclxuXHJcbiAgICB0aGlzLm1ldGFEYXRhJCA9IG1ldGFEYXRhID9cclxuICAgICAgdGhpcy5jb2VyY2VUb09ic2VydmFibGUobWV0YURhdGEsIHRoaXMuc2V0dGluZ3MpLnBpcGUoZGVmYXVsdFNoYXJlUmVwbGF5KCkpIFxyXG4gICAgICA6XHJcbiAgICAgIHRoaXMuZGF0YSQucGlwZShmaXJzdCgpLCBtYXAoIGQ9PiB0aGlzLmNyZWF0ZU1ldGFEYXRhKGRbMF0pICksIGRlZmF1bHRTaGFyZVJlcGxheSgpKTtcclxuICB9XHJcblxyXG4gIGdldERhdGEkKCk6IE9ic2VydmFibGU8YW55W10+IHtcclxuICAgIHJldHVybiB0aGlzLm1ldGFEYXRhJC5waXBlKFxyXG4gICAgICBtYXAobWQgPT4gY3JlYXRlRGF0YUNsZWFuZXJzKG1kKSksXHJcbiAgICAgIHN3aXRjaE1hcCggY2xlYW5lciA9PiB0aGlzLmRhdGEkLnBpcGUoXHJcbiAgICAgICAgbWFwKChkYXRhcywgaWkpID0+IHtcclxuICAgICAgICAgIHJldHVybiBkYXRhcy5tYXAoKGRhdGEsIGkpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgY2xlYW5lZCA9IGNsZWFuZXIoZGF0YSk7XHJcbiAgICAgICAgICAgIGNsZWFuZWRbaW5pdEluZGV4U3ltYm9sXSA9IGkgKiAoKGlpICUgMikgKyAxKVxyXG4gICAgICAgICAgICByZXR1cm4gY2xlYW5lZDtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgfSApLFxyXG4gICAgICApKSxcclxuICAgICAgZGVmYXVsdFNoYXJlUmVwbGF5KClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVNZXRhRGF0YShvYmo6IGFueSk6IE1ldGFEYXRhIFtdIHtcclxuICAgIHJldHVybiBPYmplY3Qua2V5cyhvYmogPz8ge30pXHJcbiAgICAubWFwKCBrZXkgPT4gKHtcclxuICAgICAga2V5LFxyXG4gICAgICBmaWVsZFR5cGU6IEZpZWxkVHlwZS5Vbmtub3duLFxyXG4gICAgICBvcmRlcjogLTFcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIGNvZXJjZVRvT2JzZXJ2YWJsZTxUPihhcmc6IFRhYmxlQnVpbGRlckFyZ3M8VD4sIHNldHRpbmdzOiBPYnNlcnZhYmxlPFRhYmxlQnVpbGRlclNldHRpbmdzPil7XHJcbiAgICBpZihpc09ic2VydmFibGUoYXJnKSl7XHJcbiAgICAgIHJldHVybiBhcmc7XHJcbiAgICB9IGVsc2UgaWYoaXNTaWduYWwoYXJnKSl7XHJcbiAgICAgIHJldHVybiBzZXR0aW5ncy5waXBlKHN3aXRjaE1hcChzID0+IHtcclxuICAgICAgICB0aGlzLmFzc2VydEluamVjdG9yKHMpO1xyXG4gICAgICAgIHJldHVybiB0b09ic2VydmFibGUoYXJnLCB7IGluamVjdG9yOiBzLmluamVjdG9yIH0pXHJcbiAgICAgIH0pKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG9mKGFyZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb2VyY2VTZXR0aW5nc1RvT2JzZXJ2YWJsZShzZXR0aW5nczogVGFibGVCdWlsZGVyQXJnczxUYWJsZUJ1aWxkZXJTZXR0aW5ncz4pe1xyXG4gICAgaWYoaXNPYnNlcnZhYmxlKHNldHRpbmdzKSl7XHJcbiAgICAgIHJldHVybiBzZXR0aW5ncztcclxuICAgIH0gZWxzZSBpZihpc1NpZ25hbChzZXR0aW5ncykpe1xyXG4gICAgICB0aGlzLmFzc2VydEluamVjdG9yKHNldHRpbmdzKCkpO1xyXG4gICAgICByZXR1cm4gdG9PYnNlcnZhYmxlKHNldHRpbmdzLCB7IGluamVjdG9yOiBzZXR0aW5ncygpLmluamVjdG9yIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG9mKHNldHRpbmdzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzc2VydEluamVjdG9yKHM6IFRhYmxlQnVpbGRlclNldHRpbmdzKXtcclxuICAgIGlmKCFzLmluamVjdG9yKXtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbmplY3RvciBtdXN0IGJlIHByb3ZpZGVkIHdoZW4gcGFzc2luZyBhIHNpZ25hbCB0byB0YWJsZSBidWlsZGVyJyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgQ3JlYXRlVGFibGVCdWlsZGVyID0gKHJlcG9ydERlZiQ6IE9ic2VydmFibGU8UmVwb3J0RGVmPiApOiBUYWJsZUJ1aWxkZXIgPT4ge1xyXG4gIHJlcG9ydERlZiQgPSByZXBvcnREZWYkLnBpcGUoZGVmYXVsdFNoYXJlUmVwbGF5KCkpO1xyXG4gIHJldHVybiBuZXcgVGFibGVCdWlsZGVyKHJlcG9ydERlZiQucGlwZShtYXAoIHIgPT4gci5kYXRhKSApLCByZXBvcnREZWYkLnBpcGUoIG1hcCAoIHIgPT4gci5tZXRhRGF0YSkgKSk7XHJcbn07XHJcblxyXG50eXBlIFRhYmxlQnVpbGRlckFyZ3M8VD4gPSBUIHwgT2JzZXJ2YWJsZTxUPiB8IFNpZ25hbDxUPjsgXHJcbiJdfQ==