@one-paragon/angular-utilities 0.1.21 → 0.1.23

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 (380) hide show
  1. package/action-state/action-state-spinner/action-state-spinner.component.d.ts +12 -0
  2. package/action-state/action-state-ui/action-state-ui.module.d.ts +9 -0
  3. package/{src/action-state/index.ts → action-state/index.d.ts} +0 -4
  4. package/action-state/ngrx-ext/ngrx-ext.module.d.ts +8 -0
  5. package/action-state/ngrx.d.ts +31 -0
  6. package/esm2020/action-state/action-state-spinner/action-state-spinner.component.mjs +23 -0
  7. package/esm2020/action-state/action-state-ui/action-state-ui.module.mjs +28 -0
  8. package/esm2020/action-state/index.mjs +8 -0
  9. package/esm2020/action-state/ngrx-ext/ngrx-ext.module.mjs +23 -0
  10. package/esm2020/action-state/ngrx.mjs +42 -0
  11. package/esm2020/http-request-state/HttpRequestStateFactory.mjs +27 -0
  12. package/esm2020/http-request-state/HttpRequestStateStore.mjs +97 -0
  13. package/esm2020/http-request-state/directives/HttpStateDirectiveBase.mjs +34 -0
  14. package/esm2020/http-request-state/directives/http-error-state-directive.mjs +29 -0
  15. package/esm2020/http-request-state/directives/http-inProgress-state-directive.mjs +29 -0
  16. package/esm2020/http-request-state/directives/http-notStarted-state-directive.mjs +29 -0
  17. package/esm2020/http-request-state/directives/http-success-state-directive.mjs +29 -0
  18. package/esm2020/http-request-state/directives/index.mjs +6 -0
  19. package/esm2020/http-request-state/directives/request-state-directive.mjs +57 -0
  20. package/esm2020/http-request-state/helpers.mjs +22 -0
  21. package/esm2020/http-request-state/http-request-state.mjs +39 -0
  22. package/esm2020/http-request-state/http-state-module.mjs +41 -0
  23. package/esm2020/http-request-state/index.mjs +7 -0
  24. package/esm2020/http-request-state/rxjs/getRequestorBody.mjs +4 -0
  25. package/esm2020/http-request-state/rxjs/getRequestorState.mjs +3 -0
  26. package/esm2020/http-request-state/rxjs/index.mjs +5 -0
  27. package/esm2020/http-request-state/rxjs/tapError.mjs +12 -0
  28. package/esm2020/http-request-state/rxjs/tapSuccess.mjs +12 -0
  29. package/esm2020/http-request-state/types.mjs +16 -0
  30. package/esm2020/ngrx/actionable-selector.mjs +76 -0
  31. package/esm2020/ngrx/index.mjs +2 -0
  32. package/esm2020/one-paragon-angular-utilities.mjs +5 -0
  33. package/esm2020/public-api.mjs +19 -0
  34. package/esm2020/rxjs/defaultShareReplay.mjs +7 -0
  35. package/esm2020/rxjs/index.mjs +5 -0
  36. package/esm2020/rxjs/mapError.mjs +8 -0
  37. package/esm2020/rxjs/rxjs-operators.mjs +91 -0
  38. package/esm2020/rxjs/subjectifier.mjs +15 -0
  39. package/esm2020/table-builder/classes/DefaultSettings.mjs +6 -0
  40. package/esm2020/table-builder/classes/GenericTableDataSource.mjs +13 -0
  41. package/esm2020/table-builder/classes/MatTableObservableDataSource.mjs +21 -0
  42. package/esm2020/table-builder/classes/TableBuilderConfig.mjs +3 -0
  43. package/esm2020/table-builder/classes/TableState.mjs +32 -0
  44. package/esm2020/table-builder/classes/data-filter.mjs +26 -0
  45. package/esm2020/table-builder/classes/display-col.mjs +2 -0
  46. package/esm2020/table-builder/classes/filter-info.mjs +71 -0
  47. package/esm2020/table-builder/classes/table-builder-general-settings.mjs +68 -0
  48. package/esm2020/table-builder/classes/table-builder.mjs +61 -0
  49. package/esm2020/table-builder/classes/table-store.mjs +292 -0
  50. package/esm2020/table-builder/components/array-column.component.mjs +57 -0
  51. package/esm2020/table-builder/components/column-builder/column-builder.component.mjs +111 -0
  52. package/esm2020/table-builder/components/date-filter/date-filter.component.mjs +25 -0
  53. package/esm2020/table-builder/components/filter/filter.component.mjs +53 -0
  54. package/esm2020/table-builder/components/filter/in-list/in-list-filter.component.mjs +91 -0
  55. package/esm2020/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +45 -0
  56. package/esm2020/table-builder/components/generic-table/generic-table.component.mjs +198 -0
  57. package/esm2020/table-builder/components/generic-table/paginator.component.mjs +74 -0
  58. package/esm2020/table-builder/components/group-by-list/group-by-list.component.mjs +22 -0
  59. package/esm2020/table-builder/components/header-menu/header-menu.component.mjs +90 -0
  60. package/esm2020/table-builder/components/in-filter/in-filter.component.mjs +63 -0
  61. package/esm2020/table-builder/components/index.mjs +10 -0
  62. package/esm2020/table-builder/components/initialization-component/initialization-component.mjs +33 -0
  63. package/esm2020/table-builder/components/link-column.component.mjs +66 -0
  64. package/esm2020/table-builder/components/number-filter/number-filter.component.mjs +27 -0
  65. package/esm2020/table-builder/components/sort-menu/sort-menu.component-store.mjs +42 -0
  66. package/esm2020/table-builder/components/sort-menu/sort-menu.component.mjs +75 -0
  67. package/esm2020/table-builder/components/table-container/table-container.mjs +312 -0
  68. package/esm2020/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +42 -0
  69. package/esm2020/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +30 -0
  70. package/esm2020/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +25 -0
  71. package/esm2020/table-builder/directives/custom-cell-directive.mjs +59 -0
  72. package/esm2020/table-builder/directives/index.mjs +6 -0
  73. package/esm2020/table-builder/directives/multi-sort.directive.mjs +42 -0
  74. package/esm2020/table-builder/directives/resize-column.directive.mjs +86 -0
  75. package/esm2020/table-builder/directives/table-wrapper.directive.mjs +26 -0
  76. package/esm2020/table-builder/directives/tb-filter.directive.mjs +403 -0
  77. package/esm2020/table-builder/enums/filterTypes.mjs +59 -0
  78. package/esm2020/table-builder/functions/boolean-filter-function.mjs +10 -0
  79. package/esm2020/table-builder/functions/date-filter-function.mjs +32 -0
  80. package/esm2020/table-builder/functions/download-data.mjs +12 -0
  81. package/esm2020/table-builder/functions/null-filter-function.mjs +8 -0
  82. package/esm2020/table-builder/functions/number-filter-function.mjs +32 -0
  83. package/esm2020/table-builder/functions/sort-data-function.mjs +5 -0
  84. package/esm2020/table-builder/functions/string-filter-function.mjs +41 -0
  85. package/esm2020/table-builder/interfaces/ColumnInfo.mjs +2 -0
  86. package/esm2020/table-builder/interfaces/dictionary.mjs +2 -0
  87. package/esm2020/table-builder/interfaces/report-def.mjs +34 -0
  88. package/esm2020/table-builder/material.module.mjs +207 -0
  89. package/esm2020/table-builder/ngrx/actions.mjs +5 -0
  90. package/esm2020/table-builder/ngrx/effects.mjs +48 -0
  91. package/esm2020/table-builder/ngrx/reducer.mjs +52 -0
  92. package/esm2020/table-builder/ngrx/selectors.mjs +24 -0
  93. package/esm2020/table-builder/pipes/column-total.pipe.mjs +20 -0
  94. package/esm2020/table-builder/pipes/format-filter-type.pipe.mjs +18 -0
  95. package/esm2020/table-builder/pipes/format-filter-value.pipe.mjs +46 -0
  96. package/esm2020/table-builder/pipes/key-display.mjs +20 -0
  97. package/esm2020/table-builder/services/export-to-csv.service.mjs +84 -0
  98. package/esm2020/table-builder/services/link-creator.service.mjs +42 -0
  99. package/esm2020/table-builder/services/table-template-service.mjs +43 -0
  100. package/esm2020/table-builder/services/transform-creator.mjs +70 -0
  101. package/esm2020/table-builder/table-builder.module.mjs +204 -0
  102. package/esm2020/utilities/directives/auto-focus.directive.mjs +26 -0
  103. package/esm2020/utilities/directives/clickEmitterDirective.mjs +21 -0
  104. package/esm2020/utilities/directives/clickSubject.mjs +27 -0
  105. package/esm2020/utilities/directives/conditional-classes.directive.mjs +35 -0
  106. package/esm2020/utilities/directives/dialog-service.mjs +25 -0
  107. package/esm2020/utilities/directives/dialog.mjs +137 -0
  108. package/esm2020/utilities/directives/mat-toggle-group-directive.mjs +59 -0
  109. package/esm2020/utilities/directives/prevent-enter.directive.mjs +19 -0
  110. package/esm2020/utilities/directives/stop-propagation.directive.mjs +25 -0
  111. package/esm2020/utilities/directives/styler.mjs +26 -0
  112. package/esm2020/utilities/directives/trim-whitespace.directive.mjs +29 -0
  113. package/esm2020/utilities/index.mjs +16 -0
  114. package/esm2020/utilities/module.mjs +91 -0
  115. package/esm2020/utilities/pipes/function.pipe.mjs +21 -0
  116. package/esm2020/utilities/pipes/phone.pipe.mjs +20 -0
  117. package/esm2020/utilities/pipes/space-case.pipes.mjs +28 -0
  118. package/fesm2015/one-paragon-angular-utilities.mjs +4687 -0
  119. package/fesm2015/one-paragon-angular-utilities.mjs.map +1 -0
  120. package/fesm2020/one-paragon-angular-utilities.mjs +4655 -0
  121. package/fesm2020/one-paragon-angular-utilities.mjs.map +1 -0
  122. package/http-request-state/HttpRequestStateFactory.d.ts +14 -0
  123. package/http-request-state/HttpRequestStateStore.d.ts +48 -0
  124. package/http-request-state/directives/HttpStateDirectiveBase.d.ts +16 -0
  125. package/http-request-state/directives/http-error-state-directive.d.ts +12 -0
  126. package/http-request-state/directives/http-inProgress-state-directive.d.ts +12 -0
  127. package/http-request-state/directives/http-notStarted-state-directive.d.ts +12 -0
  128. package/http-request-state/directives/http-success-state-directive.d.ts +14 -0
  129. package/{src/http-request-state/directives/index.ts → http-request-state/directives/index.d.ts} +5 -5
  130. package/http-request-state/directives/request-state-directive.d.ts +29 -0
  131. package/http-request-state/helpers.d.ts +9 -0
  132. package/http-request-state/http-request-state.d.ts +12 -0
  133. package/http-request-state/http-state-module.d.ts +11 -0
  134. package/{src/http-request-state/index.ts → http-request-state/index.d.ts} +6 -6
  135. package/http-request-state/rxjs/getRequestorBody.d.ts +3 -0
  136. package/http-request-state/rxjs/getRequestorState.d.ts +3 -0
  137. package/{src/http-request-state/rxjs/index.ts → http-request-state/rxjs/index.d.ts} +4 -4
  138. package/http-request-state/rxjs/tapError.d.ts +3 -0
  139. package/http-request-state/rxjs/tapSuccess.d.ts +3 -0
  140. package/http-request-state/types.d.ts +36 -0
  141. package/index.d.ts +5 -0
  142. package/ngrx/actionable-selector.d.ts +15 -0
  143. package/ngrx/index.d.ts +1 -0
  144. package/package.json +36 -16
  145. package/{src/public-api.ts → public-api.d.ts} +3 -21
  146. package/rxjs/defaultShareReplay.d.ts +2 -0
  147. package/{src/rxjs/index.ts → rxjs/index.d.ts} +1 -1
  148. package/rxjs/mapError.d.ts +2 -0
  149. package/rxjs/rxjs-operators.d.ts +12 -0
  150. package/rxjs/subjectifier.d.ts +9 -0
  151. package/table-builder/classes/DefaultSettings.d.ts +8 -0
  152. package/table-builder/classes/GenericTableDataSource.d.ts +8 -0
  153. package/table-builder/classes/MatTableObservableDataSource.d.ts +9 -0
  154. package/table-builder/classes/TableBuilderConfig.d.ts +19 -0
  155. package/table-builder/classes/TableState.d.ts +46 -0
  156. package/table-builder/classes/data-filter.d.ts +9 -0
  157. package/{src/table-builder/classes/display-col.ts → table-builder/classes/display-col.d.ts} +5 -5
  158. package/table-builder/classes/filter-info.d.ts +40 -0
  159. package/table-builder/classes/table-builder-general-settings.d.ts +43 -0
  160. package/table-builder/classes/table-builder.d.ts +14 -0
  161. package/table-builder/classes/table-store.d.ts +114 -0
  162. package/table-builder/components/array-column.component.d.ts +14 -0
  163. package/table-builder/components/column-builder/column-builder.component.d.ts +50 -0
  164. package/table-builder/components/date-filter/date-filter.component.d.ts +10 -0
  165. package/table-builder/components/filter/filter.component.d.ts +294 -0
  166. package/table-builder/components/filter/in-list/in-list-filter.component.d.ts +27 -0
  167. package/table-builder/components/gen-col-displayer/gen-col-displayer.component.d.ts +16 -0
  168. package/table-builder/components/generic-table/generic-table.component.d.ts +71 -0
  169. package/table-builder/components/generic-table/paginator.component.d.ts +28 -0
  170. package/table-builder/components/group-by-list/group-by-list.component.d.ts +10 -0
  171. package/table-builder/components/header-menu/header-menu.component.d.ts +25 -0
  172. package/table-builder/components/in-filter/in-filter.component.d.ts +21 -0
  173. package/{src/table-builder/components/index.ts → table-builder/components/index.d.ts} +0 -0
  174. package/table-builder/components/initialization-component/initialization-component.d.ts +12 -0
  175. package/table-builder/components/link-column.component.d.ts +17 -0
  176. package/table-builder/components/number-filter/number-filter.component.d.ts +12 -0
  177. package/table-builder/components/sort-menu/sort-menu.component-store.d.ts +24 -0
  178. package/table-builder/components/sort-menu/sort-menu.component.d.ts +25 -0
  179. package/table-builder/components/table-container/table-container.d.ts +65 -0
  180. package/table-builder/components/table-container-filter/filter-list/filter-list.component.d.ts +17 -0
  181. package/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.d.ts +14 -0
  182. package/table-builder/components/table-container-filter/table-wrapper-filter-store.d.ts +14 -0
  183. package/table-builder/directives/custom-cell-directive.d.ts +19 -0
  184. package/{src/table-builder/directives/index.ts → table-builder/directives/index.d.ts} +0 -1
  185. package/table-builder/directives/multi-sort.directive.d.ts +11 -0
  186. package/table-builder/directives/resize-column.directive.d.ts +43 -0
  187. package/table-builder/directives/table-wrapper.directive.d.ts +11 -0
  188. package/table-builder/directives/tb-filter.directive.d.ts +120 -0
  189. package/table-builder/enums/filterTypes.d.ts +31 -0
  190. package/table-builder/functions/boolean-filter-function.d.ts +3 -0
  191. package/table-builder/functions/date-filter-function.d.ts +3 -0
  192. package/table-builder/functions/download-data.d.ts +1 -0
  193. package/table-builder/functions/null-filter-function.d.ts +2 -0
  194. package/table-builder/functions/number-filter-function.d.ts +4 -0
  195. package/table-builder/functions/sort-data-function.d.ts +3 -0
  196. package/table-builder/functions/string-filter-function.d.ts +7 -0
  197. package/{src/table-builder/interfaces/ColumnInfo.ts → table-builder/interfaces/ColumnInfo.d.ts} +6 -7
  198. package/{src/table-builder/interfaces/dictionary.ts → table-builder/interfaces/dictionary.d.ts} +1 -1
  199. package/table-builder/interfaces/report-def.d.ts +135 -0
  200. package/table-builder/material.module.d.ts +32 -0
  201. package/table-builder/ngrx/actions.d.ts +23 -0
  202. package/table-builder/ngrx/effects.d.ts +19 -0
  203. package/table-builder/ngrx/reducer.d.ts +15 -0
  204. package/table-builder/ngrx/selectors.d.ts +22 -0
  205. package/table-builder/pipes/column-total.pipe.d.ts +8 -0
  206. package/table-builder/pipes/format-filter-type.pipe.d.ts +8 -0
  207. package/table-builder/pipes/format-filter-value.pipe.d.ts +14 -0
  208. package/table-builder/pipes/key-display.d.ts +11 -0
  209. package/table-builder/services/export-to-csv.service.d.ts +22 -0
  210. package/table-builder/services/link-creator.service.d.ts +12 -0
  211. package/table-builder/services/table-template-service.d.ts +14 -0
  212. package/table-builder/services/transform-creator.d.ts +19 -0
  213. package/table-builder/table-builder.module.d.ts +45 -0
  214. package/utilities/directives/auto-focus.directive.d.ts +10 -0
  215. package/utilities/directives/clickEmitterDirective.d.ts +7 -0
  216. package/utilities/directives/clickSubject.d.ts +9 -0
  217. package/utilities/directives/conditional-classes.directive.d.ts +14 -0
  218. package/utilities/directives/dialog-service.d.ts +10 -0
  219. package/utilities/directives/dialog.d.ts +46 -0
  220. package/utilities/directives/mat-toggle-group-directive.d.ts +21 -0
  221. package/utilities/directives/prevent-enter.directive.d.ts +6 -0
  222. package/utilities/directives/stop-propagation.directive.d.ts +7 -0
  223. package/utilities/directives/styler.d.ts +9 -0
  224. package/utilities/directives/trim-whitespace.directive.d.ts +9 -0
  225. package/{src/utilities/index.ts → utilities/index.d.ts} +1 -8
  226. package/utilities/module.d.ts +19 -0
  227. package/utilities/pipes/function.pipe.d.ts +7 -0
  228. package/utilities/pipes/phone.pipe.d.ts +7 -0
  229. package/utilities/pipes/space-case.pipes.d.ts +17 -0
  230. package/karma.conf.js +0 -44
  231. package/ng-package.json +0 -7
  232. package/src/action-state/action-state-spinner/action-state-spinner.component.css +0 -16
  233. package/src/action-state/action-state-spinner/action-state-spinner.component.html +0 -3
  234. package/src/action-state/action-state-spinner/action-state-spinner.component.spec.ts +0 -25
  235. package/src/action-state/action-state-spinner/action-state-spinner.component.ts +0 -22
  236. package/src/action-state/action-state-ui/action-state-ui.module.ts +0 -19
  237. package/src/action-state/ngrx-ext/ngrx-ext.module.ts +0 -15
  238. package/src/action-state/ngrx.ts +0 -69
  239. package/src/http-request-state/HttpRequestStateFactory.ts +0 -26
  240. package/src/http-request-state/HttpRequestStateStore.ts +0 -147
  241. package/src/http-request-state/directives/HttpStateDirectiveBase.ts +0 -38
  242. package/src/http-request-state/directives/http-error-state-directive.ts +0 -32
  243. package/src/http-request-state/directives/http-inProgress-state-directive.ts +0 -32
  244. package/src/http-request-state/directives/http-notStarted-state-directive.ts +0 -31
  245. package/src/http-request-state/directives/http-success-state-directive.ts +0 -31
  246. package/src/http-request-state/directives/request-state-directive.spec.ts +0 -72
  247. package/src/http-request-state/directives/request-state-directive.ts +0 -70
  248. package/src/http-request-state/helpers.ts +0 -30
  249. package/src/http-request-state/http-request-state.ts +0 -69
  250. package/src/http-request-state/http-state-module.ts +0 -26
  251. package/src/http-request-state/observable.spec.ts +0 -43
  252. package/src/http-request-state/rxjs/getRequestorBody.ts +0 -10
  253. package/src/http-request-state/rxjs/getRequestorState.ts +0 -8
  254. package/src/http-request-state/rxjs/tapError.ts +0 -16
  255. package/src/http-request-state/rxjs/tapSuccess.ts +0 -16
  256. package/src/http-request-state/strategies.spec.ts +0 -42
  257. package/src/http-request-state/types.ts +0 -50
  258. package/src/ngrx/actionable-selector.ts +0 -95
  259. package/src/ngrx/index.ts +0 -1
  260. package/src/rxjs/defaultShareReplay.ts +0 -8
  261. package/src/rxjs/mapError.ts +0 -8
  262. package/src/rxjs/rxjs-operators.ts +0 -130
  263. package/src/rxjs/subjectifier.ts +0 -15
  264. package/src/specs/clickSubject.spec.ts +0 -95
  265. package/src/specs/dialog.spec.ts +0 -101
  266. package/src/specs/toggleGroupDirective.spec.ts +0 -231
  267. package/src/table-builder/classes/DefaultSettings.ts +0 -10
  268. package/src/table-builder/classes/GenericTableDataSource.ts +0 -22
  269. package/src/table-builder/classes/MatTableObservableDataSource.ts +0 -23
  270. package/src/table-builder/classes/TableBuilderConfig.ts +0 -19
  271. package/src/table-builder/classes/TableState.ts +0 -63
  272. package/src/table-builder/classes/data-filter.spec.ts +0 -72
  273. package/src/table-builder/classes/data-filter.ts +0 -32
  274. package/src/table-builder/classes/filter-info.ts +0 -132
  275. package/src/table-builder/classes/table-builder-general-settings.ts +0 -73
  276. package/src/table-builder/classes/table-builder.ts +0 -71
  277. package/src/table-builder/classes/table-store.ts +0 -360
  278. package/src/table-builder/components/array-column.component.ts +0 -39
  279. package/src/table-builder/components/column-builder/column-builder.component.html +0 -66
  280. package/src/table-builder/components/column-builder/column-builder.component.scss +0 -43
  281. package/src/table-builder/components/column-builder/column-builder.component.spec.ts +0 -51
  282. package/src/table-builder/components/column-builder/column-builder.component.ts +0 -126
  283. package/src/table-builder/components/date-filter/date-filter.component.html +0 -24
  284. package/src/table-builder/components/date-filter/date-filter.component.ts +0 -17
  285. package/src/table-builder/components/filter/filter.component.html +0 -78
  286. package/src/table-builder/components/filter/filter.component.scss +0 -64
  287. package/src/table-builder/components/filter/filter.component.spec.ts +0 -89
  288. package/src/table-builder/components/filter/filter.component.ts +0 -35
  289. package/src/table-builder/components/filter/in-list/in-list-filter.component.ts +0 -82
  290. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.html +0 -52
  291. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.scss +0 -57
  292. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.ts +0 -44
  293. package/src/table-builder/components/generic-table/generic-table.component.html +0 -77
  294. package/src/table-builder/components/generic-table/generic-table.component.scss +0 -45
  295. package/src/table-builder/components/generic-table/generic-table.component.ts +0 -221
  296. package/src/table-builder/components/generic-table/paginator.component.ts +0 -89
  297. package/src/table-builder/components/group-by-list/group-by-list.component.css +0 -8
  298. package/src/table-builder/components/group-by-list/group-by-list.component.html +0 -10
  299. package/src/table-builder/components/group-by-list/group-by-list.component.spec.ts +0 -23
  300. package/src/table-builder/components/group-by-list/group-by-list.component.ts +0 -16
  301. package/src/table-builder/components/header-menu/header-menu.component.html +0 -117
  302. package/src/table-builder/components/header-menu/header-menu.component.scss +0 -92
  303. package/src/table-builder/components/header-menu/header-menu.component.ts +0 -81
  304. package/src/table-builder/components/in-filter/in-filter.component.css +0 -3
  305. package/src/table-builder/components/in-filter/in-filter.component.html +0 -13
  306. package/src/table-builder/components/in-filter/in-filter.component.ts +0 -60
  307. package/src/table-builder/components/initialization-component/initialization-component.html +0 -21
  308. package/src/table-builder/components/initialization-component/initialization-component.ts +0 -15
  309. package/src/table-builder/components/link-column.component.ts +0 -33
  310. package/src/table-builder/components/number-filter/number-filter.component.css +0 -10
  311. package/src/table-builder/components/number-filter/number-filter.component.html +0 -21
  312. package/src/table-builder/components/number-filter/number-filter.component.spec.ts +0 -30
  313. package/src/table-builder/components/number-filter/number-filter.component.ts +0 -19
  314. package/src/table-builder/components/sort-menu/sort-menu.component-store.ts +0 -59
  315. package/src/table-builder/components/sort-menu/sort-menu.component.html +0 -101
  316. package/src/table-builder/components/sort-menu/sort-menu.component.scss +0 -119
  317. package/src/table-builder/components/sort-menu/sort-menu.component.ts +0 -82
  318. package/src/table-builder/components/table-container/table-container.css +0 -26
  319. package/src/table-builder/components/table-container/table-container.html +0 -113
  320. package/src/table-builder/components/table-container/table-container.spec.ts +0 -157
  321. package/src/table-builder/components/table-container/table-container.ts +0 -344
  322. package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.html +0 -26
  323. package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.ts +0 -38
  324. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.css +0 -37
  325. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.html +0 -8
  326. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.spec.ts +0 -88
  327. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.ts +0 -27
  328. package/src/table-builder/components/table-container-filter/table-wrapper-filter-store.ts +0 -23
  329. package/src/table-builder/directives/custom-cell-directive.ts +0 -45
  330. package/src/table-builder/directives/multi-sort.directive.spec.ts +0 -124
  331. package/src/table-builder/directives/multi-sort.directive.ts +0 -41
  332. package/src/table-builder/directives/resize-column.directive.ts +0 -104
  333. package/src/table-builder/directives/table-wrapper.directive.ts +0 -16
  334. package/src/table-builder/directives/tb-filter.directive.ts +0 -363
  335. package/src/table-builder/enums/filterTypes.ts +0 -65
  336. package/src/table-builder/functions/boolean-filter-function.ts +0 -13
  337. package/src/table-builder/functions/date-filter-function.ts +0 -40
  338. package/src/table-builder/functions/download-data.ts +0 -11
  339. package/src/table-builder/functions/null-filter-function.ts +0 -9
  340. package/src/table-builder/functions/number-filter-function.ts +0 -42
  341. package/src/table-builder/functions/sort-data-function.ts +0 -8
  342. package/src/table-builder/functions/string-filter-function.ts +0 -52
  343. package/src/table-builder/interfaces/column-template.ts +0 -9
  344. package/src/table-builder/interfaces/report-def.ts +0 -131
  345. package/src/table-builder/material.module.ts +0 -95
  346. package/src/table-builder/ngrx/actions.ts +0 -7
  347. package/src/table-builder/ngrx/effects.ts +0 -54
  348. package/src/table-builder/ngrx/reducer.ts +0 -72
  349. package/src/table-builder/ngrx/selectors.ts +0 -37
  350. package/src/table-builder/pipes/column-total.pipe.ts +0 -15
  351. package/src/table-builder/pipes/format-filter-type.pipe.ts +0 -12
  352. package/src/table-builder/pipes/format-filter-value.pipe.ts +0 -40
  353. package/src/table-builder/pipes/key-display.ts +0 -16
  354. package/src/table-builder/services/export-to-csv.service.ts +0 -92
  355. package/src/table-builder/services/link-creator.service.ts +0 -48
  356. package/src/table-builder/services/table-template-service.ts +0 -44
  357. package/src/table-builder/services/transform-creator.ts +0 -61
  358. package/src/table-builder/specs/table-custom-filters.spec.ts +0 -262
  359. package/src/table-builder/styles/collapser.styles.scss +0 -21
  360. package/src/table-builder/table-builder.module.ts +0 -138
  361. package/src/test.ts +0 -17
  362. package/src/utilities/directives/auto-focus.directive.ts +0 -19
  363. package/src/utilities/directives/clickEmitterDirective.ts +0 -15
  364. package/src/utilities/directives/clickSubject.ts +0 -19
  365. package/src/utilities/directives/conditional-classes.directive.ts +0 -35
  366. package/src/utilities/directives/dialog-service.ts +0 -22
  367. package/src/utilities/directives/dialog.ts +0 -142
  368. package/src/utilities/directives/mat-toggle-group-directive.ts +0 -60
  369. package/src/utilities/directives/prevent-enter.directive.ts +0 -12
  370. package/src/utilities/directives/stop-propagation.directive.ts +0 -19
  371. package/src/utilities/directives/styler.ts +0 -16
  372. package/src/utilities/directives/trim-whitespace.directive.ts +0 -20
  373. package/src/utilities/module.ts +0 -58
  374. package/src/utilities/pipes/function.pipe.ts +0 -15
  375. package/src/utilities/pipes/phone.pipe.ts +0 -15
  376. package/src/utilities/pipes/space-case.pipes.spec.ts +0 -47
  377. package/src/utilities/pipes/space-case.pipes.ts +0 -23
  378. package/tsconfig.lib.json +0 -19
  379. package/tsconfig.lib.prod.json +0 -10
  380. package/tsconfig.spec.json +0 -17
