@one-paragon/angular-utilities 1.2.10 → 1.2.12

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 (406) hide show
  1. package/README.md +24 -24
  2. package/karma.conf.js +44 -0
  3. package/ng-package.json +7 -0
  4. package/package.json +16 -30
  5. package/src/action-state/action-state-spinner/action-state-spinner.component.css +16 -0
  6. package/src/action-state/action-state-spinner/action-state-spinner.component.html +6 -0
  7. package/src/action-state/action-state-spinner/action-state-spinner.component.spec.ts +25 -0
  8. package/src/action-state/action-state-spinner/action-state-spinner.component.ts +26 -0
  9. package/src/action-state/action-state-ui/action-state-ui.module.ts +13 -0
  10. package/{action-state/index.d.ts → src/action-state/index.ts} +8 -4
  11. package/src/action-state/ngrx-ext/ngrx-ext.module.ts +15 -0
  12. package/src/action-state/ngrx.ts +69 -0
  13. package/src/http-request-state/HttpRequestStateFactory.ts +66 -0
  14. package/src/http-request-state/HttpRequestStateStore.ts +173 -0
  15. package/src/http-request-state/directives/HttpStateDirectiveBase.ts +29 -0
  16. package/src/http-request-state/directives/http-error-state-directive.ts +21 -0
  17. package/src/http-request-state/directives/http-inProgress-state-directive.ts +19 -0
  18. package/src/http-request-state/directives/http-notStarted-state-directive.ts +19 -0
  19. package/src/http-request-state/directives/http-success-state-directive.ts +29 -0
  20. package/{http-request-state/directives/index.d.ts → src/http-request-state/directives/index.ts} +5 -5
  21. package/src/http-request-state/directives/request-state-directive.spec.ts +72 -0
  22. package/src/http-request-state/directives/request-state-directive.ts +78 -0
  23. package/src/http-request-state/helpers.ts +30 -0
  24. package/src/http-request-state/http-request-state.ts +69 -0
  25. package/src/http-request-state/http-state-module.ts +23 -0
  26. package/{http-request-state/index.d.ts → src/http-request-state/index.ts} +6 -6
  27. package/src/http-request-state/observable.spec.ts +43 -0
  28. package/src/http-request-state/rxjs/getRequestorBody.ts +10 -0
  29. package/src/http-request-state/rxjs/getRequestorState.ts +8 -0
  30. package/{http-request-state/rxjs/index.d.ts → src/http-request-state/rxjs/index.ts} +4 -4
  31. package/src/http-request-state/rxjs/tapError.ts +16 -0
  32. package/src/http-request-state/rxjs/tapSuccess.ts +16 -0
  33. package/src/http-request-state/strategies.spec.ts +42 -0
  34. package/src/http-request-state/types.ts +55 -0
  35. package/src/ngrx/actionable-selector.ts +95 -0
  36. package/src/ngrx/index.ts +1 -0
  37. package/{public-api.d.ts → src/public-api.ts} +35 -16
  38. package/src/rxjs/defaultShareReplay.ts +8 -0
  39. package/{rxjs/index.d.ts → src/rxjs/index.ts} +5 -5
  40. package/src/rxjs/mapError.ts +8 -0
  41. package/src/rxjs/rxjs-operators.ts +132 -0
  42. package/src/rxjs/subjectifier.ts +17 -0
  43. package/src/rxjs/subscriber.directive.ts +57 -0
  44. package/src/specs/clickSubject.spec.ts +95 -0
  45. package/src/specs/dialog.spec.ts +101 -0
  46. package/src/specs/toggleGroupDirective.spec.ts +229 -0
  47. package/src/table-builder/classes/DefaultSettings.ts +11 -0
  48. package/src/table-builder/classes/MatTableObservableDataSource.ts +23 -0
  49. package/src/table-builder/classes/TableBuilderConfig.ts +35 -0
  50. package/src/table-builder/classes/TableBuilderDataSource.ts +80 -0
  51. package/src/table-builder/classes/TableState.ts +96 -0
  52. package/src/table-builder/classes/data-store.ts +10 -0
  53. package/{table-builder/classes/display-col.d.ts → src/table-builder/classes/display-col.ts} +5 -5
  54. package/src/table-builder/classes/filter-info.ts +108 -0
  55. package/src/table-builder/classes/table-builder-general-settings.ts +129 -0
  56. package/src/table-builder/classes/table-builder.ts +94 -0
  57. package/src/table-builder/classes/table-store.ts +471 -0
  58. package/src/table-builder/components/array-column.component.ts +36 -0
  59. package/src/table-builder/components/column-builder/column-builder.component.html +61 -0
  60. package/src/table-builder/components/column-builder/column-builder.component.scss +43 -0
  61. package/src/table-builder/components/column-builder/column-builder.component.spec.ts +49 -0
  62. package/src/table-builder/components/column-builder/column-builder.component.ts +135 -0
  63. package/src/table-builder/components/column-builder/column-helpers.ts +53 -0
  64. package/src/table-builder/components/date-filter/date-filter.component.html +23 -0
  65. package/src/table-builder/components/date-filter/date-filter.component.ts +24 -0
  66. package/src/table-builder/components/date-time-filter/date-time-filter.component.html +9 -0
  67. package/src/table-builder/components/date-time-filter/date-time-filter.component.ts +22 -0
  68. package/src/table-builder/components/filter/filter.component.html +91 -0
  69. package/src/table-builder/components/filter/filter.component.scss +64 -0
  70. package/src/table-builder/components/filter/filter.component.spec.ts +87 -0
  71. package/src/table-builder/components/filter/filter.component.ts +60 -0
  72. package/src/table-builder/components/filter/in-list/in-list-filter.component.ts +93 -0
  73. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.html +55 -0
  74. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.scss +57 -0
  75. package/src/table-builder/components/gen-col-displayer/gen-col-displayer.component.ts +59 -0
  76. package/src/table-builder/components/generic-table/generic-table.component.html +78 -0
  77. package/src/table-builder/components/generic-table/generic-table.component.scss +42 -0
  78. package/src/table-builder/components/generic-table/generic-table.component.ts +299 -0
  79. package/src/table-builder/components/generic-table/paginator.component.ts +99 -0
  80. package/src/table-builder/components/group-by-list/group-by-list.component.css +8 -0
  81. package/src/table-builder/components/group-by-list/group-by-list.component.html +12 -0
  82. package/src/table-builder/components/group-by-list/group-by-list.component.spec.ts +23 -0
  83. package/src/table-builder/components/group-by-list/group-by-list.component.ts +21 -0
  84. package/src/table-builder/components/header-menu/header-menu.component.html +104 -0
  85. package/src/table-builder/components/header-menu/header-menu.component.scss +96 -0
  86. package/src/table-builder/components/header-menu/header-menu.component.ts +99 -0
  87. package/src/table-builder/components/in-filter/in-filter.component.css +3 -0
  88. package/src/table-builder/components/in-filter/in-filter.component.html +20 -0
  89. package/src/table-builder/components/in-filter/in-filter.component.ts +66 -0
  90. package/{table-builder/components/index.d.ts → src/table-builder/components/index.ts} +9 -9
  91. package/src/table-builder/components/initialization-component/initialization-component.html +29 -0
  92. package/src/table-builder/components/initialization-component/initialization-component.ts +24 -0
  93. package/src/table-builder/components/link-column.component.ts +47 -0
  94. package/src/table-builder/components/number-filter/number-filter.component.css +10 -0
  95. package/src/table-builder/components/number-filter/number-filter.component.html +19 -0
  96. package/src/table-builder/components/number-filter/number-filter.component.spec.ts +30 -0
  97. package/src/table-builder/components/number-filter/number-filter.component.ts +25 -0
  98. package/src/table-builder/components/profiles-menu/profiles-menu.component.html +74 -0
  99. package/src/table-builder/components/profiles-menu/profiles-menu.component.scss +98 -0
  100. package/src/table-builder/components/profiles-menu/profiles-menu.component.spec.ts +23 -0
  101. package/src/table-builder/components/profiles-menu/profiles-menu.component.ts +65 -0
  102. package/src/table-builder/components/scroll-strategy.ts +76 -0
  103. package/src/table-builder/components/sort-menu/sort-menu.component-store.ts +66 -0
  104. package/src/table-builder/components/sort-menu/sort-menu.component.html +111 -0
  105. package/src/table-builder/components/sort-menu/sort-menu.component.scss +119 -0
  106. package/src/table-builder/components/sort-menu/sort-menu.component.ts +98 -0
  107. package/{table-builder/components/table-container/table-container-imports.d.ts → src/table-builder/components/table-container/table-container-imports.ts} +32 -14
  108. package/src/table-builder/components/table-container/table-container.css +54 -0
  109. package/src/table-builder/components/table-container/table-container.helpers/data-state.helpers.ts +141 -0
  110. package/src/table-builder/components/table-container/table-container.helpers/filter-state.helpers.ts +106 -0
  111. package/src/table-builder/components/table-container/table-container.helpers/groupBy.helpers.ts +86 -0
  112. package/src/table-builder/components/table-container/table-container.helpers/sort-state.helpers.ts +45 -0
  113. package/src/table-builder/components/table-container/table-container.html +95 -0
  114. package/src/table-builder/components/table-container/table-container.spec.ts +154 -0
  115. package/src/table-builder/components/table-container/table-container.ts +356 -0
  116. package/src/table-builder/components/table-container/tableProps.ts +20 -0
  117. package/src/table-builder/components/table-container/virtual-scroll-container.ts +145 -0
  118. package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.html +31 -0
  119. package/src/table-builder/components/table-container-filter/filter-list/filter-list.component.ts +46 -0
  120. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.css +42 -0
  121. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.html +10 -0
  122. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.spec.ts +86 -0
  123. package/src/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.ts +34 -0
  124. package/src/table-builder/components/table-container-filter/table-wrapper-filter-store.ts +23 -0
  125. package/src/table-builder/directives/custom-cell-directive.ts +58 -0
  126. package/{table-builder/directives/index.d.ts → src/table-builder/directives/index.ts} +6 -5
  127. package/src/table-builder/directives/multi-sort.directive.spec.ts +124 -0
  128. package/src/table-builder/directives/multi-sort.directive.ts +51 -0
  129. package/src/table-builder/directives/resize-column.directive.ts +108 -0
  130. package/src/table-builder/directives/table-wrapper.directive.ts +14 -0
  131. package/src/table-builder/directives/tb-filter.directive.ts +396 -0
  132. package/src/table-builder/enums/filterTypes.ts +40 -0
  133. package/src/table-builder/functions/boolean-filter-function.ts +12 -0
  134. package/src/table-builder/functions/date-filter-function.ts +68 -0
  135. package/src/table-builder/functions/download-data.ts +11 -0
  136. package/src/table-builder/functions/null-filter-function.ts +9 -0
  137. package/src/table-builder/functions/number-filter-function.ts +41 -0
  138. package/src/table-builder/functions/sort-data-function.ts +23 -0
  139. package/src/table-builder/functions/string-filter-function.ts +51 -0
  140. package/{table-builder/interfaces/ColumnInfo.d.ts → src/table-builder/interfaces/ColumnInfo.ts} +7 -6
  141. package/src/table-builder/interfaces/column-template.ts +9 -0
  142. package/{table-builder/interfaces/dictionary.d.ts → src/table-builder/interfaces/dictionary.ts} +3 -3
  143. package/src/table-builder/interfaces/report-def.ts +155 -0
  144. package/src/table-builder/ngrx/tableBuilderStateStore.ts +199 -0
  145. package/src/table-builder/pipes/column-total.pipe.ts +17 -0
  146. package/src/table-builder/pipes/format-filter-type.pipe.ts +12 -0
  147. package/src/table-builder/pipes/format-filter-value.pipe.ts +42 -0
  148. package/src/table-builder/pipes/key-display.ts +16 -0
  149. package/src/table-builder/services/export-to-csv.service.ts +97 -0
  150. package/src/table-builder/services/link-creator.service.ts +67 -0
  151. package/src/table-builder/services/table-template-service.ts +59 -0
  152. package/src/table-builder/services/transform-creator.ts +95 -0
  153. package/src/table-builder/specs/table-custom-filters.spec.ts +262 -0
  154. package/src/table-builder/styles/collapser.styles.scss +16 -0
  155. package/src/table-builder/table-builder.module.ts +73 -0
  156. package/src/test.ts +17 -0
  157. package/src/utilities/array-helpers.ts +13 -0
  158. package/src/utilities/directives/auto-focus.directive.ts +21 -0
  159. package/src/utilities/directives/clickEmitterDirective.ts +16 -0
  160. package/src/utilities/directives/clickSubject.ts +20 -0
  161. package/src/utilities/directives/conditional-classes.directive.ts +36 -0
  162. package/src/utilities/directives/dialog-service.ts +19 -0
  163. package/src/utilities/directives/dialog.ts +144 -0
  164. package/src/utilities/directives/mat-toggle-group-directive.ts +61 -0
  165. package/src/utilities/directives/prevent-enter.directive.ts +13 -0
  166. package/src/utilities/directives/stop-propagation.directive.ts +20 -0
  167. package/src/utilities/directives/styler.ts +40 -0
  168. package/src/utilities/directives/trim-whitespace.directive.ts +21 -0
  169. package/{utilities/index.d.ts → src/utilities/index.ts} +22 -15
  170. package/src/utilities/module.ts +55 -0
  171. package/src/utilities/pipes/function.pipe.ts +16 -0
  172. package/src/utilities/pipes/phone.pipe.ts +15 -0
  173. package/src/utilities/pipes/space-case.pipes.spec.ts +47 -0
  174. package/src/utilities/pipes/space-case.pipes.ts +23 -0
  175. package/tsconfig.lib.json +19 -0
  176. package/tsconfig.lib.prod.json +10 -0
  177. package/tsconfig.spec.json +17 -0
  178. package/action-state/action-state-spinner/action-state-spinner.component.d.ts +0 -12
  179. package/action-state/action-state-ui/action-state-ui.module.d.ts +0 -7
  180. package/action-state/ngrx-ext/ngrx-ext.module.d.ts +0 -8
  181. package/action-state/ngrx.d.ts +0 -31
  182. package/esm2022/action-state/action-state-spinner/action-state-spinner.component.mjs +0 -24
  183. package/esm2022/action-state/action-state-ui/action-state-ui.module.mjs +0 -20
  184. package/esm2022/action-state/index.mjs +0 -8
  185. package/esm2022/action-state/ngrx-ext/ngrx-ext.module.mjs +0 -23
  186. package/esm2022/action-state/ngrx.mjs +0 -47
  187. package/esm2022/http-request-state/HttpRequestStateFactory.mjs +0 -51
  188. package/esm2022/http-request-state/HttpRequestStateStore.mjs +0 -121
  189. package/esm2022/http-request-state/directives/HttpStateDirectiveBase.mjs +0 -30
  190. package/esm2022/http-request-state/directives/http-error-state-directive.mjs +0 -23
  191. package/esm2022/http-request-state/directives/http-inProgress-state-directive.mjs +0 -23
  192. package/esm2022/http-request-state/directives/http-notStarted-state-directive.mjs +0 -23
  193. package/esm2022/http-request-state/directives/http-success-state-directive.mjs +0 -29
  194. package/esm2022/http-request-state/directives/index.mjs +0 -6
  195. package/esm2022/http-request-state/directives/request-state-directive.mjs +0 -61
  196. package/esm2022/http-request-state/helpers.mjs +0 -22
  197. package/esm2022/http-request-state/http-request-state.mjs +0 -39
  198. package/esm2022/http-request-state/http-state-module.mjs +0 -40
  199. package/esm2022/http-request-state/index.mjs +0 -7
  200. package/esm2022/http-request-state/rxjs/getRequestorBody.mjs +0 -4
  201. package/esm2022/http-request-state/rxjs/getRequestorState.mjs +0 -3
  202. package/esm2022/http-request-state/rxjs/index.mjs +0 -5
  203. package/esm2022/http-request-state/rxjs/tapError.mjs +0 -12
  204. package/esm2022/http-request-state/rxjs/tapSuccess.mjs +0 -12
  205. package/esm2022/http-request-state/types.mjs +0 -16
  206. package/esm2022/ngrx/actionable-selector.mjs +0 -71
  207. package/esm2022/ngrx/index.mjs +0 -2
  208. package/esm2022/one-paragon-angular-utilities.mjs +0 -5
  209. package/esm2022/public-api.mjs +0 -20
  210. package/esm2022/rxjs/defaultShareReplay.mjs +0 -7
  211. package/esm2022/rxjs/index.mjs +0 -6
  212. package/esm2022/rxjs/mapError.mjs +0 -8
  213. package/esm2022/rxjs/rxjs-operators.mjs +0 -92
  214. package/esm2022/rxjs/subjectifier.mjs +0 -15
  215. package/esm2022/rxjs/subscriber.directive.mjs +0 -50
  216. package/esm2022/table-builder/classes/DefaultSettings.mjs +0 -6
  217. package/esm2022/table-builder/classes/MatTableObservableDataSource.mjs +0 -23
  218. package/esm2022/table-builder/classes/TableBuilderConfig.mjs +0 -18
  219. package/esm2022/table-builder/classes/TableBuilderDataSource.mjs +0 -48
  220. package/esm2022/table-builder/classes/TableState.mjs +0 -47
  221. package/esm2022/table-builder/classes/display-col.mjs +0 -2
  222. package/esm2022/table-builder/classes/filter-info.mjs +0 -61
  223. package/esm2022/table-builder/classes/table-builder-general-settings.mjs +0 -102
  224. package/esm2022/table-builder/classes/table-builder.mjs +0 -77
  225. package/esm2022/table-builder/classes/table-store.mjs +0 -362
  226. package/esm2022/table-builder/components/array-column.component.mjs +0 -53
  227. package/esm2022/table-builder/components/column-builder/column-builder.component.mjs +0 -134
  228. package/esm2022/table-builder/components/column-builder/column-helpers.mjs +0 -47
  229. package/esm2022/table-builder/components/date-filter/date-filter.component.mjs +0 -29
  230. package/esm2022/table-builder/components/date-time-filter/date-time-filter.component.mjs +0 -24
  231. package/esm2022/table-builder/components/filter/filter.component.mjs +0 -64
  232. package/esm2022/table-builder/components/filter/in-list/in-list-filter.component.mjs +0 -102
  233. package/esm2022/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +0 -53
  234. package/esm2022/table-builder/components/generic-table/generic-table.component.mjs +0 -261
  235. package/esm2022/table-builder/components/generic-table/paginator.component.mjs +0 -96
  236. package/esm2022/table-builder/components/group-by-list/group-by-list.component.mjs +0 -21
  237. package/esm2022/table-builder/components/header-menu/header-menu.component.mjs +0 -103
  238. package/esm2022/table-builder/components/in-filter/in-filter.component.mjs +0 -65
  239. package/esm2022/table-builder/components/index.mjs +0 -10
  240. package/esm2022/table-builder/components/initialization-component/initialization-component.mjs +0 -47
  241. package/esm2022/table-builder/components/link-column.component.mjs +0 -74
  242. package/esm2022/table-builder/components/number-filter/number-filter.component.mjs +0 -29
  243. package/esm2022/table-builder/components/profiles-menu/profiles-menu.component.mjs +0 -64
  244. package/esm2022/table-builder/components/scroll-strategy.mjs +0 -60
  245. package/esm2022/table-builder/components/sort-menu/sort-menu.component-store.mjs +0 -44
  246. package/esm2022/table-builder/components/sort-menu/sort-menu.component.mjs +0 -82
  247. package/esm2022/table-builder/components/table-container/table-container-imports.mjs +0 -26
  248. package/esm2022/table-builder/components/table-container/table-container.helpers/data-state.helpers.mjs +0 -135
  249. package/esm2022/table-builder/components/table-container/table-container.helpers/filter-state.helpers.mjs +0 -83
  250. package/esm2022/table-builder/components/table-container/table-container.helpers/groupBy.helpers.mjs +0 -71
  251. package/esm2022/table-builder/components/table-container/table-container.helpers/sort-state.helpers.mjs +0 -36
  252. package/esm2022/table-builder/components/table-container/table-container.mjs +0 -305
  253. package/esm2022/table-builder/components/table-container/tableProps.mjs +0 -8
  254. package/esm2022/table-builder/components/table-container/virtual-scroll-container.mjs +0 -126
  255. package/esm2022/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +0 -45
  256. package/esm2022/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +0 -38
  257. package/esm2022/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +0 -25
  258. package/esm2022/table-builder/directives/custom-cell-directive.mjs +0 -74
  259. package/esm2022/table-builder/directives/index.mjs +0 -6
  260. package/esm2022/table-builder/directives/multi-sort.directive.mjs +0 -50
  261. package/esm2022/table-builder/directives/resize-column.directive.mjs +0 -87
  262. package/esm2022/table-builder/directives/table-wrapper.directive.mjs +0 -18
  263. package/esm2022/table-builder/directives/tb-filter.directive.mjs +0 -405
  264. package/esm2022/table-builder/enums/filterTypes.mjs +0 -29
  265. package/esm2022/table-builder/functions/boolean-filter-function.mjs +0 -10
  266. package/esm2022/table-builder/functions/date-filter-function.mjs +0 -58
  267. package/esm2022/table-builder/functions/download-data.mjs +0 -12
  268. package/esm2022/table-builder/functions/null-filter-function.mjs +0 -8
  269. package/esm2022/table-builder/functions/number-filter-function.mjs +0 -32
  270. package/esm2022/table-builder/functions/sort-data-function.mjs +0 -17
  271. package/esm2022/table-builder/functions/string-filter-function.mjs +0 -41
  272. package/esm2022/table-builder/interfaces/ColumnInfo.mjs +0 -2
  273. package/esm2022/table-builder/interfaces/dictionary.mjs +0 -2
  274. package/esm2022/table-builder/interfaces/report-def.mjs +0 -50
  275. package/esm2022/table-builder/ngrx/tableBuilderStateStore.mjs +0 -154
  276. package/esm2022/table-builder/pipes/column-total.pipe.mjs +0 -22
  277. package/esm2022/table-builder/pipes/format-filter-type.pipe.mjs +0 -18
  278. package/esm2022/table-builder/pipes/format-filter-value.pipe.mjs +0 -43
  279. package/esm2022/table-builder/pipes/key-display.mjs +0 -18
  280. package/esm2022/table-builder/services/export-to-csv.service.mjs +0 -85
  281. package/esm2022/table-builder/services/link-creator.service.mjs +0 -50
  282. package/esm2022/table-builder/services/table-template-service.mjs +0 -60
  283. package/esm2022/table-builder/services/transform-creator.mjs +0 -100
  284. package/esm2022/table-builder/table-builder.module.mjs +0 -124
  285. package/esm2022/utilities/array-helpers.mjs +0 -14
  286. package/esm2022/utilities/directives/auto-focus.directive.mjs +0 -25
  287. package/esm2022/utilities/directives/clickEmitterDirective.mjs +0 -22
  288. package/esm2022/utilities/directives/clickSubject.mjs +0 -29
  289. package/esm2022/utilities/directives/conditional-classes.directive.mjs +0 -36
  290. package/esm2022/utilities/directives/dialog-service.mjs +0 -21
  291. package/esm2022/utilities/directives/dialog.mjs +0 -145
  292. package/esm2022/utilities/directives/mat-toggle-group-directive.mjs +0 -59
  293. package/esm2022/utilities/directives/prevent-enter.directive.mjs +0 -20
  294. package/esm2022/utilities/directives/stop-propagation.directive.mjs +0 -26
  295. package/esm2022/utilities/directives/styler.mjs +0 -41
  296. package/esm2022/utilities/directives/trim-whitespace.directive.mjs +0 -28
  297. package/esm2022/utilities/index.mjs +0 -16
  298. package/esm2022/utilities/module.mjs +0 -90
  299. package/esm2022/utilities/pipes/function.pipe.mjs +0 -22
  300. package/esm2022/utilities/pipes/phone.pipe.mjs +0 -20
  301. package/esm2022/utilities/pipes/space-case.pipes.mjs +0 -28
  302. package/fesm2022/one-paragon-angular-utilities.mjs +0 -5564
  303. package/fesm2022/one-paragon-angular-utilities.mjs.map +0 -1
  304. package/http-request-state/HttpRequestStateFactory.d.ts +0 -17
  305. package/http-request-state/HttpRequestStateStore.d.ts +0 -54
  306. package/http-request-state/directives/HttpStateDirectiveBase.d.ts +0 -14
  307. package/http-request-state/directives/http-error-state-directive.d.ts +0 -9
  308. package/http-request-state/directives/http-inProgress-state-directive.d.ts +0 -9
  309. package/http-request-state/directives/http-notStarted-state-directive.d.ts +0 -9
  310. package/http-request-state/directives/http-success-state-directive.d.ts +0 -16
  311. package/http-request-state/directives/request-state-directive.d.ts +0 -34
  312. package/http-request-state/helpers.d.ts +0 -9
  313. package/http-request-state/http-request-state.d.ts +0 -12
  314. package/http-request-state/http-state-module.d.ts +0 -11
  315. package/http-request-state/rxjs/getRequestorBody.d.ts +0 -3
  316. package/http-request-state/rxjs/getRequestorState.d.ts +0 -3
  317. package/http-request-state/rxjs/tapError.d.ts +0 -3
  318. package/http-request-state/rxjs/tapSuccess.d.ts +0 -3
  319. package/http-request-state/types.d.ts +0 -41
  320. package/index.d.ts +0 -5
  321. package/ngrx/actionable-selector.d.ts +0 -17
  322. package/ngrx/index.d.ts +0 -1
  323. package/rxjs/defaultShareReplay.d.ts +0 -2
  324. package/rxjs/mapError.d.ts +0 -2
  325. package/rxjs/rxjs-operators.d.ts +0 -13
  326. package/rxjs/subjectifier.d.ts +0 -8
  327. package/rxjs/subscriber.directive.d.ts +0 -14
  328. package/table-builder/classes/DefaultSettings.d.ts +0 -9
  329. package/table-builder/classes/MatTableObservableDataSource.d.ts +0 -9
  330. package/table-builder/classes/TableBuilderConfig.d.ts +0 -21
  331. package/table-builder/classes/TableBuilderDataSource.d.ts +0 -13
  332. package/table-builder/classes/TableState.d.ts +0 -57
  333. package/table-builder/classes/filter-info.d.ts +0 -35
  334. package/table-builder/classes/table-builder-general-settings.d.ts +0 -74
  335. package/table-builder/classes/table-builder.d.ts +0 -18
  336. package/table-builder/classes/table-store.d.ts +0 -148
  337. package/table-builder/components/array-column.component.d.ts +0 -15
  338. package/table-builder/components/column-builder/column-builder.component.d.ts +0 -47
  339. package/table-builder/components/column-builder/column-helpers.d.ts +0 -36
  340. package/table-builder/components/date-filter/date-filter.component.d.ts +0 -37
  341. package/table-builder/components/date-time-filter/date-time-filter.component.d.ts +0 -37
  342. package/table-builder/components/filter/filter.component.d.ts +0 -46
  343. package/table-builder/components/filter/in-list/in-list-filter.component.d.ts +0 -24
  344. package/table-builder/components/gen-col-displayer/gen-col-displayer.component.d.ts +0 -15
  345. package/table-builder/components/generic-table/generic-table.component.d.ts +0 -72
  346. package/table-builder/components/generic-table/paginator.component.d.ts +0 -28
  347. package/table-builder/components/group-by-list/group-by-list.component.d.ts +0 -7
  348. package/table-builder/components/header-menu/header-menu.component.d.ts +0 -51
  349. package/table-builder/components/in-filter/in-filter.component.d.ts +0 -20
  350. package/table-builder/components/initialization-component/initialization-component.d.ts +0 -13
  351. package/table-builder/components/link-column.component.d.ts +0 -25
  352. package/table-builder/components/number-filter/number-filter.component.d.ts +0 -39
  353. package/table-builder/components/profiles-menu/profiles-menu.component.d.ts +0 -32
  354. package/table-builder/components/scroll-strategy.d.ts +0 -22
  355. package/table-builder/components/sort-menu/sort-menu.component-store.d.ts +0 -23
  356. package/table-builder/components/sort-menu/sort-menu.component.d.ts +0 -24
  357. package/table-builder/components/table-container/table-container.d.ts +0 -77
  358. package/table-builder/components/table-container/table-container.helpers/data-state.helpers.d.ts +0 -6
  359. package/table-builder/components/table-container/table-container.helpers/filter-state.helpers.d.ts +0 -17
  360. package/table-builder/components/table-container/table-container.helpers/groupBy.helpers.d.ts +0 -17
  361. package/table-builder/components/table-container/table-container.helpers/sort-state.helpers.d.ts +0 -8
  362. package/table-builder/components/table-container/tableProps.d.ts +0 -12
  363. package/table-builder/components/table-container/virtual-scroll-container.d.ts +0 -21
  364. package/table-builder/components/table-container-filter/filter-list/filter-list.component.d.ts +0 -16
  365. package/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.d.ts +0 -14
  366. package/table-builder/components/table-container-filter/table-wrapper-filter-store.d.ts +0 -14
  367. package/table-builder/directives/custom-cell-directive.d.ts +0 -31
  368. package/table-builder/directives/multi-sort.directive.d.ts +0 -10
  369. package/table-builder/directives/resize-column.directive.d.ts +0 -43
  370. package/table-builder/directives/table-wrapper.directive.d.ts +0 -8
  371. package/table-builder/directives/tb-filter.directive.d.ts +0 -116
  372. package/table-builder/enums/filterTypes.d.ts +0 -36
  373. package/table-builder/functions/boolean-filter-function.d.ts +0 -3
  374. package/table-builder/functions/date-filter-function.d.ts +0 -4
  375. package/table-builder/functions/download-data.d.ts +0 -1
  376. package/table-builder/functions/null-filter-function.d.ts +0 -2
  377. package/table-builder/functions/number-filter-function.d.ts +0 -4
  378. package/table-builder/functions/sort-data-function.d.ts +0 -6
  379. package/table-builder/functions/string-filter-function.d.ts +0 -5
  380. package/table-builder/interfaces/report-def.d.ts +0 -147
  381. package/table-builder/ngrx/tableBuilderStateStore.d.ts +0 -70
  382. package/table-builder/pipes/column-total.pipe.d.ts +0 -8
  383. package/table-builder/pipes/format-filter-type.pipe.d.ts +0 -8
  384. package/table-builder/pipes/format-filter-value.pipe.d.ts +0 -12
  385. package/table-builder/pipes/key-display.d.ts +0 -10
  386. package/table-builder/services/export-to-csv.service.d.ts +0 -19
  387. package/table-builder/services/link-creator.service.d.ts +0 -16
  388. package/table-builder/services/table-template-service.d.ts +0 -14
  389. package/table-builder/services/transform-creator.d.ts +0 -16
  390. package/table-builder/table-builder.module.d.ts +0 -21
  391. package/utilities/array-helpers.d.ts +0 -1
  392. package/utilities/directives/auto-focus.directive.d.ts +0 -9
  393. package/utilities/directives/clickEmitterDirective.d.ts +0 -7
  394. package/utilities/directives/clickSubject.d.ts +0 -9
  395. package/utilities/directives/conditional-classes.directive.d.ts +0 -13
  396. package/utilities/directives/dialog-service.d.ts +0 -10
  397. package/utilities/directives/dialog.d.ts +0 -44
  398. package/utilities/directives/mat-toggle-group-directive.d.ts +0 -21
  399. package/utilities/directives/prevent-enter.directive.d.ts +0 -6
  400. package/utilities/directives/stop-propagation.directive.d.ts +0 -7
  401. package/utilities/directives/styler.d.ts +0 -15
  402. package/utilities/directives/trim-whitespace.directive.d.ts +0 -7
  403. package/utilities/module.d.ts +0 -19
  404. package/utilities/pipes/function.pipe.d.ts +0 -7
  405. package/utilities/pipes/phone.pipe.d.ts +0 -7
  406. package/utilities/pipes/space-case.pipes.d.ts +0 -17
