@one-paragon/angular-utilities 1.1.8 → 1.2.0

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 (404) 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 +7 -0
  3. package/{src/action-state/index.ts → action-state/index.d.ts} +4 -8
  4. package/action-state/ngrx-ext/ngrx-ext.module.d.ts +8 -0
  5. package/action-state/ngrx.d.ts +31 -0
  6. package/esm2022/action-state/action-state-spinner/action-state-spinner.component.mjs +24 -0
  7. package/esm2022/action-state/action-state-ui/action-state-ui.module.mjs +20 -0
  8. package/esm2022/action-state/index.mjs +8 -0
  9. package/esm2022/action-state/ngrx-ext/ngrx-ext.module.mjs +23 -0
  10. package/esm2022/action-state/ngrx.mjs +42 -0
  11. package/esm2022/http-request-state/HttpRequestStateFactory.mjs +52 -0
  12. package/esm2022/http-request-state/HttpRequestStateStore.mjs +101 -0
  13. package/esm2022/http-request-state/directives/HttpStateDirectiveBase.mjs +34 -0
  14. package/esm2022/http-request-state/directives/http-error-state-directive.mjs +29 -0
  15. package/esm2022/http-request-state/directives/http-inProgress-state-directive.mjs +29 -0
  16. package/esm2022/http-request-state/directives/http-notStarted-state-directive.mjs +29 -0
  17. package/esm2022/http-request-state/directives/http-success-state-directive.mjs +34 -0
  18. package/esm2022/http-request-state/directives/index.mjs +6 -0
  19. package/esm2022/http-request-state/directives/request-state-directive.mjs +60 -0
  20. package/esm2022/http-request-state/helpers.mjs +22 -0
  21. package/esm2022/http-request-state/http-request-state.mjs +39 -0
  22. package/esm2022/http-request-state/http-state-module.mjs +40 -0
  23. package/esm2022/http-request-state/index.mjs +7 -0
  24. package/esm2022/http-request-state/rxjs/getRequestorBody.mjs +4 -0
  25. package/esm2022/http-request-state/rxjs/getRequestorState.mjs +3 -0
  26. package/esm2022/http-request-state/rxjs/index.mjs +5 -0
  27. package/esm2022/http-request-state/rxjs/tapError.mjs +12 -0
  28. package/esm2022/http-request-state/rxjs/tapSuccess.mjs +12 -0
  29. package/esm2022/http-request-state/types.mjs +16 -0
  30. package/esm2022/ngrx/actionable-selector.mjs +73 -0
  31. package/esm2022/ngrx/index.mjs +2 -0
  32. package/esm2022/one-paragon-angular-utilities.mjs +5 -0
  33. package/esm2022/public-api.mjs +20 -0
  34. package/esm2022/rxjs/defaultShareReplay.mjs +7 -0
  35. package/esm2022/rxjs/index.mjs +6 -0
  36. package/esm2022/rxjs/mapError.mjs +8 -0
  37. package/esm2022/rxjs/rxjs-operators.mjs +92 -0
  38. package/esm2022/rxjs/subjectifier.mjs +15 -0
  39. package/esm2022/rxjs/subscriber.directive.mjs +52 -0
  40. package/esm2022/table-builder/classes/DefaultSettings.mjs +6 -0
  41. package/esm2022/table-builder/classes/MatTableObservableDataSource.mjs +21 -0
  42. package/esm2022/table-builder/classes/TableBuilderConfig.mjs +18 -0
  43. package/esm2022/table-builder/classes/TableBuilderDataSource.mjs +50 -0
  44. package/esm2022/table-builder/classes/TableState.mjs +47 -0
  45. package/esm2022/table-builder/classes/display-col.mjs +2 -0
  46. package/esm2022/table-builder/classes/filter-info.mjs +73 -0
  47. package/esm2022/table-builder/classes/table-builder-general-settings.mjs +107 -0
  48. package/esm2022/table-builder/classes/table-builder.mjs +74 -0
  49. package/esm2022/table-builder/classes/table-store.mjs +357 -0
  50. package/esm2022/table-builder/components/array-column.component.mjs +57 -0
  51. package/esm2022/table-builder/components/column-builder/column-builder.component.mjs +125 -0
  52. package/esm2022/table-builder/components/column-builder/column-helpers.mjs +26 -0
  53. package/esm2022/table-builder/components/date-filter/date-filter.component.mjs +29 -0
  54. package/esm2022/table-builder/components/date-time-filter/date-time-filter.component.mjs +24 -0
  55. package/esm2022/table-builder/components/filter/filter.component.mjs +67 -0
  56. package/esm2022/table-builder/components/filter/in-list/in-list-filter.component.mjs +101 -0
  57. package/esm2022/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +53 -0
  58. package/esm2022/table-builder/components/generic-table/generic-table.component.mjs +225 -0
  59. package/esm2022/table-builder/components/generic-table/paginator.component.mjs +94 -0
  60. package/esm2022/table-builder/components/group-by-list/group-by-list.component.mjs +23 -0
  61. package/esm2022/table-builder/components/header-menu/header-menu.component.mjs +100 -0
  62. package/esm2022/table-builder/components/in-filter/in-filter.component.mjs +64 -0
  63. package/esm2022/table-builder/components/index.mjs +10 -0
  64. package/esm2022/table-builder/components/initialization-component/initialization-component.mjs +40 -0
  65. package/esm2022/table-builder/components/link-column.component.mjs +78 -0
  66. package/esm2022/table-builder/components/number-filter/number-filter.component.mjs +29 -0
  67. package/esm2022/table-builder/components/profiles-menu/profiles-menu.component.mjs +66 -0
  68. package/esm2022/table-builder/components/scroll-strategy.mjs +68 -0
  69. package/esm2022/table-builder/components/sort-menu/sort-menu.component-store.mjs +44 -0
  70. package/esm2022/table-builder/components/sort-menu/sort-menu.component.mjs +81 -0
  71. package/esm2022/table-builder/components/table-container/table-container-imports.mjs +26 -0
  72. package/esm2022/table-builder/components/table-container/table-container.helpers/data-state.helpers.mjs +135 -0
  73. package/esm2022/table-builder/components/table-container/table-container.helpers/filter-state.helpers.mjs +83 -0
  74. package/esm2022/table-builder/components/table-container/table-container.helpers/groupBy.helpers.mjs +71 -0
  75. package/esm2022/table-builder/components/table-container/table-container.helpers/sort-state.helpers.mjs +36 -0
  76. package/esm2022/table-builder/components/table-container/table-container.mjs +287 -0
  77. package/esm2022/table-builder/components/table-container/tableProps.mjs +7 -0
  78. package/esm2022/table-builder/components/table-container/virtual-scroll-container.mjs +119 -0
  79. package/esm2022/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +47 -0
  80. package/esm2022/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +36 -0
  81. package/esm2022/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +25 -0
  82. package/esm2022/table-builder/directives/custom-cell-directive.mjs +70 -0
  83. package/esm2022/table-builder/directives/index.mjs +6 -0
  84. package/esm2022/table-builder/directives/multi-sort.directive.mjs +50 -0
  85. package/esm2022/table-builder/directives/resize-column.directive.mjs +88 -0
  86. package/esm2022/table-builder/directives/table-wrapper.directive.mjs +20 -0
  87. package/esm2022/table-builder/directives/tb-filter.directive.mjs +410 -0
  88. package/esm2022/table-builder/enums/filterTypes.mjs +72 -0
  89. package/esm2022/table-builder/functions/boolean-filter-function.mjs +10 -0
  90. package/esm2022/table-builder/functions/date-filter-function.mjs +58 -0
  91. package/esm2022/table-builder/functions/download-data.mjs +12 -0
  92. package/esm2022/table-builder/functions/null-filter-function.mjs +8 -0
  93. package/esm2022/table-builder/functions/number-filter-function.mjs +32 -0
  94. package/esm2022/table-builder/functions/sort-data-function.mjs +17 -0
  95. package/esm2022/table-builder/functions/string-filter-function.mjs +41 -0
  96. package/esm2022/table-builder/interfaces/ColumnInfo.mjs +2 -0
  97. package/esm2022/table-builder/interfaces/dictionary.mjs +2 -0
  98. package/esm2022/table-builder/interfaces/report-def.mjs +50 -0
  99. package/esm2022/table-builder/ngrx/tableBuilderStateStore.mjs +154 -0
  100. package/esm2022/table-builder/pipes/column-total.pipe.mjs +22 -0
  101. package/esm2022/table-builder/pipes/format-filter-type.pipe.mjs +18 -0
  102. package/esm2022/table-builder/pipes/format-filter-value.pipe.mjs +45 -0
  103. package/esm2022/table-builder/pipes/key-display.mjs +20 -0
  104. package/esm2022/table-builder/services/export-to-csv.service.mjs +91 -0
  105. package/esm2022/table-builder/services/link-creator.service.mjs +50 -0
  106. package/esm2022/table-builder/services/table-template-service.mjs +57 -0
  107. package/esm2022/table-builder/services/transform-creator.mjs +105 -0
  108. package/esm2022/table-builder/table-builder.module.mjs +124 -0
  109. package/esm2022/utilities/array-helpers.mjs +14 -0
  110. package/esm2022/utilities/directives/auto-focus.directive.mjs +27 -0
  111. package/esm2022/utilities/directives/clickEmitterDirective.mjs +22 -0
  112. package/esm2022/utilities/directives/clickSubject.mjs +28 -0
  113. package/esm2022/utilities/directives/conditional-classes.directive.mjs +36 -0
  114. package/esm2022/utilities/directives/dialog-service.mjs +23 -0
  115. package/esm2022/utilities/directives/dialog.mjs +146 -0
  116. package/esm2022/utilities/directives/mat-toggle-group-directive.mjs +60 -0
  117. package/esm2022/utilities/directives/prevent-enter.directive.mjs +20 -0
  118. package/esm2022/utilities/directives/stop-propagation.directive.mjs +26 -0
  119. package/esm2022/utilities/directives/styler.mjs +42 -0
  120. package/esm2022/utilities/directives/trim-whitespace.directive.mjs +30 -0
  121. package/esm2022/utilities/index.mjs +16 -0
  122. package/esm2022/utilities/module.mjs +90 -0
  123. package/esm2022/utilities/pipes/function.pipe.mjs +22 -0
  124. package/esm2022/utilities/pipes/phone.pipe.mjs +20 -0
  125. package/esm2022/utilities/pipes/space-case.pipes.mjs +28 -0
  126. package/fesm2022/one-paragon-angular-utilities.mjs +5564 -0
  127. package/fesm2022/one-paragon-angular-utilities.mjs.map +1 -0
  128. package/http-request-state/HttpRequestStateFactory.d.ts +17 -0
  129. package/http-request-state/HttpRequestStateStore.d.ts +49 -0
  130. package/http-request-state/directives/HttpStateDirectiveBase.d.ts +16 -0
  131. package/http-request-state/directives/http-error-state-directive.d.ts +12 -0
  132. package/http-request-state/directives/http-inProgress-state-directive.d.ts +12 -0
  133. package/http-request-state/directives/http-notStarted-state-directive.d.ts +12 -0
  134. package/http-request-state/directives/http-success-state-directive.d.ts +21 -0
  135. package/{src/http-request-state/directives/index.ts → http-request-state/directives/index.d.ts} +5 -5
  136. package/http-request-state/directives/request-state-directive.d.ts +35 -0
  137. package/http-request-state/helpers.d.ts +9 -0
  138. package/http-request-state/http-request-state.d.ts +12 -0
  139. package/http-request-state/http-state-module.d.ts +11 -0
  140. package/{src/http-request-state/index.ts → http-request-state/index.d.ts} +6 -6
  141. package/http-request-state/rxjs/getRequestorBody.d.ts +3 -0
  142. package/http-request-state/rxjs/getRequestorState.d.ts +3 -0
  143. package/{src/http-request-state/rxjs/index.ts → http-request-state/rxjs/index.d.ts} +4 -4
  144. package/http-request-state/rxjs/tapError.d.ts +3 -0
  145. package/http-request-state/rxjs/tapSuccess.d.ts +3 -0
  146. package/http-request-state/types.d.ts +41 -0
  147. package/index.d.ts +5 -0
  148. package/ngrx/actionable-selector.d.ts +17 -0
  149. package/ngrx/index.d.ts +1 -0
  150. package/package.json +30 -16
  151. package/{src/public-api.ts → public-api.d.ts} +16 -35
  152. package/rxjs/defaultShareReplay.d.ts +2 -0
  153. package/{src/rxjs/index.ts → rxjs/index.d.ts} +5 -5
  154. package/rxjs/mapError.d.ts +2 -0
  155. package/rxjs/rxjs-operators.d.ts +13 -0
  156. package/rxjs/subjectifier.d.ts +9 -0
  157. package/rxjs/subscriber.directive.d.ts +14 -0
  158. package/table-builder/classes/DefaultSettings.d.ts +9 -0
  159. package/table-builder/classes/MatTableObservableDataSource.d.ts +9 -0
  160. package/table-builder/classes/TableBuilderConfig.d.ts +21 -0
  161. package/table-builder/classes/TableBuilderDataSource.d.ts +14 -0
  162. package/table-builder/classes/TableState.d.ts +56 -0
  163. package/{src/table-builder/classes/display-col.ts → table-builder/classes/display-col.d.ts} +5 -5
  164. package/table-builder/classes/filter-info.d.ts +127 -0
  165. package/table-builder/classes/table-builder-general-settings.d.ts +72 -0
  166. package/table-builder/classes/table-builder.d.ts +18 -0
  167. package/table-builder/classes/table-store.d.ts +146 -0
  168. package/table-builder/components/array-column.component.d.ts +15 -0
  169. package/table-builder/components/column-builder/column-builder.component.d.ts +51 -0
  170. package/table-builder/components/column-builder/column-helpers.d.ts +28 -0
  171. package/table-builder/components/date-filter/date-filter.component.d.ts +10 -0
  172. package/table-builder/components/date-time-filter/date-time-filter.component.d.ts +10 -0
  173. package/table-builder/components/filter/filter.component.d.ts +112 -0
  174. package/table-builder/components/filter/in-list/in-list-filter.component.d.ts +27 -0
  175. package/table-builder/components/gen-col-displayer/gen-col-displayer.component.d.ts +16 -0
  176. package/table-builder/components/generic-table/generic-table.component.d.ts +68 -0
  177. package/table-builder/components/generic-table/paginator.component.d.ts +30 -0
  178. package/table-builder/components/group-by-list/group-by-list.component.d.ts +7 -0
  179. package/table-builder/components/header-menu/header-menu.component.d.ts +25 -0
  180. package/table-builder/components/in-filter/in-filter.component.d.ts +21 -0
  181. package/{src/table-builder/components/index.ts → table-builder/components/index.d.ts} +9 -9
  182. package/table-builder/components/initialization-component/initialization-component.d.ts +13 -0
  183. package/table-builder/components/link-column.component.d.ts +25 -0
  184. package/table-builder/components/number-filter/number-filter.component.d.ts +12 -0
  185. package/table-builder/components/profiles-menu/profiles-menu.component.d.ts +32 -0
  186. package/table-builder/components/scroll-strategy.d.ts +25 -0
  187. package/table-builder/components/sort-menu/sort-menu.component-store.d.ts +24 -0
  188. package/table-builder/components/sort-menu/sort-menu.component.d.ts +25 -0
  189. package/{src/table-builder/components/table-container/table-container-imports.ts → table-builder/components/table-container/table-container-imports.d.ts} +14 -32
  190. package/table-builder/components/table-container/table-container.d.ts +73 -0
  191. package/table-builder/components/table-container/table-container.helpers/data-state.helpers.d.ts +6 -0
  192. package/table-builder/components/table-container/table-container.helpers/filter-state.helpers.d.ts +17 -0
  193. package/table-builder/components/table-container/table-container.helpers/groupBy.helpers.d.ts +17 -0
  194. package/table-builder/components/table-container/table-container.helpers/sort-state.helpers.d.ts +8 -0
  195. package/table-builder/components/table-container/tableProps.d.ts +11 -0
  196. package/table-builder/components/table-container/virtual-scroll-container.d.ts +23 -0
  197. package/table-builder/components/table-container-filter/filter-list/filter-list.component.d.ts +16 -0
  198. package/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.d.ts +14 -0
  199. package/table-builder/components/table-container-filter/table-wrapper-filter-store.d.ts +14 -0
  200. package/table-builder/directives/custom-cell-directive.d.ts +31 -0
  201. package/{src/table-builder/directives/index.ts → table-builder/directives/index.d.ts} +5 -6
  202. package/table-builder/directives/multi-sort.directive.d.ts +11 -0
  203. package/table-builder/directives/resize-column.directive.d.ts +44 -0
  204. package/table-builder/directives/table-wrapper.directive.d.ts +8 -0
  205. package/table-builder/directives/tb-filter.directive.d.ts +120 -0
  206. package/table-builder/enums/filterTypes.d.ts +77 -0
  207. package/table-builder/functions/boolean-filter-function.d.ts +3 -0
  208. package/table-builder/functions/date-filter-function.d.ts +4 -0
  209. package/table-builder/functions/download-data.d.ts +1 -0
  210. package/table-builder/functions/null-filter-function.d.ts +2 -0
  211. package/table-builder/functions/number-filter-function.d.ts +4 -0
  212. package/table-builder/functions/sort-data-function.d.ts +6 -0
  213. package/table-builder/functions/string-filter-function.d.ts +7 -0
  214. package/{src/table-builder/interfaces/ColumnInfo.ts → table-builder/interfaces/ColumnInfo.d.ts} +6 -7
  215. package/{src/table-builder/interfaces/dictionary.ts → table-builder/interfaces/dictionary.d.ts} +3 -3
  216. package/table-builder/interfaces/report-def.d.ts +147 -0
  217. package/table-builder/ngrx/tableBuilderStateStore.d.ts +70 -0
  218. package/table-builder/pipes/column-total.pipe.d.ts +8 -0
  219. package/table-builder/pipes/format-filter-type.pipe.d.ts +8 -0
  220. package/table-builder/pipes/format-filter-value.pipe.d.ts +14 -0
  221. package/table-builder/pipes/key-display.d.ts +11 -0
  222. package/table-builder/services/export-to-csv.service.d.ts +22 -0
  223. package/table-builder/services/link-creator.service.d.ts +16 -0
  224. package/table-builder/services/table-template-service.d.ts +15 -0
  225. package/table-builder/services/transform-creator.d.ts +21 -0
  226. package/table-builder/table-builder.module.d.ts +21 -0
  227. package/utilities/array-helpers.d.ts +1 -0
  228. package/utilities/directives/auto-focus.directive.d.ts +10 -0
  229. package/utilities/directives/clickEmitterDirective.d.ts +7 -0
  230. package/utilities/directives/clickSubject.d.ts +9 -0
  231. package/utilities/directives/conditional-classes.directive.d.ts +14 -0
  232. package/utilities/directives/dialog-service.d.ts +10 -0
  233. package/utilities/directives/dialog.d.ts +47 -0
  234. package/utilities/directives/mat-toggle-group-directive.d.ts +21 -0
  235. package/utilities/directives/prevent-enter.directive.d.ts +6 -0
  236. package/utilities/directives/stop-propagation.directive.d.ts +7 -0
  237. package/utilities/directives/styler.d.ts +17 -0
  238. package/utilities/directives/trim-whitespace.directive.d.ts +9 -0
  239. package/{src/utilities/index.ts → utilities/index.d.ts} +15 -22
  240. package/utilities/module.d.ts +19 -0
  241. package/utilities/pipes/function.pipe.d.ts +7 -0
  242. package/utilities/pipes/phone.pipe.d.ts +7 -0
  243. package/utilities/pipes/space-case.pipes.d.ts +17 -0
  244. package/karma.conf.js +0 -44
  245. package/ng-package.json +0 -7
  246. package/src/action-state/action-state-spinner/action-state-spinner.component.css +0 -16
  247. package/src/action-state/action-state-spinner/action-state-spinner.component.html +0 -6
  248. package/src/action-state/action-state-spinner/action-state-spinner.component.spec.ts +0 -25
  249. package/src/action-state/action-state-spinner/action-state-spinner.component.ts +0 -26
  250. package/src/action-state/action-state-ui/action-state-ui.module.ts +0 -13
  251. package/src/action-state/ngrx-ext/ngrx-ext.module.ts +0 -15
  252. package/src/action-state/ngrx.ts +0 -69
  253. package/src/http-request-state/HttpRequestStateFactory.ts +0 -66
  254. package/src/http-request-state/HttpRequestStateStore.ts +0 -151
  255. package/src/http-request-state/directives/HttpStateDirectiveBase.ts +0 -38
  256. package/src/http-request-state/directives/http-error-state-directive.ts +0 -32
  257. package/src/http-request-state/directives/http-inProgress-state-directive.ts +0 -32
  258. package/src/http-request-state/directives/http-notStarted-state-directive.ts +0 -31
  259. package/src/http-request-state/directives/http-success-state-directive.ts +0 -40
  260. package/src/http-request-state/directives/request-state-directive.spec.ts +0 -72
  261. package/src/http-request-state/directives/request-state-directive.ts +0 -79
  262. package/src/http-request-state/helpers.ts +0 -30
  263. package/src/http-request-state/http-request-state.ts +0 -69
  264. package/src/http-request-state/http-state-module.ts +0 -23
  265. package/src/http-request-state/observable.spec.ts +0 -43
  266. package/src/http-request-state/rxjs/getRequestorBody.ts +0 -10
  267. package/src/http-request-state/rxjs/getRequestorState.ts +0 -8
  268. package/src/http-request-state/rxjs/tapError.ts +0 -16
  269. package/src/http-request-state/rxjs/tapSuccess.ts +0 -16
  270. package/src/http-request-state/strategies.spec.ts +0 -42
  271. package/src/http-request-state/types.ts +0 -56
  272. package/src/ngrx/actionable-selector.ts +0 -95
  273. package/src/ngrx/index.ts +0 -1
  274. package/src/rxjs/defaultShareReplay.ts +0 -8
  275. package/src/rxjs/mapError.ts +0 -8
  276. package/src/rxjs/rxjs-operators.ts +0 -132
  277. package/src/rxjs/subjectifier.ts +0 -15
  278. package/src/rxjs/subscriber.directive.ts +0 -57
  279. package/src/specs/clickSubject.spec.ts +0 -95
  280. package/src/specs/dialog.spec.ts +0 -101
  281. package/src/specs/toggleGroupDirective.spec.ts +0 -229
  282. package/src/table-builder/classes/DefaultSettings.ts +0 -11
  283. package/src/table-builder/classes/MatTableObservableDataSource.ts +0 -23
  284. package/src/table-builder/classes/TableBuilderConfig.ts +0 -35
  285. package/src/table-builder/classes/TableBuilderDataSource.ts +0 -57
  286. package/src/table-builder/classes/TableState.ts +0 -87
  287. package/src/table-builder/classes/filter-info.ts +0 -131
  288. package/src/table-builder/classes/table-builder-general-settings.ts +0 -115
  289. package/src/table-builder/classes/table-builder.ts +0 -94
  290. package/src/table-builder/classes/table-store.ts +0 -435
  291. package/src/table-builder/components/array-column.component.ts +0 -36
  292. package/src/table-builder/components/column-builder/column-builder.component.html +0 -61
  293. package/src/table-builder/components/column-builder/column-builder.component.scss +0 -43
  294. package/src/table-builder/components/column-builder/column-builder.component.spec.ts +0 -49
  295. package/src/table-builder/components/column-builder/column-builder.component.ts +0 -137
  296. package/src/table-builder/components/column-builder/column-helpers.ts +0 -36
  297. package/src/table-builder/components/date-filter/date-filter.component.html +0 -23
  298. package/src/table-builder/components/date-filter/date-filter.component.ts +0 -24
  299. package/src/table-builder/components/date-time-filter/date-time-filter.component.html +0 -9
  300. package/src/table-builder/components/date-time-filter/date-time-filter.component.ts +0 -22
  301. package/src/table-builder/components/filter/filter.component.html +0 -88
  302. package/src/table-builder/components/filter/filter.component.scss +0 -64
  303. package/src/table-builder/components/filter/filter.component.spec.ts +0 -87
  304. package/src/table-builder/components/filter/filter.component.ts +0 -55
  305. package/src/table-builder/components/filter/in-list/in-list-filter.component.ts +0 -92
  306. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.html +0 -55
  307. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.scss +0 -57
  308. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.ts +0 -57
  309. package/src/table-builder/components/generic-table/generic-table.component.html +0 -71
  310. package/src/table-builder/components/generic-table/generic-table.component.scss +0 -51
  311. package/src/table-builder/components/generic-table/generic-table.component.ts +0 -264
  312. package/src/table-builder/components/generic-table/paginator.component.ts +0 -106
  313. package/src/table-builder/components/group-by-list/group-by-list.component.css +0 -8
  314. package/src/table-builder/components/group-by-list/group-by-list.component.html +0 -12
  315. package/src/table-builder/components/group-by-list/group-by-list.component.spec.ts +0 -23
  316. package/src/table-builder/components/group-by-list/group-by-list.component.ts +0 -21
  317. package/src/table-builder/components/header-menu/header-menu.component.html +0 -104
  318. package/src/table-builder/components/header-menu/header-menu.component.scss +0 -96
  319. package/src/table-builder/components/header-menu/header-menu.component.ts +0 -98
  320. package/src/table-builder/components/in-filter/in-filter.component.css +0 -3
  321. package/src/table-builder/components/in-filter/in-filter.component.html +0 -20
  322. package/src/table-builder/components/in-filter/in-filter.component.ts +0 -64
  323. package/src/table-builder/components/initialization-component/initialization-component.html +0 -29
  324. package/src/table-builder/components/initialization-component/initialization-component.ts +0 -24
  325. package/src/table-builder/components/link-column.component.ts +0 -47
  326. package/src/table-builder/components/number-filter/number-filter.component.css +0 -10
  327. package/src/table-builder/components/number-filter/number-filter.component.html +0 -19
  328. package/src/table-builder/components/number-filter/number-filter.component.spec.ts +0 -30
  329. package/src/table-builder/components/number-filter/number-filter.component.ts +0 -25
  330. package/src/table-builder/components/profiles-menu/profiles-menu.component.html +0 -74
  331. package/src/table-builder/components/profiles-menu/profiles-menu.component.scss +0 -98
  332. package/src/table-builder/components/profiles-menu/profiles-menu.component.spec.ts +0 -23
  333. package/src/table-builder/components/profiles-menu/profiles-menu.component.ts +0 -65
  334. package/src/table-builder/components/scroll-strategy.ts +0 -89
  335. package/src/table-builder/components/sort-menu/sort-menu.component-store.ts +0 -63
  336. package/src/table-builder/components/sort-menu/sort-menu.component.html +0 -111
  337. package/src/table-builder/components/sort-menu/sort-menu.component.scss +0 -119
  338. package/src/table-builder/components/sort-menu/sort-menu.component.ts +0 -95
  339. package/src/table-builder/components/table-container/table-container.css +0 -54
  340. package/src/table-builder/components/table-container/table-container.helpers/data-state.helpers.ts +0 -141
  341. package/src/table-builder/components/table-container/table-container.helpers/filter-state.helpers.ts +0 -106
  342. package/src/table-builder/components/table-container/table-container.helpers/groupBy.helpers.ts +0 -86
  343. package/src/table-builder/components/table-container/table-container.helpers/sort-state.helpers.ts +0 -45
  344. package/src/table-builder/components/table-container/table-container.html +0 -96
  345. package/src/table-builder/components/table-container/table-container.spec.ts +0 -154
  346. package/src/table-builder/components/table-container/table-container.ts +0 -319
  347. package/src/table-builder/components/table-container/tableProps.ts +0 -18
  348. package/src/table-builder/components/table-container/virtual-scroll-container.ts +0 -141
  349. package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.html +0 -31
  350. package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.ts +0 -52
  351. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.css +0 -42
  352. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.html +0 -10
  353. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.spec.ts +0 -86
  354. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.ts +0 -38
  355. package/src/table-builder/components/table-container-filter/table-wrapper-filter-store.ts +0 -23
  356. package/src/table-builder/directives/custom-cell-directive.ts +0 -58
  357. package/src/table-builder/directives/multi-sort.directive.spec.ts +0 -124
  358. package/src/table-builder/directives/multi-sort.directive.ts +0 -49
  359. package/src/table-builder/directives/resize-column.directive.ts +0 -105
  360. package/src/table-builder/directives/table-wrapper.directive.ts +0 -14
  361. package/src/table-builder/directives/tb-filter.directive.ts +0 -370
  362. package/src/table-builder/enums/filterTypes.ts +0 -79
  363. package/src/table-builder/functions/boolean-filter-function.ts +0 -13
  364. package/src/table-builder/functions/date-filter-function.ts +0 -69
  365. package/src/table-builder/functions/download-data.ts +0 -11
  366. package/src/table-builder/functions/null-filter-function.ts +0 -9
  367. package/src/table-builder/functions/number-filter-function.ts +0 -42
  368. package/src/table-builder/functions/sort-data-function.ts +0 -23
  369. package/src/table-builder/functions/string-filter-function.ts +0 -52
  370. package/src/table-builder/interfaces/column-template.ts +0 -9
  371. package/src/table-builder/interfaces/report-def.ts +0 -155
  372. package/src/table-builder/ngrx/tableBuilderStateStore.ts +0 -199
  373. package/src/table-builder/pipes/column-total.pipe.ts +0 -17
  374. package/src/table-builder/pipes/format-filter-type.pipe.ts +0 -12
  375. package/src/table-builder/pipes/format-filter-value.pipe.ts +0 -41
  376. package/src/table-builder/pipes/key-display.ts +0 -16
  377. package/src/table-builder/services/export-to-csv.service.ts +0 -98
  378. package/src/table-builder/services/link-creator.service.ts +0 -67
  379. package/src/table-builder/services/table-template-service.ts +0 -57
  380. package/src/table-builder/services/transform-creator.ts +0 -96
  381. package/src/table-builder/specs/table-custom-filters.spec.ts +0 -262
  382. package/src/table-builder/styles/collapser.styles.scss +0 -19
  383. package/src/table-builder/table-builder.module.ts +0 -73
  384. package/src/test.ts +0 -17
  385. package/src/utilities/array-helpers.ts +0 -13
  386. package/src/utilities/directives/auto-focus.directive.ts +0 -20
  387. package/src/utilities/directives/clickEmitterDirective.ts +0 -16
  388. package/src/utilities/directives/clickSubject.ts +0 -20
  389. package/src/utilities/directives/conditional-classes.directive.ts +0 -36
  390. package/src/utilities/directives/dialog-service.ts +0 -19
  391. package/src/utilities/directives/dialog.ts +0 -147
  392. package/src/utilities/directives/mat-toggle-group-directive.ts +0 -61
  393. package/src/utilities/directives/prevent-enter.directive.ts +0 -13
  394. package/src/utilities/directives/stop-propagation.directive.ts +0 -20
  395. package/src/utilities/directives/styler.ts +0 -39
  396. package/src/utilities/directives/trim-whitespace.directive.ts +0 -21
  397. package/src/utilities/module.ts +0 -55
  398. package/src/utilities/pipes/function.pipe.ts +0 -16
  399. package/src/utilities/pipes/phone.pipe.ts +0 -15
  400. package/src/utilities/pipes/space-case.pipes.spec.ts +0 -47
  401. package/src/utilities/pipes/space-case.pipes.ts +0 -23
  402. package/tsconfig.lib.json +0 -19
  403. package/tsconfig.lib.prod.json +0 -10
  404. package/tsconfig.spec.json +0 -17