@@ -0,0 +1,59 @@
1
+ import { Directive, Input, Optional } from '@angular/core';
2
+ import { FieldType } from '../interfaces/report-def';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/cdk/table";
5
+ // here is how to use it
6
+ // <generic-table [report]="report">
7
+ // <p *customCell="'column1'; let element = element" [class.makeMeRed]="element?.port">If Port, i will be red</p>
8
+ // <p *customCell="'column2'">I am custom cell two </p>
9
+ // </generic-table>
10
+ export class CustomCellDirective {
11
+ constructor(templateRef, columnDef) {
12
+ this.templateRef = templateRef;
13
+ this.columnDef = columnDef;
14
+ this.TemplateRef = this.templateRef;
15
+ }
16
+ ngAfterContentInit() {
17
+ if (this.TemplateRef === null) {
18
+ this.TemplateRef = this.templateRef;
19
+ }
20
+ }
21
+ getMetaData(metaData) {
22
+ return {
23
+ key: this.customCell,
24
+ displayName: this.displayName ?? metaData?.displayName,
25
+ preSort: this.preSort ?? metaData?.preSort,
26
+ fieldType: metaData?.fieldType ?? FieldType.Unknown,
27
+ order: this.customCellOrder ?? metaData?.order,
28
+ _internalNotUserDefined: !(!!metaData),
29
+ width: this.customCellWidth ?? metaData?.width,
30
+ customCell: true,
31
+ noExport: !metaData
32
+ };
33
+ }
34
+ }
35
+ CustomCellDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CustomCellDirective, deps: [{ token: i0.TemplateRef, optional: true }, { token: i1.CdkColumnDef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
36
+ CustomCellDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: CustomCellDirective, selector: "[customCell]", inputs: { customCell: "customCell", displayName: "displayName", preSort: "preSort", TemplateRef: "TemplateRef", customCellOrder: "customCellOrder", customCellWidth: "customCellWidth" }, ngImport: i0 });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: CustomCellDirective, decorators: [{
38
+ type: Directive,
39
+ args: [{
40
+ selector: '[customCell]',
41
+ }]
42
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
43
+ type: Optional
44
+ }] }, { type: i1.CdkColumnDef, decorators: [{
45
+ type: Optional
46
+ }] }]; }, propDecorators: { customCell: [{
47
+ type: Input
48
+ }], displayName: [{
49
+ type: Input
50
+ }], preSort: [{
51
+ type: Input
52
+ }], TemplateRef: [{
53
+ type: Input
54
+ }], customCellOrder: [{
55
+ type: Input
56
+ }], customCellWidth: [{
57
+ type: Input
58
+ }] } });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWNlbGwtZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvZGlyZWN0aXZlcy9jdXN0b20tY2VsbC1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZSxLQUFLLEVBQW9CLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQXFCLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFFeEUsd0JBQXdCO0FBQ3hCLG9DQUFvQztBQUNwQyxxSEFBcUg7QUFDckgsMkRBQTJEO0FBQzNELG1CQUFtQjtBQUluQixNQUFNLE9BQU8sbUJBQW1CO0lBTzVCLFlBQ3VCLFdBQTZCLEVBQy9CLFNBQXVCO1FBRHJCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUMvQixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBRXhDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUN2QyxDQUFDO0lBQ0Qsa0JBQWtCO1FBQ2pCLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1NBQ3JDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUFvQjtRQUM5QixPQUFPO1lBQ0wsR0FBRyxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQ3BCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxJQUFJLFFBQVEsRUFBRSxXQUFXO1lBQ3RELE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxJQUFJLFFBQVEsRUFBRSxPQUFPO1lBQzFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxJQUFLLFNBQVMsQ0FBQyxPQUFPO1lBQ3BELEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZSxJQUFJLFFBQVEsRUFBRSxLQUFLO1lBQzlDLHVCQUF1QixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1lBQ3RDLEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZSxJQUFJLFFBQVEsRUFBRSxLQUFLO1lBQzlDLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLFFBQVEsRUFBRSxDQUFDLFFBQVE7U0FDcEIsQ0FBQztJQUNKLENBQUM7O2dIQS9CUSxtQkFBbUI7b0dBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUgvQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxjQUFjO2lCQUMzQjs7MEJBU00sUUFBUTs7MEJBQ1IsUUFBUTs0Q0FSRixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiwgSW5wdXQsIEFmdGVyQ29udGVudEluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDZGtDb2x1bW5EZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHsgU29ydERlZiwgTWV0YURhdGEsIEZpZWxkVHlwZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvcmVwb3J0LWRlZic7XG5cbi8vIGhlcmUgaXMgaG93IHRvIHVzZSBpdFxuLy8gPGdlbmVyaWMtdGFibGUgW3JlcG9ydF09XCJyZXBvcnRcIj5cbi8vICAgICA8cCAqY3VzdG9tQ2VsbD1cIidjb2x1bW4xJzsgbGV0IGVsZW1lbnQgPSBlbGVtZW50XCIgW2NsYXNzLm1ha2VNZVJlZF09XCJlbGVtZW50Py5wb3J0XCI+SWYgUG9ydCwgaSB3aWxsIGJlIHJlZDwvcD5cbi8vICAgICA8cCAqY3VzdG9tQ2VsbD1cIidjb2x1bW4yJ1wiPkkgYW0gY3VzdG9tIGNlbGwgdHdvIDwvcD5cbi8vIDwvZ2VuZXJpYy10YWJsZT5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2N1c3RvbUNlbGxdJyxcbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tQ2VsbERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBJbnB1dCgpIGN1c3RvbUNlbGwhOiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGlzcGxheU5hbWU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgcHJlU29ydD86IFNvcnREZWY7XG4gICAgQElucHV0KCkgVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgQElucHV0KCkgY3VzdG9tQ2VsbE9yZGVyPzogbnVtYmVyO1xuICAgIEBJbnB1dCgpIGN1c3RvbUNlbGxXaWR0aD86IHN0cmluZztcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgIEBPcHRpb25hbCgpICBwcml2YXRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgICAgQE9wdGlvbmFsKCkgcHVibGljIGNvbHVtbkRlZjogQ2RrQ29sdW1uRGVmXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5UZW1wbGF0ZVJlZiA9IHRoaXMudGVtcGxhdGVSZWY7XG4gICAgIH1cbiAgICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgaWYgKHRoaXMuVGVtcGxhdGVSZWYgPT09IG51bGwpIHtcbiAgICAgICAgdGhpcy5UZW1wbGF0ZVJlZiA9IHRoaXMudGVtcGxhdGVSZWY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZ2V0TWV0YURhdGEobWV0YURhdGE/IDogTWV0YURhdGEpOiBNZXRhRGF0YSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBrZXk6IHRoaXMuY3VzdG9tQ2VsbCxcbiAgICAgICAgZGlzcGxheU5hbWU6IHRoaXMuZGlzcGxheU5hbWUgPz8gbWV0YURhdGE/LmRpc3BsYXlOYW1lLFxuICAgICAgICBwcmVTb3J0OiB0aGlzLnByZVNvcnQgPz8gbWV0YURhdGE/LnByZVNvcnQsXG4gICAgICAgIGZpZWxkVHlwZTogbWV0YURhdGE/LmZpZWxkVHlwZSA/PyAgRmllbGRUeXBlLlVua25vd24sXG4gICAgICAgIG9yZGVyOiB0aGlzLmN1c3RvbUNlbGxPcmRlciA/PyBtZXRhRGF0YT8ub3JkZXIsXG4gICAgICAgIF9pbnRlcm5hbE5vdFVzZXJEZWZpbmVkOiAhKCEhbWV0YURhdGEpLFxuICAgICAgICB3aWR0aDogdGhpcy5jdXN0b21DZWxsV2lkdGggPz8gbWV0YURhdGE/LndpZHRoLFxuICAgICAgICBjdXN0b21DZWxsOiB0cnVlLFxuICAgICAgICBub0V4cG9ydDogIW1ldGFEYXRhXG4gICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export * from './custom-cell-directive';
2
+ export * from './multi-sort.directive';
3
+ export * from './resize-column.directive';
4
+ export * from './table-wrapper.directive';
5
+ export * from './tb-filter.directive';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9kaXJlY3RpdmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY3VzdG9tLWNlbGwtZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9tdWx0aS1zb3J0LmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVzaXplLWNvbHVtbi5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXdyYXBwZXIuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi90Yi1maWx0ZXIuZGlyZWN0aXZlJztcclxuXHJcbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { Directive } from '@angular/core';
2
+ import { MatSort } from '@angular/material/sort';
3
+ import { map } from 'rxjs/operators';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../classes/table-store";
6
+ export class MultiSortDirective extends MatSort {
7
+ constructor(state) {
8
+ super();
9
+ this.state = state;
10
+ this.rules = [];
11
+ this.state.setSort(this.sortChange.pipe(map(sc => ({ key: sc.active, direction: sc.direction }))));
12
+ this.state.on(this.state.sorted$, rules => {
13
+ this.rules = rules;
14
+ if (this.active && rules.length === 0) {
15
+ this.active = '';
16
+ this.direction = '';
17
+ this.sortChange.emit({ active: '', direction: '' });
18
+ }
19
+ if (rules.length > 0 && (this.active !== rules[0].active || this.direction !== rules[0].direction)) {
20
+ this.active = rules[0].active;
21
+ this.direction = rules[0].direction;
22
+ this.sortChange.emit(rules[0]);
23
+ }
24
+ });
25
+ }
26
+ }
27
+ MultiSortDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MultiSortDirective, deps: [{ token: i1.TableStore }], target: i0.ɵɵFactoryTarget.Directive });
28
+ MultiSortDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: MultiSortDirective, selector: "[multiSort]", inputs: { disabled: ["matSortDisabled", "disabled"] }, providers: [
29
+ { provide: MatSort, useExisting: MultiSortDirective }
30
+ ], exportAs: ["multiSort"], usesInheritance: true, ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: MultiSortDirective, decorators: [{
32
+ type: Directive,
33
+ args: [{
34
+ selector: '[multiSort]',
35
+ exportAs: 'multiSort',
36
+ inputs: ['disabled: matSortDisabled'],
37
+ providers: [
38
+ { provide: MatSort, useExisting: MultiSortDirective }
39
+ ]
40
+ }]
41
+ }], ctorParameters: function () { return [{ type: i1.TableStore }]; } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc29ydC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9kaXJlY3RpdmVzL211bHRpLXNvcnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxPQUFPLEVBQVEsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQVdyQyxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsT0FBTztJQUc3QyxZQUFvQixLQUFpQjtRQUNuQyxLQUFLLEVBQUUsQ0FBQztRQURVLFVBQUssR0FBTCxLQUFLLENBQVk7UUFGckMsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUlqQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25HLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUNsQixLQUFLLENBQUMsRUFBRTtZQUNOLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBRW5CLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDckMsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7YUFDckQ7WUFFRCxJQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUNqRyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDaEM7UUFFSCxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7OytHQXpCVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw2RkFKbEI7UUFDVCxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFO0tBQ3REOzJGQUVVLGtCQUFrQjtrQkFSOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLE1BQU0sRUFBRSxDQUFDLDJCQUEyQixDQUFDO29CQUNyQyxTQUFTLEVBQUU7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsb0JBQW9CLEVBQUU7cUJBQ3REO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTb3J0LCBTb3J0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVGFibGVTdG9yZSB9IGZyb20gJy4uL2NsYXNzZXMvdGFibGUtc3RvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbbXVsdGlTb3J0XScsXHJcbiAgZXhwb3J0QXM6ICdtdWx0aVNvcnQnLFxyXG4gIGlucHV0czogWydkaXNhYmxlZDogbWF0U29ydERpc2FibGVkJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7IHByb3ZpZGU6IE1hdFNvcnQsIHVzZUV4aXN0aW5nOiBNdWx0aVNvcnREaXJlY3RpdmUgfVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIE11bHRpU29ydERpcmVjdGl2ZSBleHRlbmRzIE1hdFNvcnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcnVsZXM6IFNvcnRbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0YXRlOiBUYWJsZVN0b3JlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5zdGF0ZS5zZXRTb3J0KHRoaXMuc29ydENoYW5nZS5waXBlKG1hcChzYyA9PiAoeyBrZXk6IHNjLmFjdGl2ZSwgZGlyZWN0aW9uOiBzYy5kaXJlY3Rpb24gfSkpKSk7XHJcbiAgICB0aGlzLnN0YXRlLm9uKFxyXG4gICAgICB0aGlzLnN0YXRlLnNvcnRlZCQsXHJcbiAgICAgIHJ1bGVzID0+IHtcclxuICAgICAgICB0aGlzLnJ1bGVzID0gcnVsZXM7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmFjdGl2ZSAmJiBydWxlcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgIHRoaXMuYWN0aXZlID0gJyc7XHJcbiAgICAgICAgICB0aGlzLmRpcmVjdGlvbiA9ICcnO1xyXG4gICAgICAgICAgdGhpcy5zb3J0Q2hhbmdlLmVtaXQoeyBhY3RpdmU6ICcnLCBkaXJlY3Rpb246ICcnIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYocnVsZXMubGVuZ3RoID4gMCAmJiAodGhpcy5hY3RpdmUgIT09IHJ1bGVzWzBdLmFjdGl2ZSB8fCB0aGlzLmRpcmVjdGlvbiAhPT0gcnVsZXNbMF0uZGlyZWN0aW9uKSkge1xyXG4gICAgICAgICAgdGhpcy5hY3RpdmUgPSBydWxlc1swXS5hY3RpdmU7XHJcbiAgICAgICAgICB0aGlzLmRpcmVjdGlvbiA9IHJ1bGVzWzBdLmRpcmVjdGlvbjtcclxuICAgICAgICAgIHRoaXMuc29ydENoYW5nZS5lbWl0KHJ1bGVzWzBdKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -0,0 +1,86 @@
1
+ import { Directive, Input } from "@angular/core";
2
+ import { fromEvent } from "rxjs";
3
+ import { filter, map, switchMap, takeUntil } from "rxjs/operators";
4
+ import { defaultShareReplay } from "../../rxjs";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../classes/table-store";
7
+ export class ResizeColumnDirective {
8
+ constructor(renderer, el, store) {
9
+ this.renderer = renderer;
10
+ this.el = el;
11
+ this.store = store;
12
+ this.getElementWidth = (elem) => (+(globalThis.getComputedStyle(elem).getPropertyValue('width').replace('px', '')));
13
+ }
14
+ ngOnInit() {
15
+ if (this.resizable) {
16
+ const { table, columnHead } = this.getTableAndColumnHeadHtmlElements();
17
+ const resizer = this.createResizerSpanInColumnHead(columnHead);
18
+ const aggregateMouseEventsMapped$ = this.mouseDownThroghMouseUpEventMapper(resizer, columnHead, table);
19
+ const resizeColsData$ = aggregateMouseEventsMapped$.pipe(filter(({ mouseMove }) => !!mouseMove.buttons), map(({ mouseDownData, mouseMove }) => {
20
+ const { newTableWidth, newColumnWidth } = this.calculateNewWidths(mouseDownData, mouseMove);
21
+ return ({
22
+ key: this.key,
23
+ widthInPixel: newColumnWidth,
24
+ tableSize: newTableWidth,
25
+ });
26
+ }), defaultShareReplay());
27
+ this.store.setUserDefinedWidth(resizeColsData$.pipe(map(resizeData => ([{ key: this.key, widthInPixel: resizeData.widthInPixel }]))));
28
+ this.store.setTableWidth(resizeColsData$.pipe(map(resizeData => resizeData.tableSize)));
29
+ }
30
+ }
31
+ createResizerSpanInColumnHead(columnHead) {
32
+ const resizer = this.renderer.createElement("span");
33
+ this.renderer.addClass(resizer, "resize-holder");
34
+ resizer.style['cursor'] = 'col-resize';
35
+ resizer.style['user-select'] = 'none';
36
+ resizer.style['width'] = '10px';
37
+ resizer.style['height'] = '100%';
38
+ resizer.style['position'] = 'absolute';
39
+ resizer.style['right'] = '0';
40
+ resizer.style['top'] = '0';
41
+ resizer.style['z-index'] = '1';
42
+ this.renderer.appendChild(columnHead, resizer);
43
+ return resizer;
44
+ }
45
+ getTableAndColumnHeadHtmlElements() {
46
+ const columnHead = this.el.nativeElement;
47
+ const row = this.renderer.parentNode(columnHead);
48
+ const table = this.renderer.parentNode(row);
49
+ return ({ table, columnHead });
50
+ }
51
+ mouseDownThroghMouseUpEventMapper(resizer, columnHead, table) {
52
+ return this.resizerMouseDownEventMapper(resizer, columnHead, table)
53
+ .pipe(switchMap(mouseDownData => fromEvent(table, "mousemove").pipe(map(mouseMove => ({ mouseDownData, mouseMove })), takeUntil(fromEvent(document, "mouseup")))));
54
+ }
55
+ resizerMouseDownEventMapper(resizer, columnHead, table) {
56
+ return fromEvent(resizer, "mousedown").pipe(map(event => ({
57
+ startPageX: event.pageX,
58
+ startColumnWidth: this.getElementWidth(columnHead),
59
+ startTableWidth: this.getElementWidth(table),
60
+ })));
61
+ }
62
+ calculateNewWidths(mouseDownData, mouseMove) {
63
+ const change = (mouseMove.pageX - mouseDownData.startPageX);
64
+ let newColumnWidth = mouseDownData.startColumnWidth + change;
65
+ if (newColumnWidth < 1) {
66
+ newColumnWidth = 1;
67
+ }
68
+ const columnChange = newColumnWidth - mouseDownData.startColumnWidth;
69
+ const newTableWidth = (mouseDownData.startTableWidth + columnChange);
70
+ return ({ newTableWidth, newColumnWidth });
71
+ }
72
+ }
73
+ ResizeColumnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ResizeColumnDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.TableStore }], target: i0.ɵɵFactoryTarget.Directive });
74
+ ResizeColumnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: ResizeColumnDirective, selector: "[resizeColumn]", inputs: { resizable: ["resizeColumn", "resizable"], key: "key" }, ngImport: i0 });
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ResizeColumnDirective, decorators: [{
76
+ type: Directive,
77
+ args: [{
78
+ selector: "[resizeColumn]",
79
+ }]
80
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.TableStore }]; }, propDecorators: { resizable: [{
81
+ type: Input,
82
+ args: ["resizeColumn"]
83
+ }], key: [{
84
+ type: Input
85
+ }] } });
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLWNvbHVtbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9kaXJlY3RpdmVzL3Jlc2l6ZS1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLEtBQUssRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQU1oRCxNQUFNLE9BQU8scUJBQXFCO0lBSWhDLFlBQW9CLFFBQW1CLEVBQVUsRUFBYyxFQUFTLEtBQWlCO1FBQXJFLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBVSxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVMsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQW1GekYsb0JBQWUsR0FBRyxDQUFDLElBQWdCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQW5GM0IsQ0FBQztJQUUvRixRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFDO1lBQ2pCLE1BQU0sRUFBQyxLQUFLLEVBQUUsVUFBVSxFQUFDLEdBQUcsSUFBSSxDQUFDLGlDQUFpQyxFQUFFLENBQUM7WUFDckUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRS9E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QVksQ0FBQyxDQUFDO1FBQ3JFLE9BQU8sQ0FBQyxFQUFDLGFBQWEsRUFBQyxjQUFjLEVBQUMsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7O2tIQXRGVSxxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzNCO2tKQUV3QixTQUFTO3NCQUEvQixLQUFLO3VCQUFDLGNBQWM7Z0JBRVosR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIFJlbmRlcmVyMiwgSW5wdXQsIEVsZW1lbnRSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgZGVmYXVsdFNoYXJlUmVwbGF5IH0gZnJvbSBcIi4uLy4uL3J4anNcIjtcbmltcG9ydCB7IFRhYmxlU3RvcmUgfSBmcm9tIFwiLi4vY2xhc3Nlcy90YWJsZS1zdG9yZVwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW3Jlc2l6ZUNvbHVtbl1cIixcbn0pXG5leHBvcnQgY2xhc3MgUmVzaXplQ29sdW1uRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0e1xuICBASW5wdXQoXCJyZXNpemVDb2x1bW5cIikgcmVzaXphYmxlITogYm9vbGVhbjtcblxuICBASW5wdXQoKSBrZXkhOiBzdHJpbmc7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHVibGljIHN0b3JlOiBUYWJsZVN0b3JlLCkgeyB9XG5cbiAgbmdPbkluaXQoKXtcbiAgICBpZiAodGhpcy5yZXNpemFibGUpe1xuICAgICAgY29uc3Qge3RhYmxlLCBjb2x1bW5IZWFkfSA9IHRoaXMuZ2V0VGFibGVBbmRDb2x1bW5IZWFkSHRtbEVsZW1lbnRzKCk7XG4gICAgICBjb25zdCByZXNpemVyID0gdGhpcy5jcmVhdGVSZXNpemVyU3BhbkluQ29sdW1uSGVhZChjb2x1bW5IZWFkKTtcblxuICAgICAgY29uc3QgYWdncmVnYXRlTW91c2VFdmVudHNNYXBwZWQkID0gdGhpcy5tb3VzZURvd25UaHJvZ2hNb3VzZVVwRXZlbnRNYXBwZXIocmVzaXplcixjb2x1bW5IZWFkLHRhYmxlKVxuXG4gICAgICBjb25zdCByZXNpemVDb2xzRGF0YSQgPSBhZ2dyZWdhdGVNb3VzZUV2ZW50c01hcHBlZCQucGlwZShcbiAgICAgICAgZmlsdGVyKCh7bW91c2VNb3ZlfSk9PiEhbW91c2VNb3ZlLmJ1dHRvbnMpLFxuICAgICAgICBtYXAoICh7bW91c2VEb3duRGF0YSxtb3VzZU1vdmV9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7bmV3VGFibGVXaWR0aCxuZXdDb2x1bW5XaWR0aH0gID0gdGhpcy5jYWxjdWxhdGVOZXdXaWR0aHMobW91c2VEb3duRGF0YSxtb3VzZU1vdmUpXG4gICAgICAgICAgICByZXR1cm4gKHtcbiAgICAgICAgICAgICAga2V5OnRoaXMua2V5LFxuICAgICAgICAgICAgICB3aWR0aEluUGl4ZWw6bmV3Q29sdW1uV2lkdGgsXG4gICAgICAgICAgICAgIHRhYmxlU2l6ZTpuZXdUYWJsZVdpZHRoLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9KSxcbiAgICAgICAgZGVmYXVsdFNoYXJlUmVwbGF5KClcbiAgICAgICk7XG5cbiAgICAgIHRoaXMuc3RvcmUuc2V0VXNlckRlZmluZWRXaWR0aChyZXNpemVDb2xzRGF0YSQucGlwZShcbiAgICAgICAgbWFwKHJlc2l6ZURhdGEgPT4gKFt7a2V5OiB0aGlzLmtleSwgd2lkdGhJblBpeGVsOiByZXNpemVEYXRhLndpZHRoSW5QaXhlbCB9XSkpXG4gICAgICApKTtcblxuICAgICAgdGhpcy5zdG9yZS5zZXRUYWJsZVdpZHRoKHJlc2l6ZUNvbHNEYXRhJC5waXBlKFxuICAgICAgICBtYXAocmVzaXplRGF0YSA9PiByZXNpemVEYXRhLnRhYmxlU2l6ZSApKSk7XG4gICAgfVxuXG4gIH1cblxuICBjcmVhdGVSZXNpemVyU3BhbkluQ29sdW1uSGVhZChjb2x1bW5IZWFkOkhUTUxFbGVtZW50KXtcbiAgICBjb25zdCByZXNpemVyID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KFwic3BhblwiKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHJlc2l6ZXIsIFwicmVzaXplLWhvbGRlclwiKTtcbiAgICByZXNpemVyLnN0eWxlWydjdXJzb3InXT0nY29sLXJlc2l6ZSc7XG4gICAgcmVzaXplci5zdHlsZVsndXNlci1zZWxlY3QnXT0nbm9uZSc7XG4gICAgcmVzaXplci5zdHlsZVsnd2lkdGgnXT0nMTBweCc7XG4gICAgcmVzaXplci5zdHlsZVsnaGVpZ2h0J109JzEwMCUnO1xuICAgIHJlc2l6ZXIuc3R5bGVbJ3Bvc2l0aW9uJ109J2Fic29sdXRlJztcbiAgICByZXNpemVyLnN0eWxlWydyaWdodCddPScwJztcbiAgICByZXNpemVyLnN0eWxlWyd0b3AnXT0nMCc7XG4gICAgcmVzaXplci5zdHlsZVsnei1pbmRleCddPScxJztcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGNvbHVtbkhlYWQsIHJlc2l6ZXIpO1xuICAgIHJldHVybiByZXNpemVyO1xuICB9XG5cbiAgZ2V0VGFibGVBbmRDb2x1bW5IZWFkSHRtbEVsZW1lbnRzKCk6e3RhYmxlOkhUTUxFbGVtZW50LGNvbHVtbkhlYWQ6SFRNTEVsZW1lbnR9e1xuICAgIGNvbnN0IGNvbHVtbkhlYWQ6IEhUTUxFbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IHJvdyA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZShjb2x1bW5IZWFkKTtcbiAgICBjb25zdCB0YWJsZSA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZShyb3cpO1xuICAgIHJldHVybiAoe3RhYmxlLGNvbHVtbkhlYWR9KVxuICB9XG5cbiAgbW91c2VEb3duVGhyb2doTW91c2VVcEV2ZW50TWFwcGVyKHJlc2l6ZXI6SFRNTEVsZW1lbnQsIGNvbHVtbkhlYWQ6SFRNTEVsZW1lbnQsIHRhYmxlOkhUTUxFbGVtZW50KXtcbiAgICByZXR1cm4gdGhpcy5yZXNpemVyTW91c2VEb3duRXZlbnRNYXBwZXIocmVzaXplcixjb2x1bW5IZWFkLHRhYmxlKVxuICAgIC5waXBlKFxuICAgICAgc3dpdGNoTWFwKCBtb3VzZURvd25EYXRhID0+IGZyb21FdmVudDxNb3VzZUV2ZW50Pih0YWJsZSwgXCJtb3VzZW1vdmVcIikucGlwZShcbiAgICAgICAgbWFwKCBtb3VzZU1vdmUgPT4gKHttb3VzZURvd25EYXRhLCBtb3VzZU1vdmV9KSksXG4gICAgICAgIHRha2VVbnRpbChmcm9tRXZlbnQ8TW91c2VFdmVudD4oZG9jdW1lbnQsIFwibW91c2V1cFwiKSlcbiAgICAgICkgKSxcbiAgICApXG4gIH1cbiAgcmVzaXplck1vdXNlRG93bkV2ZW50TWFwcGVyKHJlc2l6ZXI6SFRNTEVsZW1lbnQsIGNvbHVtbkhlYWQ6SFRNTEVsZW1lbnQsIHRhYmxlOkhUTUxFbGVtZW50KXtcbiAgICByZXR1cm4gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHJlc2l6ZXIsIFwibW91c2Vkb3duXCIpLnBpcGUoXG4gICAgICBtYXAoZXZlbnQgPT4gKHtcbiAgICAgICAgc3RhcnRQYWdlWDogZXZlbnQucGFnZVgsXG4gICAgICAgIHN0YXJ0Q29sdW1uV2lkdGg6IHRoaXMuZ2V0RWxlbWVudFdpZHRoKGNvbHVtbkhlYWQpLFxuICAgICAgICBzdGFydFRhYmxlV2lkdGg6IHRoaXMuZ2V0RWxlbWVudFdpZHRoKHRhYmxlKSxcbiAgICAgIH0pKVxuICAgICk7XG4gIH1cblxuICBjYWxjdWxhdGVOZXdXaWR0aHMobW91c2VEb3duRGF0YTpNb3VzZURvd21EYXRhLG1vdXNlTW92ZTpNb3VzZUV2ZW50KTp7bmV3VGFibGVXaWR0aDpudW1iZXIsbmV3Q29sdW1uV2lkdGg6bnVtYmVyfXtcbiAgICBjb25zdCBjaGFuZ2UgPSAobW91c2VNb3ZlLnBhZ2VYIC0gbW91c2VEb3duRGF0YS5zdGFydFBhZ2VYICk7XG4gICAgbGV0IG5ld0NvbHVtbldpZHRoID0gbW91c2VEb3duRGF0YS5zdGFydENvbHVtbldpZHRoICsgY2hhbmdlO1xuICAgIGlmKG5ld0NvbHVtbldpZHRoIDwgMSl7XG4gICAgICBuZXdDb2x1bW5XaWR0aCA9IDE7XG4gICAgfVxuICAgIGNvbnN0IGNvbHVtbkNoYW5nZSA9IG5ld0NvbHVtbldpZHRoIC0gbW91c2VEb3duRGF0YS5zdGFydENvbHVtbldpZHRoO1xuICAgIGNvbnN0IG5ld1RhYmxlV2lkdGggPSAobW91c2VEb3duRGF0YS5zdGFydFRhYmxlV2lkdGggKyBjb2x1bW5DaGFuZ2UpO1xuICAgIHJldHVybiAoe25ld1RhYmxlV2lkdGgsbmV3Q29sdW1uV2lkdGh9KVxuICB9XG4gIGdldEVsZW1lbnRXaWR0aCA9IChlbGVtOkhUTUxFbGVtZW50KSA9PiAoKyhnbG9iYWxUaGlzLmdldENvbXB1dGVkU3R5bGUoZWxlbSkuZ2V0UHJvcGVydHlWYWx1ZSgnd2lkdGgnKS5yZXBsYWNlKCdweCcsJycpKSlcblxufVxuaW50ZXJmYWNlIE1vdXNlRG93bURhdGF7XG4gIHN0YXJ0UGFnZVg6bnVtYmVyLFxuICBzdGFydENvbHVtbldpZHRoOm51bWJlcixcbiAgc3RhcnRUYWJsZVdpZHRoOm51bWJlcixcbn1cbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { ContentChildren, Directive } from "@angular/core";
2
+ import { TableCustomFilterDirective, TableFilterDirective } from "./tb-filter.directive";
3
+ import * as i0 from "@angular/core";
4
+ export class TableWrapperDirective {
5
+ constructor() {
6
+ this.registerations = [];
7
+ }
8
+ register(filter) {
9
+ this.registerations.push(filter);
10
+ }
11
+ }
12
+ TableWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: TableWrapperDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
13
+ TableWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.2", type: TableWrapperDirective, selector: "[tbWrapper]", queries: [{ propertyName: "customFilters", predicate: TableCustomFilterDirective, descendants: true }, { propertyName: "filters", predicate: TableFilterDirective, descendants: true }], ngImport: i0 });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: TableWrapperDirective, decorators: [{
15
+ type: Directive,
16
+ args: [{
17
+ selector: '[tbWrapper]'
18
+ }]
19
+ }], propDecorators: { customFilters: [{
20
+ type: ContentChildren,
21
+ args: [TableCustomFilterDirective, { descendants: true }]
22
+ }], filters: [{
23
+ type: ContentChildren,
24
+ args: [TableFilterDirective, { descendants: true }]
25
+ }] } });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtd3JhcHBlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9kaXJlY3RpdmVzL3RhYmxlLXdyYXBwZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUt6RixNQUFNLE9BQU8scUJBQXFCO0lBSGxDO1FBT0UsbUJBQWMsR0FBNEQsRUFBRSxDQUFDO0tBSzlFO0lBSEMsUUFBUSxDQUFDLE1BQXlEO1FBQ2hFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25DLENBQUM7O2tIQVJVLHFCQUFxQjtzR0FBckIscUJBQXFCLGlGQUNmLDBCQUEwQiw2REFDMUIsb0JBQW9COzJGQUYxQixxQkFBcUI7a0JBSGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7aUJBQ3hCOzhCQUVtRSxhQUFhO3NCQUE5RSxlQUFlO3VCQUFDLDBCQUEwQixFQUFFLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQztnQkFDSixPQUFPO3NCQUFsRSxlQUFlO3VCQUFDLG9CQUFvQixFQUFFLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRDaGlsZHJlbiwgRGlyZWN0aXZlLCBRdWVyeUxpc3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZSwgVGFibGVGaWx0ZXJEaXJlY3RpdmUgfSBmcm9tIFwiLi90Yi1maWx0ZXIuZGlyZWN0aXZlXCI7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1t0YldyYXBwZXJdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVXcmFwcGVyRGlyZWN0aXZlIHtcclxuICBAQ29udGVudENoaWxkcmVuKFRhYmxlQ3VzdG9tRmlsdGVyRGlyZWN0aXZlLCB7ZGVzY2VuZGFudHM6IHRydWV9KSBjdXN0b21GaWx0ZXJzITogUXVlcnlMaXN0PFRhYmxlQ3VzdG9tRmlsdGVyRGlyZWN0aXZlPjtcclxuICBAQ29udGVudENoaWxkcmVuKFRhYmxlRmlsdGVyRGlyZWN0aXZlLCB7ZGVzY2VuZGFudHM6IHRydWV9KSBmaWx0ZXJzITogUXVlcnlMaXN0PFRhYmxlRmlsdGVyRGlyZWN0aXZlPjtcclxuXHJcbiAgcmVnaXN0ZXJhdGlvbnMgOiAoVGFibGVDdXN0b21GaWx0ZXJEaXJlY3RpdmUgfCBUYWJsZUZpbHRlckRpcmVjdGl2ZSkgW10gPSBbXTtcclxuXHJcbiAgcmVnaXN0ZXIoZmlsdGVyOiBUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZSB8IFRhYmxlRmlsdGVyRGlyZWN0aXZlKSB7XHJcbiAgICB0aGlzLnJlZ2lzdGVyYXRpb25zLnB1c2goZmlsdGVyKTtcclxuICB9XHJcbn1cclxuIl19