@one-paragon/angular-utilities 0.1.32 → 0.1.34

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 (294) hide show
  1. package/action-state/action-state-spinner/action-state-spinner.component.d.ts +12 -12
  2. package/action-state/action-state-ui/action-state-ui.module.d.ts +9 -9
  3. package/action-state/index.d.ts +4 -4
  4. package/action-state/ngrx-ext/ngrx-ext.module.d.ts +8 -8
  5. package/action-state/ngrx.d.ts +31 -31
  6. package/esm2022/action-state/action-state-spinner/action-state-spinner.component.mjs +24 -0
  7. package/esm2022/action-state/action-state-ui/action-state-ui.module.mjs +29 -0
  8. package/{esm2020 → esm2022}/action-state/index.mjs +7 -7
  9. package/esm2022/action-state/ngrx-ext/ngrx-ext.module.mjs +24 -0
  10. package/{esm2020 → esm2022}/action-state/ngrx.mjs +41 -41
  11. package/esm2022/http-request-state/HttpRequestStateFactory.mjs +28 -0
  12. package/esm2022/http-request-state/HttpRequestStateStore.mjs +98 -0
  13. package/esm2022/http-request-state/directives/HttpStateDirectiveBase.mjs +35 -0
  14. package/esm2022/http-request-state/directives/http-error-state-directive.mjs +30 -0
  15. package/esm2022/http-request-state/directives/http-inProgress-state-directive.mjs +30 -0
  16. package/esm2022/http-request-state/directives/http-notStarted-state-directive.mjs +30 -0
  17. package/esm2022/http-request-state/directives/http-success-state-directive.mjs +35 -0
  18. package/{esm2020 → esm2022}/http-request-state/directives/index.mjs +5 -5
  19. package/esm2022/http-request-state/directives/request-state-directive.mjs +61 -0
  20. package/{esm2020 → esm2022}/http-request-state/helpers.mjs +21 -21
  21. package/{esm2020 → esm2022}/http-request-state/http-request-state.mjs +38 -38
  22. package/esm2022/http-request-state/http-state-module.mjs +42 -0
  23. package/{esm2020 → esm2022}/http-request-state/index.mjs +6 -6
  24. package/{esm2020 → esm2022}/http-request-state/rxjs/getRequestorBody.mjs +3 -3
  25. package/{esm2020 → esm2022}/http-request-state/rxjs/getRequestorState.mjs +2 -2
  26. package/{esm2020 → esm2022}/http-request-state/rxjs/index.mjs +4 -4
  27. package/{esm2020 → esm2022}/http-request-state/rxjs/tapError.mjs +11 -11
  28. package/{esm2020 → esm2022}/http-request-state/rxjs/tapSuccess.mjs +11 -11
  29. package/{esm2020 → esm2022}/http-request-state/types.mjs +15 -15
  30. package/{esm2020 → esm2022}/ngrx/actionable-selector.mjs +74 -74
  31. package/{esm2020 → esm2022}/ngrx/index.mjs +1 -1
  32. package/{esm2020 → esm2022}/one-paragon-angular-utilities.mjs +4 -4
  33. package/{esm2020 → esm2022}/public-api.mjs +18 -18
  34. package/{esm2020 → esm2022}/rxjs/defaultShareReplay.mjs +6 -6
  35. package/{esm2020 → esm2022}/rxjs/index.mjs +4 -4
  36. package/{esm2020 → esm2022}/rxjs/mapError.mjs +7 -7
  37. package/{esm2020 → esm2022}/rxjs/rxjs-operators.mjs +90 -90
  38. package/{esm2020 → esm2022}/rxjs/subjectifier.mjs +14 -14
  39. package/{esm2020 → esm2022}/table-builder/classes/DefaultSettings.mjs +5 -5
  40. package/{esm2020 → esm2022}/table-builder/classes/GenericTableDataSource.mjs +12 -12
  41. package/{esm2020 → esm2022}/table-builder/classes/MatTableObservableDataSource.mjs +20 -20
  42. package/{esm2020 → esm2022}/table-builder/classes/TableBuilderConfig.mjs +2 -2
  43. package/{esm2020 → esm2022}/table-builder/classes/TableState.mjs +31 -31
  44. package/{esm2020 → esm2022}/table-builder/classes/data-filter.mjs +25 -25
  45. package/{esm2020 → esm2022}/table-builder/classes/display-col.mjs +1 -1
  46. package/{esm2020 → esm2022}/table-builder/classes/filter-info.mjs +72 -72
  47. package/{esm2020 → esm2022}/table-builder/classes/table-builder-general-settings.mjs +67 -67
  48. package/{esm2020 → esm2022}/table-builder/classes/table-builder.mjs +75 -75
  49. package/esm2022/table-builder/classes/table-store.mjs +293 -0
  50. package/esm2022/table-builder/components/array-column.component.mjs +58 -0
  51. package/esm2022/table-builder/components/column-builder/column-builder.component.mjs +113 -0
  52. package/esm2022/table-builder/components/date-filter/date-filter.component.mjs +26 -0
  53. package/esm2022/table-builder/components/date-time-filter/date-time-filter.component.mjs +23 -0
  54. package/esm2022/table-builder/components/filter/filter.component.mjs +55 -0
  55. package/esm2022/table-builder/components/filter/in-list/in-list-filter.component.mjs +92 -0
  56. package/esm2022/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +46 -0
  57. package/esm2022/table-builder/components/generic-table/generic-table.component.mjs +203 -0
  58. package/esm2022/table-builder/components/generic-table/paginator.component.mjs +75 -0
  59. package/esm2022/table-builder/components/group-by-list/group-by-list.component.mjs +23 -0
  60. package/esm2022/table-builder/components/header-menu/header-menu.component.mjs +92 -0
  61. package/esm2022/table-builder/components/in-filter/in-filter.component.mjs +64 -0
  62. package/{esm2020 → esm2022}/table-builder/components/index.mjs +9 -9
  63. package/esm2022/table-builder/components/initialization-component/initialization-component.mjs +34 -0
  64. package/{esm2020 → esm2022}/table-builder/components/link-column.component.mjs +32 -31
  65. package/esm2022/table-builder/components/number-filter/number-filter.component.mjs +28 -0
  66. package/esm2022/table-builder/components/sort-menu/sort-menu.component-store.mjs +43 -0
  67. package/{esm2020 → esm2022}/table-builder/components/sort-menu/sort-menu.component.mjs +76 -75
  68. package/esm2022/table-builder/components/table-container/table-container.mjs +323 -0
  69. package/esm2022/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +43 -0
  70. package/esm2022/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +31 -0
  71. package/esm2022/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +26 -0
  72. package/esm2022/table-builder/directives/custom-cell-directive.mjs +60 -0
  73. package/{esm2020 → esm2022}/table-builder/directives/index.mjs +5 -5
  74. package/esm2022/table-builder/directives/multi-sort.directive.mjs +43 -0
  75. package/esm2022/table-builder/directives/resize-column.directive.mjs +87 -0
  76. package/esm2022/table-builder/directives/table-wrapper.directive.mjs +27 -0
  77. package/esm2022/table-builder/directives/tb-filter.directive.mjs +413 -0
  78. package/{esm2020 → esm2022}/table-builder/enums/filterTypes.mjs +71 -71
  79. package/{esm2020 → esm2022}/table-builder/functions/boolean-filter-function.mjs +9 -9
  80. package/{esm2020 → esm2022}/table-builder/functions/date-filter-function.mjs +57 -57
  81. package/{esm2020 → esm2022}/table-builder/functions/download-data.mjs +11 -11
  82. package/{esm2020 → esm2022}/table-builder/functions/null-filter-function.mjs +7 -7
  83. package/{esm2020 → esm2022}/table-builder/functions/number-filter-function.mjs +31 -31
  84. package/{esm2020 → esm2022}/table-builder/functions/sort-data-function.mjs +4 -4
  85. package/{esm2020 → esm2022}/table-builder/functions/string-filter-function.mjs +40 -40
  86. package/{esm2020 → esm2022}/table-builder/interfaces/ColumnInfo.mjs +1 -1
  87. package/{esm2020 → esm2022}/table-builder/interfaces/dictionary.mjs +1 -1
  88. package/{esm2020 → esm2022}/table-builder/interfaces/report-def.mjs +34 -34
  89. package/esm2022/table-builder/material.module.mjs +208 -0
  90. package/{esm2020 → esm2022}/table-builder/ngrx/actions.mjs +4 -4
  91. package/esm2022/table-builder/ngrx/effects.mjs +49 -0
  92. package/{esm2020 → esm2022}/table-builder/ngrx/reducer.mjs +51 -51
  93. package/{esm2020 → esm2022}/table-builder/ngrx/selectors.mjs +23 -23
  94. package/esm2022/table-builder/pipes/column-total.pipe.mjs +21 -0
  95. package/esm2022/table-builder/pipes/format-filter-type.pipe.mjs +19 -0
  96. package/esm2022/table-builder/pipes/format-filter-value.pipe.mjs +46 -0
  97. package/esm2022/table-builder/pipes/key-display.mjs +21 -0
  98. package/esm2022/table-builder/services/export-to-csv.service.mjs +89 -0
  99. package/{esm2020 → esm2022}/table-builder/services/link-creator.service.mjs +41 -41
  100. package/esm2022/table-builder/services/table-template-service.mjs +45 -0
  101. package/esm2022/table-builder/services/transform-creator.mjs +76 -0
  102. package/esm2022/table-builder/table-builder.module.mjs +208 -0
  103. package/esm2022/utilities/directives/auto-focus.directive.mjs +27 -0
  104. package/esm2022/utilities/directives/clickEmitterDirective.mjs +22 -0
  105. package/esm2022/utilities/directives/clickSubject.mjs +28 -0
  106. package/esm2022/utilities/directives/conditional-classes.directive.mjs +36 -0
  107. package/esm2022/utilities/directives/dialog-service.mjs +26 -0
  108. package/esm2022/utilities/directives/dialog.mjs +139 -0
  109. package/esm2022/utilities/directives/mat-toggle-group-directive.mjs +60 -0
  110. package/esm2022/utilities/directives/prevent-enter.directive.mjs +20 -0
  111. package/esm2022/utilities/directives/stop-propagation.directive.mjs +26 -0
  112. package/esm2022/utilities/directives/styler.mjs +27 -0
  113. package/esm2022/utilities/directives/trim-whitespace.directive.mjs +30 -0
  114. package/{esm2020 → esm2022}/utilities/index.mjs +15 -15
  115. package/esm2022/utilities/module.mjs +92 -0
  116. package/esm2022/utilities/pipes/function.pipe.mjs +22 -0
  117. package/esm2022/utilities/pipes/phone.pipe.mjs +21 -0
  118. package/esm2022/utilities/pipes/space-case.pipes.mjs +29 -0
  119. package/{fesm2020 → fesm2022}/one-paragon-angular-utilities.mjs +4398 -4398
  120. package/fesm2022/one-paragon-angular-utilities.mjs.map +1 -0
  121. package/http-request-state/HttpRequestStateFactory.d.ts +14 -14
  122. package/http-request-state/HttpRequestStateStore.d.ts +48 -48
  123. package/http-request-state/directives/HttpStateDirectiveBase.d.ts +16 -16
  124. package/http-request-state/directives/http-error-state-directive.d.ts +12 -12
  125. package/http-request-state/directives/http-inProgress-state-directive.d.ts +12 -12
  126. package/http-request-state/directives/http-notStarted-state-directive.d.ts +12 -12
  127. package/http-request-state/directives/http-success-state-directive.d.ts +21 -21
  128. package/http-request-state/directives/index.d.ts +5 -5
  129. package/http-request-state/directives/request-state-directive.d.ts +35 -35
  130. package/http-request-state/helpers.d.ts +9 -9
  131. package/http-request-state/http-request-state.d.ts +12 -12
  132. package/http-request-state/http-state-module.d.ts +11 -11
  133. package/http-request-state/index.d.ts +6 -6
  134. package/http-request-state/rxjs/getRequestorBody.d.ts +3 -3
  135. package/http-request-state/rxjs/getRequestorState.d.ts +3 -3
  136. package/http-request-state/rxjs/index.d.ts +4 -4
  137. package/http-request-state/rxjs/tapError.d.ts +3 -3
  138. package/http-request-state/rxjs/tapSuccess.d.ts +3 -3
  139. package/http-request-state/types.d.ts +36 -36
  140. package/index.d.ts +5 -5
  141. package/ngrx/actionable-selector.d.ts +15 -15
  142. package/ngrx/index.d.ts +1 -1
  143. package/package.json +13 -19
  144. package/public-api.d.ts +15 -15
  145. package/rxjs/defaultShareReplay.d.ts +2 -2
  146. package/rxjs/index.d.ts +4 -4
  147. package/rxjs/mapError.d.ts +2 -2
  148. package/rxjs/rxjs-operators.d.ts +12 -12
  149. package/rxjs/subjectifier.d.ts +9 -9
  150. package/table-builder/classes/DefaultSettings.d.ts +9 -9
  151. package/table-builder/classes/GenericTableDataSource.d.ts +8 -8
  152. package/table-builder/classes/MatTableObservableDataSource.d.ts +9 -9
  153. package/table-builder/classes/TableBuilderConfig.d.ts +20 -20
  154. package/table-builder/classes/TableState.d.ts +46 -46
  155. package/table-builder/classes/data-filter.d.ts +9 -9
  156. package/table-builder/classes/display-col.d.ts +5 -5
  157. package/table-builder/classes/filter-info.d.ts +40 -40
  158. package/table-builder/classes/table-builder-general-settings.d.ts +43 -43
  159. package/table-builder/classes/table-builder.d.ts +14 -14
  160. package/table-builder/classes/table-store.d.ts +114 -114
  161. package/table-builder/components/array-column.component.d.ts +14 -14
  162. package/table-builder/components/column-builder/column-builder.component.d.ts +50 -50
  163. package/table-builder/components/date-filter/date-filter.component.d.ts +10 -10
  164. package/table-builder/components/date-time-filter/date-time-filter.component.d.ts +10 -10
  165. package/table-builder/components/filter/filter.component.d.ts +371 -371
  166. package/table-builder/components/filter/in-list/in-list-filter.component.d.ts +27 -27
  167. package/table-builder/components/gen-col-displayer/gen-col-displayer.component.d.ts +16 -16
  168. package/table-builder/components/generic-table/generic-table.component.d.ts +73 -73
  169. package/table-builder/components/generic-table/paginator.component.d.ts +28 -28
  170. package/table-builder/components/group-by-list/group-by-list.component.d.ts +10 -10
  171. package/table-builder/components/header-menu/header-menu.component.d.ts +25 -25
  172. package/table-builder/components/in-filter/in-filter.component.d.ts +21 -21
  173. package/table-builder/components/index.d.ts +9 -9
  174. package/table-builder/components/initialization-component/initialization-component.d.ts +12 -12
  175. package/table-builder/components/link-column.component.d.ts +17 -17
  176. package/table-builder/components/number-filter/number-filter.component.d.ts +12 -12
  177. package/table-builder/components/sort-menu/sort-menu.component-store.d.ts +24 -24
  178. package/table-builder/components/sort-menu/sort-menu.component.d.ts +25 -25
  179. package/table-builder/components/table-container/table-container.d.ts +68 -68
  180. package/table-builder/components/table-container-filter/filter-list/filter-list.component.d.ts +17 -17
  181. package/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.d.ts +14 -14
  182. package/table-builder/components/table-container-filter/table-wrapper-filter-store.d.ts +14 -14
  183. package/table-builder/directives/custom-cell-directive.d.ts +19 -19
  184. package/table-builder/directives/index.d.ts +5 -5
  185. package/table-builder/directives/multi-sort.directive.d.ts +11 -11
  186. package/table-builder/directives/resize-column.directive.d.ts +43 -43
  187. package/table-builder/directives/table-wrapper.directive.d.ts +11 -11
  188. package/table-builder/directives/tb-filter.directive.d.ts +120 -120
  189. package/table-builder/enums/filterTypes.d.ts +37 -37
  190. package/table-builder/functions/boolean-filter-function.d.ts +3 -3
  191. package/table-builder/functions/date-filter-function.d.ts +4 -4
  192. package/table-builder/functions/download-data.d.ts +1 -1
  193. package/table-builder/functions/null-filter-function.d.ts +2 -2
  194. package/table-builder/functions/number-filter-function.d.ts +4 -4
  195. package/table-builder/functions/sort-data-function.d.ts +3 -3
  196. package/table-builder/functions/string-filter-function.d.ts +7 -7
  197. package/table-builder/interfaces/ColumnInfo.d.ts +6 -6
  198. package/table-builder/interfaces/dictionary.d.ts +3 -3
  199. package/table-builder/interfaces/report-def.d.ts +142 -142
  200. package/table-builder/material.module.d.ts +32 -32
  201. package/table-builder/ngrx/actions.d.ts +23 -23
  202. package/table-builder/ngrx/effects.d.ts +19 -19
  203. package/table-builder/ngrx/reducer.d.ts +15 -15
  204. package/table-builder/ngrx/selectors.d.ts +22 -22
  205. package/table-builder/pipes/column-total.pipe.d.ts +8 -8
  206. package/table-builder/pipes/format-filter-type.pipe.d.ts +8 -8
  207. package/table-builder/pipes/format-filter-value.pipe.d.ts +14 -14
  208. package/table-builder/pipes/key-display.d.ts +11 -11
  209. package/table-builder/services/export-to-csv.service.d.ts +22 -22
  210. package/table-builder/services/link-creator.service.d.ts +12 -12
  211. package/table-builder/services/table-template-service.d.ts +14 -14
  212. package/table-builder/services/transform-creator.d.ts +19 -19
  213. package/table-builder/table-builder.module.d.ts +46 -46
  214. package/utilities/directives/auto-focus.directive.d.ts +10 -10
  215. package/utilities/directives/clickEmitterDirective.d.ts +7 -7
  216. package/utilities/directives/clickSubject.d.ts +9 -9
  217. package/utilities/directives/conditional-classes.directive.d.ts +14 -14
  218. package/utilities/directives/dialog-service.d.ts +10 -10
  219. package/utilities/directives/dialog.d.ts +46 -46
  220. package/utilities/directives/mat-toggle-group-directive.d.ts +21 -21
  221. package/utilities/directives/prevent-enter.directive.d.ts +6 -6
  222. package/utilities/directives/stop-propagation.directive.d.ts +7 -7
  223. package/utilities/directives/styler.d.ts +9 -9
  224. package/utilities/directives/trim-whitespace.directive.d.ts +9 -9
  225. package/utilities/index.d.ts +15 -15
  226. package/utilities/module.d.ts +19 -19
  227. package/utilities/pipes/function.pipe.d.ts +7 -7
  228. package/utilities/pipes/phone.pipe.d.ts +7 -7
  229. package/utilities/pipes/space-case.pipes.d.ts +17 -17
  230. package/esm2020/action-state/action-state-spinner/action-state-spinner.component.mjs +0 -23
  231. package/esm2020/action-state/action-state-ui/action-state-ui.module.mjs +0 -28
  232. package/esm2020/action-state/ngrx-ext/ngrx-ext.module.mjs +0 -23
  233. package/esm2020/http-request-state/HttpRequestStateFactory.mjs +0 -27
  234. package/esm2020/http-request-state/HttpRequestStateStore.mjs +0 -97
  235. package/esm2020/http-request-state/directives/HttpStateDirectiveBase.mjs +0 -34
  236. package/esm2020/http-request-state/directives/http-error-state-directive.mjs +0 -29
  237. package/esm2020/http-request-state/directives/http-inProgress-state-directive.mjs +0 -29
  238. package/esm2020/http-request-state/directives/http-notStarted-state-directive.mjs +0 -29
  239. package/esm2020/http-request-state/directives/http-success-state-directive.mjs +0 -34
  240. package/esm2020/http-request-state/directives/request-state-directive.mjs +0 -60
  241. package/esm2020/http-request-state/http-state-module.mjs +0 -41
  242. package/esm2020/table-builder/classes/table-store.mjs +0 -292
  243. package/esm2020/table-builder/components/array-column.component.mjs +0 -57
  244. package/esm2020/table-builder/components/column-builder/column-builder.component.mjs +0 -112
  245. package/esm2020/table-builder/components/date-filter/date-filter.component.mjs +0 -25
  246. package/esm2020/table-builder/components/date-time-filter/date-time-filter.component.mjs +0 -22
  247. package/esm2020/table-builder/components/filter/filter.component.mjs +0 -54
  248. package/esm2020/table-builder/components/filter/in-list/in-list-filter.component.mjs +0 -91
  249. package/esm2020/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +0 -45
  250. package/esm2020/table-builder/components/generic-table/generic-table.component.mjs +0 -202
  251. package/esm2020/table-builder/components/generic-table/paginator.component.mjs +0 -74
  252. package/esm2020/table-builder/components/group-by-list/group-by-list.component.mjs +0 -22
  253. package/esm2020/table-builder/components/header-menu/header-menu.component.mjs +0 -91
  254. package/esm2020/table-builder/components/in-filter/in-filter.component.mjs +0 -63
  255. package/esm2020/table-builder/components/initialization-component/initialization-component.mjs +0 -33
  256. package/esm2020/table-builder/components/number-filter/number-filter.component.mjs +0 -27
  257. package/esm2020/table-builder/components/sort-menu/sort-menu.component-store.mjs +0 -42
  258. package/esm2020/table-builder/components/table-container/table-container.mjs +0 -322
  259. package/esm2020/table-builder/components/table-container-filter/filter-list/filter-list.component.mjs +0 -42
  260. package/esm2020/table-builder/components/table-container-filter/gen-filter-displayer/gen-filter-displayer.component.mjs +0 -30
  261. package/esm2020/table-builder/components/table-container-filter/table-wrapper-filter-store.mjs +0 -25
  262. package/esm2020/table-builder/directives/custom-cell-directive.mjs +0 -59
  263. package/esm2020/table-builder/directives/multi-sort.directive.mjs +0 -42
  264. package/esm2020/table-builder/directives/resize-column.directive.mjs +0 -86
  265. package/esm2020/table-builder/directives/table-wrapper.directive.mjs +0 -26
  266. package/esm2020/table-builder/directives/tb-filter.directive.mjs +0 -403
  267. package/esm2020/table-builder/material.module.mjs +0 -207
  268. package/esm2020/table-builder/ngrx/effects.mjs +0 -48
  269. package/esm2020/table-builder/pipes/column-total.pipe.mjs +0 -20
  270. package/esm2020/table-builder/pipes/format-filter-type.pipe.mjs +0 -18
  271. package/esm2020/table-builder/pipes/format-filter-value.pipe.mjs +0 -45
  272. package/esm2020/table-builder/pipes/key-display.mjs +0 -20
  273. package/esm2020/table-builder/services/export-to-csv.service.mjs +0 -88
  274. package/esm2020/table-builder/services/table-template-service.mjs +0 -44
  275. package/esm2020/table-builder/services/transform-creator.mjs +0 -75
  276. package/esm2020/table-builder/table-builder.module.mjs +0 -207
  277. package/esm2020/utilities/directives/auto-focus.directive.mjs +0 -26
  278. package/esm2020/utilities/directives/clickEmitterDirective.mjs +0 -21
  279. package/esm2020/utilities/directives/clickSubject.mjs +0 -27
  280. package/esm2020/utilities/directives/conditional-classes.directive.mjs +0 -35
  281. package/esm2020/utilities/directives/dialog-service.mjs +0 -25
  282. package/esm2020/utilities/directives/dialog.mjs +0 -137
  283. package/esm2020/utilities/directives/mat-toggle-group-directive.mjs +0 -59
  284. package/esm2020/utilities/directives/prevent-enter.directive.mjs +0 -19
  285. package/esm2020/utilities/directives/stop-propagation.directive.mjs +0 -25
  286. package/esm2020/utilities/directives/styler.mjs +0 -26
  287. package/esm2020/utilities/directives/trim-whitespace.directive.mjs +0 -29
  288. package/esm2020/utilities/module.mjs +0 -91
  289. package/esm2020/utilities/pipes/function.pipe.mjs +0 -21
  290. package/esm2020/utilities/pipes/phone.pipe.mjs +0 -20
  291. package/esm2020/utilities/pipes/space-case.pipes.mjs +0 -28
  292. package/fesm2015/one-paragon-angular-utilities.mjs +0 -4777
  293. package/fesm2015/one-paragon-angular-utilities.mjs.map +0 -1
  294. package/fesm2020/one-paragon-angular-utilities.mjs.map +0 -1