@@ -1,134 +0,0 @@
1
- import { Component, ChangeDetectionStrategy, ViewChild, Injector, computed, inject } from '@angular/core';
2
- import { FieldType } from '../../interfaces/report-def';
3
- import { MatColumnDef, MatTable, MatTableModule } from '@angular/material/table';
4
- import { ResizeColumnDirective } from '../../directives';
5
- import { TransformCreator } from '../../services/transform-creator';
6
- import { TableStore } from '../../classes/table-store';
7
- import { map } from 'rxjs/operators';
8
- import { TableTemplateService } from '../../services/table-template-service';
9
- import { CdkDropList, CDK_DROP_LIST, DragDropModule } from '@angular/cdk/drag-drop';
10
- import { AsyncPipe, CurrencyPipe, DecimalPipe, NgTemplateOutlet } from '@angular/common';
11
- import { ConditionalClassesDirective, FunctionPipe, SpaceCasePipe } from '../../../utilities';
12
- import { MatSortModule } from '@angular/material/sort';
13
- import { HeaderMenuComponent } from '../header-menu/header-menu.component';
14
- import { MatTooltipModule } from '@angular/material/tooltip';
15
- import { LetDirective } from '@ngrx/component';
16
- import { ColumnTotalPipe } from '../../pipes/column-total.pipe';
17
- import { StylerDirective } from '../../../utilities/directives/styler';
18
- import { columnStyles } from './column-helpers';
19
- import { TableBuilderConfigToken } from '../../classes/TableBuilderConfig';
20
- import * as i0 from "@angular/core";
21
- import * as i1 from "@angular/material/table";
22
- import * as i2 from "@angular/cdk/drag-drop";
23
- import * as i3 from "@angular/material/sort";
24
- import * as i4 from "@angular/material/tooltip";
25
- export class ColumnBuilderComponent {
26
- transformCreator = inject(TransformCreator);
27
- table = inject(MatTable);
28
- state = inject(TableStore);
29
- templateService = inject(TableTemplateService);
30
- injector = inject(Injector);
31
- columnDef;
32
- bodyTemplate;
33
- tableConfig = inject(TableBuilderConfigToken);
34
- FieldType = FieldType;
35
- filter;
36
- _metaData;
37
- get metaData() {
38
- return this._metaData;
39
- }
40
- set metaData(md) {
41
- if (this.metaData && this.metaData.fieldType !== md.fieldType) {
42
- this._metaData = md;
43
- this.initialSetUp();
44
- this.furtherSetUp();
45
- }
46
- else {
47
- this._metaData = md;
48
- }
49
- }
50
- customCell = undefined;
51
- data$;
52
- outerTemplate;
53
- innerTemplate;
54
- transform;
55
- getInnerTemplate() {
56
- if (this.metaData.template)
57
- return this.metaData.template;
58
- if (this.customCell?.TemplateRef)
59
- return this.customCell.TemplateRef;
60
- return this.templateService.getTemplate(this.metaData);
61
- }
62
- showFilters$;
63
- getOuterTemplate() {
64
- return this.customCell?.columnDef?.cell?.template ?? this.bodyTemplate;
65
- }
66
- classes;
67
- styles = computed(() => {
68
- return columnStyles(this.metaData, this.state.getUserDefinedWidth(this.metaData.key)(), this.state.tableSettingsMinWidth());
69
- });
70
- ngOnInit() {
71
- this.initialSetUp();
72
- }
73
- ngAfterViewInit() {
74
- this.furtherSetUp();
75
- this.table.addColumnDef(this.columnDef);
76
- }
77
- initialSetUp() {
78
- if (this.metaData.fieldType === FieldType.Currency) {
79
- this.classes = {
80
- ['negative-currency']: (element) => element[this.metaData.key] < 0,
81
- ...this.metaData.classes
82
- };
83
- }
84
- else {
85
- this.classes = this.metaData.classes;
86
- }
87
- this.filter = { key: this.metaData.key, fieldType: this.metaData.fieldType };
88
- this.showFilters$ = this.state.tableSettings$.pipe(map(settings => !(settings.hideColumnHeaderFilters || this.metaData.noFilter)));
89
- this.additional = this.metaData.fieldType === FieldType.Link
90
- ? this.state.getLinkInfo(this.metaData)()
91
- :
92
- this.metaData.fieldType === FieldType.Array
93
- ? this.metaData.additional?.limit || this.tableConfig?.arrayInfo?.arrayStyle
94
- : undefined;
95
- }
96
- furtherSetUp() {
97
- this.outerTemplate = this.getOuterTemplate();
98
- this.innerTemplate = this.getInnerTemplate();
99
- this.transform = this.transformCreator.createTransformer(this.metaData);
100
- }
101
- cellClicked(element, key) {
102
- if (this.metaData.click) {
103
- this.metaData.click(element, key);
104
- }
105
- }
106
- getTooltip = (element) => {
107
- if (typeof this.metaData.toolTip === 'string') {
108
- return this.metaData.toolTip;
109
- }
110
- return this.metaData.toolTip(element);
111
- };
112
- additional;
113
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: ColumnBuilderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
114
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: ColumnBuilderComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "columnDef", first: true, predicate: MatColumnDef, descendants: true }, { propertyName: "bodyTemplate", first: true, predicate: ["body"], descendants: true }], ngImport: i0, template: "<ng-container [matColumnDef]=\"metaData.key\" *ngrxLet=\"styles() as styles\" >\n\n <!-- header -->\n <ng-template matHeaderCellDef #myHeader>\n <mat-header-cell cdkDrag [style]='styles.header' resizeColumn [key]=\"metaData.key\" class=\"column-head\"\n [class]='metaData.additional?.columnPartClasses?.header'>\n <div class=\"header-container\" cdkDragHandle>\n @if(!customCell?.columnDef?.headerCell)\n {\n @if(metaData.fieldType !== FieldType.NotMapped){\n <div mat-sort-header [disabled]=\"metaData.noSort\" style=\"width: 100%\">\n {{ metaData.displayName ? metaData.displayName : ( metaData.key | spaceCase ) }}\n </div>\n } @else if(metaData.fieldType === FieldType.NotMapped){\n <div style=\"width: 100%\">\n {{ metaData.displayName ? metaData.displayName : ( metaData.key | spaceCase ) }}\n </div>\n }\n @if((showFilters$ | async)){\n <tb-header-menu #menu [metaData]='metaData' />\n }\n }\n @else\n {\n <ng-container *ngTemplateOutlet=\"customCell!.columnDef!.headerCell.template; context: {metaData: metaData, styles: styles.header} \">\n </ng-container>\n }\n </div>\n </mat-header-cell>\n </ng-template>\n\n <!-- body -->\n <ng-container *matCellDef=\"let element;\">\n <ng-container *ngTemplateOutlet=\"outerTemplate; context: { metaData: metaData, element: element , styles: styles.body, $implicit: element }\"/>\n </ng-container>\n <ng-template #body let-element='element' >\n <mat-cell [matTooltip]=\"metaData.toolTip ? (getTooltip | func : element) : ''\" [conditionalClasses]='metaData.classes' [element]='element' [styler]='styles.body' (click)='cellClicked(element, metaData.key)' >\n <ng-container *ngTemplateOutlet=\"innerTemplate; context: { value: (transform | func : element), element: element, additional: additional, $implicit: element }; Injector: injector\" />\n </mat-cell>\n </ng-template>\n\n <!-- footer -->\n <ng-template matFooterCellDef>\n @if(customCell?.columnDef?.footerCell){\n <ng-container\n *ngTemplateOutlet=\"customCell!.columnDef!.footerCell.template; context: {metaData: metaData, data: data$, styles : styles.footer }\"/>\n } @else {\n <mat-footer-cell [style]='styles.footer' *ngrxLet=\"data$ as data\" [class]='metaData.additional?.columnPartClasses?.footer'>\n @if(!!data?.length && metaData.additional?.footer){\n <span class=\"bold\">\n @switch (metaData.fieldType) {\n @case (FieldType.Currency) { {{ data | columnTotal: metaData | currency }} }\n @case (FieldType.Number) { {{ data | columnTotal: metaData | number }} }\n }\n </span>\n }\n\n </mat-footer-cell>\n }\n </ng-template>\n</ng-container>\n", styles: [".header-container{display:flex;flex-direction:row;width:100%;align-items:center}.negative-currency{color:red}.column-head{position:relative}.bold,.group-footer{font-weight:900}.cdk-drag-preview{background:#fff;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:33%;border-right-width:0px}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.drag-handle{color:#add8e6;cursor:move;margin-right:9px}\n"], dependencies: [{ kind: "ngmodule", type: MatTableModule }, { kind: "directive", type: i1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i1.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i1.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i1.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: ResizeColumnDirective, selector: "[resizeColumn]", inputs: ["resizeColumn", "key"] }, { kind: "pipe", type: FunctionPipe, name: "func" }, { kind: "directive", type: StylerDirective, selector: "[styler]", inputs: ["element", "styler"] }, { kind: "directive", type: ConditionalClassesDirective, selector: "[conditionalClasses]", inputs: ["element", "conditionalClasses"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "ngmodule", type: MatSortModule }, { kind: "component", type: i3.MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "pipe", type: SpaceCasePipe, name: "spaceCase" }, { kind: "component", type: HeaderMenuComponent, selector: "tb-header-menu", inputs: ["metaData"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: LetDirective, selector: "[ngrxLet]", inputs: ["ngrxLet", "ngrxLetSuspenseTpl"] }, { kind: "pipe", type: ColumnTotalPipe, name: "columnTotal" }, { kind: "pipe", type: CurrencyPipe, name: "currency" }, { kind: "pipe", type: DecimalPipe, name: "number" }], viewProviders: [
115
- { provide: CDK_DROP_LIST, useExisting: CdkDropList },
116
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
117
- }
118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: ColumnBuilderComponent, decorators: [{
119
- type: Component,
120
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, viewProviders: [
121
- { provide: CDK_DROP_LIST, useExisting: CdkDropList },
122
- ], standalone: true, imports: [
123
- MatTableModule, NgTemplateOutlet, ResizeColumnDirective, FunctionPipe, StylerDirective,
124
- ConditionalClassesDirective, DragDropModule, MatSortModule, SpaceCasePipe, HeaderMenuComponent,
125
- AsyncPipe, MatTooltipModule, LetDirective, ColumnTotalPipe, CurrencyPipe, DecimalPipe
126
- ], template: "<ng-container [matColumnDef]=\"metaData.key\" *ngrxLet=\"styles() as styles\" >\n\n <!-- header -->\n <ng-template matHeaderCellDef #myHeader>\n <mat-header-cell cdkDrag [style]='styles.header' resizeColumn [key]=\"metaData.key\" class=\"column-head\"\n [class]='metaData.additional?.columnPartClasses?.header'>\n <div class=\"header-container\" cdkDragHandle>\n @if(!customCell?.columnDef?.headerCell)\n {\n @if(metaData.fieldType !== FieldType.NotMapped){\n <div mat-sort-header [disabled]=\"metaData.noSort\" style=\"width: 100%\">\n {{ metaData.displayName ? metaData.displayName : ( metaData.key | spaceCase ) }}\n </div>\n } @else if(metaData.fieldType === FieldType.NotMapped){\n <div style=\"width: 100%\">\n {{ metaData.displayName ? metaData.displayName : ( metaData.key | spaceCase ) }}\n </div>\n }\n @if((showFilters$ | async)){\n <tb-header-menu #menu [metaData]='metaData' />\n }\n }\n @else\n {\n <ng-container *ngTemplateOutlet=\"customCell!.columnDef!.headerCell.template; context: {metaData: metaData, styles: styles.header} \">\n </ng-container>\n }\n </div>\n </mat-header-cell>\n </ng-template>\n\n <!-- body -->\n <ng-container *matCellDef=\"let element;\">\n <ng-container *ngTemplateOutlet=\"outerTemplate; context: { metaData: metaData, element: element , styles: styles.body, $implicit: element }\"/>\n </ng-container>\n <ng-template #body let-element='element' >\n <mat-cell [matTooltip]=\"metaData.toolTip ? (getTooltip | func : element) : ''\" [conditionalClasses]='metaData.classes' [element]='element' [styler]='styles.body' (click)='cellClicked(element, metaData.key)' >\n <ng-container *ngTemplateOutlet=\"innerTemplate; context: { value: (transform | func : element), element: element, additional: additional, $implicit: element }; Injector: injector\" />\n </mat-cell>\n </ng-template>\n\n <!-- footer -->\n <ng-template matFooterCellDef>\n @if(customCell?.columnDef?.footerCell){\n <ng-container\n *ngTemplateOutlet=\"customCell!.columnDef!.footerCell.template; context: {metaData: metaData, data: data$, styles : styles.footer }\"/>\n } @else {\n <mat-footer-cell [style]='styles.footer' *ngrxLet=\"data$ as data\" [class]='metaData.additional?.columnPartClasses?.footer'>\n @if(!!data?.length && metaData.additional?.footer){\n <span class=\"bold\">\n @switch (metaData.fieldType) {\n @case (FieldType.Currency) { {{ data | columnTotal: metaData | currency }} }\n @case (FieldType.Number) { {{ data | columnTotal: metaData | number }} }\n }\n </span>\n }\n\n </mat-footer-cell>\n }\n </ng-template>\n</ng-container>\n", styles: [".header-container{display:flex;flex-direction:row;width:100%;align-items:center}.negative-currency{color:red}.column-head{position:relative}.bold,.group-footer{font-weight:900}.cdk-drag-preview{background:#fff;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:33%;border-right-width:0px}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.drag-handle{color:#add8e6;cursor:move;margin-right:9px}\n"] }]
127
- }], propDecorators: { columnDef: [{
128
- type: ViewChild,
129
- args: [MatColumnDef]
130
- }], bodyTemplate: [{
131
- type: ViewChild,
132
- args: ['body']
133
- }] } });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWJ1aWxkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvY29tcG9uZW50cy9jb2x1bW4tYnVpbGRlci9jb2x1bW4tYnVpbGRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL2NvbHVtbi1idWlsZGVyL2NvbHVtbi1idWlsZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQWUsU0FBUyxFQUFxQixRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxSSxPQUFPLEVBQW1CLFNBQVMsRUFBWSxNQUFNLDZCQUE2QixDQUFDO0FBQ25GLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpGLE9BQU8sRUFBdUIscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDdkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXBGLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFD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REEsdWlCRDNCSSxjQUFjLDRuQkFBRSxnQkFBZ0Isb0pBQUUscUJBQXFCLHVGQUFFLFlBQVksNkNBQUUsZUFBZSxvRkFDdEYsMkJBQTJCLDJHQUFFLGNBQWMsK2xCQUFFLGFBQWEsaVBBQUUsYUFBYSxrREFBRSxtQkFBbUIsNEVBQzlGLFNBQVMsNkNBQUUsZ0JBQWdCLDZUQUFFLFlBQVksNEZBQUUsZUFBZSwrQ0FBRSxZQUFZLDRDQUFFLFdBQVcsb0NBUHhFO1lBQ2IsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUU7U0FDckQ7OzJGQVFVLHNCQUFzQjtrQkFkbEMsU0FBUztzQ0FHUyx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQzt3QkFDYixFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRTtxQkFDckQsY0FDVyxJQUFJLFdBQ1A7d0JBQ1AsY0FBYyxFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixFQUFFLFlBQVksRUFBRSxlQUFlO3dCQUN0RiwyQkFBMkIsRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxtQkFBbUI7d0JBQzlGLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxXQUFXO3FCQUN0Rjs4QkFTd0IsU0FBUztzQkFBakMsU0FBUzt1QkFBQyxZQUFZO2dCQUNKLFlBQVk7c0JBQTlCLFNBQVM7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIE9uSW5pdCwgUHJlZGljYXRlLCBJbmplY3RvciwgY29tcHV0ZWQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXJyYXlBZGRpdGlvbmFsLCBGaWVsZFR5cGUsIE1ldGFEYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcbmltcG9ydCB7IE1hdENvbHVtbkRlZiwgTWF0VGFibGUsIE1hdFRhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ3VzdG9tQ2VsbERpcmVjdGl2ZSwgUmVzaXplQ29sdW1uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBGaWx0ZXJJbmZvIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9maWx0ZXItaW5mbyc7XG5pbXBvcnQgeyBUcmFuc2Zvcm1DcmVhdG9yIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdHJhbnNmb3JtLWNyZWF0b3InO1xuaW1wb3J0IHsgVGFibGVTdG9yZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvdGFibGUtc3RvcmUnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVGFibGVUZW1wbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90YWJsZS10ZW1wbGF0ZS1zZXJ2aWNlJztcbmltcG9ydCB7IENka0Ryb3BMaXN0LCBDREtfRFJPUF9MSVNULCBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gJ0BuZ3J4L2VudGl0eSc7XG5pbXBvcnQgeyBBc3luY1BpcGUsIEN1cnJlbmN5UGlwZSwgRGVjaW1hbFBpcGUsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29uZGl0aW9uYWxDbGFzc2VzRGlyZWN0aXZlLCBGdW5jdGlvblBpcGUsIFNwYWNlQ2FzZVBpcGUgfSBmcm9tICcuLi8uLi8uLi91dGlsaXRpZXMnO1xuaW1wb3J0IHsgTWF0U29ydE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xuaW1wb3J0IHsgSGVhZGVyTWVudUNvbXBvbmVudCB9IGZyb20gJy4uL2hlYWRlci1tZW51L2hlYWRlci1tZW51LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBMZXREaXJlY3RpdmUgfSBmcm9tICdAbmdyeC9jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29sdW1uVG90YWxQaXBlIH0gZnJvbSAnLi4vLi4vcGlwZXMvY29sdW1uLXRvdGFsLnBpcGUnO1xuaW1wb3J0IHsgU3R5bGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbGl0aWVzL2RpcmVjdGl2ZXMvc3R5bGVyJztcbmltcG9ydCB7IGNvbHVtblN0eWxlcyB9IGZyb20gJy4vY29sdW1uLWhlbHBlcnMnO1xuaW1wb3J0IHsgVGFibGVCdWlsZGVyQ29uZmlnVG9rZW4gfSBmcm9tICcuLi8uLi9jbGFzc2VzL1RhYmxlQnVpbGRlckNvbmZpZyc7XG5pbXBvcnQgeyBMaW5rSW5mbyB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xpbmstY3JlYXRvci5zZXJ2aWNlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbHVtbi1idWlsZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29sdW1uLWJ1aWxkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHZpZXdQcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IENES19EUk9QX0xJU1QsIHVzZUV4aXN0aW5nOiBDZGtEcm9wTGlzdCB9LFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0VGFibGVNb2R1bGUsIE5nVGVtcGxhdGVPdXRsZXQsIFJlc2l6ZUNvbHVtbkRpcmVjdGl2ZSwgRnVuY3Rpb25QaXBlLCBTdHlsZXJEaXJlY3RpdmUsXG4gICAgQ29uZGl0aW9uYWxDbGFzc2VzRGlyZWN0aXZlLCBEcmFnRHJvcE1vZHVsZSwgTWF0U29ydE1vZHVsZSwgU3BhY2VDYXNlUGlwZSwgSGVhZGVyTWVudUNvbXBvbmVudCxcbiAgICBBc3luY1BpcGUsIE1hdFRvb2x0aXBNb2R1bGUsIExldERpcmVjdGl2ZSwgQ29sdW1uVG90YWxQaXBlLCBDdXJyZW5jeVBpcGUsIERlY2ltYWxQaXBlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ29sdW1uQnVpbGRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgdHJhbnNmb3JtQ3JlYXRvciA9IGluamVjdChUcmFuc2Zvcm1DcmVhdG9yKTtcbiAgcHJpdmF0ZSB0YWJsZSA9IGluamVjdDxNYXRUYWJsZTxhbnk+PihNYXRUYWJsZSk7XG4gIHByaXZhdGUgc3RhdGUgPSBpbmplY3QoVGFibGVTdG9yZSk7XG4gIHByaXZhdGUgdGVtcGxhdGVTZXJ2aWNlID0gaW5qZWN0KFRhYmxlVGVtcGxhdGVTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICBAVmlld0NoaWxkKE1hdENvbHVtbkRlZikgY29sdW1uRGVmITogTWF0Q29sdW1uRGVmO1xuICBAVmlld0NoaWxkKCdib2R5JykgYm9keVRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcbiAgdGFibGVDb25maWcgPSBpbmplY3QoVGFibGVCdWlsZGVyQ29uZmlnVG9rZW4pO1xuICBGaWVsZFR5cGUgPSBGaWVsZFR5cGU7XG4gIGZpbHRlciE6IFBhcnRpYWw8RmlsdGVySW5mbz47XG4gIF9tZXRhRGF0YSE6IE1ldGFEYXRhO1xuICBnZXQgbWV0YURhdGEoKXtcbiAgICByZXR1cm4gdGhpcy5fbWV0YURhdGE7XG4gIH1cbiAgc2V0IG1ldGFEYXRhKG1kOiBNZXRhRGF0YSl7XG4gICAgaWYodGhpcy5tZXRhRGF0YSAmJiB0aGlzLm1ldGFEYXRhLmZpZWxkVHlwZSAhPT0gbWQuZmllbGRUeXBlKXtcbiAgICAgIHRoaXMuX21ldGFEYXRhID0gbWQ7XG4gICAgICB0aGlzLmluaXRpYWxTZXRVcCgpO1xuICAgICAgdGhpcy5mdXJ0aGVyU2V0VXAoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fbWV0YURhdGEgPSBtZDtcbiAgICB9XG4gIH1cbiAgY3VzdG9tQ2VsbD86IEN1c3RvbUNlbGxEaXJlY3RpdmUgPSB1bmRlZmluZWQ7XG4gIGRhdGEkITogT2JzZXJ2YWJsZTxhbnlbXT47XG5cbiAgb3V0ZXJUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG4gIGlubmVyVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICB0cmFuc2Zvcm0hOiAobzogYW55LCAuLi5hcmdzOiBhbnlbXSk9PiBhbnkgO1xuXG4gIGdldElubmVyVGVtcGxhdGUoKSA6VGVtcGxhdGVSZWY8YW55PiB7XG4gICAgaWYodGhpcy5tZXRhRGF0YS50ZW1wbGF0ZSkgcmV0dXJuIHRoaXMubWV0YURhdGEudGVtcGxhdGU7XG4gICAgaWYgKHRoaXMuY3VzdG9tQ2VsbD8uVGVtcGxhdGVSZWYpICByZXR1cm4gdGhpcy5jdXN0b21DZWxsLlRlbXBsYXRlUmVmO1xuICAgIHJldHVybiB0aGlzLnRlbXBsYXRlU2VydmljZS5nZXRUZW1wbGF0ZSh0aGlzLm1ldGFEYXRhKTtcbiAgfVxuICBzaG93RmlsdGVycyQhOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBnZXRPdXRlclRlbXBsYXRlKCkge1xuICAgIHJldHVybiB0aGlzLmN1c3RvbUNlbGw/LmNvbHVtbkRlZj8uY2VsbD8udGVtcGxhdGUgPz8gdGhpcy5ib2R5VGVtcGxhdGU7XG4gIH1cbiAgY2xhc3Nlcz86IERpY3Rpb25hcnk8UHJlZGljYXRlPGFueT4+O1xuICBzdHlsZXMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIGNvbHVtblN0eWxlcyh0aGlzLm1ldGFEYXRhLCB0aGlzLnN0YXRlLmdldFVzZXJEZWZpbmVkV2lkdGgodGhpcy5tZXRhRGF0YS5rZXkpKCksIHRoaXMuc3RhdGUudGFibGVTZXR0aW5nc01pbldpZHRoKCkpO1xuICB9KVxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXRpYWxTZXRVcCgpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuZnVydGhlclNldFVwKCk7XG4gICAgdGhpcy50YWJsZS5hZGRDb2x1bW5EZWYodGhpcy5jb2x1bW5EZWYpO1xuICB9XG5cbiAgaW5pdGlhbFNldFVwKCl7XG4gICAgaWYodGhpcy5tZXRhRGF0YS5maWVsZFR5cGUgPT09IEZpZWxkVHlwZS5DdXJyZW5jeSkge1xuICAgICAgdGhpcy5jbGFzc2VzID0ge1xuICAgICAgICBbJ25lZ2F0aXZlLWN1cnJlbmN5J106IChlbGVtZW50KSA9PiBlbGVtZW50W3RoaXMubWV0YURhdGEua2V5XSA8IDAsXG4gICAgICAgIC4uLnRoaXMubWV0YURhdGEuY2xhc3Nlc1xuICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMuY2xhc3NlcyA9IHRoaXMubWV0YURhdGEuY2xhc3NlcztcbiAgICB9XG4gICAgdGhpcy5maWx0ZXIgPSB7a2V5OiB0aGlzLm1ldGFEYXRhLmtleSwgZmllbGRUeXBlOiB0aGlzLm1ldGFEYXRhLmZpZWxkVHlwZX07XG5cbiAgICB0aGlzLnNob3dGaWx0ZXJzJCA9IHRoaXMuc3RhdGUudGFibGVTZXR0aW5ncyQucGlwZShtYXAoc2V0dGluZ3MgPT4gIShzZXR0aW5ncy5oaWRlQ29sdW1uSGVhZGVyRmlsdGVycyB8fCB0aGlzLm1ldGFEYXRhLm5vRmlsdGVyKSkpO1xuICAgIHRoaXMuYWRkaXRpb25hbCA9IHRoaXMubWV0YURhdGEuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuTGlua1xuICAgICAgPyB0aGlzLnN0YXRlLmdldExpbmtJbmZvKHRoaXMubWV0YURhdGEpKClcbiAgICAgIDpcbiAgICAgIHRoaXMubWV0YURhdGEuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuQXJyYXlcbiAgICAgID8gKHRoaXMubWV0YURhdGEuYWRkaXRpb25hbCBhcyBBcnJheUFkZGl0aW9uYWwpPy5saW1pdCB8fCB0aGlzLnRhYmxlQ29uZmlnPy5hcnJheUluZm8/LmFycmF5U3R5bGVcbiAgICAgIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgZnVydGhlclNldFVwKCl7XG4gICAgdGhpcy5vdXRlclRlbXBsYXRlID0gdGhpcy5nZXRPdXRlclRlbXBsYXRlKCk7XG4gICAgdGhpcy5pbm5lclRlbXBsYXRlID0gdGhpcy5nZXRJbm5lclRlbXBsYXRlKCk7XG4gICAgdGhpcy50cmFuc2Zvcm0gPSB0aGlzLnRyYW5zZm9ybUNyZWF0b3IuY3JlYXRlVHJhbnNmb3JtZXIodGhpcy5tZXRhRGF0YSk7XG4gIH1cblxuICBjZWxsQ2xpY2tlZChlbGVtZW50OiBhbnksIGtleTogc3RyaW5nKSB7XG4gICAgaWYodGhpcy5tZXRhRGF0YS5jbGljaykge1xuICAgICAgdGhpcy5tZXRhRGF0YS5jbGljayhlbGVtZW50LGtleSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0VG9vbHRpcCA9IChlbGVtZW50OiBhbnkpID0+IHtcbiAgICBpZih0eXBlb2YgdGhpcy5tZXRhRGF0YS50b29sVGlwID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIHRoaXMubWV0YURhdGEudG9vbFRpcDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubWV0YURhdGEudG9vbFRpcCEoZWxlbWVudCk7XG4gIH1cblxuICBhZGRpdGlvbmFsOiBMaW5rSW5mbyB8IG51bWJlciB8IHVuZGVmaW5lZDtcbn1cbiIsIjxuZy1jb250YWluZXIgW21hdENvbHVtbkRlZl09XCJtZXRhRGF0YS5rZXlcIiAqbmdyeExldD1cInN0eWxlcygpIGFzIHN0eWxlc1wiID5cblxuICA8IS0tIGhlYWRlciAtLT5cbiAgPG5nLXRlbXBsYXRlIG1hdEhlYWRlckNlbGxEZWYgI215SGVhZGVyPlxuICAgIDxtYXQtaGVhZGVyLWNlbGwgY2RrRHJhZyBbc3R5bGVdPSdzdHlsZXMuaGVhZGVyJyByZXNpemVDb2x1bW4gW2tleV09XCJtZXRhRGF0YS5rZXlcIiBjbGFzcz1cImNvbHVtbi1oZWFkXCJcbiAgICAgIFtjbGFzc109J21ldGFEYXRhLmFkZGl0aW9uYWw/LmNvbHVtblBhcnRDbGFzc2VzPy5oZWFkZXInPlxuICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1jb250YWluZXJcIiBjZGtEcmFnSGFuZGxlPlxuICAgICAgICBAaWYoIWN1c3RvbUNlbGw/LmNvbHVtbkRlZj8uaGVhZGVyQ2VsbClcbiAgICAgICAge1xuICAgICAgICAgICAgQGlmKG1ldGFEYXRhLmZpZWxkVHlwZSAhPT0gRmllbGRUeXBlLk5vdE1hcHBlZCl7XG4gICAgICAgICAgICAgIDxkaXYgbWF0LXNvcnQtaGVhZGVyIFtkaXNhYmxlZF09XCJtZXRhRGF0YS5ub1NvcnRcIiBzdHlsZT1cIndpZHRoOiAxMDAlXCI+XG4gICAgICAgICAgICAgICAge3sgbWV0YURhdGEuZGlzcGxheU5hbWUgPyAgbWV0YURhdGEuZGlzcGxheU5hbWUgOiAoIG1ldGFEYXRhLmtleSB8IHNwYWNlQ2FzZSApIH19XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfSBAZWxzZSBpZihtZXRhRGF0YS5maWVsZFR5cGUgPT09IEZpZWxkVHlwZS5Ob3RNYXBwZWQpe1xuICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDEwMCVcIj5cbiAgICAgICAgICAgICAgICB7eyBtZXRhRGF0YS5kaXNwbGF5TmFtZSA/ICBtZXRhRGF0YS5kaXNwbGF5TmFtZSA6ICggbWV0YURhdGEua2V5IHwgc3BhY2VDYXNlICkgfX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYoKHNob3dGaWx0ZXJzJCB8IGFzeW5jKSl7XG4gICAgICAgICAgICAgIDx0Yi1oZWFkZXItbWVudSAjbWVudSBbbWV0YURhdGFdPSdtZXRhRGF0YScgLz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZVxuICAgICAgICB7XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImN1c3RvbUNlbGwhLmNvbHVtbkRlZiEuaGVhZGVyQ2VsbC50ZW1wbGF0ZTsgY29udGV4dDoge21ldGFEYXRhOiBtZXRhRGF0YSwgc3R5bGVzOiAgc3R5bGVzLmhlYWRlcn0gXCI+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvbWF0LWhlYWRlci1jZWxsPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDwhLS0gYm9keSAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50O1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJvdXRlclRlbXBsYXRlOyBjb250ZXh0OiB7IG1ldGFEYXRhOiBtZXRhRGF0YSwgZWxlbWVudDogZWxlbWVudCAsIHN0eWxlczogc3R5bGVzLmJvZHksICRpbXBsaWNpdDogZWxlbWVudCB9XCIvPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICNib2R5IGxldC1lbGVtZW50PSdlbGVtZW50JyA+XG4gICAgPG1hdC1jZWxsICBbbWF0VG9vbHRpcF09XCJtZXRhRGF0YS50b29sVGlwID8gKGdldFRvb2x0aXAgfCBmdW5jIDogZWxlbWVudCkgOiAnJ1wiICBbY29uZGl0aW9uYWxDbGFzc2VzXT0nbWV0YURhdGEuY2xhc3NlcycgW2VsZW1lbnRdPSdlbGVtZW50JyBbc3R5bGVyXT0nc3R5bGVzLmJvZHknIChjbGljayk9J2NlbGxDbGlja2VkKGVsZW1lbnQsIG1ldGFEYXRhLmtleSknID5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpbm5lclRlbXBsYXRlOyBjb250ZXh0OiB7IHZhbHVlOiAodHJhbnNmb3JtIHwgZnVuYyA6IGVsZW1lbnQpLCBlbGVtZW50OiBlbGVtZW50LCBhZGRpdGlvbmFsOiBhZGRpdGlvbmFsLCAkaW1wbGljaXQ6IGVsZW1lbnQgfTsgSW5qZWN0b3I6IGluamVjdG9yXCIgLz5cbiAgICA8L21hdC1jZWxsPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDwhLS0gZm9vdGVyIC0tPlxuICA8bmctdGVtcGxhdGUgbWF0Rm9vdGVyQ2VsbERlZj5cbiAgICBAaWYoY3VzdG9tQ2VsbD8uY29sdW1uRGVmPy5mb290ZXJDZWxsKXtcbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY3VzdG9tQ2VsbCEuY29sdW1uRGVmIS5mb290ZXJDZWxsLnRlbXBsYXRlOyBjb250ZXh0OiB7bWV0YURhdGE6IG1ldGFEYXRhLCBkYXRhOiBkYXRhJCwgc3R5bGVzIDogc3R5bGVzLmZvb3RlciB9XCIvPlxuICAgIH0gQGVsc2Uge1xuICAgICAgPG1hdC1mb290ZXItY2VsbCAgW3N0eWxlXT0nc3R5bGVzLmZvb3RlcicgKm5ncnhMZXQ9XCJkYXRhJCBhcyBkYXRhXCIgW2NsYXNzXT0nbWV0YURhdGEuYWRkaXRpb25hbD8uY29sdW1uUGFydENsYXNzZXM/LmZvb3Rlcic+XG4gICAgICAgIEBpZighIWRhdGE/Lmxlbmd0aCAmJiBtZXRhRGF0YS5hZGRpdGlvbmFsPy5mb290ZXIpe1xuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYm9sZFwiPlxuICAgICAgICAgICAgQHN3aXRjaCAobWV0YURhdGEuZmllbGRUeXBlKSB7XG4gICAgICAgICAgICAgIEBjYXNlIChGaWVsZFR5cGUuQ3VycmVuY3kpIHsge3sgZGF0YSB8IGNvbHVtblRvdGFsOiBtZXRhRGF0YSB8IGN1cnJlbmN5IH19IH1cbiAgICAgICAgICAgICAgQGNhc2UgKEZpZWxkVHlwZS5OdW1iZXIpIHsge3sgZGF0YSB8IGNvbHVtblRvdGFsOiBtZXRhRGF0YSB8IG51bWJlciB9fSB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICB9XG5cbiAgICAgIDwvbWF0LWZvb3Rlci1jZWxsPlxuICAgIH1cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -1,47 +0,0 @@
1
- import { metaDataArrToDict } from "../../interfaces/report-def";
2
- export const calculateWidths = (metaData, userDefinedWidth) => {
3
- const definedWidth = (userDefinedWidth && `${userDefinedWidth}px`) || metaData.width;
4
- return definedWidth;
5
- };
6
- export function calculateUserDefinedWidth(userDefinedWidth) {
7
- if (userDefinedWidth)
8
- return { flex: `0 0 ${userDefinedWidth}px`, maxWidth: 'none' };
9
- return undefined;
10
- }
11
- export function calculateTableDefinedWidth(metaData, tableSettingsMinWidth) {
12
- if (metaData.width)
13
- return ({ flex: `0 0 ${metaData.width}`, maxWidth: 'none' });
14
- const style = { flex: `${1}` };
15
- if (tableSettingsMinWidth)
16
- style['minWidth'] = `${tableSettingsMinWidth}px`;
17
- return style;
18
- }
19
- export const calculateFlexWidth = (metaData, userDefinedWidth, tableSettingsMinWidth) => {
20
- const definedWidth = calculateWidths(metaData, userDefinedWidth);
21
- if (definedWidth)
22
- console.log(metaData.key, definedWidth);
23
- if (definedWidth)
24
- return ({ flex: `0 0 ${definedWidth}`, maxWidth: 'none' });
25
- const style = { flex: `${1}` };
26
- if (tableSettingsMinWidth)
27
- style['minWidth'] = `${tableSettingsMinWidth}px`;
28
- return style;
29
- };
30
- export const columnStyles = (metaData, userDefinedWidth, tableSettingsMinWidth) => {
31
- const fullMetaStyles = metaData.additional?.styles ?? {};
32
- const userWidth = calculateUserDefinedWidth(userDefinedWidth) ?? {};
33
- const tableWidth = userDefinedWidth ? {} : calculateTableDefinedWidth(metaData, tableSettingsMinWidth);
34
- const styles = {
35
- header: { ...tableWidth, ...fullMetaStyles, ...metaData.additional?.columnPartStyles?.header, ...userWidth },
36
- footer: { ...tableWidth, ...fullMetaStyles, ...metaData.additional?.columnPartStyles?.footer, ...userWidth },
37
- body: { ...tableWidth, ...fullMetaStyles, ...metaData.additional?.columnPartStyles?.body, ...userWidth },
38
- };
39
- return styles;
40
- };
41
- export const calculateFlexWidths = (metaDatas, userDefinedWidths, tableSettingsMinWidth) => {
42
- return metaDataArrToDict(metaDatas, md => calculateFlexWidth(md, userDefinedWidths[md.key], tableSettingsMinWidth));
43
- };
44
- export const columnsStyles = (metaDatas, userDefinedWidths) => {
45
- return metaDataArrToDict(metaDatas, md => columnStyles(md, userDefinedWidths[md.key]));
46
- };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL2NvbHVtbi1idWlsZGVyL2NvbHVtbi1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBVyxpQkFBaUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBR3hFLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUFDLFFBQWtCLEVBQUUsZ0JBQW9DLEVBQUUsRUFBRTtJQUMxRixNQUFNLFlBQVksR0FBRyxDQUFDLGdCQUFnQixJQUFJLEdBQUcsZ0JBQWdCLElBQUksQ0FBQyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUM7SUFDckYsT0FBTyxZQUFZLENBQUM7QUFDdEIsQ0FBQyxDQUFBO0FBRUQsTUFBTSxVQUFVLHlCQUF5QixDQUFDLGdCQUFvQztJQUM1RSxJQUFHLGdCQUFnQjtRQUFFLE9BQU8sRUFBQyxJQUFJLEVBQUUsT0FBTyxnQkFBZ0IsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUNuRixPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBRUQsTUFBTSxVQUFVLDBCQUEwQixDQUFDLFFBQWtCLEVBQUUscUJBQXlDO0lBQ3RHLElBQUcsUUFBUSxDQUFDLEtBQUs7UUFBRSxPQUFPLENBQUMsRUFBQyxJQUFJLEVBQUUsT0FBTyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBQyxDQUFDLENBQUM7SUFDOUUsTUFBTSxLQUFLLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBQyxDQUFDO0lBQzlCLElBQUcscUJBQXFCO1FBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEdBQUcscUJBQXFCLElBQUksQ0FBQztJQUMzRSxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLFFBQWtCLEVBQUUsZ0JBQW9DLEVBQUUscUJBQXlDLEVBQUUsRUFBRTtJQUN4SSxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDakUsSUFBRyxZQUFZO1FBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3pELElBQUcsWUFBWTtRQUFFLE9BQU8sQ0FBQyxFQUFDLElBQUksRUFBRSxPQUFPLFlBQVksRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzNFLE1BQU0sS0FBSyxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUMsQ0FBQztJQUM5QixJQUFHLHFCQUFxQjtRQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxHQUFHLHFCQUFxQixJQUFJLENBQUM7SUFDM0UsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxRQUFrQixFQUFFLGdCQUFvQyxFQUFFLHFCQUEwQyxFQUFFLEVBQUU7SUFDbkksTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLFVBQVUsRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDO0lBQ3pELE1BQU0sU0FBUyxHQUFHLHlCQUF5QixDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BFLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDLFFBQVEsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3ZHLE1BQU0sTUFBTSxHQUlSO1FBQ0YsTUFBTSxFQUFFLEVBQUUsR0FBRyxVQUFVLEVBQUUsR0FBRyxjQUFjLEVBQUUsR0FBRyxRQUFRLENBQUMsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxHQUFHLFNBQVMsRUFBQztRQUMzRyxNQUFNLEVBQUUsRUFBRSxHQUFHLFVBQVUsRUFBRSxHQUFHLGNBQWMsRUFBRSxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLEdBQUcsU0FBUyxFQUFDO1FBQzNHLElBQUksRUFBRSxFQUFFLEdBQUcsVUFBVSxFQUFFLEdBQUcsY0FBYyxFQUFFLEdBQUcsUUFBUSxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsR0FBRyxTQUFTLEVBQUM7S0FDeEcsQ0FBQztJQUNGLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsU0FBcUIsRUFBRSxpQkFBcUMsRUFBRSxxQkFBeUMsRUFBRSxFQUFFO0lBQzdJLE9BQU8saUJBQWlCLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsa0JBQWtCLENBQUMsRUFBRSxFQUFFLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7QUFDdEgsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQUMsU0FBcUIsRUFBRSxpQkFBcUMsRUFBRSxFQUFFO0lBQzVGLE9BQU8saUJBQWlCLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3pGLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGljdGlvbmFyeX0gZnJvbSBcIkBuZ3J4L2VudGl0eVwiO1xuaW1wb3J0IHtNZXRhRGF0YSwgbWV0YURhdGFBcnJUb0RpY3R9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzL3JlcG9ydC1kZWZcIjtcbmltcG9ydCB7U3R5bGVyU3R5bGV9IGZyb20gXCIuLi8uLi8uLi91dGlsaXRpZXMvZGlyZWN0aXZlcy9zdHlsZXJcIjtcblxuZXhwb3J0IGNvbnN0IGNhbGN1bGF0ZVdpZHRocyA9IChtZXRhRGF0YTogTWV0YURhdGEsIHVzZXJEZWZpbmVkV2lkdGg6IG51bWJlciB8IHVuZGVmaW5lZCkgPT4ge1xuICBjb25zdCBkZWZpbmVkV2lkdGggPSAodXNlckRlZmluZWRXaWR0aCAmJiBgJHt1c2VyRGVmaW5lZFdpZHRofXB4YCkgfHwgbWV0YURhdGEud2lkdGg7XG4gIHJldHVybiBkZWZpbmVkV2lkdGg7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVVc2VyRGVmaW5lZFdpZHRoKHVzZXJEZWZpbmVkV2lkdGg6IG51bWJlciB8IHVuZGVmaW5lZCl7XG4gIGlmKHVzZXJEZWZpbmVkV2lkdGgpIHJldHVybiB7ZmxleDogYDAgMCAke3VzZXJEZWZpbmVkV2lkdGh9cHhgLCBtYXhXaWR0aDogJ25vbmUnIH07XG4gIHJldHVybiB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVUYWJsZURlZmluZWRXaWR0aChtZXRhRGF0YTogTWV0YURhdGEsIHRhYmxlU2V0dGluZ3NNaW5XaWR0aDogbnVtYmVyIHwgdW5kZWZpbmVkKXtcbiAgaWYobWV0YURhdGEud2lkdGgpIHJldHVybiAoe2ZsZXg6IGAwIDAgJHttZXRhRGF0YS53aWR0aH1gLCBtYXhXaWR0aDogJ25vbmUnfSk7XG4gIGNvbnN0IHN0eWxlID0geyBmbGV4OiBgJHsxfWB9O1xuICBpZih0YWJsZVNldHRpbmdzTWluV2lkdGgpIHN0eWxlWydtaW5XaWR0aCddID0gYCR7dGFibGVTZXR0aW5nc01pbldpZHRofXB4YDtcbiAgcmV0dXJuIHN0eWxlO1xufVxuXG5leHBvcnQgY29uc3QgY2FsY3VsYXRlRmxleFdpZHRoID0gKG1ldGFEYXRhOiBNZXRhRGF0YSwgdXNlckRlZmluZWRXaWR0aDogbnVtYmVyIHwgdW5kZWZpbmVkLCB0YWJsZVNldHRpbmdzTWluV2lkdGg6IG51bWJlciB8IHVuZGVmaW5lZCkgPT4ge1xuICBjb25zdCBkZWZpbmVkV2lkdGggPSBjYWxjdWxhdGVXaWR0aHMobWV0YURhdGEsIHVzZXJEZWZpbmVkV2lkdGgpO1xuICBpZihkZWZpbmVkV2lkdGgpIGNvbnNvbGUubG9nKG1ldGFEYXRhLmtleSwgZGVmaW5lZFdpZHRoKTtcbiAgaWYoZGVmaW5lZFdpZHRoKSByZXR1cm4gKHtmbGV4OiBgMCAwICR7ZGVmaW5lZFdpZHRofWAsIG1heFdpZHRoOiAnbm9uZScgfSk7XG4gIGNvbnN0IHN0eWxlID0geyBmbGV4OiBgJHsxfWB9O1xuICBpZih0YWJsZVNldHRpbmdzTWluV2lkdGgpIHN0eWxlWydtaW5XaWR0aCddID0gYCR7dGFibGVTZXR0aW5nc01pbldpZHRofXB4YDtcbiAgcmV0dXJuIHN0eWxlO1xufVxuXG5leHBvcnQgY29uc3QgY29sdW1uU3R5bGVzID0gKG1ldGFEYXRhOiBNZXRhRGF0YSwgdXNlckRlZmluZWRXaWR0aDogbnVtYmVyIHwgdW5kZWZpbmVkLCB0YWJsZVNldHRpbmdzTWluV2lkdGg/OiBudW1iZXIgfCB1bmRlZmluZWQpID0+IHtcbiAgY29uc3QgZnVsbE1ldGFTdHlsZXMgPSBtZXRhRGF0YS5hZGRpdGlvbmFsPy5zdHlsZXMgPz8ge307XG4gIGNvbnN0IHVzZXJXaWR0aCA9IGNhbGN1bGF0ZVVzZXJEZWZpbmVkV2lkdGgodXNlckRlZmluZWRXaWR0aCkgPz8ge307XG4gIGNvbnN0IHRhYmxlV2lkdGggPSB1c2VyRGVmaW5lZFdpZHRoID8ge30gOiBjYWxjdWxhdGVUYWJsZURlZmluZWRXaWR0aChtZXRhRGF0YSwgdGFibGVTZXR0aW5nc01pbldpZHRoKTtcbiAgY29uc3Qgc3R5bGVzOiB7XG4gICAgaGVhZGVyOiBEaWN0aW9uYXJ5PHN0cmluZz47XG4gICAgYm9keTogU3R5bGVyU3R5bGU7XG4gICAgZm9vdGVyOiBEaWN0aW9uYXJ5PHN0cmluZz47XG4gIH0gPSB7XG4gICAgaGVhZGVyOiB7IC4uLnRhYmxlV2lkdGgsIC4uLmZ1bGxNZXRhU3R5bGVzLCAuLi5tZXRhRGF0YS5hZGRpdGlvbmFsPy5jb2x1bW5QYXJ0U3R5bGVzPy5oZWFkZXIsIC4uLnVzZXJXaWR0aH0sXG4gICAgZm9vdGVyOiB7IC4uLnRhYmxlV2lkdGgsIC4uLmZ1bGxNZXRhU3R5bGVzLCAuLi5tZXRhRGF0YS5hZGRpdGlvbmFsPy5jb2x1bW5QYXJ0U3R5bGVzPy5mb290ZXIsIC4uLnVzZXJXaWR0aH0sXG4gICAgYm9keTogeyAuLi50YWJsZVdpZHRoLCAuLi5mdWxsTWV0YVN0eWxlcywgLi4ubWV0YURhdGEuYWRkaXRpb25hbD8uY29sdW1uUGFydFN0eWxlcz8uYm9keSwgLi4udXNlcldpZHRofSxcbiAgfTtcbiAgcmV0dXJuIHN0eWxlcztcbn1cblxuZXhwb3J0IGNvbnN0IGNhbGN1bGF0ZUZsZXhXaWR0aHMgPSAobWV0YURhdGFzOiBNZXRhRGF0YVtdLCB1c2VyRGVmaW5lZFdpZHRoczogRGljdGlvbmFyeTxudW1iZXI+LCB0YWJsZVNldHRpbmdzTWluV2lkdGg6IG51bWJlciB8IHVuZGVmaW5lZCkgPT4ge1xuICByZXR1cm4gbWV0YURhdGFBcnJUb0RpY3QobWV0YURhdGFzLCBtZCA9PiBjYWxjdWxhdGVGbGV4V2lkdGgobWQsIHVzZXJEZWZpbmVkV2lkdGhzW21kLmtleV0sIHRhYmxlU2V0dGluZ3NNaW5XaWR0aCkpO1xufVxuXG5leHBvcnQgY29uc3QgY29sdW1uc1N0eWxlcyA9IChtZXRhRGF0YXM6IE1ldGFEYXRhW10sIHVzZXJEZWZpbmVkV2lkdGhzOiBEaWN0aW9uYXJ5PG51bWJlcj4pID0+IHtcbiAgcmV0dXJuIG1ldGFEYXRhQXJyVG9EaWN0KG1ldGFEYXRhcywgbWQgPT4gY29sdW1uU3R5bGVzKG1kLCB1c2VyRGVmaW5lZFdpZHRoc1ttZC5rZXldKSk7XG59XG4iXX0=
@@ -1,29 +0,0 @@
1
- import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
2
- import { FilterTypes } from '../../enums/filterTypes';
3
- import { ControlContainer, FormsModule, NgForm } from '@angular/forms';
4
- import { MatInputModule } from '@angular/material/input';
5
- import { MatDatepickerModule } from '@angular/material/datepicker';
6
- import { PreventEnterDirective } from '../../../utilities';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/material/input";
9
- import * as i2 from "@angular/material/form-field";
10
- import * as i3 from "@angular/forms";
11
- import * as i4 from "@angular/material/datepicker";
12
- export class DateFilterComponent {
13
- FilterType = FilterTypes;
14
- info;
15
- CurrentFilterType;
16
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DateFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: DateFilterComponent, isStandalone: true, selector: "tb-date-filter", inputs: { info: "info", CurrentFilterType: "CurrentFilterType" }, ngImport: i0, template: "@if (CurrentFilterType !== FilterType.DateBetween && CurrentFilterType !== FilterType.IsNull) {\n <mat-form-field>\n <input matInput name=\"filterValue\" [ngModel]=\"info.filterValue\" [matDatepicker]=\"cal\"/>\n <mat-datepicker-toggle class=\"small-button date-toggle\" matSuffix [for]=\"cal\" preventEnter />\n <mat-datepicker #cal />\n </mat-form-field>\n}\n@if(CurrentFilterType === FilterType.DateBetween){\n <ng-container ngModelGroup=\"filterValue\">\n <mat-form-field class=\"my-filter\" >\n <input matInput name=\"Start\" [ngModel]=\"info.filterValue?.Start\" placeholder=\"From\" [matDatepicker]=\"fromVal\"\n (click)=\"fromVal.open()\"/>\n <mat-datepicker-toggle matSuffix class=\"small-button date-toggle\" [for]=\"fromVal\" preventEnter />\n <mat-datepicker #fromVal></mat-datepicker>\n </mat-form-field>\n <mat-form-field>\n <input matInput name=\"End\" [ngModel]=\"info.filterValue?.End\" placeholder=\"To\" [matDatepicker]=\"toVal\" (click)=\"toVal.open()\"/>\n <mat-datepicker-toggle matSuffix class=\"small-button date-toggle\" [for]=\"toVal\" preventEnter />\n <mat-datepicker #toVal />\n </mat-form-field>\n </ng-container>\n}\n\n", styles: [".filter-name{color:#6495ed;margin:10px 0;font-weight:600;display:inline-block}.switch{display:inline-block}.my-filter{margin-right:15px}.cancel-button{float:right}.head-row{width:100%}.filter-row{width:fit-content}mat-card.filter-card::ng-deep mat-form-field{width:150px}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper{line-height:0}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper:before{height:0}.inline{display:inline-block}.small-button{height:18px;width:18px;font-size:18px;padding:0;margin:0}.small-button ::ng-deep *{line-height:initial;font-size:initial;height:18px;width:18px;font-size:18px;bottom:initial}.cancel-button{float:right;font-weight:700}.date-toggle ::ng-deep svg{position:absolute;left:0;top:0}\n"], dependencies: [{ kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.NgModelGroup, selector: "[ngModelGroup]", inputs: ["ngModelGroup"], exportAs: ["ngModelGroup"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i4.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }], viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18
- }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DateFilterComponent, decorators: [{
20
- type: Component,
21
- args: [{ selector: 'tb-date-filter', changeDetection: ChangeDetectionStrategy.OnPush, viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], standalone: true, imports: [
22
- MatInputModule, FormsModule, MatDatepickerModule, PreventEnterDirective
23
- ], template: "@if (CurrentFilterType !== FilterType.DateBetween && CurrentFilterType !== FilterType.IsNull) {\n <mat-form-field>\n <input matInput name=\"filterValue\" [ngModel]=\"info.filterValue\" [matDatepicker]=\"cal\"/>\n <mat-datepicker-toggle class=\"small-button date-toggle\" matSuffix [for]=\"cal\" preventEnter />\n <mat-datepicker #cal />\n </mat-form-field>\n}\n@if(CurrentFilterType === FilterType.DateBetween){\n <ng-container ngModelGroup=\"filterValue\">\n <mat-form-field class=\"my-filter\" >\n <input matInput name=\"Start\" [ngModel]=\"info.filterValue?.Start\" placeholder=\"From\" [matDatepicker]=\"fromVal\"\n (click)=\"fromVal.open()\"/>\n <mat-datepicker-toggle matSuffix class=\"small-button date-toggle\" [for]=\"fromVal\" preventEnter />\n <mat-datepicker #fromVal></mat-datepicker>\n </mat-form-field>\n <mat-form-field>\n <input matInput name=\"End\" [ngModel]=\"info.filterValue?.End\" placeholder=\"To\" [matDatepicker]=\"toVal\" (click)=\"toVal.open()\"/>\n <mat-datepicker-toggle matSuffix class=\"small-button date-toggle\" [for]=\"toVal\" preventEnter />\n <mat-datepicker #toVal />\n </mat-form-field>\n </ng-container>\n}\n\n", styles: [".filter-name{color:#6495ed;margin:10px 0;font-weight:600;display:inline-block}.switch{display:inline-block}.my-filter{margin-right:15px}.cancel-button{float:right}.head-row{width:100%}.filter-row{width:fit-content}mat-card.filter-card::ng-deep mat-form-field{width:150px}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper{line-height:0}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper:before{height:0}.inline{display:inline-block}.small-button{height:18px;width:18px;font-size:18px;padding:0;margin:0}.small-button ::ng-deep *{line-height:initial;font-size:initial;height:18px;width:18px;font-size:18px;bottom:initial}.cancel-button{float:right;font-weight:700}.date-toggle ::ng-deep svg{position:absolute;left:0;top:0}\n"] }]
24
- }], propDecorators: { info: [{
25
- type: Input
26
- }], CurrentFilterType: [{
27
- type: Input
28
- }] } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvY29tcG9uZW50cy9kYXRlLWZpbHRlci9kYXRlLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL2RhdGUtZmlsdGVyL2RhdGUtZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7O0FBYTNELE1BQU0sT0FBTyxtQkFBbUI7SUFDNUIsVUFBVSxHQUFHLFdBQVcsQ0FBQztJQUNoQixJQUFJLENBQWlCO0lBQ3JCLGlCQUFpQixDQUFjO3VHQUgvQixtQkFBbUI7MkZBQW5CLG1CQUFtQiw0SUNuQmhDLGtzQ0F1QkEsOHlCRFBRLGNBQWMsc3JCQUFFLFdBQVcsMDRCQUFFLG1CQUFtQix1ZkFIckMsQ0FBQyxFQUFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFDLENBQUM7OzJGQU14RCxtQkFBbUI7a0JBWC9CLFNBQVM7K0JBQ0ksZ0JBQWdCLG1CQUVULHVCQUF1QixDQUFDLE1BQU0saUJBRWhDLENBQUMsRUFBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBQyxDQUFDLGNBQ3JELElBQUksV0FDUDt3QkFDTCxjQUFjLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLHFCQUFxQjtxQkFDMUU7OEJBSVEsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQYXJ0aWFsRmlsdGVyIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9maWx0ZXItaW5mbyc7XG5pbXBvcnQgeyBGaWx0ZXJUeXBlLCBGaWx0ZXJUeXBlcyB9IGZyb20gJy4uLy4uL2VudW1zL2ZpbHRlclR5cGVzJztcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIEZvcm1zTW9kdWxlLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IFByZXZlbnRFbnRlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL3V0aWxpdGllcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGItZGF0ZS1maWx0ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kYXRlLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3R5bGVVcmxzOiBbJy4uL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICB2aWV3UHJvdmlkZXJzOiBbe3Byb3ZpZGU6IENvbnRyb2xDb250YWluZXIsIHVzZUV4aXN0aW5nOiBOZ0Zvcm19XSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTWF0SW5wdXRNb2R1bGUsIEZvcm1zTW9kdWxlLCBNYXREYXRlcGlja2VyTW9kdWxlLCBQcmV2ZW50RW50ZXJEaXJlY3RpdmVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIERhdGVGaWx0ZXJDb21wb25lbnQge1xuICAgIEZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlcztcbiAgICBASW5wdXQoKSBpbmZvITogUGFydGlhbEZpbHRlcjtcbiAgICBASW5wdXQoKSBDdXJyZW50RmlsdGVyVHlwZSE6IEZpbHRlclR5cGU7XG59XG4iLCJAaWYgKEN1cnJlbnRGaWx0ZXJUeXBlICE9PSBGaWx0ZXJUeXBlLkRhdGVCZXR3ZWVuICYmIEN1cnJlbnRGaWx0ZXJUeXBlICE9PSBGaWx0ZXJUeXBlLklzTnVsbCkge1xuICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgPGlucHV0IG1hdElucHV0IG5hbWU9XCJmaWx0ZXJWYWx1ZVwiIFtuZ01vZGVsXT1cImluZm8uZmlsdGVyVmFsdWVcIiBbbWF0RGF0ZXBpY2tlcl09XCJjYWxcIi8+XG4gICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBjbGFzcz1cInNtYWxsLWJ1dHRvbiBkYXRlLXRvZ2dsZVwiIG1hdFN1ZmZpeCBbZm9yXT1cImNhbFwiIHByZXZlbnRFbnRlciAvPlxuICAgIDxtYXQtZGF0ZXBpY2tlciAjY2FsIC8+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG59XG5AaWYoQ3VycmVudEZpbHRlclR5cGUgPT09IEZpbHRlclR5cGUuRGF0ZUJldHdlZW4pe1xuICA8bmctY29udGFpbmVyIG5nTW9kZWxHcm91cD1cImZpbHRlclZhbHVlXCI+XG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibXktZmlsdGVyXCIgPlxuICAgICAgPGlucHV0IG1hdElucHV0IG5hbWU9XCJTdGFydFwiIFtuZ01vZGVsXT1cImluZm8uZmlsdGVyVmFsdWU/LlN0YXJ0XCIgIHBsYWNlaG9sZGVyPVwiRnJvbVwiIFttYXREYXRlcGlja2VyXT1cImZyb21WYWxcIlxuICAgICAgICAgIChjbGljayk9XCJmcm9tVmFsLm9wZW4oKVwiLz5cbiAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0U3VmZml4IGNsYXNzPVwic21hbGwtYnV0dG9uIGRhdGUtdG9nZ2xlXCIgW2Zvcl09XCJmcm9tVmFsXCIgcHJldmVudEVudGVyIC8+XG4gICAgICA8bWF0LWRhdGVwaWNrZXIgI2Zyb21WYWw+PC9tYXQtZGF0ZXBpY2tlcj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgIDxpbnB1dCBtYXRJbnB1dCBuYW1lPVwiRW5kXCIgW25nTW9kZWxdPVwiaW5mby5maWx0ZXJWYWx1ZT8uRW5kXCIgIHBsYWNlaG9sZGVyPVwiVG9cIiBbbWF0RGF0ZXBpY2tlcl09XCJ0b1ZhbFwiIChjbGljayk9XCJ0b1ZhbC5vcGVuKClcIi8+XG4gICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBjbGFzcz1cInNtYWxsLWJ1dHRvbiBkYXRlLXRvZ2dsZVwiIFtmb3JdPVwidG9WYWxcIiBwcmV2ZW50RW50ZXIgLz5cbiAgICAgIDxtYXQtZGF0ZXBpY2tlciAjdG9WYWwgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICA8L25nLWNvbnRhaW5lcj5cbn1cblxuIl19
@@ -1,24 +0,0 @@
1
- import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
2
- import { FilterTypes } from '../../enums/filterTypes';
3
- import { ControlContainer, FormsModule, NgForm } from '@angular/forms';
4
- import { PreventEnterDirective } from '../../../utilities';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/forms";
7
- export class DateTimeFilterComponent {
8
- FilterType = FilterTypes;
9
- info;
10
- CurrentFilterType;
11
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DateTimeFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: DateTimeFilterComponent, isStandalone: true, selector: "tb-date-time-filter", inputs: { info: "info", CurrentFilterType: "CurrentFilterType" }, ngImport: i0, template: "@if(CurrentFilterType !== FilterType.DateTimeBetween && CurrentFilterType !== FilterType.IsNull){\n <input type=\"datetime-local\" [ngModel]=\"info.filterValue\" preventEnter name=\"filterValue\" class=\"op-date-time-input\"/>\n}\n@if(CurrentFilterType === FilterType.DateTimeBetween){\n <ng-container ngModelGroup=\"filterValue\">\n <input type=\"datetime-local\" [ngModel]=\"info.filterValue?.Start\" preventEnter name=\"Start\" class=\"op-date-time-input\"/>\n <input type=\"datetime-local\" [ngModel]=\"info.filterValue?.End\" preventEnter name=\"End\" class=\"op-date-time-input\"/>\n </ng-container>\n}", styles: [".filter-name{color:#6495ed;margin:10px 0;font-weight:600;display:inline-block}.switch{display:inline-block}.my-filter{margin-right:15px}.cancel-button{float:right}.head-row{width:100%}.filter-row{width:fit-content}mat-card.filter-card::ng-deep mat-form-field{width:150px}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper{line-height:0}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper:before{height:0}.inline{display:inline-block}.small-button{height:18px;width:18px;font-size:18px;padding:0;margin:0}.small-button ::ng-deep *{line-height:initial;font-size:initial;height:18px;width:18px;font-size:18px;bottom:initial}.cancel-button{float:right;font-weight:700}.date-toggle ::ng-deep svg{position:absolute;left:0;top:0}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgModelGroup, selector: "[ngModelGroup]", inputs: ["ngModelGroup"], exportAs: ["ngModelGroup"] }], viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DateTimeFilterComponent, decorators: [{
15
- type: Component,
16
- args: [{ selector: 'tb-date-time-filter', changeDetection: ChangeDetectionStrategy.OnPush, viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], standalone: true, imports: [
17
- FormsModule, PreventEnterDirective
18
- ], template: "@if(CurrentFilterType !== FilterType.DateTimeBetween && CurrentFilterType !== FilterType.IsNull){\n <input type=\"datetime-local\" [ngModel]=\"info.filterValue\" preventEnter name=\"filterValue\" class=\"op-date-time-input\"/>\n}\n@if(CurrentFilterType === FilterType.DateTimeBetween){\n <ng-container ngModelGroup=\"filterValue\">\n <input type=\"datetime-local\" [ngModel]=\"info.filterValue?.Start\" preventEnter name=\"Start\" class=\"op-date-time-input\"/>\n <input type=\"datetime-local\" [ngModel]=\"info.filterValue?.End\" preventEnter name=\"End\" class=\"op-date-time-input\"/>\n </ng-container>\n}", styles: [".filter-name{color:#6495ed;margin:10px 0;font-weight:600;display:inline-block}.switch{display:inline-block}.my-filter{margin-right:15px}.cancel-button{float:right}.head-row{width:100%}.filter-row{width:fit-content}mat-card.filter-card::ng-deep mat-form-field{width:150px}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper{line-height:0}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper:before{height:0}.inline{display:inline-block}.small-button{height:18px;width:18px;font-size:18px;padding:0;margin:0}.small-button ::ng-deep *{line-height:initial;font-size:initial;height:18px;width:18px;font-size:18px;bottom:initial}.cancel-button{float:right;font-weight:700}.date-toggle ::ng-deep svg{position:absolute;left:0;top:0}\n"] }]
19
- }], propDecorators: { info: [{
20
- type: Input
21
- }], CurrentFilterType: [{
22
- type: Input
23
- }] } });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL2RhdGUtdGltZS1maWx0ZXIvZGF0ZS10aW1lLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL2RhdGUtdGltZS1maWx0ZXIvZGF0ZS10aW1lLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBYTNELE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsVUFBVSxHQUFHLFdBQVcsQ0FBQztJQUNoQixJQUFJLENBQWlCO0lBQ3JCLGlCQUFpQixDQUFjO3VHQUg3Qix1QkFBdUI7MkZBQXZCLHVCQUF1QixpSkNqQnBDLDJtQkFRQyw4eUJETUcsV0FBVyxnNEJBSEUsQ0FBQyxFQUFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFDLENBQUM7OzJGQU10RCx1QkFBdUI7a0JBWG5DLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUVkLHVCQUF1QixDQUFDLE1BQU0saUJBRWhDLENBQUMsRUFBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBQyxDQUFDLGNBQ3JELElBQUksV0FDUDt3QkFDUCxXQUFXLEVBQUUscUJBQXFCO3FCQUNuQzs4QkFJUSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBhcnRpYWxGaWx0ZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2ZpbHRlci1pbmZvJztcbmltcG9ydCB7IEZpbHRlclR5cGUsIEZpbHRlclR5cGVzIH0gZnJvbSAnLi4vLi4vZW51bXMvZmlsdGVyVHlwZXMnO1xuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgRm9ybXNNb2R1bGUsIE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFByZXZlbnRFbnRlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL3V0aWxpdGllcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RiLWRhdGUtdGltZS1maWx0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS10aW1lLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdHlsZVVybHM6IFsnLi4vZmlsdGVyL2ZpbHRlci5jb21wb25lbnQuc2NzcyddLFxuICB2aWV3UHJvdmlkZXJzOiBbe3Byb3ZpZGU6IENvbnRyb2xDb250YWluZXIsIHVzZUV4aXN0aW5nOiBOZ0Zvcm19XSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZvcm1zTW9kdWxlLCBQcmV2ZW50RW50ZXJEaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXRlVGltZUZpbHRlckNvbXBvbmVudCB7XG4gIEZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlcztcbiAgQElucHV0KCkgaW5mbyE6IFBhcnRpYWxGaWx0ZXI7XG4gIEBJbnB1dCgpIEN1cnJlbnRGaWx0ZXJUeXBlITogRmlsdGVyVHlwZTtcbn1cbiIsIkBpZihDdXJyZW50RmlsdGVyVHlwZSAhPT0gRmlsdGVyVHlwZS5EYXRlVGltZUJldHdlZW4gJiYgQ3VycmVudEZpbHRlclR5cGUgIT09IEZpbHRlclR5cGUuSXNOdWxsKXtcbiAgPGlucHV0IHR5cGU9XCJkYXRldGltZS1sb2NhbFwiIFtuZ01vZGVsXT1cImluZm8uZmlsdGVyVmFsdWVcIiBwcmV2ZW50RW50ZXIgbmFtZT1cImZpbHRlclZhbHVlXCIgY2xhc3M9XCJvcC1kYXRlLXRpbWUtaW5wdXRcIi8+XG59XG5AaWYoQ3VycmVudEZpbHRlclR5cGUgPT09IEZpbHRlclR5cGUuRGF0ZVRpbWVCZXR3ZWVuKXtcbiAgPG5nLWNvbnRhaW5lciBuZ01vZGVsR3JvdXA9XCJmaWx0ZXJWYWx1ZVwiPlxuICAgIDxpbnB1dCB0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIiBbbmdNb2RlbF09XCJpbmZvLmZpbHRlclZhbHVlPy5TdGFydFwiIHByZXZlbnRFbnRlciBuYW1lPVwiU3RhcnRcIiBjbGFzcz1cIm9wLWRhdGUtdGltZS1pbnB1dFwiLz5cbiAgICA8aW5wdXQgdHlwZT1cImRhdGV0aW1lLWxvY2FsXCIgW25nTW9kZWxdPVwiaW5mby5maWx0ZXJWYWx1ZT8uRW5kXCIgcHJldmVudEVudGVyIG5hbWU9XCJFbmRcIiBjbGFzcz1cIm9wLWRhdGUtdGltZS1pbnB1dFwiLz5cbiAgPC9uZy1jb250YWluZXI+XG59Il19
@@ -1,64 +0,0 @@
1
- import { Component, ChangeDetectionStrategy, inject, input, computed, output, signal } from '@angular/core';
2
- import { filterTypeMap } from '../../classes/filter-info';
3
- import { TableStore } from '../../classes/table-store';
4
- import { FilterTypes } from '../../enums/filterTypes';
5
- import { FieldType } from '../../interfaces/report-def';
6
- import { MatCardModule } from '@angular/material/card';
7
- import { KeyValuePipe, NgTemplateOutlet } from '@angular/common';
8
- import { FormsModule } from '@angular/forms';
9
- import { PreventEnterDirective, SpaceCasePipe } from '../../../utilities';
10
- import { MatButtonModule } from '@angular/material/button';
11
- import { MatTooltipModule } from '@angular/material/tooltip';
12
- import { MatIconModule } from '@angular/material/icon';
13
- import { MatInputModule } from '@angular/material/input';
14
- import { MatSelectModule } from '@angular/material/select';
15
- import { NumberFilterComponent } from '../number-filter/number-filter.component';
16
- import { DateFilterComponent } from '../date-filter/date-filter.component';
17
- import { DateTimeFilterComponent } from '../date-time-filter/date-time-filter.component';
18
- import { MatRadioModule } from '@angular/material/radio';
19
- import { InFilterComponent } from '../in-filter/in-filter.component';
20
- import { InListFilterComponent } from './in-list/in-list-filter.component';
21
- import * as i0 from "@angular/core";
22
- import * as i1 from "@angular/material/card";
23
- import * as i2 from "@angular/forms";
24
- import * as i3 from "@angular/material/button";
25
- import * as i4 from "@angular/material/tooltip";
26
- import * as i5 from "@angular/material/icon";
27
- import * as i6 from "@angular/material/input";
28
- import * as i7 from "@angular/material/form-field";
29
- import * as i8 from "@angular/material/select";
30
- import * as i9 from "@angular/material/core";
31
- import * as i10 from "@angular/material/radio";
32
- export class FilterComponent {
33
- state = inject(TableStore);
34
- filterTypes = filterTypeMap;
35
- FilterType = FilterTypes;
36
- FieldType = FieldType;
37
- $filter = input.required({
38
- alias: 'filter',
39
- transform: (f) => ({ ...f })
40
- });
41
- close = output();
42
- $enteredFilterType = signal(undefined);
43
- $currentFilterType = computed(() => this.$enteredFilterType() || this.$filter()?.filterType);
44
- $availableFilterTypes = computed(() => this.filterTypes[this.$filter()?.fieldType]);
45
- onEnter(filter, event) {
46
- event.preventDefault();
47
- if (filter.filterValue != null && filter.filterType) {
48
- this.state.addFilter(filter);
49
- this.close.emit();
50
- }
51
- }
52
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: FilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
53
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: FilterComponent, isStandalone: true, selector: "tb-filter", inputs: { $filter: { classPropertyName: "$filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { close: "close" }, ngImport: i0, template: "@let filter = $filter();\n@let currentFilterType = $currentFilterType();\n\n@if (filter) {\n<mat-card appearance=\"outlined\" class=\"filter-card\">\n <mat-card-content>\n <form #form=\"ngForm\" (keydown.enter)=\"onEnter(form.value,$event)\" (keydown.escape)=\"close.emit()\">\n <input type=\"hidden\" name=\"filterId\" [ngModel]=\"filter.filterId\" />\n <input type=\"hidden\" name=\"key\" [ngModel]=\"filter.key\" />\n <input type=\"hidden\" name=\"fieldType\" [ngModel]=\"filter.fieldType\" />\n <div class=\"head-row\" >\n <h4 class=\"filter-name\">{{(filter.key | spaceCase)}} Filter</h4>\n <button class=\"cancel-button small-button\" color=\"primary\" mat-icon-button (click)=\"close.emit();\" type=\"button\"\n matTooltip=\"Close\">\n <mat-icon class=\"cancel-button\" color=\"primary\">close</mat-icon>\n </button>\n </div>\n <div class=\"filter-row\">\n <div class=\"inline\">\n <mat-form-field class=\"my-filter\" >\n <mat-select placeholder=\"Select Filter Type\" name=\"filterType\" [ngModel]=\"$currentFilterType()\" (ngModelChange)=\"$enteredFilterType.set($event)\" [panelWidth]=\"null\">\n @for (kvp of filterTypes[filter.fieldType]; track kvp) {\n <mat-option [value]=\"kvp\">\n {{ kvp }}\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </div>\n @if(filter.fieldType === FieldType.String || filter.fieldType === FieldType.Array || filter.fieldType === FieldType.Link ||\n filter.fieldType === FieldType.Unknown || filter.fieldType === FieldType.PhoneNumber) {\n <ng-container *ngTemplateOutlet=\"String\" />\n }\n @else if(filter.fieldType === FieldType.Number || filter.fieldType === FieldType.Currency){\n <tb-number-filter [info]=\"filter\" [CurrentFilterType]=\"currentFilterType!\" />\n }\n @else if(filter.fieldType === FieldType.Boolean){\n <ng-container *ngTemplateOutlet=\"Boolean\" />\n }\n @else if(filter.fieldType === FieldType.Date){\n <tb-date-filter [info]=\"filter\" [CurrentFilterType]=\"currentFilterType!\" />\n }\n @else if(filter.fieldType === FieldType.DateTime){\n <tb-date-time-filter [info]=\"filter\" [CurrentFilterType]=\"currentFilterType!\" />\n }\n @else if(filter.fieldType === FieldType.Enum){\n <ng-container *ngTemplateOutlet=\"Enum\" />\n }\n\n @if(currentFilterType === FilterType.IsNull){\n <mat-radio-group name=\"filterValue\" [ngModel]=\"filter.filterValue\">\n <mat-radio-button [value]=\"true\">True</mat-radio-button>\n <mat-radio-button [value]=\"false\">False</mat-radio-button>\n </mat-radio-group>\n }\n </div>\n <button mat-button (click)=\"state.addFilter(form.value)\" disableRipple [disabled]=\"form.value.filterValue==undefined || !form.value.filterType\">\n Apply\n </button>\n \n \n <ng-template #String>\n @if(currentFilterType !== FilterType.IsNull && currentFilterType !== FilterType.In){\n <mat-form-field class=\"my-filter\">\n <input matInput name=\"filterValue\" [ngModel]=\"filter.filterValue\" />\n </mat-form-field>\n } @else if(currentFilterType === FilterType.In) {\n <lib-in-filter [type]=\"FieldType.String\" name='filterValue' [(ngModel)]=\"filter.filterValue\" />\n }\n </ng-template>\n \n <ng-template #Boolean >\n @if(currentFilterType === FilterType.BooleanEquals){\n <div class=\"switch\">\n <mat-radio-group name=\"filterValue\" [ngModel]=\"filter.filterValue\" >\n <mat-radio-button [value]=\"true\" preventEnter>True</mat-radio-button>\n <mat-radio-button [value]=\"false\" preventEnter>False</mat-radio-button>\n </mat-radio-group>\n </div>\n }\n </ng-template>\n <ng-template #Enum>\n @if(currentFilterType === FilterType.In){\n <tb-in-list-filter [key]='filter.key' name='filterValue' [(ngModel)]='filter.filterValue' ></tb-in-list-filter>\n\n }\n </ng-template>\n </form>\n </mat-card-content>\n</mat-card>\n}\n", styles: [".filter-name{color:#6495ed;margin:10px 0;font-weight:600;display:inline-block}.switch{display:inline-block}.my-filter{margin-right:15px}.cancel-button{float:right}.head-row{width:100%}.filter-row{width:fit-content}mat-card.filter-card::ng-deep mat-form-field{width:150px}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper{line-height:0}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper:before{height:0}.inline{display:inline-block}.small-button{height:18px;width:18px;font-size:18px;padding:0;margin:0}.small-button ::ng-deep *{line-height:initial;font-size:initial;height:18px;width:18px;font-size:18px;bottom:initial}.cancel-button{float:right;font-weight:700}.date-toggle ::ng-deep svg{position:absolute;left:0;top:0}\n"], dependencies: [{ kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: SpaceCasePipe, name: "spaceCase" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: NumberFilterComponent, selector: "tb-number-filter", inputs: ["CurrentFilterType", "info"] }, { kind: "component", type: DateFilterComponent, selector: "tb-date-filter", inputs: ["info", "CurrentFilterType"] }, { kind: "component", type: DateTimeFilterComponent, selector: "tb-date-time-filter", inputs: ["info", "CurrentFilterType"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i10.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i10.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "component", type: InFilterComponent, selector: "lib-in-filter", inputs: ["type"] }, { kind: "component", type: InListFilterComponent, selector: "tb-in-list-filter , [tb-in-list-filter]", inputs: ["key"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
54
- }
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: FilterComponent, decorators: [{
56
- type: Component,
57
- args: [{ selector: 'tb-filter', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
58
- MatCardModule, FormsModule, SpaceCasePipe, MatButtonModule, MatTooltipModule, MatIconModule,
59
- MatInputModule, MatSelectModule, KeyValuePipe, NumberFilterComponent,
60
- DateFilterComponent, DateTimeFilterComponent, MatRadioModule, InFilterComponent, InListFilterComponent,
61
- PreventEnterDirective, NgTemplateOutlet
62
- ], template: "@let filter = $filter();\n@let currentFilterType = $currentFilterType();\n\n@if (filter) {\n<mat-card appearance=\"outlined\" class=\"filter-card\">\n <mat-card-content>\n <form #form=\"ngForm\" (keydown.enter)=\"onEnter(form.value,$event)\" (keydown.escape)=\"close.emit()\">\n <input type=\"hidden\" name=\"filterId\" [ngModel]=\"filter.filterId\" />\n <input type=\"hidden\" name=\"key\" [ngModel]=\"filter.key\" />\n <input type=\"hidden\" name=\"fieldType\" [ngModel]=\"filter.fieldType\" />\n <div class=\"head-row\" >\n <h4 class=\"filter-name\">{{(filter.key | spaceCase)}} Filter</h4>\n <button class=\"cancel-button small-button\" color=\"primary\" mat-icon-button (click)=\"close.emit();\" type=\"button\"\n matTooltip=\"Close\">\n <mat-icon class=\"cancel-button\" color=\"primary\">close</mat-icon>\n </button>\n </div>\n <div class=\"filter-row\">\n <div class=\"inline\">\n <mat-form-field class=\"my-filter\" >\n <mat-select placeholder=\"Select Filter Type\" name=\"filterType\" [ngModel]=\"$currentFilterType()\" (ngModelChange)=\"$enteredFilterType.set($event)\" [panelWidth]=\"null\">\n @for (kvp of filterTypes[filter.fieldType]; track kvp) {\n <mat-option [value]=\"kvp\">\n {{ kvp }}\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </div>\n @if(filter.fieldType === FieldType.String || filter.fieldType === FieldType.Array || filter.fieldType === FieldType.Link ||\n filter.fieldType === FieldType.Unknown || filter.fieldType === FieldType.PhoneNumber) {\n <ng-container *ngTemplateOutlet=\"String\" />\n }\n @else if(filter.fieldType === FieldType.Number || filter.fieldType === FieldType.Currency){\n <tb-number-filter [info]=\"filter\" [CurrentFilterType]=\"currentFilterType!\" />\n }\n @else if(filter.fieldType === FieldType.Boolean){\n <ng-container *ngTemplateOutlet=\"Boolean\" />\n }\n @else if(filter.fieldType === FieldType.Date){\n <tb-date-filter [info]=\"filter\" [CurrentFilterType]=\"currentFilterType!\" />\n }\n @else if(filter.fieldType === FieldType.DateTime){\n <tb-date-time-filter [info]=\"filter\" [CurrentFilterType]=\"currentFilterType!\" />\n }\n @else if(filter.fieldType === FieldType.Enum){\n <ng-container *ngTemplateOutlet=\"Enum\" />\n }\n\n @if(currentFilterType === FilterType.IsNull){\n <mat-radio-group name=\"filterValue\" [ngModel]=\"filter.filterValue\">\n <mat-radio-button [value]=\"true\">True</mat-radio-button>\n <mat-radio-button [value]=\"false\">False</mat-radio-button>\n </mat-radio-group>\n }\n </div>\n <button mat-button (click)=\"state.addFilter(form.value)\" disableRipple [disabled]=\"form.value.filterValue==undefined || !form.value.filterType\">\n Apply\n </button>\n \n \n <ng-template #String>\n @if(currentFilterType !== FilterType.IsNull && currentFilterType !== FilterType.In){\n <mat-form-field class=\"my-filter\">\n <input matInput name=\"filterValue\" [ngModel]=\"filter.filterValue\" />\n </mat-form-field>\n } @else if(currentFilterType === FilterType.In) {\n <lib-in-filter [type]=\"FieldType.String\" name='filterValue' [(ngModel)]=\"filter.filterValue\" />\n }\n </ng-template>\n \n <ng-template #Boolean >\n @if(currentFilterType === FilterType.BooleanEquals){\n <div class=\"switch\">\n <mat-radio-group name=\"filterValue\" [ngModel]=\"filter.filterValue\" >\n <mat-radio-button [value]=\"true\" preventEnter>True</mat-radio-button>\n <mat-radio-button [value]=\"false\" preventEnter>False</mat-radio-button>\n </mat-radio-group>\n </div>\n }\n </ng-template>\n <ng-template #Enum>\n @if(currentFilterType === FilterType.In){\n <tb-in-list-filter [key]='filter.key' name='filterValue' [(ngModel)]='filter.filterValue' ></tb-in-list-filter>\n\n }\n </ng-template>\n </form>\n </mat-card-content>\n</mat-card>\n}\n", styles: [".filter-name{color:#6495ed;margin:10px 0;font-weight:600;display:inline-block}.switch{display:inline-block}.my-filter{margin-right:15px}.cancel-button{float:right}.head-row{width:100%}.filter-row{width:fit-content}mat-card.filter-card::ng-deep mat-form-field{width:150px}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper{line-height:0}mat-card.filter-card::ng-deep .mat-mdc-form-field-subscript-wrapper:before{height:0}.inline{display:inline-block}.small-button{height:18px;width:18px;font-size:18px;padding:0;margin:0}.small-button ::ng-deep *{line-height:initial;font-size:initial;height:18px;width:18px;font-size:18px;bottom:initial}.cancel-button{float:right;font-weight:700}.date-toggle ::ng-deep svg{position:absolute;left:0;top:0}\n"] }]
63
- }] });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2NvbXBvbmVudHMvZmlsdGVyL2ZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9jb21wb25lbnRzL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVHLE9BQU8sRUFBRSxhQUFhLEVBQTZCLE1BQU0sMkJBQTJCLENBQUM7QUFDckYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNqRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7Ozs7OztBQWUzRSxNQUFNLE9BQU8sZUFBZTtJQUNoQixLQUFLLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRXJDLFdBQVcsR0FBRyxhQUFhLENBQUM7SUFDNUIsVUFBVSxHQUFHLFdBQVcsQ0FBQztJQUN6QixTQUFTLEdBQUcsU0FBUyxDQUFDO0lBRXRCLE9BQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxDQUErQjtRQUNyRCxLQUFLLEVBQUUsUUFBUTtRQUNmLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7S0FDN0IsQ0FBQyxDQUFDO0lBRUgsS0FBSyxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBRWpCLGtCQUFrQixHQUFHLE1BQU0sQ0FBeUIsU0FBUyxDQUFDLENBQUM7SUFDL0Qsa0JBQWtCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM5RixxQkFBcUIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUVwRixPQUFPLENBQUMsTUFBa0IsRUFBRSxLQUFVO1FBQ3BDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLE1BQU0sQ0FBQyxXQUFXLElBQUksSUFBSSxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNwRCxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO3VHQXhCVSxlQUFlOzJGQUFmLGVBQWUsME9DbEM1Qix3eUlBMkZBLDh5QkQvRE0sYUFBYSwwTkFBRSxXQUFXLG1pQ0FBRSxhQUFhLGlEQUFFLGVBQWUsd1VBQUUsZ0JBQWdCLDRUQUFFLGFBQWEsbUxBQzNGLGNBQWMscWpCQUFFLGVBQWUsb3JCQUFnQixxQkFBcUIsb0dBQ3BFLG1CQUFtQixrR0FBRSx1QkFBdUIsc0dBQUUsY0FBYyx1bEJBQUUsaUJBQWlCLDRFQUFFLHFCQUFxQixxR0FDL0UsZ0JBQWdCOzsyRkFHaEMsZUFBZTtrQkFiM0IsU0FBUzsrQkFDSSxXQUFXLG1CQUdKLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGFBQWEsRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhO3dCQUMzRixjQUFjLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxxQkFBcUI7d0JBQ3BFLG1CQUFtQixFQUFFLHVCQUF1QixFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxxQkFBcUI7d0JBQ3RHLHFCQUFxQixFQUFFLGdCQUFnQjtxQkFDeEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBpbmplY3QsIGlucHV0LCBjb21wdXRlZCwgb3V0cHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpbHRlclR5cGVNYXAsIEZpbHRlckluZm8sIFBhcnRpYWxGaWx0ZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2ZpbHRlci1pbmZvJztcbmltcG9ydCB7IFRhYmxlU3RvcmUgfSBmcm9tICcuLi8uLi9jbGFzc2VzL3RhYmxlLXN0b3JlJztcbmltcG9ydCB7IEZpbHRlclR5cGUsIEZpbHRlclR5cGVzIH0gZnJvbSAnLi4vLi4vZW51bXMvZmlsdGVyVHlwZXMnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcbmltcG9ydCB7IE1hdENhcmRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcbmltcG9ydCB7IEtleVZhbHVlUGlwZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFByZXZlbnRFbnRlckRpcmVjdGl2ZSwgU3BhY2VDYXNlUGlwZSB9IGZyb20gJy4uLy4uLy4uL3V0aWxpdGllcyc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgTnVtYmVyRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vbnVtYmVyLWZpbHRlci9udW1iZXItZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRlRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vZGF0ZS1maWx0ZXIvZGF0ZS1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVUaW1lRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vZGF0ZS10aW1lLWZpbHRlci9kYXRlLXRpbWUtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRSYWRpb01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3JhZGlvJztcbmltcG9ydCB7IEluRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vaW4tZmlsdGVyL2luLWZpbHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5MaXN0RmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9pbi1saXN0L2luLWxpc3QtZmlsdGVyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGItZmlsdGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9maWx0ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgIE1hdENhcmRNb2R1bGUsIEZvcm1zTW9kdWxlLCBTcGFjZUNhc2VQaXBlLCBNYXRCdXR0b25Nb2R1bGUsIE1hdFRvb2x0aXBNb2R1bGUsIE1hdEljb25Nb2R1bGUsXG4gICAgICBNYXRJbnB1dE1vZHVsZSwgTWF0U2VsZWN0TW9kdWxlLCBLZXlWYWx1ZVBpcGUsIE51bWJlckZpbHRlckNvbXBvbmVudCxcbiAgICAgIERhdGVGaWx0ZXJDb21wb25lbnQsIERhdGVUaW1lRmlsdGVyQ29tcG9uZW50LCBNYXRSYWRpb01vZHVsZSwgSW5GaWx0ZXJDb21wb25lbnQsIEluTGlzdEZpbHRlckNvbXBvbmVudCxcbiAgICAgIFByZXZlbnRFbnRlckRpcmVjdGl2ZSwgTmdUZW1wbGF0ZU91dGxldFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRmlsdGVyQ29tcG9uZW50PFQgZXh0ZW5kcyBGaWVsZFR5cGU+IHtcbiAgcHJvdGVjdGVkIHN0YXRlID0gaW5qZWN0KFRhYmxlU3RvcmUpO1xuXG4gIGZpbHRlclR5cGVzID0gZmlsdGVyVHlwZU1hcDtcbiAgRmlsdGVyVHlwZSA9IEZpbHRlclR5cGVzO1xuICBGaWVsZFR5cGUgPSBGaWVsZFR5cGU7XG5cbiAgJGZpbHRlciA9IGlucHV0LnJlcXVpcmVkPFBhcnRpYWxGaWx0ZXIsIFBhcnRpYWxGaWx0ZXI+KHsgXG4gICAgYWxpYXM6ICdmaWx0ZXInLFxuICAgIHRyYW5zZm9ybTogKGYpID0+ICh7IC4uLmYgfSlcbiAgfSk7XG5cbiAgY2xvc2UgPSBvdXRwdXQoKTtcblxuICAkZW50ZXJlZEZpbHRlclR5cGUgPSBzaWduYWw8RmlsdGVyVHlwZSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgJGN1cnJlbnRGaWx0ZXJUeXBlID0gY29tcHV0ZWQoKCkgPT4gIHRoaXMuJGVudGVyZWRGaWx0ZXJUeXBlKCkgfHwgdGhpcy4kZmlsdGVyKCk/LmZpbHRlclR5cGUpO1xuICAkYXZhaWxhYmxlRmlsdGVyVHlwZXMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmZpbHRlclR5cGVzW3RoaXMuJGZpbHRlcigpPy5maWVsZFR5cGVdKTtcblxuICBvbkVudGVyKGZpbHRlcjogRmlsdGVySW5mbywgZXZlbnQ6IGFueSkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKGZpbHRlci5maWx0ZXJWYWx1ZSAhPSBudWxsICYmIGZpbHRlci5maWx0ZXJUeXBlKSB7XG4gICAgICB0aGlzLnN0YXRlLmFkZEZpbHRlcihmaWx0ZXIpO1xuICAgICAgdGhpcy5jbG9zZS5lbWl0KCk7XG4gICAgfVxuICB9XG59XG4iLCJAbGV0IGZpbHRlciA9ICRmaWx0ZXIoKTtcbkBsZXQgY3VycmVudEZpbHRlclR5cGUgPSAkY3VycmVudEZpbHRlclR5cGUoKTtcblxuQGlmIChmaWx0ZXIpIHtcbjxtYXQtY2FyZCBhcHBlYXJhbmNlPVwib3V0bGluZWRcIiBjbGFzcz1cImZpbHRlci1jYXJkXCI+XG4gIDxtYXQtY2FyZC1jb250ZW50PlxuICAgIDxmb3JtICNmb3JtPVwibmdGb3JtXCIgIChrZXlkb3duLmVudGVyKT1cIm9uRW50ZXIoZm9ybS52YWx1ZSwkZXZlbnQpXCIgKGtleWRvd24uZXNjYXBlKT1cImNsb3NlLmVtaXQoKVwiPlxuICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiZmlsdGVySWRcIiBbbmdNb2RlbF09XCJmaWx0ZXIuZmlsdGVySWRcIiAvPlxuICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwia2V5XCIgW25nTW9kZWxdPVwiZmlsdGVyLmtleVwiIC8+XG4gICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJmaWVsZFR5cGVcIiBbbmdNb2RlbF09XCJmaWx0ZXIuZmllbGRUeXBlXCIgLz5cbiAgICAgIDxkaXYgY2xhc3M9XCJoZWFkLXJvd1wiID5cbiAgICAgICAgPGg0IGNsYXNzPVwiZmlsdGVyLW5hbWVcIj57eyhmaWx0ZXIua2V5IHwgc3BhY2VDYXNlKX19IEZpbHRlcjwvaDQ+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJjYW5jZWwtYnV0dG9uIHNtYWxsLWJ1dHRvblwiIGNvbG9yPVwicHJpbWFyeVwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiY2xvc2UuZW1pdCgpO1wiIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkNsb3NlXCI+XG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiY2FuY2VsLWJ1dHRvblwiIGNvbG9yPVwicHJpbWFyeVwiPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItcm93XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImlubGluZVwiPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibXktZmlsdGVyXCIgPlxuICAgICAgICAgICAgICAgIDxtYXQtc2VsZWN0ICBwbGFjZWhvbGRlcj1cIlNlbGVjdCBGaWx0ZXIgVHlwZVwiIG5hbWU9XCJmaWx0ZXJUeXBlXCIgIFtuZ01vZGVsXT1cIiRjdXJyZW50RmlsdGVyVHlwZSgpXCIgKG5nTW9kZWxDaGFuZ2UpPVwiJGVudGVyZWRGaWx0ZXJUeXBlLnNldCgkZXZlbnQpXCIgW3BhbmVsV2lkdGhdPVwibnVsbFwiPlxuICAgICAgICAgICAgICAgICAgQGZvciAoa3ZwIG9mIGZpbHRlclR5cGVzW2ZpbHRlci5maWVsZFR5cGVdOyB0cmFjayBrdnApIHtcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cImt2cFwiPlxuICAgICAgICAgICAgICAgICAgICAgIHt7IGt2cCB9fVxuICAgICAgICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICBAaWYoZmlsdGVyLmZpZWxkVHlwZSA9PT0gRmllbGRUeXBlLlN0cmluZyB8fCBmaWx0ZXIuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuQXJyYXkgfHwgZmlsdGVyLmZpZWxkVHlwZSA9PT0gRmllbGRUeXBlLkxpbmsgfHxcbiAgICAgICAgICBmaWx0ZXIuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuVW5rbm93biB8fCBmaWx0ZXIuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuUGhvbmVOdW1iZXIpIHtcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJTdHJpbmdcIiAvPlxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSBpZihmaWx0ZXIuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuTnVtYmVyIHx8IGZpbHRlci5maWVsZFR5cGUgPT09IEZpZWxkVHlwZS5DdXJyZW5jeSl7XG4gICAgICAgICAgICA8dGItbnVtYmVyLWZpbHRlciBbaW5mb109XCJmaWx0ZXJcIiBbQ3VycmVudEZpbHRlclR5cGVdPVwiY3VycmVudEZpbHRlclR5cGUhXCIgLz5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2UgaWYoZmlsdGVyLmZpZWxkVHlwZSA9PT0gRmllbGRUeXBlLkJvb2xlYW4pe1xuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIkJvb2xlYW5cIiAvPlxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSBpZihmaWx0ZXIuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuRGF0ZSl7XG4gICAgICAgICAgICA8dGItZGF0ZS1maWx0ZXIgW2luZm9dPVwiZmlsdGVyXCIgW0N1cnJlbnRGaWx0ZXJUeXBlXT1cImN1cnJlbnRGaWx0ZXJUeXBlIVwiIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIGlmKGZpbHRlci5maWVsZFR5cGUgPT09IEZpZWxkVHlwZS5EYXRlVGltZSl7XG4gICAgICAgICAgICA8dGItZGF0ZS10aW1lLWZpbHRlciBbaW5mb109XCJmaWx0ZXJcIiBbQ3VycmVudEZpbHRlclR5cGVdPVwiY3VycmVudEZpbHRlclR5cGUhXCIgLz5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2UgaWYoZmlsdGVyLmZpZWxkVHlwZSA9PT0gRmllbGRUeXBlLkVudW0pe1xuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIkVudW1cIiAvPlxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZihjdXJyZW50RmlsdGVyVHlwZSA9PT0gRmlsdGVyVHlwZS5Jc051bGwpe1xuICAgICAgICAgICAgPG1hdC1yYWRpby1ncm91cCBuYW1lPVwiZmlsdGVyVmFsdWVcIiBbbmdNb2RlbF09XCJmaWx0ZXIuZmlsdGVyVmFsdWVcIj5cbiAgICAgICAgICAgICAgPG1hdC1yYWRpby1idXR0b24gW3ZhbHVlXT1cInRydWVcIj5UcnVlPC9tYXQtcmFkaW8tYnV0dG9uPlxuICAgICAgICAgICAgICA8bWF0LXJhZGlvLWJ1dHRvbiBbdmFsdWVdPVwiZmFsc2VcIj5GYWxzZTwvbWF0LXJhZGlvLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvbWF0LXJhZGlvLWdyb3VwPlxuICAgICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIChjbGljayk9XCJzdGF0ZS5hZGRGaWx0ZXIoZm9ybS52YWx1ZSlcIiBkaXNhYmxlUmlwcGxlIFtkaXNhYmxlZF09XCJmb3JtLnZhbHVlLmZpbHRlclZhbHVlPT11bmRlZmluZWQgfHwgIWZvcm0udmFsdWUuZmlsdGVyVHlwZVwiPlxuICAgICAgICBBcHBseVxuICAgICAgPC9idXR0b24+XG4gICAgXG4gICAgXG4gICAgPG5nLXRlbXBsYXRlICNTdHJpbmc+XG4gICAgICBAaWYoY3VycmVudEZpbHRlclR5cGUgIT09IEZpbHRlclR5cGUuSXNOdWxsICYmIGN1cnJlbnRGaWx0ZXJUeXBlICE9PSBGaWx0ZXJUeXBlLkluKXtcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibXktZmlsdGVyXCI+XG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IG5hbWU9XCJmaWx0ZXJWYWx1ZVwiIFtuZ01vZGVsXT1cImZpbHRlci5maWx0ZXJWYWx1ZVwiIC8+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICB9IEBlbHNlIGlmKGN1cnJlbnRGaWx0ZXJUeXBlID09PSBGaWx0ZXJUeXBlLkluKSB7XG4gICAgICAgIDxsaWItaW4tZmlsdGVyIFt0eXBlXT1cIkZpZWxkVHlwZS5TdHJpbmdcIiBuYW1lPSdmaWx0ZXJWYWx1ZScgWyhuZ01vZGVsKV09XCJmaWx0ZXIuZmlsdGVyVmFsdWVcIiAvPlxuICAgICAgfVxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgXG4gICAgPG5nLXRlbXBsYXRlICNCb29sZWFuID5cbiAgICAgIEBpZihjdXJyZW50RmlsdGVyVHlwZSA9PT0gRmlsdGVyVHlwZS5Cb29sZWFuRXF1YWxzKXtcbiAgICAgICAgPGRpdiBjbGFzcz1cInN3aXRjaFwiPlxuICAgICAgICAgIDxtYXQtcmFkaW8tZ3JvdXAgbmFtZT1cImZpbHRlclZhbHVlXCIgW25nTW9kZWxdPVwiZmlsdGVyLmZpbHRlclZhbHVlXCIgPlxuICAgICAgICAgICAgPG1hdC1yYWRpby1idXR0b24gW3ZhbHVlXT1cInRydWVcIiBwcmV2ZW50RW50ZXI+VHJ1ZTwvbWF0LXJhZGlvLWJ1dHRvbj5cbiAgICAgICAgICAgIDxtYXQtcmFkaW8tYnV0dG9uIFt2YWx1ZV09XCJmYWxzZVwiIHByZXZlbnRFbnRlcj5GYWxzZTwvbWF0LXJhZGlvLWJ1dHRvbj5cbiAgICAgICAgICA8L21hdC1yYWRpby1ncm91cD5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI0VudW0+XG4gICAgICBAaWYoY3VycmVudEZpbHRlclR5cGUgPT09IEZpbHRlclR5cGUuSW4pe1xuICAgICAgICA8dGItaW4tbGlzdC1maWx0ZXIgW2tleV09J2ZpbHRlci5rZXknIG5hbWU9J2ZpbHRlclZhbHVlJyBbKG5nTW9kZWwpXT0nZmlsdGVyLmZpbHRlclZhbHVlJyA+PC90Yi1pbi1saXN0LWZpbHRlcj5cblxuICAgICAgfVxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9mb3JtPlxuICA8L21hdC1jYXJkLWNvbnRlbnQ+XG48L21hdC1jYXJkPlxufVxuIl19
@@ -1,102 +0,0 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, inject } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { map, tap } from 'rxjs/operators';
4
- import { TableStore } from '../../../classes/table-store';
5
- import { FieldType } from '../../../interfaces/report-def';
6
- import { AsyncPipe, KeyValuePipe } from '@angular/common';
7
- import { MatCheckboxModule } from '@angular/material/checkbox';
8
- import { SpaceCasePipe, StopPropagationDirective } from '../../../../utilities';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/material/checkbox";
11
- export class InListFilterComponent {
12
- ref = inject(ChangeDetectorRef);
13
- tableState = inject(TableStore);
14
- value = [];
15
- FieldType = FieldType;
16
- writeValue(obj) {
17
- this.value = obj;
18
- if (this.value) {
19
- this.selectedKeys = this.value.map(f => f);
20
- }
21
- this.ref.markForCheck();
22
- }
23
- onChange = (_) => { };
24
- registerOnChange(fn) {
25
- this.onChange = fn;
26
- }
27
- onTouched = () => { };
28
- registerOnTouched(fn) {
29
- this.onTouched = fn;
30
- }
31
- key;
32
- keyValues$;
33
- selectedKeys = [];
34
- metaData;
35
- ngOnInit() {
36
- this.keyValues$ = this.tableState.getMetaData$(this.key).pipe(tap(metaData => this.metaData = metaData), map(metaData => {
37
- if (metaData.additional?.filterOptions?.filterableValues) {
38
- return metaData.additional.filterOptions.filterableValues.reduce((prev, cur) => { prev[cur] = cur; return prev; }, {});
39
- }
40
- else {
41
- if (metaData.fieldType === FieldType.Enum) {
42
- return metaData.additional.enumMap;
43
- }
44
- }
45
- return {};
46
- }));
47
- }
48
- selectFilterChanged($event, val) {
49
- if ($event.checked) {
50
- this.selectedKeys = [...this.selectedKeys, val];
51
- }
52
- else {
53
- this.selectedKeys = this.selectedKeys.filter(item => item !== val);
54
- }
55
- this.value = this.selectedKeys;
56
- this.onChange(this.value);
57
- }
58
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: InListFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
59
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: InListFilterComponent, isStandalone: true, selector: "tb-in-list-filter , [tb-in-list-filter]", inputs: { key: "key" }, providers: [{
60
- provide: NG_VALUE_ACCESSOR,
61
- useExisting: InListFilterComponent,
62
- multi: true
63
- }], ngImport: i0, template: `
64
- @for (item of keyValues$ | async| keyvalue; track item.key) {
65
- <div>
66
- <mat-checkbox [checked]='selectedKeys.includes(item.key)' stop-propagation (change)='selectFilterChanged($event, item.key)' >
67
- {{metaData.fieldType === FieldType.Enum ? (item.value | spaceCase) : item.value}}
68
- </mat-checkbox>
69
- </div>
70
- }
71
-
72
- `, isInline: true, dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: KeyValuePipe, name: "keyvalue" }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: StopPropagationDirective, selector: "[stop-propagation]" }, { kind: "pipe", type: SpaceCasePipe, name: "spaceCase" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
73
- }
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: InListFilterComponent, decorators: [{
75
- type: Component,
76
- args: [{
77
- selector: 'tb-in-list-filter , [tb-in-list-filter]',
78
- template: `
79
- @for (item of keyValues$ | async| keyvalue; track item.key) {
80
- <div>
81
- <mat-checkbox [checked]='selectedKeys.includes(item.key)' stop-propagation (change)='selectFilterChanged($event, item.key)' >
82
- {{metaData.fieldType === FieldType.Enum ? (item.value | spaceCase) : item.value}}
83
- </mat-checkbox>
84
- </div>
85
- }
86
-
87
- `,
88
- changeDetection: ChangeDetectionStrategy.OnPush,
89
- providers: [{
90
- provide: NG_VALUE_ACCESSOR,
91
- useExisting: InListFilterComponent,
92
- multi: true
93
- }],
94
- standalone: true,
95
- imports: [
96
- AsyncPipe, KeyValuePipe, MatCheckboxModule, StopPropagationDirective, SpaceCasePipe
97
- ]
98
- }]
99
- }], propDecorators: { key: [{
100
- type: Input
101
- }] } });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW4tbGlzdC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11dGlsaXRpZXMvc3JjL3RhYmxlLWJ1aWxkZXIvY29tcG9uZW50cy9maWx0ZXIvaW4tbGlzdC9pbi1saXN0LWZpbHRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2SCxPQUFPLEVBQXdCLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFMUQsT0FBTyxFQUFFLFNBQVMsRUFBWSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUEwQmhGLE1BQU0sT0FBTyxxQkFBcUI7SUFDeEIsR0FBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ2hDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFeEMsS0FBSyxHQUFhLEVBQUUsQ0FBQztJQUNyQixTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQ3RCLFVBQVUsQ0FBQyxHQUFhO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBRWpCLElBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFD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Q0FBQzs0QkFDVixPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLHVCQUF1Qjs0QkFDbEMsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBQztvQkFDRixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLFNBQVMsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsYUFBYTtxQkFDcEY7aUJBQ0Y7OEJBeUJVLEdBQUc7c0JBQVgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NvbnRhaW5lclJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVGFibGVTdG9yZSB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvdGFibGUtc3RvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvZGljdGlvbmFyeSc7XG5pbXBvcnQgeyBGaWVsZFR5cGUsIE1ldGFEYXRhIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgS2V5VmFsdWVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgU3BhY2VDYXNlUGlwZSwgU3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbGl0aWVzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0Yi1pbi1saXN0LWZpbHRlciAsIFt0Yi1pbi1saXN0LWZpbHRlcl0nLFxuICB0ZW1wbGF0ZTogYFxuICBAZm9yIChpdGVtIG9mIGtleVZhbHVlcyQgfCBhc3luY3wga2V5dmFsdWU7IHRyYWNrIGl0ZW0ua2V5KSB7XG4gICAgPGRpdj5cbiAgICAgIDxtYXQtY2hlY2tib3ggW2NoZWNrZWRdPSdzZWxlY3RlZEtleXMuaW5jbHVkZXMoaXRlbS5rZXkpJyBzdG9wLXByb3BhZ2F0aW9uIChjaGFuZ2UpPSdzZWxlY3RGaWx0ZXJDaGFuZ2VkKCRldmVudCwgaXRlbS5rZXkpJyA+XG4gICAgICAgIHt7bWV0YURhdGEuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuRW51bSA/IChpdGVtLnZhbHVlIHwgc3BhY2VDYXNlKSA6IGl0ZW0udmFsdWV9fVxuICAgICAgPC9tYXQtY2hlY2tib3g+XG4gICAgPC9kaXY+XG4gIH1cblxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBJbkxpc3RGaWx0ZXJDb21wb25lbnQsXG4gICAgbXVsdGk6IHRydWVcbiAgfV0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBBc3luY1BpcGUsIEtleVZhbHVlUGlwZSwgTWF0Q2hlY2tib3hNb2R1bGUsIFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSwgU3BhY2VDYXNlUGlwZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEluTGlzdEZpbHRlckNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgcHJpdmF0ZSByZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHRhYmxlU3RhdGUgPSBpbmplY3QoVGFibGVTdG9yZSk7XG5cbiAgdmFsdWU6IHN0cmluZ1tdID0gW107XG4gIEZpZWxkVHlwZSA9IEZpZWxkVHlwZTtcbiAgd3JpdGVWYWx1ZShvYmo6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IG9iajtcblxuICAgIGlmKHRoaXMudmFsdWUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRLZXlzID0gdGhpcy52YWx1ZS5tYXAoIGYgPT4gZiApO1xuICAgIH1cbiAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG9uQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuICBvblRvdWNoZWQgPSAoKSA9PiB7IH07XG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG4gIEBJbnB1dCgpIGtleSE6IHN0cmluZztcblxuICBrZXlWYWx1ZXMkISA6IE9ic2VydmFibGU8RGljdGlvbmFyeTxzdHJpbmc+PjtcbiAgc2VsZWN0ZWRLZXlzIDogc3RyaW5nW10gPSBbXTtcbiAgbWV0YURhdGEhOiBNZXRhRGF0YTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmtleVZhbHVlcyQgPSB0aGlzLnRhYmxlU3RhdGUuZ2V0TWV0YURhdGEkKHRoaXMua2V5KS5waXBlKFxuICAgICAgdGFwKG1ldGFEYXRhID0+IHRoaXMubWV0YURhdGEgPSBtZXRhRGF0YSksXG4gICAgICBtYXAoIG1ldGFEYXRhID0+IHtcbiAgICAgICAgaWYobWV0YURhdGEuYWRkaXRpb25hbD8uZmlsdGVyT3B0aW9ucz8uZmlsdGVyYWJsZVZhbHVlcyApIHtcbiAgICAgICAgICByZXR1cm4gIG1ldGFEYXRhLmFkZGl0aW9uYWwuZmlsdGVyT3B0aW9ucy5maWx0ZXJhYmxlVmFsdWVzLnJlZHVjZSggKHByZXY6IGFueSwgY3VyKT0+IHsgcHJldltjdXJdID0gY3VyOyByZXR1cm4gcHJldiB9LCB7fSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYobWV0YURhdGEuZmllbGRUeXBlID09PSBGaWVsZFR5cGUuRW51bSApIHtcbiAgICAgICAgICAgIHJldHVybiBtZXRhRGF0YS5hZGRpdGlvbmFsIS5lbnVtTWFwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge307XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBzZWxlY3RGaWx0ZXJDaGFuZ2VkKCRldmVudCwgdmFsKSB7XG4gICAgaWYoJGV2ZW50LmNoZWNrZWQpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRLZXlzID0gWy4uLnRoaXMuc2VsZWN0ZWRLZXlzLCB2YWxdO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkS2V5cyA9IHRoaXMuc2VsZWN0ZWRLZXlzLmZpbHRlciggaXRlbSA9PiBpdGVtICE9PSB2YWwpO1xuICAgIH1cblxuICAgIHRoaXMudmFsdWUgPSB0aGlzLnNlbGVjdGVkS2V5cztcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICB9XG5cbn1cbiJdfQ==