@@ -0,0 +1,91 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { first, map } from 'rxjs/operators';
3
+ import { combineLatest } from 'rxjs';
4
+ import { orderMetaData } from '../classes/table-store';
5
+ import { TableBuilderConfigToken } from '../classes/TableBuilderConfig';
6
+ import { downloadData } from '../functions/download-data';
7
+ import { ArrayStyle, FieldType } from '../interfaces/report-def';
8
+ import { isPipe } from './transform-creator';
9
+ import { get } from 'lodash';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "../classes/table-store";
12
+ import * as i2 from "@angular/common";
13
+ export class ExportToCsvService {
14
+ constructor(state, config, datePipe) {
15
+ this.state = state;
16
+ this.config = config;
17
+ this.datePipe = datePipe;
18
+ this.exportToCsv = (data) => {
19
+ const exportableFields$ = this.state.state$.pipe(map(mapExportableFields));
20
+ combineLatest([data, exportableFields$]).pipe(first(), map(([data, fields]) => this.csvData(data, fields))).subscribe(csv => downloadData(csv, 'export.csv', 'text/csv'));
21
+ };
22
+ this.csvData = (data, metaData) => {
23
+ const res = data.map(row => metaData.map(meta => this.metaToField(meta, row)).join(','));
24
+ res.unshift(metaData.map(meta => meta.displayName || meta.key).join(','));
25
+ return res.join('\n');
26
+ };
27
+ this.metaToField = (meta, row) => {
28
+ let val = get(row, meta.key);
29
+ if (val == null && !meta.transform)
30
+ return val;
31
+ if (meta.transform && meta.fieldType !== FieldType.Expression) {
32
+ const transform = meta.transform;
33
+ return isPipe(transform) ? transform.transform(val) : transform(val);
34
+ }
35
+ if (meta.map) {
36
+ return meta.map(row);
37
+ }
38
+ switch (meta.fieldType) {
39
+ case FieldType.Date:
40
+ const dateFormat = meta.additional?.export?.dateFormat || this.config?.export?.dateFormat || meta.additional?.dateFormat;
41
+ val = this.transform(val, dateFormat);
42
+ break;
43
+ case FieldType.DateTime:
44
+ const dateTimeFormat = meta.additional?.export?.dateTimeFormat || this.config?.export?.dateTimeFormat || meta.additional?.dateTimeOptions?.format;
45
+ val = this.transform(val, dateTimeFormat);
46
+ break;
47
+ case FieldType.String:
48
+ const prepend = meta.additional?.export?.prepend || this.config?.export?.prepend || '';
49
+ val = prepend + val;
50
+ break;
51
+ case FieldType.Array:
52
+ const additional = meta.additional;
53
+ val = val.slice(0, additional.limit).join(additional.arrayStyle === ArrayStyle.NewLine ? '\n' : ', ');
54
+ break;
55
+ case FieldType.Expression:
56
+ val = meta.transform(row);
57
+ break;
58
+ }
59
+ if (typeof val === 'string' && (val.includes(',') || val.includes('"') || val.includes('\n'))) {
60
+ val = val.replaceAll('"', '""');
61
+ val = '"' + val + '"';
62
+ }
63
+ return val;
64
+ };
65
+ }
66
+ transform(val, dateFormat) {
67
+ if (this.config.transformers && this.config.transformers[FieldType.Date]) {
68
+ return this.config.transformers[FieldType.Date](val);
69
+ }
70
+ return this.datePipe.transform(val, dateFormat);
71
+ }
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExportToCsvService, deps: [{ token: i1.TableStore }, { token: TableBuilderConfigToken }, { token: i2.DatePipe }], target: i0.ɵɵFactoryTarget.Injectable }); }
73
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExportToCsvService }); }
74
+ }
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ExportToCsvService, decorators: [{
76
+ type: Injectable
77
+ }], ctorParameters: () => [{ type: i1.TableStore }, { type: undefined, decorators: [{
78
+ type: Inject,
79
+ args: [TableBuilderConfigToken]
80
+ }] }, { type: i2.DatePipe }] });
81
+ export const removeFromMetaData = (state, keysToRemove) => orderMetaData(state)
82
+ .filter(meta => !keysToRemove.includes(meta.key));
83
+ export const nonExportableFields = (state) => Object.values(state.metaData)
84
+ .filter(md => md.noExport)
85
+ .map(md => md.key);
86
+ export const mapExportableFields = (state) => {
87
+ const fieldsToRemove = nonExportableFields(state)
88
+ .concat(state.hiddenKeys);
89
+ return removeFromMetaData(state, fieldsToRemove);
90
+ };
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LXRvLWNzdi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvc2VydmljZXMvZXhwb3J0LXRvLWNzdi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFHLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsYUFBYSxFQUFjLE1BQU0sd0JBQXdCLENBQUM7QUFDbkUsT0FBTyxFQUFzQix1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQW1CLFVBQVUsRUFBRSxTQUFTLEVBQVksTUFBTSwwQkFBMEIsQ0FBQztBQUU1RixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFFBQVEsQ0FBQzs7OztBQUc3QixNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQ1MsS0FBaUIsRUFDaUIsTUFBMEIsRUFDM0QsUUFBa0I7UUFGbkIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNpQixXQUFNLEdBQU4sTUFBTSxDQUFvQjtRQUMzRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRzVCLGdCQUFXLEdBQUcsQ0FBQyxJQUFxQixFQUFFLEVBQUU7WUFDdEMsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzlDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUN6QixDQUFDO1lBRUYsYUFBYSxDQUFDLENBQUMsSUFBSSxFQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzFDLEtBQUssRUFBRSxFQUNQLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBQyxNQUFNLENBQUMsQ0FBQyxDQUNsRCxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUMsWUFBWSxFQUFDLFVBQVUsQ0FBQyxDQUFFLENBQUM7UUFDakUsQ0FBQyxDQUFBO1FBRUQsWUFBTyxHQUFHLENBQUMsSUFBYSxFQUFFLFFBQXVCLEVBQUUsRUFBRTtZQUNuRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDekYsR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUUsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FBQTtRQUVELGdCQUFXLEdBQUcsQ0FBQyxJQUFpQixFQUFFLEdBQU0sRUFBRSxFQUFFO1lBQzFDLElBQUksR0FBRyxHQUFRLEdBQUcsQ0FBRSxHQUFHLEVBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xDLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTO2dCQUFFLE9BQU8sR0FBRyxDQUFBO1lBQzlDLElBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQyxVQUFVLEVBQUMsQ0FBQztnQkFDNUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQWdCLENBQUM7Z0JBQ3hDLE9BQVEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEUsQ0FBQztZQUNELElBQUcsSUFBSSxDQUFDLEdBQUcsRUFBQyxDQUFDO2dCQUNYLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QixDQUFDO1lBQ0QsUUFBUSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3ZCLEtBQUssU0FBUyxDQUFDLElBQUk7b0JBQ2pCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLFVBQVUsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUM7b0JBQ3pILEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQztvQkFDdEMsTUFBTTtnQkFDUixLQUFLLFNBQVMsQ0FBQyxRQUFRO29CQUNyQixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxjQUFjLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsY0FBYyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsZUFBZSxFQUFFLE1BQU0sQ0FBQztvQkFDbEosR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBQyxDQUFDO29CQUMxQyxNQUFNO2dCQUNSLEtBQUssU0FBUyxDQUFDLE1BQU07b0JBQ25CLE1BQU0sT0FBTyxHQUFXLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLElBQUksRUFBRSxDQUFDO29CQUMvRixHQUFHLEdBQUcsT0FBTyxHQUFHLEdBQUcsQ0FBQztvQkFDcEIsTUFBTTtnQkFDUixLQUFLLFNBQVMsQ0FBQyxLQUFLO29CQUNsQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBNkIsQ0FBQztvQkFDdEQsR0FBRyxHQUFJLEdBQXFCLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDeEgsTUFBTTtnQkFDUixLQUFLLFNBQVMsQ0FBQyxVQUFVO29CQUN2QixHQUFHLEdBQUksSUFBSSxDQUFDLFNBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ25DLE1BQU07WUFDVixDQUFDO1lBQ0QsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQzlGLEdBQUcsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDaEMsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO1lBQ3hCLENBQUM7WUFDRCxPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBQTtJQXZEQyxDQUFDO0lBeURLLFNBQVMsQ0FBQyxHQUFRLEVBQUUsVUFBZTtRQUN6QyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3pFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3hELENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNsRCxDQUFDOzhHQW5FVSxrQkFBa0IsNENBR25CLHVCQUF1QjtrSEFIdEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVOzswQkFJTixNQUFNOzJCQUFDLHVCQUF1Qjs7QUFtRW5DLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsS0FBaUIsRUFBRSxZQUFzQixFQUFFLEVBQUUsQ0FDNUUsYUFBYSxDQUFDLEtBQUssQ0FBQztLQUNyQixNQUFNLENBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFHckQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxLQUFpQixFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFFLEtBQUssQ0FBQyxRQUFRLENBQUM7S0FDckYsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBRTtLQUMxQixHQUFHLENBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFFLENBQUM7QUFFdkIsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxLQUFpQixFQUFFLEVBQUU7SUFDdkQsTUFBTSxjQUFjLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDO1NBQzlDLE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0IsT0FBTyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsY0FBYyxDQUFDLENBQUM7QUFDcEQsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaXJzdCwgbWFwICB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgY29tYmluZUxhdGVzdH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG9yZGVyTWV0YURhdGEsIFRhYmxlU3RvcmUgfSBmcm9tICcuLi9jbGFzc2VzL3RhYmxlLXN0b3JlJztcclxuaW1wb3J0IHsgVGFibGVCdWlsZGVyQ29uZmlnLCBUYWJsZUJ1aWxkZXJDb25maWdUb2tlbiB9IGZyb20gJy4uL2NsYXNzZXMvVGFibGVCdWlsZGVyQ29uZmlnJztcclxuaW1wb3J0IHsgZG93bmxvYWREYXRhIH0gZnJvbSAnLi4vZnVuY3Rpb25zL2Rvd25sb2FkLWRhdGEnO1xyXG5pbXBvcnQgeyBBcnJheUFkZGl0aW9uYWwsIEFycmF5U3R5bGUsIEZpZWxkVHlwZSwgTWV0YURhdGEgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3JlcG9ydC1kZWYnO1xyXG5pbXBvcnQgeyBUYWJsZVN0YXRlIH0gZnJvbSAnLi4vY2xhc3Nlcy9UYWJsZVN0YXRlJztcclxuaW1wb3J0IHsgaXNQaXBlIH0gZnJvbSAnLi90cmFuc2Zvcm0tY3JlYXRvcic7XHJcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaCc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBFeHBvcnRUb0NzdlNlcnZpY2U8VD4ge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHN0YXRlOiBUYWJsZVN0b3JlLFxyXG4gICAgQEluamVjdChUYWJsZUJ1aWxkZXJDb25maWdUb2tlbikgcHJpdmF0ZSBjb25maWc6IFRhYmxlQnVpbGRlckNvbmZpZyxcclxuICAgIHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlLFxyXG4gICl7fVxyXG5cclxuICBleHBvcnRUb0NzdiA9IChkYXRhOiBPYnNlcnZhYmxlPFRbXT4pID0+IHtcclxuICAgIGNvbnN0IGV4cG9ydGFibGVGaWVsZHMkID0gdGhpcy5zdGF0ZS5zdGF0ZSQucGlwZShcclxuICAgICAgbWFwKG1hcEV4cG9ydGFibGVGaWVsZHMpXHJcbiAgICApO1xyXG5cclxuICAgIGNvbWJpbmVMYXRlc3QoW2RhdGEsZXhwb3J0YWJsZUZpZWxkcyRdKS5waXBlKFxyXG4gICAgICBmaXJzdCgpLFxyXG4gICAgICBtYXAoKFtkYXRhLGZpZWxkc10pID0+IHRoaXMuY3N2RGF0YShkYXRhLGZpZWxkcykpLFxyXG4gICAgKS5zdWJzY3JpYmUoY3N2ID0+IGRvd25sb2FkRGF0YShjc3YsJ2V4cG9ydC5jc3YnLCd0ZXh0L2NzdicpICk7XHJcbiAgfVxyXG5cclxuICBjc3ZEYXRhID0gKGRhdGE6QXJyYXk8VD4sIG1ldGFEYXRhOiBNZXRhRGF0YTxUPltdKSA9PiB7XHJcbiAgICBjb25zdCByZXMgPSBkYXRhLm1hcChyb3cgPT4gbWV0YURhdGEubWFwKG1ldGEgPT4gdGhpcy5tZXRhVG9GaWVsZChtZXRhLCByb3cpKS5qb2luKCcsJykpO1xyXG4gICAgcmVzLnVuc2hpZnQobWV0YURhdGEubWFwKG1ldGEgPT4gbWV0YS5kaXNwbGF5TmFtZSB8fCBtZXRhLmtleSkuam9pbignLCcpKTtcclxuICAgIHJldHVybiByZXMuam9pbignXFxuJyk7XHJcbiAgfVxyXG5cclxuICBtZXRhVG9GaWVsZCA9IChtZXRhOiBNZXRhRGF0YTxUPiwgcm93OiBUKSA9PiB7XHJcbiAgICBsZXQgdmFsOiBhbnkgPSBnZXQoIHJvdyxtZXRhLmtleSk7XHJcbiAgICBpZiAodmFsID09IG51bGwgJiYgIW1ldGEudHJhbnNmb3JtKSByZXR1cm4gdmFsXHJcbiAgICBpZihtZXRhLnRyYW5zZm9ybSAmJiBtZXRhLmZpZWxkVHlwZSAhPT0gRmllbGRUeXBlLkV4cHJlc3Npb24pe1xyXG4gICAgICBjb25zdCB0cmFuc2Zvcm0gPSBtZXRhLnRyYW5zZm9ybSBhcyBhbnk7XHJcbiAgICAgIHJldHVybiAgaXNQaXBlKHRyYW5zZm9ybSkgPyB0cmFuc2Zvcm0udHJhbnNmb3JtKHZhbCkgOiB0cmFuc2Zvcm0odmFsKTtcclxuICAgIH1cclxuICAgIGlmKG1ldGEubWFwKXtcclxuICAgICAgcmV0dXJuIG1ldGEubWFwKHJvdyk7XHJcbiAgICB9XHJcbiAgICBzd2l0Y2ggKG1ldGEuZmllbGRUeXBlKSB7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLkRhdGU6XHJcbiAgICAgICAgY29uc3QgZGF0ZUZvcm1hdCA9IG1ldGEuYWRkaXRpb25hbD8uZXhwb3J0Py5kYXRlRm9ybWF0IHx8IHRoaXMuY29uZmlnPy5leHBvcnQ/LmRhdGVGb3JtYXQgfHwgbWV0YS5hZGRpdGlvbmFsPy5kYXRlRm9ybWF0O1xyXG4gICAgICAgIHZhbCA9IHRoaXMudHJhbnNmb3JtKHZhbCwgZGF0ZUZvcm1hdCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLkRhdGVUaW1lOlxyXG4gICAgICAgIGNvbnN0IGRhdGVUaW1lRm9ybWF0ID0gbWV0YS5hZGRpdGlvbmFsPy5leHBvcnQ/LmRhdGVUaW1lRm9ybWF0IHx8IHRoaXMuY29uZmlnPy5leHBvcnQ/LmRhdGVUaW1lRm9ybWF0IHx8IG1ldGEuYWRkaXRpb25hbD8uZGF0ZVRpbWVPcHRpb25zPy5mb3JtYXQ7XHJcbiAgICAgICAgdmFsID0gdGhpcy50cmFuc2Zvcm0odmFsLCBkYXRlVGltZUZvcm1hdCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLlN0cmluZzpcclxuICAgICAgICBjb25zdCBwcmVwZW5kOiBzdHJpbmcgPSBtZXRhLmFkZGl0aW9uYWw/LmV4cG9ydD8ucHJlcGVuZCB8fCB0aGlzLmNvbmZpZz8uZXhwb3J0Py5wcmVwZW5kIHx8ICcnO1xyXG4gICAgICAgIHZhbCA9IHByZXBlbmQgKyB2YWw7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLkFycmF5OlxyXG4gICAgICAgIGNvbnN0IGFkZGl0aW9uYWwgPSBtZXRhLmFkZGl0aW9uYWwgYXMgQXJyYXlBZGRpdGlvbmFsO1xyXG4gICAgICAgIHZhbCA9ICh2YWwgYXMgQXJyYXk8c3RyaW5nPikuc2xpY2UoMCxhZGRpdGlvbmFsLmxpbWl0KS5qb2luKGFkZGl0aW9uYWwuYXJyYXlTdHlsZSA9PT0gQXJyYXlTdHlsZS5OZXdMaW5lID8gJ1xcbicgOiAnLCAnKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBGaWVsZFR5cGUuRXhwcmVzc2lvbjpcclxuICAgICAgICB2YWwgPSAobWV0YS50cmFuc2Zvcm0gYXMgYW55KShyb3cpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnICYmICh2YWwuaW5jbHVkZXMoJywnKSB8fCB2YWwuaW5jbHVkZXMoJ1wiJykgfHwgdmFsLmluY2x1ZGVzKCdcXG4nKSkpIHtcclxuICAgICAgdmFsID0gdmFsLnJlcGxhY2VBbGwoJ1wiJywgJ1wiXCInKTtcclxuICAgICAgdmFsID0gJ1wiJyArIHZhbCArICdcIic7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB0cmFuc2Zvcm0odmFsOiBhbnksIGRhdGVGb3JtYXQ6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuY29uZmlnLnRyYW5zZm9ybWVycyAmJiB0aGlzLmNvbmZpZy50cmFuc2Zvcm1lcnNbRmllbGRUeXBlLkRhdGVdKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbmZpZy50cmFuc2Zvcm1lcnNbRmllbGRUeXBlLkRhdGVdISh2YWwpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHZhbCwgZGF0ZUZvcm1hdCk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgcmVtb3ZlRnJvbU1ldGFEYXRhID0gKHN0YXRlOiBUYWJsZVN0YXRlLCBrZXlzVG9SZW1vdmU6IHN0cmluZ1tdKSA9PlxyXG4gICAgb3JkZXJNZXRhRGF0YShzdGF0ZSlcclxuICAuZmlsdGVyKCBtZXRhID0+ICFrZXlzVG9SZW1vdmUuaW5jbHVkZXMobWV0YS5rZXkpKTtcclxuXHJcblxyXG5leHBvcnQgY29uc3Qgbm9uRXhwb3J0YWJsZUZpZWxkcyA9IChzdGF0ZTogVGFibGVTdGF0ZSkgPT4gT2JqZWN0LnZhbHVlcyggc3RhdGUubWV0YURhdGEpXHJcbiAgLmZpbHRlcihtZCA9PiBtZC5ub0V4cG9ydCApXHJcbiAgLm1hcCggbWQgPT4gbWQua2V5ICk7XHJcblxyXG5leHBvcnQgY29uc3QgbWFwRXhwb3J0YWJsZUZpZWxkcyA9IChzdGF0ZTogVGFibGVTdGF0ZSkgPT4ge1xyXG4gIGNvbnN0IGZpZWxkc1RvUmVtb3ZlID0gbm9uRXhwb3J0YWJsZUZpZWxkcyhzdGF0ZSlcclxuICAgIC5jb25jYXQoc3RhdGUuaGlkZGVuS2V5cyk7XHJcbiAgIHJldHVybiByZW1vdmVGcm9tTWV0YURhdGEoc3RhdGUsIGZpZWxkc1RvUmVtb3ZlKTtcclxufVxyXG4iXX0=
@@ -0,0 +1,50 @@
1
+ import { get } from "lodash";
2
+ import { FieldType } from "../interfaces/report-def";
3
+ export function createLinkCreatorDict(metaDatas) {
4
+ return metaDatas.reduce((acc, md) => {
5
+ if (md.fieldType === FieldType.Link) {
6
+ acc[md.key] = createLinkCreator(md);
7
+ }
8
+ return acc;
9
+ }, {});
10
+ }
11
+ export function createLinkCreator(metaData) {
12
+ const target = metaData.additional?.link?.target || '_blank';
13
+ const useRouterLink = metaData.additional?.link?.useRouterLink || false;
14
+ const hasRoute = !!metaData.additional?.link?.interpolatedRoute;
15
+ const routerLinkOptions = useRouterLink ? {
16
+ queryParams: (element) => metaData.additional.link.routerLinkOptions?.queryParams?.reduce((map, [key, value]) => {
17
+ map[key] = parseInterpolated(value, element);
18
+ return map;
19
+ }, {}) ?? null,
20
+ fragment: metaData.additional.link?.routerLinkOptions?.fragment,
21
+ preserveFragment: metaData.additional.link.routerLinkOptions?.preserveFragment ?? false,
22
+ queryParamsHandling: metaData.additional.link.routerLinkOptions?.queryParamsHandling ?? '',
23
+ }
24
+ : undefined;
25
+ if (hasRoute) {
26
+ return ({
27
+ link: (element) => parseInterpolated(metaData.additional.link.interpolatedRoute, element),
28
+ target,
29
+ useRouterLink,
30
+ routerLinkOptions,
31
+ });
32
+ }
33
+ else {
34
+ const slashIfNeeded = !metaData.additional?.link?.base?.endsWith('/') ? '/' : '';
35
+ const base = metaData.additional.link?.base;
36
+ const getKey = key(metaData);
37
+ return ({
38
+ link: (element) => `${base}${slashIfNeeded}${getKey(element)}`,
39
+ target,
40
+ useRouterLink,
41
+ routerLinkOptions,
42
+ });
43
+ }
44
+ }
45
+ const key = (metaData) => metaData.additional.link?.urlKey ?
46
+ (element) => get(element, metaData.additional.link.urlKey)
47
+ :
48
+ (element) => get(element, metaData.key);
49
+ const parseInterpolated = (interpolatedString, element) => interpolatedString.replace(/{([^}]+)}/g, (_, key) => get(element, key));
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jcmVhdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9zZXJ2aWNlcy9saW5rLWNyZWF0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxTQUFTLEVBQVksTUFBTSwwQkFBMEIsQ0FBQztBQUkvRCxNQUFNLFVBQVUscUJBQXFCLENBQUksU0FBd0I7SUFDL0QsT0FBTyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFO1FBQ2xDLElBQUcsRUFBRSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsSUFBSSxFQUFDLENBQUM7WUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFFLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQUEsQ0FBQztRQUN4RSxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsRUFBQyxFQUEwQixDQUFDLENBQUE7QUFDL0IsQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBSSxRQUFxQjtJQUN4RCxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLElBQUksUUFBUSxDQUFDO0lBQzdELE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLGFBQWEsSUFBSSxLQUFLLENBQUM7SUFDeEUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixDQUFDO0lBQ2hFLE1BQU0saUJBQWlCLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUN4QyxXQUFXLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxVQUFXLENBQUMsSUFBSyxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUNoSCxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzdDLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLElBQUk7UUFDZCxRQUFRLEVBQUUsUUFBUSxDQUFDLFVBQVcsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsUUFBUTtRQUNoRSxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsVUFBVyxDQUFDLElBQUssQ0FBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsSUFBSSxLQUFLO1FBQ3pGLG1CQUFtQixFQUFFLFFBQVEsQ0FBQyxVQUFXLENBQUMsSUFBSyxDQUFDLGlCQUFpQixFQUFFLG1CQUFtQixJQUFJLEVBQUU7S0FDN0Y7UUFDRCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBR1osSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNiLE9BQU8sQ0FBQztZQUNOLElBQUksRUFBRSxDQUFDLE9BQVUsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLFVBQVcsQ0FBQyxJQUFLLENBQUMsaUJBQWtCLEVBQUUsT0FBTyxDQUFDO1lBQy9GLE1BQU07WUFDTixhQUFhO1lBQ2IsaUJBQWlCO1NBQ2xCLENBQUMsQ0FBQztJQUNMLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxhQUFhLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNqRixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsVUFBVyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7UUFDN0MsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdCLE9BQU8sQ0FBQztZQUNOLElBQUksRUFBRSxDQUFDLE9BQVUsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFJLEdBQUcsYUFBYSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNqRSxNQUFNO1lBQ04sYUFBYTtZQUNiLGlCQUFpQjtTQUNsQixDQUFDLENBQUM7SUFDTCxDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sR0FBRyxHQUFHLENBQUMsUUFBbUIsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLFVBQVcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEUsQ0FBQyxPQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUcsUUFBUSxDQUFDLFVBQVcsQ0FBQyxJQUFLLENBQUMsTUFBaUIsQ0FBQztJQUM1RSxDQUFDO1FBQ0QsQ0FBQyxPQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBRTlDLE1BQU0saUJBQWlCLEdBQUcsQ0FBRSxrQkFBMEIsRUFBRSxPQUFZLEVBQUcsRUFBRSxDQUN2RSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0IH0gZnJvbSBcImxvZGFzaFwiO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUsIE1ldGFEYXRhIH0gZnJvbSBcIi4uL2ludGVyZmFjZXMvcmVwb3J0LWRlZlwiO1xyXG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSBcIkBuZ3J4L2VudGl0eVwiO1xyXG5pbXBvcnQgeyBRdWVyeVBhcmFtc0hhbmRsaW5nIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUxpbmtDcmVhdG9yRGljdDxUPihtZXRhRGF0YXM6IE1ldGFEYXRhPFQ+W10pe1xyXG4gIHJldHVybiBtZXRhRGF0YXMucmVkdWNlKChhY2MsIG1kKSA9PiB7XHJcbiAgICBpZihtZC5maWVsZFR5cGUgPT09IEZpZWxkVHlwZS5MaW5rKXsgYWNjW21kLmtleV09IGNyZWF0ZUxpbmtDcmVhdG9yKG1kKX1cclxuICAgIHJldHVybiBhY2M7XHJcbiAgfSx7fSBhcyBEaWN0aW9uYXJ5PExpbmtJbmZvPilcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUxpbmtDcmVhdG9yPFQ+KG1ldGFEYXRhOiBNZXRhRGF0YTxUPik6IExpbmtJbmZve1xyXG4gIGNvbnN0IHRhcmdldCA9IG1ldGFEYXRhLmFkZGl0aW9uYWw/Lmxpbms/LnRhcmdldCB8fCAnX2JsYW5rJztcclxuICBjb25zdCB1c2VSb3V0ZXJMaW5rID0gbWV0YURhdGEuYWRkaXRpb25hbD8ubGluaz8udXNlUm91dGVyTGluayB8fCBmYWxzZTtcclxuICBjb25zdCBoYXNSb3V0ZSA9ICEhbWV0YURhdGEuYWRkaXRpb25hbD8ubGluaz8uaW50ZXJwb2xhdGVkUm91dGU7XHJcbiAgY29uc3Qgcm91dGVyTGlua09wdGlvbnMgPSB1c2VSb3V0ZXJMaW5rID8ge1xyXG4gICAgcXVlcnlQYXJhbXM6IChlbGVtZW50KSA9PiBtZXRhRGF0YS5hZGRpdGlvbmFsIS5saW5rIS5yb3V0ZXJMaW5rT3B0aW9ucz8ucXVlcnlQYXJhbXM/LnJlZHVjZSgobWFwLCBba2V5LCB2YWx1ZV0pID0+IHtcclxuICAgICAgbWFwW2tleV0gPSBwYXJzZUludGVycG9sYXRlZCh2YWx1ZSwgZWxlbWVudCk7XHJcbiAgICAgIHJldHVybiBtYXA7XHJcbiAgICB9LCB7fSkgPz8gbnVsbCxcclxuICAgIGZyYWdtZW50OiBtZXRhRGF0YS5hZGRpdGlvbmFsIS5saW5rPy5yb3V0ZXJMaW5rT3B0aW9ucz8uZnJhZ21lbnQsXHJcbiAgICBwcmVzZXJ2ZUZyYWdtZW50OiBtZXRhRGF0YS5hZGRpdGlvbmFsIS5saW5rIS5yb3V0ZXJMaW5rT3B0aW9ucz8ucHJlc2VydmVGcmFnbWVudCA/PyBmYWxzZSxcclxuICAgIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6IG1ldGFEYXRhLmFkZGl0aW9uYWwhLmxpbmshLnJvdXRlckxpbmtPcHRpb25zPy5xdWVyeVBhcmFtc0hhbmRsaW5nID8/ICcnLFxyXG4gIH1cclxuICA6IHVuZGVmaW5lZDtcclxuXHJcblxyXG4gIGlmIChoYXNSb3V0ZSkge1xyXG4gICAgcmV0dXJuICh7XHJcbiAgICAgIGxpbms6IChlbGVtZW50OiBUKSA9PiBwYXJzZUludGVycG9sYXRlZChtZXRhRGF0YS5hZGRpdGlvbmFsIS5saW5rIS5pbnRlcnBvbGF0ZWRSb3V0ZSEsIGVsZW1lbnQpLFxyXG4gICAgICB0YXJnZXQsXHJcbiAgICAgIHVzZVJvdXRlckxpbmssXHJcbiAgICAgIHJvdXRlckxpbmtPcHRpb25zLFxyXG4gICAgfSk7XHJcbiAgfSBlbHNlIHtcclxuICAgIGNvbnN0IHNsYXNoSWZOZWVkZWQgPSAhbWV0YURhdGEuYWRkaXRpb25hbD8ubGluaz8uYmFzZT8uZW5kc1dpdGgoJy8nKSA/ICcvJyA6ICcnO1xyXG4gICAgY29uc3QgYmFzZSA9IG1ldGFEYXRhLmFkZGl0aW9uYWwhLmxpbms/LmJhc2U7XHJcbiAgICBjb25zdCBnZXRLZXkgPSBrZXkobWV0YURhdGEpO1xyXG4gICAgcmV0dXJuICh7XHJcbiAgICAgIGxpbms6IChlbGVtZW50OiBUKSA9PiBgJHtiYXNlfSR7c2xhc2hJZk5lZWRlZH0ke2dldEtleShlbGVtZW50KX1gLFxyXG4gICAgICB0YXJnZXQsXHJcbiAgICAgIHVzZVJvdXRlckxpbmssXHJcbiAgICAgIHJvdXRlckxpbmtPcHRpb25zLFxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcblxyXG5jb25zdCBrZXkgPSAobWV0YURhdGEgOiBNZXRhRGF0YSkgPT4gbWV0YURhdGEuYWRkaXRpb25hbCEubGluaz8udXJsS2V5ID8gXHJcbiAgKGVsZW1lbnQ6YW55KSA9PiBnZXQoZWxlbWVudCwgKG1ldGFEYXRhLmFkZGl0aW9uYWwhLmxpbmshLnVybEtleSBhcyBzdHJpbmcpKVxyXG4gIDpcclxuICAoZWxlbWVudDphbnkpID0+IGdldChlbGVtZW50LCBtZXRhRGF0YS5rZXkpO1xyXG5cclxuY29uc3QgcGFyc2VJbnRlcnBvbGF0ZWQgPSAoIGludGVycG9sYXRlZFN0cmluZzogc3RyaW5nLCBlbGVtZW50OiBhbnkgKSA9PlxyXG4gIGludGVycG9sYXRlZFN0cmluZy5yZXBsYWNlKC97KFtefV0rKX0vZywgKF8sIGtleSkgPT4gZ2V0KGVsZW1lbnQgLGtleSkpO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMaW5rSW5mbyB7XHJcbiAgbGluazogKGVsZW1lbnQ6IGFueSkgPT4gc3RyaW5nO1xyXG4gIHRhcmdldDogc3RyaW5nO1xyXG4gIHVzZVJvdXRlckxpbms6IGJvb2xlYW47XHJcbiAgcm91dGVyTGlua09wdGlvbnM/OiB7XHJcbiAgICBxdWVyeVBhcmFtczogKGVsZW1lbnQ6IGFueSkgPT4gYW55O1xyXG4gICAgZnJhZ21lbnQ/OiBzdHJpbmc7XHJcbiAgICBwcmVzZXJ2ZUZyYWdtZW50PzogYm9vbGVhbjtcclxuICAgIHF1ZXJ5UGFyYW1zSGFuZGxpbmc/OiBRdWVyeVBhcmFtc0hhbmRsaW5nO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,57 @@
1
+ import { createComponent, inject } from "@angular/core";
2
+ import { Injectable } from "@angular/core";
3
+ import { ArrayStyle, FieldType } from "../interfaces/report-def";
4
+ import { InitializationComponent } from "../components/initialization-component/initialization-component";
5
+ import { TableBuilderConfigToken } from "../classes/TableBuilderConfig";
6
+ import * as i0 from "@angular/core";
7
+ export class TableTemplateService {
8
+ initTemplates() {
9
+ this.templates = {};
10
+ this.templates[FieldType.Array] = this.instance.arrayNewLineTemplate;
11
+ this.templates[FieldType.Array + .5] = this.instance.arrayCommaTemplate;
12
+ this.templates[FieldType.Boolean] = this.instance.defaultWithIcon;
13
+ this.templates[FieldType.Currency] = this.instance.defaultTemplate;
14
+ this.templates[FieldType.Date] = this.instance.defaultTemplate;
15
+ this.templates[FieldType.DateTime] = this.instance.defaultTemplate;
16
+ this.templates[FieldType.Expression] = this.instance.defaultTemplate;
17
+ this.templates[FieldType.NotMapped] = this.instance.defaultTemplate;
18
+ this.templates[FieldType.ImageUrl] = this.instance.imageUrlTemplate;
19
+ this.templates[FieldType.Link] = this.instance.linkTemplate;
20
+ this.templates[FieldType.Link + .5] = this.instance.routerLinkTemplate;
21
+ this.templates[FieldType.Number] = this.instance.defaultTemplate;
22
+ this.templates[FieldType.PhoneNumber] = this.instance.defaultTemplate;
23
+ this.templates[FieldType.String] = this.instance.defaultTemplate;
24
+ this.templates[FieldType.Unknown] = this.instance.defaultTemplate;
25
+ this.templates[FieldType.Enum] = this.instance.defaultTemplate;
26
+ }
27
+ getTemplate(metaData) {
28
+ let tmp = metaData.fieldType === FieldType.Link && metaData.additional?.link?.useRouterLink
29
+ ? this.templates[FieldType.Link + .5]
30
+ :
31
+ metaData.fieldType === FieldType.Array && (metaData.additional?.arrayStyle === ArrayStyle.CommaDelimited || this.tableConfig?.arrayInfo?.arrayStyle === ArrayStyle.CommaDelimited)
32
+ ? this.templates[FieldType.Array + .5]
33
+ :
34
+ this.templates[metaData.fieldType];
35
+ if (metaData.useIcon) {
36
+ if (tmp === this.instance.defaultTemplate) {
37
+ tmp = this.instance.defaultWithIcon;
38
+ }
39
+ }
40
+ return tmp;
41
+ }
42
+ constructor(ei) {
43
+ this.tableConfig = inject(TableBuilderConfigToken);
44
+ const c = createComponent(InitializationComponent, {
45
+ environmentInjector: ei,
46
+ });
47
+ this.instance = c.instance;
48
+ this.initTemplates();
49
+ }
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableTemplateService, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
51
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableTemplateService, providedIn: 'root' }); }
52
+ }
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableTemplateService, decorators: [{
54
+ type: Injectable,
55
+ args: [{ providedIn: 'root' }]
56
+ }], ctorParameters: () => [{ type: i0.EnvironmentInjector }] });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGVtcGxhdGUtc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL3NlcnZpY2VzL3RhYmxlLXRlbXBsYXRlLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQyxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxVQUFVLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFtQixVQUFVLEVBQUUsU0FBUyxFQUFZLE1BQU0sMEJBQTBCLENBQUM7QUFDNUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDMUcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBR3hFLE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsYUFBYTtRQUNYLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUM7UUFDckUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUM7UUFDeEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUM7UUFDbEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUM7UUFDbkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFD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UUFDM0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7OEdBOUNVLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGNBRFIsTUFBTTs7MkZBQ2xCLG9CQUFvQjtrQkFEaEMsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnZpcm9ubWVudEluamVjdG9yLCBJbmplY3RvciwgY3JlYXRlQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFycmF5QWRkaXRpb25hbCwgQXJyYXlTdHlsZSwgRmllbGRUeXBlLCBNZXRhRGF0YSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL3JlcG9ydC1kZWZcIjtcclxuaW1wb3J0IHsgSW5pdGlhbGl6YXRpb25Db21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9pbml0aWFsaXphdGlvbi1jb21wb25lbnQvaW5pdGlhbGl6YXRpb24tY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFRhYmxlQnVpbGRlckNvbmZpZ1Rva2VuIH0gZnJvbSBcIi4uL2NsYXNzZXMvVGFibGVCdWlsZGVyQ29uZmlnXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcclxuZXhwb3J0IGNsYXNzIFRhYmxlVGVtcGxhdGVTZXJ2aWNlIHtcclxuICBpbnN0YW5jZSE6IEluaXRpYWxpemF0aW9uQ29tcG9uZW50O1xyXG4gIHRlbXBsYXRlcztcclxuXHJcbiAgaW5pdFRlbXBsYXRlcygpIHtcclxuICAgIHRoaXMudGVtcGxhdGVzID0geyB9O1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkFycmF5XSA9IHRoaXMuaW5zdGFuY2UuYXJyYXlOZXdMaW5lVGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuQXJyYXkgKyAuNV0gPSB0aGlzLmluc3RhbmNlLmFycmF5Q29tbWFUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5Cb29sZWFuXSA9IHRoaXMuaW5zdGFuY2UuZGVmYXVsdFdpdGhJY29uO1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkN1cnJlbmN5XSA9IHRoaXMuaW5zdGFuY2UuZGVmYXVsdFRlbXBsYXRlO1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkRhdGVdID0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuRGF0ZVRpbWVdID0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuRXhwcmVzc2lvbl0gPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5Ob3RNYXBwZWRdID0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuSW1hZ2VVcmxdID0gdGhpcy5pbnN0YW5jZS5pbWFnZVVybFRlbXBsYXRlO1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkxpbmtdID0gdGhpcy5pbnN0YW5jZS5saW5rVGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuTGluayArIC41XSA9IHRoaXMuaW5zdGFuY2Uucm91dGVyTGlua1RlbXBsYXRlO1xyXG4gICAgdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLk51bWJlcl0gPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5QaG9uZU51bWJlcl0gPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5TdHJpbmddID0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGU7XHJcbiAgICB0aGlzLnRlbXBsYXRlc1tGaWVsZFR5cGUuVW5rbm93bl0gPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRUZW1wbGF0ZTtcclxuICAgIHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5FbnVtXSA9IHRoaXMuaW5zdGFuY2UuZGVmYXVsdFRlbXBsYXRlO1xyXG4gIH1cclxuICBnZXRUZW1wbGF0ZShtZXRhRGF0YTogTWV0YURhdGEpIDogVGVtcGxhdGVSZWY8YW55PiB7XHJcblxyXG4gICAgbGV0IHRtcCA9IG1ldGFEYXRhLmZpZWxkVHlwZSA9PT0gRmllbGRUeXBlLkxpbmsgJiYgbWV0YURhdGEuYWRkaXRpb25hbD8ubGluaz8udXNlUm91dGVyTGlua1xyXG4gICAgICA/IHRoaXMudGVtcGxhdGVzW0ZpZWxkVHlwZS5MaW5rICsgLjVdIFxyXG4gICAgICA6IFxyXG4gICAgICBtZXRhRGF0YS5maWVsZFR5cGUgPT09IEZpZWxkVHlwZS5BcnJheSAmJiAoKG1ldGFEYXRhLmFkZGl0aW9uYWwgYXMgQXJyYXlBZGRpdGlvbmFsKT8uYXJyYXlTdHlsZSA9PT0gQXJyYXlTdHlsZS5Db21tYURlbGltaXRlZCB8fCB0aGlzLnRhYmxlQ29uZmlnPy5hcnJheUluZm8/LmFycmF5U3R5bGUgPT09IEFycmF5U3R5bGUuQ29tbWFEZWxpbWl0ZWQpXHJcbiAgICAgID8gdGhpcy50ZW1wbGF0ZXNbRmllbGRUeXBlLkFycmF5ICsgLjVdIFxyXG4gICAgICA6XHJcbiAgICAgIHRoaXMudGVtcGxhdGVzW21ldGFEYXRhLmZpZWxkVHlwZV07XHJcbiAgICBpZihtZXRhRGF0YS51c2VJY29uKSB7XHJcbiAgICAgIGlmKHRtcCA9PT0gdGhpcy5pbnN0YW5jZS5kZWZhdWx0VGVtcGxhdGUpIHtcclxuICAgICAgICB0bXAgPSB0aGlzLmluc3RhbmNlLmRlZmF1bHRXaXRoSWNvbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRtcDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKGVpOiBFbnZpcm9ubWVudEluamVjdG9yICApIHtcclxuICAgIGNvbnN0IGMgPSBjcmVhdGVDb21wb25lbnQoSW5pdGlhbGl6YXRpb25Db21wb25lbnQsIHtcclxuICAgICAgZW52aXJvbm1lbnRJbmplY3RvcjogZWksXHJcbiAgICB9KTtcclxuICAgIHRoaXMuaW5zdGFuY2UgPSBjLmluc3RhbmNlO1xyXG4gICAgdGhpcy5pbml0VGVtcGxhdGVzKCk7XHJcbiAgfVxyXG5cclxuICB0YWJsZUNvbmZpZyA9IGluamVjdChUYWJsZUJ1aWxkZXJDb25maWdUb2tlbik7XHJcbn1cclxuIl19
@@ -0,0 +1,105 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { FieldType } from '../interfaces/report-def';
3
+ import { TableBuilderConfigToken } from '../classes/TableBuilderConfig';
4
+ import { get } from 'lodash';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "../../utilities/pipes/phone.pipe";
8
+ import * as i3 from "../../utilities";
9
+ export function isPipe(o) {
10
+ return typeof (o.transform) === 'function';
11
+ }
12
+ export class TransformCreator {
13
+ constructor(datePipe, currencyPipe, phonePipe, casePipe, config) {
14
+ this.datePipe = datePipe;
15
+ this.currencyPipe = currencyPipe;
16
+ this.phonePipe = phonePipe;
17
+ this.casePipe = casePipe;
18
+ this.config = config;
19
+ this.createItemTransformer = (metaData, noIcons = false, mutate = false) => {
20
+ const transform = this.createTransformer(metaData, noIcons);
21
+ return (t) => {
22
+ if (!mutate) {
23
+ t = { ...t };
24
+ }
25
+ t[metaData.key] = transform(t);
26
+ };
27
+ };
28
+ this.createItemTransformers = (metaDatas, noIcons = false, mutate = false) => {
29
+ const transformers = metaDatas.map(meta => this.createItemTransformer(meta, noIcons, true));
30
+ return (t) => {
31
+ if (!t)
32
+ return t;
33
+ if (!mutate) {
34
+ t = { ...t };
35
+ }
36
+ transformers.forEach(m => m(t));
37
+ return t;
38
+ };
39
+ };
40
+ }
41
+ createTransformer(metaData, noIcons = false) {
42
+ const nested = metaData.key.includes('.');
43
+ const defaultFunc = nested ? (value) => get(value, metaData.key) : (value) => value[metaData.key];
44
+ if (metaData.map) {
45
+ return (value) => {
46
+ return metaData.map(value);
47
+ };
48
+ }
49
+ if (metaData.transform) {
50
+ if (isPipe(metaData.transform)) {
51
+ return (value) => metaData.transform.transform(defaultFunc(value));
52
+ }
53
+ return metaData.fieldType === FieldType.Expression ? metaData.transform : (value) => metaData.transform(defaultFunc(value), value);
54
+ }
55
+ if (this.config.transformers && this.config.transformers[metaData.fieldType]) {
56
+ var transformer = this.config.transformers[metaData.fieldType];
57
+ return (value) => transformer(defaultFunc(value));
58
+ }
59
+ const defaultDateFormat = this.config.defaultSettings?.dateFormat ?? 'shortDate';
60
+ const defaultDateTimeFormat = this.config.defaultSettings?.dateTimeFormat ?? 'short';
61
+ switch (metaData.fieldType) {
62
+ case FieldType.Date:
63
+ const dateFormat = metaData.additional?.dateFormat ?? defaultDateFormat;
64
+ return (value) => this.datePipe.transform(defaultFunc(value), dateFormat);
65
+ case FieldType.DateTime:
66
+ const dateTimeFormat = metaData.additional?.dateTimeOptions?.format ?? defaultDateTimeFormat;
67
+ return (value) => this.datePipe.transform(defaultFunc(value), dateTimeFormat);
68
+ case FieldType.Currency:
69
+ return (value) => this.currencyPipe.transform(defaultFunc(value));
70
+ case FieldType.PhoneNumber:
71
+ return (value) => this.phonePipe.transform(defaultFunc(value));
72
+ case FieldType.Enum:
73
+ return (value) => this.casePipe.transform(metaData.additional?.enumMap[defaultFunc(value)]);
74
+ case FieldType.Boolean:
75
+ if (noIcons) {
76
+ return defaultFunc;
77
+ }
78
+ let forTrue = 'check';
79
+ let forFalse = '';
80
+ if (metaData.additional?.boolean?.forTrue) {
81
+ forTrue = metaData?.additional.boolean.forTrue.icon;
82
+ }
83
+ if (metaData.additional?.boolean?.showForFalse === true) {
84
+ forFalse = 'clear';
85
+ }
86
+ else if (metaData.additional?.boolean?.showForFalse?.icon) {
87
+ forFalse = metaData.additional?.boolean?.showForFalse?.icon;
88
+ }
89
+ return (value) => defaultFunc(value) ? forTrue : forFalse;
90
+ }
91
+ return defaultFunc;
92
+ }
93
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TransformCreator, deps: [{ token: i1.DatePipe }, { token: i1.CurrencyPipe }, { token: i2.PhoneNumberPipe }, { token: i3.SpaceCasePipe }, { token: TableBuilderConfigToken }], target: i0.ɵɵFactoryTarget.Injectable }); }
94
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TransformCreator, providedIn: 'root' }); }
95
+ }
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TransformCreator, decorators: [{
97
+ type: Injectable,
98
+ args: [{
99
+ providedIn: 'root',
100
+ }]
101
+ }], ctorParameters: () => [{ type: i1.DatePipe }, { type: i1.CurrencyPipe }, { type: i2.PhoneNumberPipe }, { type: i3.SpaceCasePipe }, { type: undefined, decorators: [{
102
+ type: Inject,
103
+ args: [TableBuilderConfigToken]
104
+ }] }] });
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtLWNyZWF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9zZXJ2aWNlcy90cmFuc2Zvcm0tY3JlYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBWSxNQUFNLDBCQUEwQixDQUFDO0FBRy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBc0IsTUFBTSwrQkFBK0IsQ0FBQztBQUU1RixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7OztBQUM3QixNQUFNLFVBQVUsTUFBTSxDQUFDLENBQU87SUFDNUIsT0FBTyxPQUFPLENBQUUsQ0FBbUIsQ0FBQyxTQUFTLENBQUUsS0FBSyxVQUFVLENBQUM7QUFDakUsQ0FBQztBQUtELE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsWUFDVSxRQUFrQixFQUNsQixZQUEwQixFQUMxQixTQUEwQixFQUMxQixRQUF1QixFQUNVLE1BQTBCO1FBSjNELGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFDMUIsYUFBUSxHQUFSLFFBQVEsQ0FBZTtRQUNVLFdBQU0sR0FBTixNQUFNLENBQW9CO1FBcURyRSwwQkFBcUIsR0FBRyxDQUFrRCxRQUF1QyxFQUFFLE9BQU8sR0FBRyxLQUFLLEVBQUUsTUFBTSxHQUFHLEtBQUssRUFBRSxFQUFFO1lBQ3BKLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDNUQsT0FBTyxDQUFDLENBQUksRUFBRSxFQUFFO2dCQUNkLElBQUcsQ0FBQyxNQUFNLEVBQUMsQ0FBQztv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QUFDLENBQUU7WUFDaEgsS0FBSyxTQUFTLENBQUMsT0FBTztnQkFDcEIsSUFBRyxPQUFPLEVBQUUsQ0FBQztvQkFDWCxPQUFPLFdBQVcsQ0FBQTtnQkFDcEIsQ0FBQztnQkFDRCxJQUFJLE9BQU8sR0FBRyxPQUFPLENBQUE7Z0JBQ3JCLElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztnQkFDbEIsSUFBRyxRQUFRLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztvQkFDekMsT0FBTyxHQUFHLFFBQVEsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ3RELENBQUM7Z0JBQ0QsSUFBRyxRQUFRLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEtBQUssSUFBSSxFQUFFLENBQUM7b0JBQ3ZELFFBQVEsR0FBRyxPQUFPLENBQUM7Z0JBQ3JCLENBQUM7cUJBQU0sSUFBSSxRQUFRLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUM7b0JBQzVELFFBQVEsR0FBRyxRQUFRLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDO2dCQUM5RCxDQUFDO2dCQUNELE9BQU8sQ0FBQyxLQUFVLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUU7UUFDcEUsQ0FBQztRQUNDLE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7OEdBekRVLGdCQUFnQixrSUFNakIsdUJBQXVCO2tIQU50QixnQkFBZ0IsY0FGZCxNQUFNOzsyRkFFUixnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFHLE1BQU07aUJBQ3BCOzswQkFPSSxNQUFNOzJCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGVUcmFuc2Zvcm0sIEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUsIE1ldGFEYXRhIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcclxuaW1wb3J0IHsgRGF0ZVBpcGUsIEN1cnJlbmN5UGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFBob25lTnVtYmVyUGlwZSB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9waXBlcy9waG9uZS5waXBlJztcclxuaW1wb3J0IHsgVGFibGVCdWlsZGVyQ29uZmlnVG9rZW4sIFRhYmxlQnVpbGRlckNvbmZpZyB9IGZyb20gJy4uL2NsYXNzZXMvVGFibGVCdWlsZGVyQ29uZmlnJztcclxuaW1wb3J0IHsgU3BhY2VDYXNlUGlwZSB9IGZyb20gJy4uLy4uL3V0aWxpdGllcyc7XHJcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaCc7XHJcbmV4cG9ydCBmdW5jdGlvbiBpc1BpcGUobyA6IGFueSApOiBvIGlzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHJldHVybiB0eXBlb2YgKChvIGFzIFBpcGVUcmFuc2Zvcm0pLnRyYW5zZm9ybSApID09PSAnZnVuY3Rpb24nO1xyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zZm9ybUNyZWF0b3Ige1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkYXRlUGlwZTogRGF0ZVBpcGUsXHJcbiAgICBwcml2YXRlIGN1cnJlbmN5UGlwZTogQ3VycmVuY3lQaXBlLFxyXG4gICAgcHJpdmF0ZSBwaG9uZVBpcGU6IFBob25lTnVtYmVyUGlwZSxcclxuICAgIHByaXZhdGUgY2FzZVBpcGU6IFNwYWNlQ2FzZVBpcGUsXHJcbiAgICBASW5qZWN0KFRhYmxlQnVpbGRlckNvbmZpZ1Rva2VuKSBwcml2YXRlIGNvbmZpZzogVGFibGVCdWlsZGVyQ29uZmlnLFxyXG4gICkge31cclxuICBjcmVhdGVUcmFuc2Zvcm1lcihtZXRhRGF0YTogTWV0YURhdGE8YW55LCBhbnk+LCBub0ljb25zID0gZmFsc2UpOiAoKHZhbHVlOiBhbnksIC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpICB7XHJcbiAgICBjb25zdCBuZXN0ZWQgPSBtZXRhRGF0YS5rZXkuaW5jbHVkZXMoJy4nKTtcclxuICAgIGNvbnN0IGRlZmF1bHRGdW5jID0gbmVzdGVkID8gICh2YWx1ZTogYW55KSA9PiBnZXQoIHZhbHVlLCBtZXRhRGF0YS5rZXkpIDogKHZhbHVlOiBhbnkpID0+ICB2YWx1ZVttZXRhRGF0YS5rZXldO1xyXG4gICAgaWYobWV0YURhdGEubWFwKXtcclxuICAgICAgcmV0dXJuICh2YWx1ZTogYW55KSA9PiB7IFxyXG4gICAgICAgIHJldHVybiBtZXRhRGF0YS5tYXAhKHZhbHVlKX07XHJcbiAgICB9XHJcbiAgICBpZiggbWV0YURhdGEudHJhbnNmb3JtKSB7XHJcbiAgICAgIGlmKGlzUGlwZShtZXRhRGF0YS50cmFuc2Zvcm0pKXtcclxuICAgICAgICByZXR1cm4gKHZhbHVlOiBhbnkpID0+ICAobWV0YURhdGEhLnRyYW5zZm9ybSBhcyBQaXBlVHJhbnNmb3JtKS50cmFuc2Zvcm0oZGVmYXVsdEZ1bmModmFsdWUpKTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbWV0YURhdGEuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuRXhwcmVzc2lvbiA/IG1ldGFEYXRhLnRyYW5zZm9ybSA6ICh2YWx1ZTogYW55KSA9PiAobWV0YURhdGEudHJhbnNmb3JtIGFzIChhOmFueSxiOmFueSk9PmFueSkoZGVmYXVsdEZ1bmModmFsdWUpLHZhbHVlKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmNvbmZpZy50cmFuc2Zvcm1lcnMgJiYgdGhpcy5jb25maWcudHJhbnNmb3JtZXJzW21ldGFEYXRhLmZpZWxkVHlwZV0pIHtcclxuICAgICAgdmFyIHRyYW5zZm9ybWVyID0gIHRoaXMuY29uZmlnLnRyYW5zZm9ybWVycyFbbWV0YURhdGEuZmllbGRUeXBlXSE7XHJcbiAgICAgIHJldHVybiAodmFsdWU6IGFueSkgPT4gdHJhbnNmb3JtZXIoZGVmYXVsdEZ1bmModmFsdWUpKTtcclxuICAgIH1cclxuICAgIGNvbnN0IGRlZmF1bHREYXRlRm9ybWF0ID0gdGhpcy5jb25maWcuZGVmYXVsdFNldHRpbmdzPy5kYXRlRm9ybWF0ID8/ICdzaG9ydERhdGUnO1xyXG4gICAgY29uc3QgZGVmYXVsdERhdGVUaW1lRm9ybWF0ID0gdGhpcy5jb25maWcuZGVmYXVsdFNldHRpbmdzPy5kYXRlVGltZUZvcm1hdCA/PyAnc2hvcnQnO1xyXG4gICAgc3dpdGNoKG1ldGFEYXRhLmZpZWxkVHlwZSkge1xyXG4gICAgICBjYXNlIEZpZWxkVHlwZS5EYXRlOlxyXG4gICAgICAgIGNvbnN0IGRhdGVGb3JtYXQgPSBtZXRhRGF0YS5hZGRpdGlvbmFsPy5kYXRlRm9ybWF0ID8/IGRlZmF1bHREYXRlRm9ybWF0O1xyXG4gICAgICAgIHJldHVybiAodmFsdWU6IGFueSkgPT4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oZGVmYXVsdEZ1bmModmFsdWUpLCBkYXRlRm9ybWF0KTtcclxuICAgICAgY2FzZSBGaWVsZFR5cGUuRGF0ZVRpbWU6XHJcbiAgICAgICAgY29uc3QgZGF0ZVRpbWVGb3JtYXQgPSBtZXRhRGF0YS5hZGRpdGlvbmFsPy5kYXRlVGltZU9wdGlvbnM/LmZvcm1hdCA/PyBkZWZhdWx0RGF0ZVRpbWVGb3JtYXQ7XHJcbiAgICAgICAgcmV0dXJuICh2YWx1ZTogYW55KSA9PiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkZWZhdWx0RnVuYyh2YWx1ZSksIGRhdGVUaW1lRm9ybWF0KTtcclxuICAgICAgY2FzZSBGaWVsZFR5cGUuQ3VycmVuY3k6XHJcbiAgICAgICAgICByZXR1cm4gKHZhbHVlOiBhbnkpID0+ICB0aGlzLmN1cnJlbmN5UGlwZS50cmFuc2Zvcm0oZGVmYXVsdEZ1bmModmFsdWUpKTtcclxuICAgICAgY2FzZSBGaWVsZFR5cGUuUGhvbmVOdW1iZXI6XHJcbiAgICAgICAgcmV0dXJuICAodmFsdWU6IGFueSkgPT4gIHRoaXMucGhvbmVQaXBlLnRyYW5zZm9ybShkZWZhdWx0RnVuYyh2YWx1ZSkpO1xyXG4gICAgICBjYXNlIEZpZWxkVHlwZS5FbnVtOlxyXG4gICAgICAgIHJldHVybiAodmFsdWU6IGFueSkgPT4gIHRoaXMuY2FzZVBpcGUudHJhbnNmb3JtKG1ldGFEYXRhLmFkZGl0aW9uYWw/LmVudW1NYXAhW2RlZmF1bHRGdW5jKHZhbHVlKV0gYXMgc3RyaW5nKSA7XHJcbiAgICAgIGNhc2UgRmllbGRUeXBlLkJvb2xlYW46XHJcbiAgICAgICAgaWYobm9JY29ucykge1xyXG4gICAgICAgICAgcmV0dXJuIGRlZmF1bHRGdW5jXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBmb3JUcnVlID0gJ2NoZWNrJ1xyXG4gICAgICAgIGxldCBmb3JGYWxzZSA9ICcnO1xyXG4gICAgICAgIGlmKG1ldGFEYXRhLmFkZGl0aW9uYWw/LmJvb2xlYW4/LmZvclRydWUpIHtcclxuICAgICAgICAgIGZvclRydWUgPSBtZXRhRGF0YT8uYWRkaXRpb25hbC5ib29sZWFuLmZvclRydWUuaWNvbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYobWV0YURhdGEuYWRkaXRpb25hbD8uYm9vbGVhbj8uc2hvd0ZvckZhbHNlID09PSB0cnVlKSB7XHJcbiAgICAgICAgICBmb3JGYWxzZSA9ICdjbGVhcic7XHJcbiAgICAgICAgfSBlbHNlIGlmIChtZXRhRGF0YS5hZGRpdGlvbmFsPy5ib29sZWFuPy5zaG93Rm9yRmFsc2U/Lmljb24pIHtcclxuICAgICAgICAgIGZvckZhbHNlID0gbWV0YURhdGEuYWRkaXRpb25hbD8uYm9vbGVhbj8uc2hvd0ZvckZhbHNlPy5pY29uO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gKHZhbHVlOiBhbnkpID0+IGRlZmF1bHRGdW5jKHZhbHVlKSA/IGZvclRydWUgOiBmb3JGYWxzZSA7XHJcbiAgICB9XHJcbiAgICAgIHJldHVybiBkZWZhdWx0RnVuYztcclxuICB9XHJcblxyXG4gIGNyZWF0ZUl0ZW1UcmFuc2Zvcm1lciA9IDxUID0gYW55LCBBZGRpdGlvbmFsRmllbGRzIGV4dGVuZHMgc3RyaW5nW10gPSBbXT4obWV0YURhdGE6IE1ldGFEYXRhPFQgLEFkZGl0aW9uYWxGaWVsZHM+LCBub0ljb25zID0gZmFsc2UsIG11dGF0ZSA9IGZhbHNlKSA9PiB7XHJcbiAgICBjb25zdCB0cmFuc2Zvcm0gPSB0aGlzLmNyZWF0ZVRyYW5zZm9ybWVyKG1ldGFEYXRhLCBub0ljb25zKTtcclxuICAgIHJldHVybiAodDogVCkgPT4ge1xyXG4gICAgICBpZighbXV0YXRlKXtcclxuICAgICAgICB0ID0geyAuLi50IH1cclxuICAgICAgfVxyXG4gICAgICB0W21ldGFEYXRhLmtleSBhcyBzdHJpbmddID0gdHJhbnNmb3JtKHQpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVJdGVtVHJhbnNmb3JtZXJzID0gPFQgPSBhbnksIEFkZGl0aW9uYWxGaWVsZHMgZXh0ZW5kcyBzdHJpbmdbXSA9IFtdPihtZXRhRGF0YXM6IE1ldGFEYXRhPFQsIEFkZGl0aW9uYWxGaWVsZHM+W10sIG5vSWNvbnMgPSBmYWxzZSwgbXV0YXRlID0gZmFsc2UpID0+IHtcclxuICAgIGNvbnN0IHRyYW5zZm9ybWVycyA9IG1ldGFEYXRhcy5tYXAobWV0YSA9PiB0aGlzLmNyZWF0ZUl0ZW1UcmFuc2Zvcm1lcihtZXRhICxub0ljb25zLCB0cnVlKSk7XHJcbiAgICByZXR1cm4gKHQ6IFQpID0+IHtcclxuICAgICAgaWYoIXQpIHJldHVybiB0O1xyXG4gICAgICBpZighbXV0YXRlKXtcclxuICAgICAgICB0ID0geyAuLi4gdH1cclxuICAgICAgfVxyXG4gICAgICB0cmFuc2Zvcm1lcnMuZm9yRWFjaChtID0+IG0odCkpO1xyXG4gICAgICByZXR1cm4gdDtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,124 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule, DatePipe, CurrencyPipe } from '@angular/common';
3
+ import { SpaceCasePipe } from '../utilities/pipes/space-case.pipes';
4
+ import { MultiSortDirective } from './directives/multi-sort.directive';
5
+ import { TableBuilderConfigToken } from './classes/TableBuilderConfig';
6
+ import { PhoneNumberPipe } from '../utilities/pipes/phone.pipe';
7
+ import { RouterModule } from '@angular/router';
8
+ import { FilterComponent, GenericTableComponent, TableContainerComponent } from './components';
9
+ import { CustomCellDirective, MatSlideToggleTbFilterDirective, MatRadioButtonTbFilterDirective, MatOptionTbFilterDirective, MatCheckboxTbFilterDirective, MatButtonToggleFilterDirective, TableFilterDirective, TableFilterStringContainsDirective, TableWrapperDirective, ResizeColumnDirective } from './directives';
10
+ import { UtilitiesModule } from '../utilities';
11
+ import { MatDialogModule } from '@angular/material/dialog';
12
+ import { MatNativeDateModule } from '@angular/material/core';
13
+ import { TableBuilderStateStore } from './ngrx/tableBuilderStateStore';
14
+ import * as i0 from "@angular/core";
15
+ export class TableBuilderModule {
16
+ static forRoot(config) {
17
+ return {
18
+ ngModule: TableBuilderModule,
19
+ providers: [
20
+ { provide: TableBuilderConfigToken, useValue: config }
21
+ ]
22
+ };
23
+ }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableBuilderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
25
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: TableBuilderModule, imports: [CommonModule,
26
+ MatDialogModule,
27
+ MatNativeDateModule,
28
+ RouterModule,
29
+ TableContainerComponent,
30
+ GenericTableComponent,
31
+ TableContainerComponent,
32
+ CustomCellDirective,
33
+ FilterComponent,
34
+ MatSlideToggleTbFilterDirective,
35
+ MatRadioButtonTbFilterDirective,
36
+ MatOptionTbFilterDirective,
37
+ MatCheckboxTbFilterDirective,
38
+ MatButtonToggleFilterDirective,
39
+ TableFilterDirective,
40
+ TableFilterStringContainsDirective,
41
+ TableWrapperDirective,
42
+ ResizeColumnDirective,
43
+ UtilitiesModule], exports: [GenericTableComponent,
44
+ TableContainerComponent,
45
+ CustomCellDirective,
46
+ FilterComponent,
47
+ MatSlideToggleTbFilterDirective,
48
+ MatRadioButtonTbFilterDirective,
49
+ MatOptionTbFilterDirective,
50
+ MatCheckboxTbFilterDirective,
51
+ MatButtonToggleFilterDirective,
52
+ TableFilterDirective,
53
+ TableFilterStringContainsDirective,
54
+ TableWrapperDirective,
55
+ ResizeColumnDirective,
56
+ UtilitiesModule] }); }
57
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableBuilderModule, providers: [
58
+ SpaceCasePipe,
59
+ DatePipe,
60
+ CurrencyPipe,
61
+ PhoneNumberPipe,
62
+ MultiSortDirective,
63
+ TableBuilderStateStore,
64
+ ], imports: [CommonModule,
65
+ MatDialogModule,
66
+ MatNativeDateModule,
67
+ RouterModule,
68
+ TableContainerComponent,
69
+ GenericTableComponent,
70
+ TableContainerComponent,
71
+ FilterComponent,
72
+ UtilitiesModule, UtilitiesModule] }); }
73
+ }
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TableBuilderModule, decorators: [{
75
+ type: NgModule,
76
+ args: [{
77
+ imports: [
78
+ CommonModule,
79
+ MatDialogModule,
80
+ MatNativeDateModule,
81
+ RouterModule,
82
+ TableContainerComponent,
83
+ GenericTableComponent,
84
+ TableContainerComponent,
85
+ CustomCellDirective,
86
+ FilterComponent,
87
+ MatSlideToggleTbFilterDirective,
88
+ MatRadioButtonTbFilterDirective,
89
+ MatOptionTbFilterDirective,
90
+ MatCheckboxTbFilterDirective,
91
+ MatButtonToggleFilterDirective,
92
+ TableFilterDirective,
93
+ TableFilterStringContainsDirective,
94
+ TableWrapperDirective,
95
+ ResizeColumnDirective,
96
+ UtilitiesModule,
97
+ ],
98
+ exports: [
99
+ GenericTableComponent,
100
+ TableContainerComponent,
101
+ CustomCellDirective,
102
+ FilterComponent,
103
+ MatSlideToggleTbFilterDirective,
104
+ MatRadioButtonTbFilterDirective,
105
+ MatOptionTbFilterDirective,
106
+ MatCheckboxTbFilterDirective,
107
+ MatButtonToggleFilterDirective,
108
+ TableFilterDirective,
109
+ TableFilterStringContainsDirective,
110
+ TableWrapperDirective,
111
+ ResizeColumnDirective,
112
+ UtilitiesModule,
113
+ ],
114
+ providers: [
115
+ SpaceCasePipe,
116
+ DatePipe,
117
+ CurrencyPipe,
118
+ PhoneNumberPipe,
119
+ MultiSortDirective,
120
+ TableBuilderStateStore,
121
+ ]
122
+ }]
123
+ }] });
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYnVpbGRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci90YWJsZS1idWlsZGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV2RSxPQUFPLEVBQXNCLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLHFCQUFxQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQy9GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSwrQkFBK0IsRUFBRSwrQkFBK0IsRUFBRSwwQkFBMEIsRUFBRSw0QkFBNEIsRUFBRSw4QkFBOEIsRUFBRSxvQkFBb0IsRUFBRSxrQ0FBa0MsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBOEIsTUFBTSxjQUFjLENBQUM7QUFDblYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBaUR2RSxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBMEI7UUFDdkMsT0FBTztZQUNMLFFBQVEsRUFBRSxrQkFBa0I7WUFDNUIsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUU7YUFDdkQ7U0FDRixDQUFDO0lBQ0osQ0FBQzs4R0FSVSxrQkFBa0I7K0dBQWxCLGtCQUFrQixZQTdDM0IsWUFBWTtZQUNaLGVBQWU7WUFDZixtQkFBbUI7WUFDbkIsWUFBWTtZQUNaLHVCQUF1QjtZQUN2QixxQkFBcUI7WUFDckIsdUJBQXVCO1lBQ3ZCLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YsK0JBQStCO1lBQy9CLCtCQUErQjtZQUMvQiwwQkFBMEI7WUFDMUIsNEJBQTRCO1lBQzVCLDhCQUE4QjtZQUM5QixvQkFBb0I7WUFDcEIsa0NBQWtDO1lBQ2xDLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsZUFBZSxhQUdmLHFCQUFxQjtZQUNyQix1QkFBdUI7WUFDdkIsbUJBQW1CO1lBQ25CLGVBQWU7WUFDZiwrQkFBK0I7WUFDL0IsK0JBQStCO1lBQy9CLDBCQUEwQjtZQUMxQiw0QkFBNEI7WUFDNUIsOEJBQThCO1lBQzlCLG9CQUFvQjtZQUNwQixrQ0FBa0M7WUFDbEMscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixlQUFlOytHQVdOLGtCQUFrQixhQVRsQjtZQUNULGFBQWE7WUFDYixRQUFRO1lBQ1IsWUFBWTtZQUNaLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsc0JBQXNCO1NBQ3ZCLFlBM0NDLFlBQVk7WUFDWixlQUFlO1lBQ2YsbUJBQW1CO1lBQ25CLFlBQVk7WUFDWix1QkFBdUI7WUFDdkIscUJBQXFCO1lBQ3JCLHVCQUF1QjtZQUV2QixlQUFlO1lBVWYsZUFBZSxFQWdCZixlQUFlOzsyRkFXTixrQkFBa0I7a0JBL0M5QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLHVCQUF1Qjt3QkFDdkIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZiwrQkFBK0I7d0JBQy9CLCtCQUErQjt3QkFDL0IsMEJBQTBCO3dCQUMxQiw0QkFBNEI7d0JBQzVCLDhCQUE4Qjt3QkFDOUIsb0JBQW9CO3dCQUNwQixrQ0FBa0M7d0JBQ2xDLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZiwrQkFBK0I7d0JBQy9CLCtCQUErQjt3QkFDL0IsMEJBQTBCO3dCQUMxQiw0QkFBNEI7d0JBQzVCLDhCQUE4Qjt3QkFDOUIsb0JBQW9CO3dCQUNwQixrQ0FBa0M7d0JBQ2xDLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixlQUFlO3FCQUNoQjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1QsYUFBYTt3QkFDYixRQUFRO3dCQUNSLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBEYXRlUGlwZSwgQ3VycmVuY3lQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgU3BhY2VDYXNlUGlwZSB9IGZyb20gJy4uL3V0aWxpdGllcy9waXBlcy9zcGFjZS1jYXNlLnBpcGVzJztcclxuaW1wb3J0IHsgTXVsdGlTb3J0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL211bHRpLXNvcnQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUYWJsZUJ1aWxkZXJDb25maWcsIFRhYmxlQnVpbGRlckNvbmZpZ1Rva2VuIH0gZnJvbSAnLi9jbGFzc2VzL1RhYmxlQnVpbGRlckNvbmZpZyc7XHJcbmltcG9ydCB7IFBob25lTnVtYmVyUGlwZSB9IGZyb20gJy4uL3V0aWxpdGllcy9waXBlcy9waG9uZS5waXBlJztcclxuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgRmlsdGVyQ29tcG9uZW50LCBHZW5lcmljVGFibGVDb21wb25lbnQsIFRhYmxlQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcclxuaW1wb3J0IHsgQ3VzdG9tQ2VsbERpcmVjdGl2ZSwgTWF0U2xpZGVUb2dnbGVUYkZpbHRlckRpcmVjdGl2ZSwgTWF0UmFkaW9CdXR0b25UYkZpbHRlckRpcmVjdGl2ZSwgTWF0T3B0aW9uVGJGaWx0ZXJEaXJlY3RpdmUsIE1hdENoZWNrYm94VGJGaWx0ZXJEaXJlY3RpdmUsIE1hdEJ1dHRvblRvZ2dsZUZpbHRlckRpcmVjdGl2ZSwgVGFibGVGaWx0ZXJEaXJlY3RpdmUsIFRhYmxlRmlsdGVyU3RyaW5nQ29udGFpbnNEaXJlY3RpdmUsIFRhYmxlV3JhcHBlckRpcmVjdGl2ZSwgUmVzaXplQ29sdW1uRGlyZWN0aXZlLCBUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IFV0aWxpdGllc01vZHVsZSB9IGZyb20gJy4uL3V0aWxpdGllcyc7XHJcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE1hdE5hdGl2ZURhdGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgVGFibGVCdWlsZGVyU3RhdGVTdG9yZSB9IGZyb20gJy4vbmdyeC90YWJsZUJ1aWxkZXJTdGF0ZVN0b3JlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gICAgTWF0TmF0aXZlRGF0ZU1vZHVsZSxcclxuICAgIFJvdXRlck1vZHVsZSxcclxuICAgIFRhYmxlQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgR2VuZXJpY1RhYmxlQ29tcG9uZW50LFxyXG4gICAgVGFibGVDb250YWluZXJDb21wb25lbnQsXHJcbiAgICBDdXN0b21DZWxsRGlyZWN0aXZlLFxyXG4gICAgRmlsdGVyQ29tcG9uZW50LFxyXG4gICAgTWF0U2xpZGVUb2dnbGVUYkZpbHRlckRpcmVjdGl2ZSxcclxuICAgIE1hdFJhZGlvQnV0dG9uVGJGaWx0ZXJEaXJlY3RpdmUsXHJcbiAgICBNYXRPcHRpb25UYkZpbHRlckRpcmVjdGl2ZSxcclxuICAgIE1hdENoZWNrYm94VGJGaWx0ZXJEaXJlY3RpdmUsXHJcbiAgICBNYXRCdXR0b25Ub2dnbGVGaWx0ZXJEaXJlY3RpdmUsXHJcbiAgICBUYWJsZUZpbHRlckRpcmVjdGl2ZSxcclxuICAgIFRhYmxlRmlsdGVyU3RyaW5nQ29udGFpbnNEaXJlY3RpdmUsXHJcbiAgICBUYWJsZVdyYXBwZXJEaXJlY3RpdmUsXHJcbiAgICBSZXNpemVDb2x1bW5EaXJlY3RpdmUsXHJcbiAgICBVdGlsaXRpZXNNb2R1bGUsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBHZW5lcmljVGFibGVDb21wb25lbnQsXHJcbiAgICBUYWJsZUNvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIEN1c3RvbUNlbGxEaXJlY3RpdmUsXHJcbiAgICBGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBNYXRTbGlkZVRvZ2dsZVRiRmlsdGVyRGlyZWN0aXZlLFxyXG4gICAgTWF0UmFkaW9CdXR0b25UYkZpbHRlckRpcmVjdGl2ZSxcclxuICAgIE1hdE9wdGlvblRiRmlsdGVyRGlyZWN0aXZlLFxyXG4gICAgTWF0Q2hlY2tib3hUYkZpbHRlckRpcmVjdGl2ZSxcclxuICAgIE1hdEJ1dHRvblRvZ2dsZUZpbHRlckRpcmVjdGl2ZSxcclxuICAgIFRhYmxlRmlsdGVyRGlyZWN0aXZlLFxyXG4gICAgVGFibGVGaWx0ZXJTdHJpbmdDb250YWluc0RpcmVjdGl2ZSxcclxuICAgIFRhYmxlV3JhcHBlckRpcmVjdGl2ZSxcclxuICAgIFJlc2l6ZUNvbHVtbkRpcmVjdGl2ZSxcclxuICAgIFV0aWxpdGllc01vZHVsZSxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgU3BhY2VDYXNlUGlwZSxcclxuICAgIERhdGVQaXBlLFxyXG4gICAgQ3VycmVuY3lQaXBlLFxyXG4gICAgUGhvbmVOdW1iZXJQaXBlLFxyXG4gICAgTXVsdGlTb3J0RGlyZWN0aXZlLFxyXG4gICAgVGFibGVCdWlsZGVyU3RhdGVTdG9yZSxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUJ1aWxkZXJNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZzogVGFibGVCdWlsZGVyQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxUYWJsZUJ1aWxkZXJNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBUYWJsZUJ1aWxkZXJNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHsgcHJvdmlkZTogVGFibGVCdWlsZGVyQ29uZmlnVG9rZW4sIHVzZVZhbHVlOiBjb25maWcgfVxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,14 @@
1
+ export const replaceInArrayWithClone = (arr, findMeth, actionOnClone = ((t) => { })) => {
2
+ const index = arr.findIndex(findMeth);
3
+ const clonedArray = [...arr];
4
+ const t = clonedArray[index];
5
+ clonedArray[index] =
6
+ t != null && typeof t === 'object' ?
7
+ Array.isArray(t) ?
8
+ [...t]
9
+ : { ...t }
10
+ : t;
11
+ actionOnClone(clonedArray[index]);
12
+ return clonedArray;
13
+ };
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy91dGlsaXRpZXMvYXJyYXktaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFVLEdBQVEsRUFBRSxRQUEyQixFQUFFLGdCQUErQixDQUFDLENBQUMsQ0FBSSxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUMsRUFBTyxFQUFFO0lBQzVJLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixXQUFXLENBQUMsS0FBSyxDQUFDO1FBQ2hCLENBQUMsSUFBSSxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUM7WUFDbEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixDQUFDLEdBQUcsQ0FBQyxDQUFRO2dCQUNiLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQ1osQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNSLGFBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQyxPQUFPLFdBQVcsQ0FBQztBQUNyQixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgcmVwbGFjZUluQXJyYXlXaXRoQ2xvbmUgPSA8VCA9IGFueT4oYXJyOiBUW10sIGZpbmRNZXRoOiAodDogVCkgPT4gYm9vbGVhbiwgYWN0aW9uT25DbG9uZTogKHQ6IFQpID0+IGFueSA9ICgodDogVCkgPT4ge30pKTogVFtdID0+IHtcclxuICBjb25zdCBpbmRleCA9IGFyci5maW5kSW5kZXgoZmluZE1ldGgpO1xyXG4gIGNvbnN0IGNsb25lZEFycmF5ID0gWy4uLmFycl07XHJcbiAgY29uc3QgdCA9IGNsb25lZEFycmF5W2luZGV4XTtcclxuICBjbG9uZWRBcnJheVtpbmRleF0gPVxyXG4gICAgdCAhPSBudWxsICYmIHR5cGVvZiB0ID09PSAnb2JqZWN0JyA/XHJcbiAgICAgIEFycmF5LmlzQXJyYXkodCkgP1xyXG4gICAgICAgIFsuLi50XSBhcyBhbnlcclxuICAgICAgICA6IHsgLi4udCB9XHJcbiAgICAgIDogdDtcclxuICBhY3Rpb25PbkNsb25lKGNsb25lZEFycmF5W2luZGV4XSk7XHJcbiAgcmV0dXJuIGNsb25lZEFycmF5O1xyXG59Il19
@@ -0,0 +1,27 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AutoFocusDirective {
4
+ constructor(elementRef) {
5
+ this.elementRef = elementRef;
6
+ this.autoFocus = true;
7
+ }
8
+ ngAfterViewInit() {
9
+ if (this.autoFocus) {
10
+ setTimeout(() => {
11
+ this.elementRef.nativeElement.focus();
12
+ });
13
+ }
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: AutoFocusDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
16
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: AutoFocusDirective, isStandalone: true, selector: "[autoFocus]", inputs: { autoFocus: "autoFocus" }, ngImport: i0 }); }
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: AutoFocusDirective, decorators: [{
19
+ type: Directive,
20
+ args: [{
21
+ selector: '[autoFocus]',
22
+ standalone: true,
23
+ }]
24
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { autoFocus: [{
25
+ type: Input
26
+ }] } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1mb2N1cy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdXRpbGl0aWVzL2RpcmVjdGl2ZXMvYXV0by1mb2N1cy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBNkIsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU01RSxNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFEakMsY0FBUyxHQUFHLElBQUksQ0FBQztJQUNvQixDQUFDO0lBRS9DLGVBQWU7UUFDYixJQUFHLElBQUksQ0FBQyxTQUFTLEVBQUMsQ0FBQztZQUNqQixVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7OEdBWFUsa0JBQWtCO2tHQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBSjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjsrRUFHVSxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBBZnRlclZpZXdJbml0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbYXV0b0ZvY3VzXScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dG9Gb2N1c0RpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG5cclxuICBASW5wdXQoKSBhdXRvRm9jdXMgPSB0cnVlO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikgeyB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmKHRoaXMuYXV0b0ZvY3VzKXtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,22 @@
1
+ import { Directive } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class ClickEmitterDirective extends Subject {
5
+ constructor() {
6
+ super();
7
+ }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ClickEmitterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
9
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: ClickEmitterDirective, isStandalone: true, selector: "[clickEmitter]", host: { listeners: { "click": "next(true)" } }, exportAs: ["clickEmitter"], usesInheritance: true, ngImport: i0 }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ClickEmitterDirective, decorators: [{
12
+ type: Directive,
13
+ args: [{
14
+ selector: '[clickEmitter]',
15
+ exportAs: 'clickEmitter',
16
+ host: {
17
+ '(click)': 'next(true)'
18
+ },
19
+ standalone: true,
20
+ }]
21
+ }], ctorParameters: () => [] });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2tFbWl0dGVyRGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3V0aWxpdGllcy9kaXJlY3RpdmVzL2NsaWNrRW1pdHRlckRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBVTVCLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxPQUFnQjtJQUM1RDtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQzs4R0FIYSxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFQcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUUsY0FBYztvQkFDeEIsSUFBSSxFQUFFO3dCQUNKLFNBQVMsRUFBRSxZQUFZO3FCQUN4QjtvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2NsaWNrRW1pdHRlcl0nLFxyXG4gIGV4cG9ydEFzOiAnY2xpY2tFbWl0dGVyJyxcclxuICBob3N0OiB7XHJcbiAgICAnKGNsaWNrKSc6ICduZXh0KHRydWUpJ1xyXG4gIH0sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSkgZXhwb3J0IGNsYXNzIENsaWNrRW1pdHRlckRpcmVjdGl2ZSBleHRlbmRzIFN1YmplY3Q8Ym9vbGVhbj4ge1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,28 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class ClickSubjectDirective extends Subject {
5
+ constructor() {
6
+ super();
7
+ }
8
+ set clickSubject(val) {
9
+ this._val = val;
10
+ }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ClickSubjectDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
12
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: ClickSubjectDirective, isStandalone: true, selector: "[clickSubject]", inputs: { clickSubject: "clickSubject" }, host: { listeners: { "click": "next(this._val)" } }, exportAs: ["clickSubject"], usesInheritance: true, ngImport: i0 }); }
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ClickSubjectDirective, decorators: [{
15
+ type: Directive,
16
+ args: [{
17
+ selector: '[clickSubject]',
18
+ exportAs: 'clickSubject',
19
+ host: {
20
+ '(click)': 'next(this._val)'
21
+ },
22
+ standalone: true,
23
+ }]
24
+ }], ctorParameters: () => [], propDecorators: { clickSubject: [{
25
+ type: Input,
26
+ args: ['clickSubject']
27
+ }] } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2tTdWJqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3V0aWxpdGllcy9kaXJlY3RpdmVzL2NsaWNrU3ViamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVM1QixNQUFNLE9BQU8scUJBQW1DLFNBQVEsT0FBVTtJQUNuRTtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQUdELElBQTJCLFlBQVksQ0FBRSxHQUFNO1FBQzdDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO0lBQ2xCLENBQUM7OEdBUmEscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBUHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLElBQUksRUFBRTt3QkFDSixTQUFTLEVBQUUsaUJBQWlCO3FCQUM3QjtvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7d0RBTTRCLFlBQVk7c0JBQXRDLEtBQUs7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbY2xpY2tTdWJqZWN0XScsXHJcbiAgZXhwb3J0QXM6ICdjbGlja1N1YmplY3QnLFxyXG4gIGhvc3Q6IHtcclxuICAgICcoY2xpY2spJzogJ25leHQodGhpcy5fdmFsKSdcclxuICB9LFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbn0pIGV4cG9ydCBjbGFzcyBDbGlja1N1YmplY3REaXJlY3RpdmU8VCA9IGJvb2xlYW4+IGV4dGVuZHMgU3ViamVjdDxUPiB7XHJcbiAgY29uc3RydWN0b3IoICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcbiAgX3ZhbCE6IFQ7XHJcblxyXG4gIEBJbnB1dCgnY2xpY2tTdWJqZWN0Jykgc2V0IGNsaWNrU3ViamVjdCggdmFsOiBUKSB7XHJcbiAgICB0aGlzLl92YWwgPSB2YWw7XHJcbiAgfVxyXG59XHJcbiJdfQ==