@@ -0,0 +1,413 @@
1
+ import { Directive, Input, Optional } from "@angular/core";
2
+ import { BehaviorSubject, ReplaySubject, takeUntil, tap } from "rxjs";
3
+ import { v4 as uuid } from 'uuid';
4
+ import { FilterType } from "../enums/filterTypes";
5
+ import { FieldType } from "../interfaces/report-def";
6
+ import { ComponentStore } from "@ngrx/component-store";
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/forms";
9
+ import * as i2 from "./table-wrapper.directive";
10
+ import * as i3 from "rxjs";
11
+ import * as i4 from "@angular/material/checkbox";
12
+ import * as i5 from "@angular/material/slide-toggle";
13
+ import * as i6 from "@angular/material/radio";
14
+ import * as i7 from "@angular/material/core";
15
+ import * as i8 from "@angular/material/button-toggle";
16
+ const inputs = [
17
+ 'predicate: tbCustomFilter',
18
+ 'filterId: filterId',
19
+ ];
20
+ class TableCustomFilterDirective {
21
+ constructor() {
22
+ this.savable = false;
23
+ this.used = false;
24
+ }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableCustomFilterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
26
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: TableCustomFilterDirective, selector: " ", ngImport: i0 }); }
27
+ }
28
+ export { TableCustomFilterDirective };
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableCustomFilterDirective, decorators: [{
30
+ type: Directive,
31
+ args: [{
32
+ selector: ' '
33
+ }]
34
+ }] });
35
+ class TableFilterDirective extends ComponentStore {
36
+ constructor(model, wrapper) {
37
+ super();
38
+ this.model = model;
39
+ this.filter$ = this.state$;
40
+ this.active = true;
41
+ this.filterValue = null;
42
+ this.used = false;
43
+ this.savable = false;
44
+ this.ready = false;
45
+ this._userActive = true;
46
+ if (wrapper) {
47
+ wrapper.register(this);
48
+ }
49
+ if (model) {
50
+ this.effect(() => {
51
+ return model.valueChanges.pipe(tap(val => {
52
+ this.filterValue = val;
53
+ this.update();
54
+ }));
55
+ });
56
+ }
57
+ }
58
+ reset() {
59
+ this.filterValue = undefined;
60
+ }
61
+ setFilterValue(value) {
62
+ if (this.model) {
63
+ setTimeout(() => {
64
+ this.model.reset(value);
65
+ }, 0);
66
+ }
67
+ else {
68
+ this.filterValue = value;
69
+ }
70
+ }
71
+ ngOnChanges(changes) {
72
+ this.update();
73
+ }
74
+ ngOnInit() {
75
+ if (!this.filterId) {
76
+ this.filterId = uuid();
77
+ }
78
+ else {
79
+ this.savable = true;
80
+ }
81
+ this.ready = true;
82
+ this.update();
83
+ }
84
+ setFilter(filter) {
85
+ this.setState(filter);
86
+ }
87
+ update() {
88
+ if (this.ready) {
89
+ this.setFilter({
90
+ filterId: this.filterId,
91
+ key: this.key,
92
+ filterType: this.filterType,
93
+ fieldType: this.fieldType,
94
+ filterValue: this.filterValue,
95
+ active: this.active && this.filterValue !== undefined,
96
+ _isExternalyManaged: true,
97
+ });
98
+ }
99
+ }
100
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableFilterDirective, deps: [{ token: i1.NgControl, optional: true }, { token: i2.TableWrapperDirective, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
101
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: TableFilterDirective, selector: "[tbFilter]", inputs: { filterType: "filterType", key: "key", fieldType: "fieldType", filterId: "filterId", active: "active", filterValue: "filterValue" }, usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
102
+ }
103
+ export { TableFilterDirective };
104
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableFilterDirective, decorators: [{
105
+ type: Directive,
106
+ args: [{
107
+ selector: "[tbFilter]"
108
+ }]
109
+ }], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
110
+ type: Optional
111
+ }] }, { type: i2.TableWrapperDirective, decorators: [{
112
+ type: Optional
113
+ }] }]; }, propDecorators: { filterType: [{
114
+ type: Input
115
+ }], key: [{
116
+ type: Input
117
+ }], fieldType: [{
118
+ type: Input
119
+ }], filterId: [{
120
+ type: Input
121
+ }], active: [{
122
+ type: Input
123
+ }], filterValue: [{
124
+ type: Input
125
+ }] } });
126
+ class TableFilterStringContainsDirective extends TableFilterDirective {
127
+ constructor(model, wrapper) {
128
+ super(model, wrapper);
129
+ this.filterType = FilterType.StringContains;
130
+ this.fieldType = FieldType.String;
131
+ this.effect(() => {
132
+ return model.valueChanges.pipe(tap(val => {
133
+ this.filterValue = val;
134
+ this.update();
135
+ }));
136
+ });
137
+ }
138
+ reset() {
139
+ if (this.model) {
140
+ this.model.reset();
141
+ }
142
+ super.reset();
143
+ }
144
+ setFilter(filter) {
145
+ filter.active = filter.filterValue && this._userActive;
146
+ super.setFilter(filter);
147
+ }
148
+ ngOnChanges(changes) {
149
+ if (changes['active']) {
150
+ this._userActive = changes['active'].currentValue;
151
+ }
152
+ super.ngOnChanges(changes);
153
+ }
154
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableFilterStringContainsDirective, deps: [{ token: i1.NgControl, optional: true }, { token: i2.TableWrapperDirective, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
155
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: TableFilterStringContainsDirective, selector: "[tbFilterStringContains]", inputs: { key: ["tbFilterStringContains", "key"], filterValue: "filterValue", filterId: "filterId", active: "active" }, providers: [{ provide: TableFilterDirective, useExisting: TableFilterStringContainsDirective }], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
156
+ }
157
+ export { TableFilterStringContainsDirective };
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableFilterStringContainsDirective, decorators: [{
159
+ type: Directive,
160
+ args: [{
161
+ selector: '[tbFilterStringContains]',
162
+ providers: [{ provide: TableFilterDirective, useExisting: TableFilterStringContainsDirective }],
163
+ inputs: [
164
+ 'key:tbFilterStringContains',
165
+ 'filterValue:filterValue',
166
+ 'filterId: filterId',
167
+ 'active: active',
168
+ ]
169
+ }]
170
+ }], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
171
+ type: Optional
172
+ }] }, { type: i2.TableWrapperDirective, decorators: [{
173
+ type: Optional
174
+ }] }]; } });
175
+ class TableCustomFilterDirectiveBase extends TableCustomFilterDirective {
176
+ constructor() {
177
+ super(...arguments);
178
+ this._active = false;
179
+ this.ready = false;
180
+ }
181
+ set predicate(val) {
182
+ this._predicate = val;
183
+ this.update({ predicate: val });
184
+ }
185
+ update(val) {
186
+ if (this.ready) {
187
+ this.filter = { ...this.filter, ...val };
188
+ this.filter$.next(this.filter);
189
+ }
190
+ }
191
+ set active(val) {
192
+ if (this._active !== val) {
193
+ this._active = val;
194
+ this.update({ active: val });
195
+ }
196
+ }
197
+ get active() {
198
+ return this._active;
199
+ }
200
+ ngOnInit() {
201
+ if (!this.filterId) {
202
+ this.filterId = uuid();
203
+ }
204
+ else {
205
+ this.savable = true;
206
+ }
207
+ this.filter = {
208
+ filterType: FilterType.Custom,
209
+ filterId: this.filterId,
210
+ active: this._active,
211
+ predicate: this._predicate,
212
+ };
213
+ this.ready = true;
214
+ this.filter$ = new BehaviorSubject(this.filter);
215
+ }
216
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableCustomFilterDirectiveBase, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
217
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: TableCustomFilterDirectiveBase, selector: "[tbCustomFilter]", inputs: { filterId: "filterId", predicate: ["tbCustomFilter", "predicate"], active: "active" }, usesInheritance: true, ngImport: i0 }); }
218
+ }
219
+ export { TableCustomFilterDirectiveBase };
220
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TableCustomFilterDirectiveBase, decorators: [{
221
+ type: Directive,
222
+ args: [{
223
+ selector: "[tbCustomFilter]",
224
+ }]
225
+ }], propDecorators: { filterId: [{
226
+ type: Input
227
+ }], predicate: [{
228
+ type: Input,
229
+ args: ['tbCustomFilter']
230
+ }], active: [{
231
+ type: Input
232
+ }] } });
233
+ class TbSelectedFilterDirective extends TableCustomFilterDirectiveBase {
234
+ constructor(change, isActive, wrapper) {
235
+ super();
236
+ this.change = change;
237
+ this.isActive = isActive;
238
+ this.destroySubject$ = new ReplaySubject(1);
239
+ if (wrapper) {
240
+ wrapper.register(this);
241
+ }
242
+ }
243
+ reset() {
244
+ this.active = false;
245
+ }
246
+ ngOnDestroy() {
247
+ this.destroySubject$.next();
248
+ }
249
+ ngOnInit() {
250
+ this._active = this.isActive();
251
+ super.ngOnInit();
252
+ this.change.pipe(takeUntil(this.destroySubject$)).subscribe(() => {
253
+ this.active = this.isActive();
254
+ });
255
+ }
256
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TbSelectedFilterDirective, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
257
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: TbSelectedFilterDirective, usesInheritance: true, ngImport: i0 }); }
258
+ }
259
+ export { TbSelectedFilterDirective };
260
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: TbSelectedFilterDirective, decorators: [{
261
+ type: Directive
262
+ }], ctorParameters: function () { return [{ type: i3.Observable }, { type: undefined }, { type: i2.TableWrapperDirective, decorators: [{
263
+ type: Optional
264
+ }] }]; } });
265
+ // Checkbox
266
+ class MatCheckboxTbFilterDirective extends TbSelectedFilterDirective {
267
+ set active(val) {
268
+ this.matCheckbox.checked = val;
269
+ super.active = val;
270
+ }
271
+ constructor(matCheckbox, wrapper) {
272
+ super(matCheckbox.change, () => matCheckbox.checked, wrapper);
273
+ this.matCheckbox = matCheckbox;
274
+ }
275
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatCheckboxTbFilterDirective, deps: [{ token: i4.MatCheckbox }, { token: i2.TableWrapperDirective, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
276
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: MatCheckboxTbFilterDirective, selector: "mat-checkbox[tbCustomFilter]", inputs: { predicate: ["tbCustomFilter", "predicate"], filterId: "filterId" }, providers: [{ provide: TableCustomFilterDirective, useExisting: MatCheckboxTbFilterDirective }], usesInheritance: true, ngImport: i0 }); }
277
+ }
278
+ export { MatCheckboxTbFilterDirective };
279
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatCheckboxTbFilterDirective, decorators: [{
280
+ type: Directive,
281
+ args: [{
282
+ selector: 'mat-checkbox[tbCustomFilter]',
283
+ inputs: [
284
+ ...inputs
285
+ ],
286
+ providers: [{ provide: TableCustomFilterDirective, useExisting: MatCheckboxTbFilterDirective }]
287
+ }]
288
+ }], ctorParameters: function () { return [{ type: i4.MatCheckbox }, { type: i2.TableWrapperDirective, decorators: [{
289
+ type: Optional
290
+ }] }]; } });
291
+ class MatSlideToggleTbFilterDirective extends TbSelectedFilterDirective {
292
+ set active(val) {
293
+ this.matSlideToggle.checked = val;
294
+ super.active = val;
295
+ }
296
+ constructor(matSlideToggle, wrapper) {
297
+ super(matSlideToggle.change, () => matSlideToggle.checked, wrapper);
298
+ this.matSlideToggle = matSlideToggle;
299
+ }
300
+ ngOnInit() {
301
+ super.ngOnInit();
302
+ }
303
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatSlideToggleTbFilterDirective, deps: [{ token: i5.MatSlideToggle }, { token: i2.TableWrapperDirective, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
304
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: MatSlideToggleTbFilterDirective, selector: "mat-slide-toggle[tbCustomFilter]", inputs: { predicate: ["tbCustomFilter", "predicate"], filterId: "filterId" }, providers: [{ provide: TableCustomFilterDirective, useExisting: MatSlideToggleTbFilterDirective }], usesInheritance: true, ngImport: i0 }); }
305
+ }
306
+ export { MatSlideToggleTbFilterDirective };
307
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatSlideToggleTbFilterDirective, decorators: [{
308
+ type: Directive,
309
+ args: [{
310
+ selector: 'mat-slide-toggle[tbCustomFilter]',
311
+ inputs: [
312
+ ...inputs
313
+ ],
314
+ providers: [{ provide: TableCustomFilterDirective, useExisting: MatSlideToggleTbFilterDirective }]
315
+ }]
316
+ }], ctorParameters: function () { return [{ type: i5.MatSlideToggle }, { type: i2.TableWrapperDirective, decorators: [{
317
+ type: Optional
318
+ }] }]; } });
319
+ // Radio button
320
+ class MatRadioButtonTbFilterDirective extends TbSelectedFilterDirective {
321
+ set active(val) {
322
+ this.matRadioButton.checked = val;
323
+ super.active = val;
324
+ }
325
+ constructor(matRadioButton, wrapper) {
326
+ super(matRadioButton.change, () => matRadioButton.checked, wrapper);
327
+ this.matRadioButton = matRadioButton;
328
+ }
329
+ ngOnInit() {
330
+ super.ngOnInit();
331
+ }
332
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatRadioButtonTbFilterDirective, deps: [{ token: i6.MatRadioButton }, { token: i2.TableWrapperDirective, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
333
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: MatRadioButtonTbFilterDirective, selector: "mat-radio-button[tbCustomFilter]", inputs: { predicate: ["tbCustomFilter", "predicate"] }, providers: [{ provide: TableCustomFilterDirective, useExisting: MatRadioButtonTbFilterDirective }], usesInheritance: true, ngImport: i0 }); }
334
+ }
335
+ export { MatRadioButtonTbFilterDirective };
336
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatRadioButtonTbFilterDirective, decorators: [{
337
+ type: Directive,
338
+ args: [{
339
+ selector: 'mat-radio-button[tbCustomFilter]',
340
+ inputs: ['predicate: tbCustomFilter'],
341
+ providers: [{ provide: TableCustomFilterDirective, useExisting: MatRadioButtonTbFilterDirective }]
342
+ }]
343
+ }], ctorParameters: function () { return [{ type: i6.MatRadioButton }, { type: i2.TableWrapperDirective, decorators: [{
344
+ type: Optional
345
+ }] }]; } });
346
+ // Option (select)
347
+ class MatOptionTbFilterDirective extends TbSelectedFilterDirective {
348
+ set active(val) {
349
+ if (val) {
350
+ this.matOption.select();
351
+ }
352
+ else {
353
+ this.matOption.deselect();
354
+ }
355
+ super.active = val;
356
+ }
357
+ constructor(matOption, wrapper) {
358
+ super(matOption.onSelectionChange.pipe(tap(d => {
359
+ if (!matOption.value) {
360
+ matOption.value = uuid();
361
+ }
362
+ })), () => matOption.selected, wrapper);
363
+ this.matOption = matOption;
364
+ }
365
+ ngOnInit() {
366
+ super.ngOnInit();
367
+ }
368
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatOptionTbFilterDirective, deps: [{ token: i7.MatOption }, { token: i2.TableWrapperDirective, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
369
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: MatOptionTbFilterDirective, selector: "mat-option[tbCustomFilter]", inputs: { predicate: ["tbCustomFilter", "predicate"], filterId: "filterId" }, providers: [{ provide: TableCustomFilterDirective, useExisting: MatOptionTbFilterDirective }], usesInheritance: true, ngImport: i0 }); }
370
+ }
371
+ export { MatOptionTbFilterDirective };
372
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatOptionTbFilterDirective, decorators: [{
373
+ type: Directive,
374
+ args: [{
375
+ selector: 'mat-option[tbCustomFilter]',
376
+ inputs: [
377
+ ...inputs
378
+ ],
379
+ providers: [{ provide: TableCustomFilterDirective, useExisting: MatOptionTbFilterDirective }]
380
+ }]
381
+ }], ctorParameters: function () { return [{ type: i7.MatOption }, { type: i2.TableWrapperDirective, decorators: [{
382
+ type: Optional
383
+ }] }]; } });
384
+ // Button toggle
385
+ class MatButtonToggleFilterDirective extends TbSelectedFilterDirective {
386
+ set active(val) {
387
+ this.matButtonToggle.checked = val;
388
+ super.active = val;
389
+ }
390
+ constructor(matButtonToggle, wrapper) {
391
+ super(matButtonToggle.change, () => matButtonToggle.checked, wrapper);
392
+ this.matButtonToggle = matButtonToggle;
393
+ }
394
+ ngOnInit() {
395
+ super.ngOnInit();
396
+ }
397
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatButtonToggleFilterDirective, deps: [{ token: i8.MatButtonToggle }, { token: i2.TableWrapperDirective, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
398
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: MatButtonToggleFilterDirective, selector: "mat-button-toggle[tbCustomFilter]", inputs: { predicate: ["tbCustomFilter", "predicate"], filterId: "filterId" }, providers: [{ provide: TableCustomFilterDirective, useExisting: MatButtonToggleFilterDirective }], usesInheritance: true, ngImport: i0 }); }
399
+ }
400
+ export { MatButtonToggleFilterDirective };
401
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: MatButtonToggleFilterDirective, decorators: [{
402
+ type: Directive,
403
+ args: [{
404
+ selector: 'mat-button-toggle[tbCustomFilter]',
405
+ inputs: [
406
+ ...inputs
407
+ ],
408
+ providers: [{ provide: TableCustomFilterDirective, useExisting: MatButtonToggleFilterDirective }]
409
+ }]
410
+ }], ctorParameters: function () { return [{ type: i8.MatButtonToggle }, { type: i2.TableWrapperDirective, decorators: [{
411
+ type: Optional
412
+ }] }]; } });
413
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGItZmlsdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdXRpbGl0aWVzL3NyYy90YWJsZS1idWlsZGVyL2RpcmVjdGl2ZXMvdGItZmlsdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxlQUFlLEVBQWMsYUFBYSxFQUFXLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0YsT0FBTyxFQUFFLEVBQUUsSUFBSSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBS2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7QUFLdkQsTUFBTSxNQUFNLEdBQUc7SUFDYiwyQkFBMkI7SUFDM0Isb0JBQW9CO0NBQ3JCLENBQUM7QUFHRixNQUdzQiwwQkFBMEI7SUFIaEQ7UUFNRSxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLFNBQUksR0FBRyxLQUFLLENBQUM7S0FHZDs4R0FQcUIsMEJBQTBCO2tHQUExQiwwQkFBMEI7O1NBQTFCLDBCQUEwQjsyRkFBMUIsMEJBQTBCO2tCQUgvQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxHQUFHO2lCQUNkOztBQWFELE1BRWdCLG9CQUFxQixTQUFRLGNBQTBCO0lBRXJFLFlBQW1DLEtBQWdCLEVBQWMsT0FBOEI7UUFDN0YsS0FBSyxFQUFFLENBQUM7UUFEeUIsVUFBSyxHQUFMLEtBQUssQ0FBVztRQW1CbkQsWUFBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFNYixX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TyxFQUFFLDBCQUEwQixFQUFFLFdBQVcsRUFBRSw4QkFBOEIsRUFBRSxDQUFDOztTQUV0Riw4QkFBOEI7MkZBQTlCLDhCQUE4QjtrQkFQMUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUNBQW1DO29CQUM3QyxNQUFNLEVBQUU7d0JBQ04sR0FBRyxNQUFNO3FCQUNWO29CQUNELFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLFdBQVcsZ0NBQWdDLEVBQUUsQ0FBQztpQkFDbEc7OzBCQU13RCxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgT3B0aW9uYWwsIFByZWRpY2F0ZSwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgU3ViamVjdCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBDdXN0b21GaWx0ZXIsIEZpbHRlckluZm8gfSBmcm9tIFwiLi4vY2xhc3Nlcy9maWx0ZXItaW5mb1wiO1xyXG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IEZpbHRlclR5cGUgfSBmcm9tIFwiLi4vZW51bXMvZmlsdGVyVHlwZXNcIjtcclxuaW1wb3J0IHsgTWF0U2xpZGVUb2dnbGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGUtdG9nZ2xlXCI7XHJcbmltcG9ydCB7IE1hdFJhZGlvQnV0dG9uIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3JhZGlvXCI7XHJcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi10b2dnbGUnO1xyXG5pbXBvcnQgeyBNYXRDaGVja2JveCB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveFwiO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9yZXBvcnQtZGVmXCI7XHJcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBDb21wb25lbnRTdG9yZSB9IGZyb20gXCJAbmdyeC9jb21wb25lbnQtc3RvcmVcIjtcclxuaW1wb3J0IHsgVGFibGVXcmFwcGVyRGlyZWN0aXZlIH0gZnJvbSBcIi4vdGFibGUtd3JhcHBlci5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHsgTWF0T3B0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NvcmVcIjtcclxuXHJcblxyXG5jb25zdCBpbnB1dHMgPSBbXHJcbiAgJ3ByZWRpY2F0ZTogdGJDdXN0b21GaWx0ZXInLFxyXG4gICdmaWx0ZXJJZDogZmlsdGVySWQnLFxyXG5dO1xyXG5cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnICdcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRhYmxlQ3VzdG9tRmlsdGVyRGlyZWN0aXZlPFQgPSBhbnk+IHtcclxuICBhYnN0cmFjdCBmaWx0ZXIkIDogT2JzZXJ2YWJsZTxDdXN0b21GaWx0ZXI+O1xyXG4gIGZpbHRlcklkITogc3RyaW5nO1xyXG4gIHNhdmFibGUgPSBmYWxzZTtcclxuICB1c2VkID0gZmFsc2U7XHJcbiAgYWJzdHJhY3QgYWN0aXZlOiBib29sZWFuO1xyXG4gIGFic3RyYWN0IHJlc2V0KCk6IHZvaWQ7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBcIlt0YkZpbHRlcl1cIlxyXG59KSBleHBvcnQgY2xhc3MgVGFibGVGaWx0ZXJEaXJlY3RpdmUgZXh0ZW5kcyBDb21wb25lbnRTdG9yZTxGaWx0ZXJJbmZvPiB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHByb3RlY3RlZCAgbW9kZWw6IE5nQ29udHJvbCwgQE9wdGlvbmFsKCkgd3JhcHBlcjogVGFibGVXcmFwcGVyRGlyZWN0aXZlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgaWYod3JhcHBlcikge1xyXG4gICAgICB3cmFwcGVyLnJlZ2lzdGVyKHRoaXMpO1xyXG4gICAgfVxyXG4gICAgaWYobW9kZWwpIHtcclxuICAgICAgdGhpcy5lZmZlY3QoICgpID0+IHtcclxuICAgICAgICByZXR1cm4gbW9kZWwudmFsdWVDaGFuZ2VzIS5waXBlKFxyXG4gICAgICAgICAgdGFwKCB2YWwgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmZpbHRlclZhbHVlID0gdmFsO1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZSgpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICApXHJcbiAgICAgIH0pXHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlc2V0KCkge1xyXG4gICAgdGhpcy5maWx0ZXJWYWx1ZSA9IHVuZGVmaW5lZDtcclxuICB9XHJcbiAgZmlsdGVyJCA9IHRoaXMuc3RhdGUkO1xyXG5cclxuICBASW5wdXQoKSBmaWx0ZXJUeXBlITogRmlsdGVyVHlwZTtcclxuICBASW5wdXQoKSBrZXkhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZmllbGRUeXBlITogRmllbGRUeXBlO1xyXG4gIEBJbnB1dCgpIGZpbHRlcklkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGFjdGl2ZSA9IHRydWU7XHJcbiAgQElucHV0KCkgZmlsdGVyVmFsdWU6IGFueSA9IG51bGw7XHJcblxyXG4gIHNldEZpbHRlclZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgIGlmKHRoaXMubW9kZWwpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5tb2RlbC5yZXNldCh2YWx1ZSk7XHJcbiAgICAgIH0sIDApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5maWx0ZXJWYWx1ZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIHVzZWQgPSBmYWxzZTtcclxuICBzYXZhYmxlID0gZmFsc2U7XHJcbiAgcmVhZHkgPSBmYWxzZTtcclxuXHJcbiAgX3VzZXJBY3RpdmUgPSB0cnVlO1xyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMgKSB7XHJcbiAgICB0aGlzLnVwZGF0ZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZighdGhpcy5maWx0ZXJJZCkge1xyXG4gICAgICB0aGlzLmZpbHRlcklkID0gdXVpZCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zYXZhYmxlID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMucmVhZHkgPSB0cnVlO1xyXG4gICAgdGhpcy51cGRhdGUoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBzZXRGaWx0ZXIoZmlsdGVyOiBGaWx0ZXJJbmZvICkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZShmaWx0ZXIpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlKCkge1xyXG4gICAgaWYgKHRoaXMucmVhZHkpIHtcclxuICAgICAgdGhpcy5zZXRGaWx0ZXIoXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgZmlsdGVySWQ6IHRoaXMuZmlsdGVySWQsXHJcbiAgICAgICAgICBrZXk6IHRoaXMua2V5LFxyXG4gICAgICAgICAgZmlsdGVyVHlwZTogdGhpcy5maWx0ZXJUeXBlLFxyXG4gICAgICAgICAgZmllbGRUeXBlOiB0aGlzLmZpZWxkVHlwZSxcclxuICAgICAgICAgIGZpbHRlclZhbHVlOiB0aGlzLmZpbHRlclZhbHVlLFxyXG4gICAgICAgICAgYWN0aXZlOiB0aGlzLmFjdGl2ZSAmJiB0aGlzLmZpbHRlclZhbHVlICE9PSB1bmRlZmluZWQsXHJcbiAgICAgICAgICBfaXNFeHRlcm5hbHlNYW5hZ2VkOiB0cnVlLFxyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1t0YkZpbHRlclN0cmluZ0NvbnRhaW5zXScsXHJcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBUYWJsZUZpbHRlckRpcmVjdGl2ZSwgdXNlRXhpc3Rpbmc6IFRhYmxlRmlsdGVyU3RyaW5nQ29udGFpbnNEaXJlY3RpdmUgfV0sXHJcbiAgaW5wdXRzOiBbXHJcbiAgICAna2V5OnRiRmlsdGVyU3RyaW5nQ29udGFpbnMnLFxyXG4gICAgJ2ZpbHRlclZhbHVlOmZpbHRlclZhbHVlJyxcclxuICAgICdmaWx0ZXJJZDogZmlsdGVySWQnLFxyXG4gICAgJ2FjdGl2ZTogYWN0aXZlJyxcclxuICBdXHJcbn0pIGV4cG9ydCBjbGFzcyBUYWJsZUZpbHRlclN0cmluZ0NvbnRhaW5zRGlyZWN0aXZlIGV4dGVuZHMgVGFibGVGaWx0ZXJEaXJlY3RpdmUge1xyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpICBtb2RlbDogTmdDb250cm9sLCBAT3B0aW9uYWwoKSB3cmFwcGVyOiBUYWJsZVdyYXBwZXJEaXJlY3RpdmUpIHtcclxuICAgIHN1cGVyKG1vZGVsLHdyYXBwZXIpO1xyXG4gICAgdGhpcy5maWx0ZXJUeXBlID0gRmlsdGVyVHlwZS5TdHJpbmdDb250YWlucztcclxuICAgIHRoaXMuZmllbGRUeXBlID0gRmllbGRUeXBlLlN0cmluZztcclxuICAgIHRoaXMuZWZmZWN0KCAoKSA9PiB7XHJcbiAgICAgIHJldHVybiBtb2RlbC52YWx1ZUNoYW5nZXMhLnBpcGUoXHJcbiAgICAgICAgdGFwKCB2YWwgPT4ge1xyXG4gICAgICAgICAgdGhpcy5maWx0ZXJWYWx1ZSA9IHZhbDtcclxuICAgICAgICAgIHRoaXMudXBkYXRlKCk7XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIHJlc2V0KCkge1xyXG4gICAgaWYodGhpcy5tb2RlbCkge1xyXG4gICAgICB0aGlzLm1vZGVsLnJlc2V0KCk7XHJcbiAgICB9XHJcbiAgICBzdXBlci5yZXNldCgpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgc2V0RmlsdGVyKGZpbHRlcjogRmlsdGVySW5mbykge1xyXG4gICAgZmlsdGVyLmFjdGl2ZSA9IGZpbHRlci5maWx0ZXJWYWx1ZSAmJiB0aGlzLl91c2VyQWN0aXZlO1xyXG4gICAgc3VwZXIuc2V0RmlsdGVyKGZpbHRlcik7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZihjaGFuZ2VzWydhY3RpdmUnXSkge1xyXG4gICAgICB0aGlzLl91c2VyQWN0aXZlID0gY2hhbmdlc1snYWN0aXZlJ10uY3VycmVudFZhbHVlO1xyXG4gICAgfVxyXG4gICAgc3VwZXIubmdPbkNoYW5nZXMoY2hhbmdlcyk7XHJcbiAgfVxyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogXCJbdGJDdXN0b21GaWx0ZXJdXCIsXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZUJhc2U8VCA9IGFueT4gZXh0ZW5kcyBUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZTxUPiB7XHJcblxyXG4gIGZpbHRlciQhIDogU3ViamVjdDxDdXN0b21GaWx0ZXI+O1xyXG4gIGZpbHRlciE6IEN1c3RvbUZpbHRlcjtcclxuICBASW5wdXQoKSBmaWx0ZXJJZCEgOiBzdHJpbmc7XHJcblxyXG4gIF9wcmVkaWNhdGUhOiBQcmVkaWNhdGU8VD47XHJcbiAgQElucHV0KCd0YkN1c3RvbUZpbHRlcicpIHNldCBwcmVkaWNhdGUoIHZhbDogUHJlZGljYXRlPFQ+ICkge1xyXG4gICAgdGhpcy5fcHJlZGljYXRlID0gdmFsO1xyXG4gICAgdGhpcy51cGRhdGUoe3ByZWRpY2F0ZTp2YWx9KTtcclxuICB9XHJcblxyXG4gIF9hY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICByZWFkeSA9IGZhbHNlO1xyXG5cclxuICB1cGRhdGUodmFsOiBQYXJ0aWFsPEN1c3RvbUZpbHRlcj4gKSB7XHJcbiAgICBpZih0aGlzLnJlYWR5KSB7XHJcbiAgICAgIHRoaXMuZmlsdGVyID0gey4uLnRoaXMuZmlsdGVyLC4uLnZhbH07XHJcbiAgICAgIHRoaXMuZmlsdGVyJC5uZXh0KHRoaXMuZmlsdGVyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHNldCBhY3RpdmUodmFsOiBib29sZWFuKSB7XHJcbiAgICBpZih0aGlzLl9hY3RpdmUgIT09IHZhbCkge1xyXG4gICAgICB0aGlzLl9hY3RpdmUgPSB2YWw7XHJcbiAgICAgIHRoaXMudXBkYXRlKHthY3RpdmU6dmFsfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldCBhY3RpdmUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZighdGhpcy5maWx0ZXJJZCkge1xyXG4gICAgICB0aGlzLmZpbHRlcklkID0gdXVpZCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zYXZhYmxlID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmZpbHRlciA9IHtcclxuICAgICAgZmlsdGVyVHlwZTogRmlsdGVyVHlwZS5DdXN0b20sXHJcbiAgICAgIGZpbHRlcklkOiB0aGlzLmZpbHRlcklkLFxyXG4gICAgICBhY3RpdmU6IHRoaXMuX2FjdGl2ZSxcclxuICAgICAgcHJlZGljYXRlOiB0aGlzLl9wcmVkaWNhdGUsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5yZWFkeSA9IHRydWU7XHJcbiAgICB0aGlzLmZpbHRlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRoaXMuZmlsdGVyKTtcclxuICB9XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGJTZWxlY3RlZEZpbHRlckRpcmVjdGl2ZTxUID0gYW55PiAgZXh0ZW5kcyBUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZUJhc2U8VD4ge1xyXG5cclxuXHJcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlOiBPYnNlcnZhYmxlPGFueT4sIHByaXZhdGUgaXNBY3RpdmU6ICgpID0+IGJvb2xlYW4sIEBPcHRpb25hbCgpIHdyYXBwZXI6IFRhYmxlV3JhcHBlckRpcmVjdGl2ZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIGlmKHdyYXBwZXIpIHtcclxuICAgICAgd3JhcHBlci5yZWdpc3Rlcih0aGlzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlc2V0KCkge1xyXG4gICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIGRlc3Ryb3lTdWJqZWN0JCA9IG5ldyBSZXBsYXlTdWJqZWN0PHZvaWQ+KDEpO1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5kZXN0cm95U3ViamVjdCQubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9hY3RpdmUgPSB0aGlzLmlzQWN0aXZlKCk7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgdGhpcy5jaGFuZ2UucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95U3ViamVjdCQpKS5zdWJzY3JpYmUoICgpID0+IHtcclxuICAgICAgdGhpcy5hY3RpdmUgPSB0aGlzLmlzQWN0aXZlKCk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuXHJcbi8vIENoZWNrYm94XHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnbWF0LWNoZWNrYm94W3RiQ3VzdG9tRmlsdGVyXScsXHJcbiAgaW5wdXRzOiBbXHJcbiAgICAuLi5pbnB1dHNcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogVGFibGVDdXN0b21GaWx0ZXJEaXJlY3RpdmUsIHVzZUV4aXN0aW5nOiBNYXRDaGVja2JveFRiRmlsdGVyRGlyZWN0aXZlIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRDaGVja2JveFRiRmlsdGVyRGlyZWN0aXZlIGV4dGVuZHMgVGJTZWxlY3RlZEZpbHRlckRpcmVjdGl2ZSB7XHJcblxyXG4gIG92ZXJyaWRlIHNldCBhY3RpdmUodmFsOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLm1hdENoZWNrYm94LmNoZWNrZWQgPSB2YWw7XHJcbiAgICBzdXBlci5hY3RpdmUgPSB2YWw7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbWF0Q2hlY2tib3g6IE1hdENoZWNrYm94LCBAT3B0aW9uYWwoKSB3cmFwcGVyOiBUYWJsZVdyYXBwZXJEaXJlY3RpdmUpIHtcclxuICAgIHN1cGVyKG1hdENoZWNrYm94LmNoYW5nZSwgKCkgPT4gbWF0Q2hlY2tib3guY2hlY2tlZCwgd3JhcHBlcik7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdtYXQtc2xpZGUtdG9nZ2xlW3RiQ3VzdG9tRmlsdGVyXScsXHJcbiAgaW5wdXRzOiBbXHJcbiAgICAuLi5pbnB1dHNcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogVGFibGVDdXN0b21GaWx0ZXJEaXJlY3RpdmUsIHVzZUV4aXN0aW5nOiBNYXRTbGlkZVRvZ2dsZVRiRmlsdGVyRGlyZWN0aXZlIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRTbGlkZVRvZ2dsZVRiRmlsdGVyRGlyZWN0aXZlPFQgPSBhbnk+IGV4dGVuZHMgVGJTZWxlY3RlZEZpbHRlckRpcmVjdGl2ZTxUPiB7XHJcbiAgb3ZlcnJpZGUgc2V0IGFjdGl2ZSh2YWw6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMubWF0U2xpZGVUb2dnbGUuY2hlY2tlZCA9IHZhbDtcclxuICAgIHN1cGVyLmFjdGl2ZSA9IHZhbDtcclxuICB9XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtYXRTbGlkZVRvZ2dsZTogTWF0U2xpZGVUb2dnbGUsIEBPcHRpb25hbCgpIHdyYXBwZXI6IFRhYmxlV3JhcHBlckRpcmVjdGl2ZSkge1xyXG4gICAgc3VwZXIobWF0U2xpZGVUb2dnbGUuY2hhbmdlLCAoKSA9PiBtYXRTbGlkZVRvZ2dsZS5jaGVja2VkLHdyYXBwZXIpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gUmFkaW8gYnV0dG9uXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnbWF0LXJhZGlvLWJ1dHRvblt0YkN1c3RvbUZpbHRlcl0nLFxyXG4gIGlucHV0czogWydwcmVkaWNhdGU6IHRiQ3VzdG9tRmlsdGVyJ10sXHJcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZSwgdXNlRXhpc3Rpbmc6IE1hdFJhZGlvQnV0dG9uVGJGaWx0ZXJEaXJlY3RpdmUgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdFJhZGlvQnV0dG9uVGJGaWx0ZXJEaXJlY3RpdmUgZXh0ZW5kcyBUYlNlbGVjdGVkRmlsdGVyRGlyZWN0aXZlIHtcclxuXHJcbiAgb3ZlcnJpZGUgc2V0IGFjdGl2ZSh2YWw6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMubWF0UmFkaW9CdXR0b24uY2hlY2tlZCA9IHZhbDtcclxuICAgIHN1cGVyLmFjdGl2ZSA9IHZhbDtcclxuICB9XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtYXRSYWRpb0J1dHRvbjogTWF0UmFkaW9CdXR0b24sIEBPcHRpb25hbCgpIHdyYXBwZXI6IFRhYmxlV3JhcHBlckRpcmVjdGl2ZSkge1xyXG4gICAgc3VwZXIobWF0UmFkaW9CdXR0b24uY2hhbmdlLCAoKSA9PiBtYXRSYWRpb0J1dHRvbi5jaGVja2VkLCB3cmFwcGVyKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIE9wdGlvbiAoc2VsZWN0KVxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ21hdC1vcHRpb25bdGJDdXN0b21GaWx0ZXJdJyxcclxuICBpbnB1dHM6IFtcclxuICAgIC4uLmlucHV0c1xyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBUYWJsZUN1c3RvbUZpbHRlckRpcmVjdGl2ZSwgdXNlRXhpc3Rpbmc6IE1hdE9wdGlvblRiRmlsdGVyRGlyZWN0aXZlIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRPcHRpb25UYkZpbHRlckRpcmVjdGl2ZSBleHRlbmRzIFRiU2VsZWN0ZWRGaWx0ZXJEaXJlY3RpdmUge1xyXG5cclxuICBvdmVycmlkZSBzZXQgYWN0aXZlKHZhbDogYm9vbGVhbikge1xyXG4gICAgaWYodmFsKSB7XHJcbiAgICAgIHRoaXMubWF0T3B0aW9uLnNlbGVjdCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5tYXRPcHRpb24uZGVzZWxlY3QoKTtcclxuICAgIH1cclxuICAgIHN1cGVyLmFjdGl2ZSA9IHZhbDtcclxuICB9XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtYXRPcHRpb246IE1hdE9wdGlvbiwgQE9wdGlvbmFsKCkgd3JhcHBlcjogVGFibGVXcmFwcGVyRGlyZWN0aXZlKSB7XHJcbiAgICBzdXBlciggbWF0T3B0aW9uLm9uU2VsZWN0aW9uQ2hhbmdlLnBpcGUodGFwKCBkID0+IHtcclxuICAgICAgaWYoIW1hdE9wdGlvbi52YWx1ZSkge1xyXG4gICAgICAgIG1hdE9wdGlvbi52YWx1ZSA9IHV1aWQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICkpLCAoKSA9PiBtYXRPcHRpb24uc2VsZWN0ZWQsIHdyYXBwZXIpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQnV0dG9uIHRvZ2dsZVxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ21hdC1idXR0b24tdG9nZ2xlW3RiQ3VzdG9tRmlsdGVyXScsXHJcbiAgaW5wdXRzOiBbXHJcbiAgICAuLi5pbnB1dHNcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogVGFibGVDdXN0b21GaWx0ZXJEaXJlY3RpdmUsIHVzZUV4aXN0aW5nOiBNYXRCdXR0b25Ub2dnbGVGaWx0ZXJEaXJlY3RpdmUgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdEJ1dHRvblRvZ2dsZUZpbHRlckRpcmVjdGl2ZSBleHRlbmRzIFRiU2VsZWN0ZWRGaWx0ZXJEaXJlY3RpdmUge1xyXG4gIG92ZXJyaWRlIHNldCBhY3RpdmUodmFsOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLm1hdEJ1dHRvblRvZ2dsZS5jaGVja2VkID0gdmFsO1xyXG4gICAgc3VwZXIuYWN0aXZlID0gdmFsO1xyXG4gIH1cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1hdEJ1dHRvblRvZ2dsZTogTWF0QnV0dG9uVG9nZ2xlLCBAT3B0aW9uYWwoKSB3cmFwcGVyOiBUYWJsZVdyYXBwZXJEaXJlY3RpdmUpIHtcclxuICAgIHN1cGVyKG1hdEJ1dHRvblRvZ2dsZS5jaGFuZ2UsICgpID0+IG1hdEJ1dHRvblRvZ2dsZS5jaGVja2VkLHdyYXBwZXIpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,72 +1,72 @@
1
- export var FilterType;
2
- (function (FilterType) {
3
- FilterType["NumberEquals"] = "Equals";
4
- FilterType["NumberNotEqual"] = "Does Not Equal";
5
- FilterType["NumberGreaterThan"] = "Greater Than";
6
- FilterType["NumberLessThan"] = "Less Than";
7
- FilterType["NumberBetween"] = "Between";
8
- FilterType["StringEquals"] = "Equals";
9
- FilterType["StringContains"] = "Contains";
10
- FilterType["StringDoesNotContain"] = "Does Not Contain";
11
- FilterType["StringStartWith"] = "Start With";
12
- FilterType["StringEndsWith"] = "Ends With";
13
- FilterType["DateIsOn"] = "Is on";
14
- FilterType["DateIsNotOn"] = "Is Not On";
15
- FilterType["DateOnOrAfter"] = "On or After";
16
- FilterType["DateOnOrBefore"] = "On or Before";
17
- FilterType["DateBetween"] = "Between";
18
- FilterType["DateTimeIsAt"] = "Is At";
19
- FilterType["DateTimeIsNotAt"] = "Is Not At";
20
- FilterType["DateTimeAtOrAfter"] = "At or After";
21
- FilterType["DateTimeAtOrBefore"] = "At or Before";
22
- FilterType["DateTimeBetween"] = "Between";
23
- FilterType["BooleanEquals"] = "Is";
24
- FilterType["IsNull"] = "Is Blank";
25
- FilterType["Or"] = "Or";
26
- FilterType["And"] = "And";
27
- FilterType["In"] = "In";
28
- FilterType["Custom"] = "Custom";
29
- })(FilterType || (FilterType = {}));
30
- export const NumberFilterMap = {
31
- [FilterType.NumberEquals]: [FilterType.NumberEquals],
32
- [FilterType.NumberNotEqual]: [FilterType.NumberNotEqual],
33
- [FilterType.NumberGreaterThan]: [FilterType.NumberGreaterThan],
34
- [FilterType.NumberLessThan]: [FilterType.NumberLessThan],
35
- [FilterType.NumberBetween]: [FilterType.NumberBetween],
36
- [FilterType.IsNull]: [FilterType.IsNull],
37
- [FilterType.In]: [FilterType.In],
38
- };
39
- export const StringFilterMap = {
40
- [FilterType.StringEquals]: [FilterType.StringEquals],
41
- [FilterType.StringContains]: [FilterType.StringContains],
42
- [FilterType.StringDoesNotContain]: [FilterType.StringDoesNotContain],
43
- [FilterType.StringStartWith]: [FilterType.StringStartWith],
44
- [FilterType.StringEndsWith]: [FilterType.StringEndsWith],
45
- [FilterType.IsNull]: [FilterType.IsNull],
46
- [FilterType.In]: [FilterType.In],
47
- };
48
- export const DateFilterMap = {
49
- [FilterType.DateIsOn]: [FilterType.DateIsOn],
50
- [FilterType.DateIsNotOn]: [FilterType.DateIsNotOn],
51
- [FilterType.DateOnOrAfter]: [FilterType.DateOnOrAfter],
52
- [FilterType.DateOnOrBefore]: [FilterType.DateOnOrBefore],
53
- [FilterType.DateBetween]: [FilterType.DateBetween],
54
- [FilterType.IsNull]: [FilterType.IsNull],
55
- };
56
- export const DateTimeFilterMap = {
57
- ...DateFilterMap,
58
- [FilterType.DateTimeIsAt]: [FilterType.DateTimeIsAt],
59
- [FilterType.DateTimeIsNotAt]: [FilterType.DateTimeIsNotAt],
60
- [FilterType.DateTimeAtOrAfter]: [FilterType.DateTimeAtOrAfter],
61
- [FilterType.DateTimeAtOrBefore]: [FilterType.DateTimeAtOrBefore],
62
- [FilterType.DateTimeBetween]: [FilterType.DateTimeBetween],
63
- };
64
- export const BooleanFilterMap = {
65
- [FilterType.BooleanEquals]: [FilterType.BooleanEquals],
66
- [FilterType.IsNull]: [FilterType.IsNull],
67
- };
68
- export const EnumFilterMap = {
69
- [FilterType.IsNull]: [FilterType.IsNull],
70
- [FilterType.In]: [FilterType.In]
71
- };
1
+ export var FilterType;
2
+ (function (FilterType) {
3
+ FilterType["NumberEquals"] = "Equals";
4
+ FilterType["NumberNotEqual"] = "Does Not Equal";
5
+ FilterType["NumberGreaterThan"] = "Greater Than";
6
+ FilterType["NumberLessThan"] = "Less Than";
7
+ FilterType["NumberBetween"] = "Between";
8
+ FilterType["StringEquals"] = "Equals";
9
+ FilterType["StringContains"] = "Contains";
10
+ FilterType["StringDoesNotContain"] = "Does Not Contain";
11
+ FilterType["StringStartWith"] = "Start With";
12
+ FilterType["StringEndsWith"] = "Ends With";
13
+ FilterType["DateIsOn"] = "Is on";
14
+ FilterType["DateIsNotOn"] = "Is Not On";
15
+ FilterType["DateOnOrAfter"] = "On or After";
16
+ FilterType["DateOnOrBefore"] = "On or Before";
17
+ FilterType["DateBetween"] = "Between";
18
+ FilterType["DateTimeIsAt"] = "Is At";
19
+ FilterType["DateTimeIsNotAt"] = "Is Not At";
20
+ FilterType["DateTimeAtOrAfter"] = "At or After";
21
+ FilterType["DateTimeAtOrBefore"] = "At or Before";
22
+ FilterType["DateTimeBetween"] = "Between";
23
+ FilterType["BooleanEquals"] = "Is";
24
+ FilterType["IsNull"] = "Is Blank";
25
+ FilterType["Or"] = "Or";
26
+ FilterType["And"] = "And";
27
+ FilterType["In"] = "In";
28
+ FilterType["Custom"] = "Custom";
29
+ })(FilterType || (FilterType = {}));
30
+ export const NumberFilterMap = {
31
+ [FilterType.NumberEquals]: [FilterType.NumberEquals],
32
+ [FilterType.NumberNotEqual]: [FilterType.NumberNotEqual],
33
+ [FilterType.NumberGreaterThan]: [FilterType.NumberGreaterThan],
34
+ [FilterType.NumberLessThan]: [FilterType.NumberLessThan],
35
+ [FilterType.NumberBetween]: [FilterType.NumberBetween],
36
+ [FilterType.IsNull]: [FilterType.IsNull],
37
+ [FilterType.In]: [FilterType.In],
38
+ };
39
+ export const StringFilterMap = {
40
+ [FilterType.StringEquals]: [FilterType.StringEquals],
41
+ [FilterType.StringContains]: [FilterType.StringContains],
42
+ [FilterType.StringDoesNotContain]: [FilterType.StringDoesNotContain],
43
+ [FilterType.StringStartWith]: [FilterType.StringStartWith],
44
+ [FilterType.StringEndsWith]: [FilterType.StringEndsWith],
45
+ [FilterType.IsNull]: [FilterType.IsNull],
46
+ [FilterType.In]: [FilterType.In],
47
+ };
48
+ export const DateFilterMap = {
49
+ [FilterType.DateIsOn]: [FilterType.DateIsOn],
50
+ [FilterType.DateIsNotOn]: [FilterType.DateIsNotOn],
51
+ [FilterType.DateOnOrAfter]: [FilterType.DateOnOrAfter],
52
+ [FilterType.DateOnOrBefore]: [FilterType.DateOnOrBefore],
53
+ [FilterType.DateBetween]: [FilterType.DateBetween],
54
+ [FilterType.IsNull]: [FilterType.IsNull],
55
+ };
56
+ export const DateTimeFilterMap = {
57
+ ...DateFilterMap,
58
+ [FilterType.DateTimeIsAt]: [FilterType.DateTimeIsAt],
59
+ [FilterType.DateTimeIsNotAt]: [FilterType.DateTimeIsNotAt],
60
+ [FilterType.DateTimeAtOrAfter]: [FilterType.DateTimeAtOrAfter],
61
+ [FilterType.DateTimeAtOrBefore]: [FilterType.DateTimeAtOrBefore],
62
+ [FilterType.DateTimeBetween]: [FilterType.DateTimeBetween],
63
+ };
64
+ export const BooleanFilterMap = {
65
+ [FilterType.BooleanEquals]: [FilterType.BooleanEquals],
66
+ [FilterType.IsNull]: [FilterType.IsNull],
67
+ };
68
+ export const EnumFilterMap = {
69
+ [FilterType.IsNull]: [FilterType.IsNull],
70
+ [FilterType.In]: [FilterType.In]
71
+ };
72
72
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyVHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9lbnVtcy9maWx0ZXJUeXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxNQUFNLENBQU4sSUFBWSxVQTJCWDtBQTNCRCxXQUFZLFVBQVU7SUFDbEIscUNBQXVCLENBQUE7SUFDdkIsK0NBQWlDLENBQUE7SUFDakMsZ0RBQWtDLENBQUE7SUFDbEMsMENBQTRCLENBQUE7SUFDNUIsdUNBQXlCLENBQUE7SUFDekIscUNBQXVCLENBQUE7SUFDdkIseUNBQTJCLENBQUE7SUFDM0IsdURBQXlDLENBQUE7SUFDekMsNENBQThCLENBQUE7SUFDOUIsMENBQTRCLENBQUE7SUFDNUIsZ0NBQWtCLENBQUE7SUFDbEIsdUNBQXlCLENBQUE7SUFDekIsMkNBQTZCLENBQUE7SUFDN0IsNkNBQStCLENBQUE7SUFDL0IscUNBQXVCLENBQUE7SUFDdkIsb0NBQXNCLENBQUE7SUFDdEIsMkNBQTZCLENBQUE7SUFDN0IsK0NBQWlDLENBQUE7SUFDakMsaURBQW1DLENBQUE7SUFDbkMseUNBQTJCLENBQUE7SUFDM0Isa0NBQW9CLENBQUE7SUFDcEIsaUNBQW1CLENBQUE7SUFDbkIsdUJBQVMsQ0FBQTtJQUNULHlCQUFXLENBQUE7SUFDWCx1QkFBUyxDQUFBO0lBQ1QsK0JBQWlCLENBQUE7QUFDckIsQ0FBQyxFQTNCVyxVQUFVLEtBQVYsVUFBVSxRQTJCckI7QUFFRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQXNCO0lBQzlDLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQztJQUNwRCxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUM7SUFDeEQsQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMs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QUN6QyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7Q0FDbEMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5leHBvcnQgZW51bSBGaWx0ZXJUeXBlIHtcclxuICAgIE51bWJlckVxdWFscyA9ICdFcXVhbHMnLFxyXG4gICAgTnVtYmVyTm90RXF1YWwgPSAnRG9lcyBOb3QgRXF1YWwnLFxyXG4gICAgTnVtYmVyR3JlYXRlclRoYW4gPSAnR3JlYXRlciBUaGFuJyxcclxuICAgIE51bWJlckxlc3NUaGFuID0gJ0xlc3MgVGhhbicsXHJcbiAgICBOdW1iZXJCZXR3ZWVuID0gJ0JldHdlZW4nLFxyXG4gICAgU3RyaW5nRXF1YWxzID0gJ0VxdWFscycsXHJcbiAgICBTdHJpbmdDb250YWlucyA9ICdDb250YWlucycsXHJcbiAgICBTdHJpbmdEb2VzTm90Q29udGFpbiA9ICdEb2VzIE5vdCBDb250YWluJyxcclxuICAgIFN0cmluZ1N0YXJ0V2l0aCA9ICdTdGFydCBXaXRoJyxcclxuICAgIFN0cmluZ0VuZHNXaXRoID0gJ0VuZHMgV2l0aCcsXHJcbiAgICBEYXRlSXNPbiA9ICdJcyBvbicsXHJcbiAgICBEYXRlSXNOb3RPbiA9ICdJcyBOb3QgT24nLFxyXG4gICAgRGF0ZU9uT3JBZnRlciA9ICdPbiBvciBBZnRlcicsXHJcbiAgICBEYXRlT25PckJlZm9yZSA9ICdPbiBvciBCZWZvcmUnLFxyXG4gICAgRGF0ZUJldHdlZW4gPSAnQmV0d2VlbicsXHJcbiAgICBEYXRlVGltZUlzQXQgPSAnSXMgQXQnLFxyXG4gICAgRGF0ZVRpbWVJc05vdEF0ID0gJ0lzIE5vdCBBdCcsXHJcbiAgICBEYXRlVGltZUF0T3JBZnRlciA9ICdBdCBvciBBZnRlcicsXHJcbiAgICBEYXRlVGltZUF0T3JCZWZvcmUgPSAnQXQgb3IgQmVmb3JlJyxcclxuICAgIERhdGVUaW1lQmV0d2VlbiA9ICdCZXR3ZWVuJyxcclxuICAgIEJvb2xlYW5FcXVhbHMgPSAnSXMnLFxyXG4gICAgSXNOdWxsID0gJ0lzIEJsYW5rJyxcclxuICAgIE9yID0gJ09yJyxcclxuICAgIEFuZCA9ICdBbmQnLFxyXG4gICAgSW4gPSAnSW4nLFxyXG4gICAgQ3VzdG9tID0gJ0N1c3RvbScsXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBOdW1iZXJGaWx0ZXJNYXA6RmlsdGVyVG9GaWx0ZXJzTWFwID0ge1xyXG4gICAgW0ZpbHRlclR5cGUuTnVtYmVyRXF1YWxzXTogW0ZpbHRlclR5cGUuTnVtYmVyRXF1YWxzXSxcclxuICAgIFtGaWx0ZXJUeXBlLk51bWJlck5vdEVxdWFsXTogW0ZpbHRlclR5cGUuTnVtYmVyTm90RXF1YWxdLFxyXG4gICAgW0ZpbHRlclR5cGUuTnVtYmVyR3JlYXRlclRoYW5dOiBbRmlsdGVyVHlwZS5OdW1iZXJHcmVhdGVyVGhhbl0sXHJcbiAgICBbRmlsdGVyVHlwZS5OdW1iZXJMZXNzVGhhbl06IFtGaWx0ZXJUeXBlLk51bWJlckxlc3NUaGFuXSxcclxuICAgIFtGaWx0ZXJUeXBlLk51bWJlckJldHdlZW5dOiBbRmlsdGVyVHlwZS5OdW1iZXJCZXR3ZWVuXSxcclxuICAgIFtGaWx0ZXJUeXBlLklzTnVsbF06IFtGaWx0ZXJUeXBlLklzTnVsbF0sXHJcbiAgICBbRmlsdGVyVHlwZS5Jbl06IFtGaWx0ZXJUeXBlLkluXSxcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBTdHJpbmdGaWx0ZXJNYXA6RmlsdGVyVG9GaWx0ZXJzTWFwID0ge1xyXG4gICAgW0ZpbHRlclR5cGUuU3RyaW5nRXF1YWxzXTogW0ZpbHRlclR5cGUuU3RyaW5nRXF1YWxzXSxcclxuICAgIFtGaWx0ZXJUeXBlLlN0cmluZ0NvbnRhaW5zXTogW0ZpbHRlclR5cGUuU3RyaW5nQ29udGFpbnNdLFxyXG4gICAgW0ZpbHRlclR5cGUuU3RyaW5nRG9lc05vdENvbnRhaW5dOiBbRmlsdGVyVHlwZS5TdHJpbmdEb2VzTm90Q29udGFpbl0sXHJcbiAgICBbRmlsdGVyVHlwZS5TdHJpbmdTdGFydFdpdGhdOiBbRmlsdGVyVHlwZS5TdHJpbmdTdGFydFdpdGhdLFxyXG4gICAgW0ZpbHRlclR5cGUuU3RyaW5nRW5kc1dpdGhdOiBbRmlsdGVyVHlwZS5TdHJpbmdFbmRzV2l0aF0sXHJcbiAgICBbRmlsdGVyVHlwZS5Jc051bGxdOiBbRmlsdGVyVHlwZS5Jc051bGxdLFxyXG4gICAgW0ZpbHRlclR5cGUuSW5dOiBbRmlsdGVyVHlwZS5Jbl0sXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgRGF0ZUZpbHRlck1hcDpGaWx0ZXJUb0ZpbHRlcnNNYXAgPSB7XHJcbiAgICBbRmlsdGVyVHlwZS5EYXRlSXNPbl06IFtGaWx0ZXJUeXBlLkRhdGVJc09uXSxcclxuICAgIFtGaWx0ZXJUeXBlLkRhdGVJc05vdE9uXTogW0ZpbHRlclR5cGUuRGF0ZUlzTm90T25dLFxyXG4gICAgW0ZpbHRlclR5cGUuRGF0ZU9uT3JBZnRlcl06IFtGaWx0ZXJUeXBlLkRhdGVPbk9yQWZ0ZXJdLFxyXG4gICAgW0ZpbHRlclR5cGUuRGF0ZU9uT3JCZWZvcmVdOiBbRmlsdGVyVHlwZS5EYXRlT25PckJlZm9yZV0sXHJcbiAgICBbRmlsdGVyVHlwZS5EYXRlQmV0d2Vlbl06IFtGaWx0ZXJUeXBlLkRhdGVCZXR3ZWVuXSxcclxuICAgIFtGaWx0ZXJUeXBlLklzTnVsbF06IFtGaWx0ZXJUeXBlLklzTnVsbF0sXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgRGF0ZVRpbWVGaWx0ZXJNYXA6RmlsdGVyVG9GaWx0ZXJzTWFwID0ge1xyXG4gIC4uLkRhdGVGaWx0ZXJNYXAsXHJcbiAgW0ZpbHRlclR5cGUuRGF0ZVRpbWVJc0F0XTogW0ZpbHRlclR5cGUuRGF0ZVRpbWVJc0F0XSxcclxuICBbRmlsdGVyVHlwZS5EYXRlVGltZUlzTm90QXRdOiBbRmlsdGVyVHlwZS5EYXRlVGltZUlzTm90QXRdLFxyXG4gIFtGaWx0ZXJUeXBlLkRhdGVUaW1lQXRPckFmdGVyXTogW0ZpbHRlclR5cGUuRGF0ZVRpbWVBdE9yQWZ0ZXJdLFxyXG4gIFtGaWx0ZXJUeXBlLkRhdGVUaW1lQXRPckJlZm9yZV06IFtGaWx0ZXJUeXBlLkRhdGVUaW1lQXRPckJlZm9yZV0sXHJcbiAgW0ZpbHRlclR5cGUuRGF0ZVRpbWVCZXR3ZWVuXTogW0ZpbHRlclR5cGUuRGF0ZVRpbWVCZXR3ZWVuXSxcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBCb29sZWFuRmlsdGVyTWFwIDpGaWx0ZXJUb0ZpbHRlcnNNYXAgPSB7XHJcbiAgICBbRmlsdGVyVHlwZS5Cb29sZWFuRXF1YWxzXTogW0ZpbHRlclR5cGUuQm9vbGVhbkVxdWFsc10sXHJcbiAgICBbRmlsdGVyVHlwZS5Jc051bGxdOiBbRmlsdGVyVHlwZS5Jc051bGxdLFxyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IEVudW1GaWx0ZXJNYXAgOiBGaWx0ZXJUb0ZpbHRlcnNNYXAgPSB7XHJcbiAgW0ZpbHRlclR5cGUuSXNOdWxsXSA6IFtGaWx0ZXJUeXBlLklzTnVsbF0sXHJcbiAgW0ZpbHRlclR5cGUuSW5dIDogW0ZpbHRlclR5cGUuSW5dXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEZpbHRlclRvRmlsdGVyc01hcCA9IFBhcnRpYWw8e1trZXkgaW4gRmlsdGVyVHlwZV06IEZpbHRlclR5cGVbXX0+O1xyXG4iXX0=
@@ -1,10 +1,10 @@
1
- import { FilterType } from '../enums/filterTypes';
2
- import { isNull } from './null-filter-function';
3
- const booleanEqualsFunc = (filterInfo) => (val) => {
4
- return filterInfo.filterValue === val;
5
- };
6
- export const BooleanFilterFuncs = {
7
- [FilterType.BooleanEquals]: booleanEqualsFunc,
8
- [FilterType.IsNull]: isNull,
9
- };
1
+ import { FilterType } from '../enums/filterTypes';
2
+ import { isNull } from './null-filter-function';
3
+ const booleanEqualsFunc = (filterInfo) => (val) => {
4
+ return filterInfo.filterValue === val;
5
+ };
6
+ export const BooleanFilterFuncs = {
7
+ [FilterType.BooleanEquals]: booleanEqualsFunc,
8
+ [FilterType.IsNull]: isNull,
9
+ };
10
10
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1maWx0ZXItZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXV0aWxpdGllcy9zcmMvdGFibGUtYnVpbGRlci9mdW5jdGlvbnMvYm9vbGVhbi1maWx0ZXItZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVoRCxNQUFPLGlCQUFpQixHQUF5QixDQUFDLFVBQXFCLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFZLEVBQUU7SUFDMUYsT0FBTyxVQUFVLENBQUMsV0FBVyxLQUFLLEdBQUcsQ0FBQztBQUMxQyxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBb0M7SUFDOUQsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEVBQUUsaUJBQWlCO0lBQzdDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU07Q0FDL0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbHRlckZ1bmMsIEZpbHRlckluZm8gfSBmcm9tICcuLi9jbGFzc2VzL2ZpbHRlci1pbmZvJztcbmltcG9ydCB7IEZpbHRlclR5cGUgfSBmcm9tICcuLi9lbnVtcy9maWx0ZXJUeXBlcyc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9kaWN0aW9uYXJ5JztcbmltcG9ydCB7IGlzTnVsbCB9IGZyb20gJy4vbnVsbC1maWx0ZXItZnVuY3Rpb24nO1xuXG5jb25zdCAgYm9vbGVhbkVxdWFsc0Z1bmMgOiBGaWx0ZXJGdW5jPGJvb2xlYW4+ID0gKGZpbHRlckluZm86RmlsdGVySW5mbykgPT4gKHZhbCk6IGJvb2xlYW4gID0+IHtcbiAgICByZXR1cm4gZmlsdGVySW5mby5maWx0ZXJWYWx1ZSA9PT0gdmFsO1xufVxuXG5leHBvcnQgY29uc3QgQm9vbGVhbkZpbHRlckZ1bmNzOiBEaWN0aW9uYXJ5PEZpbHRlckZ1bmM8YW55LGFueT4+ID0ge1xuICAgICBbRmlsdGVyVHlwZS5Cb29sZWFuRXF1YWxzXTogYm9vbGVhbkVxdWFsc0Z1bmMsXG4gICAgIFtGaWx0ZXJUeXBlLklzTnVsbF06IGlzTnVsbCxcbn07XG4iXX0=