@ministryofjustice/hmpps-digital-prison-reporting-frontend 4.17.3 → 4.17.5

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 (560) hide show
  1. package/dpr/assets/app.js.map +1 -1
  2. package/dpr/components/_async/async-filters-form/sortByTemplate.js +1 -1
  3. package/dpr/components/_async/async-filters-form/sortByTemplate.js.map +1 -1
  4. package/dpr/components/_async/async-filters-form/types.d.js +1 -1
  5. package/dpr/components/_async/async-filters-form/types.d.js.map +1 -1
  6. package/dpr/components/_async/async-filters-form/utils.js +1 -1
  7. package/dpr/components/_async/async-filters-form/utils.js.map +2 -2
  8. package/dpr/components/_async/async-filters-form/utils.test.ts +9 -9
  9. package/dpr/components/_async/async-filters-form/utils.ts +1 -1
  10. package/dpr/components/_async/async-filters-form/view.njk +6 -3
  11. package/dpr/components/_catalogue/catalogue/types.js +1 -1
  12. package/dpr/components/_catalogue/catalogue/types.js.map +1 -1
  13. package/dpr/components/_catalogue/catalogue/utils.js +1 -1
  14. package/dpr/components/_catalogue/catalogue/utils.js.map +2 -2
  15. package/dpr/components/_catalogue/catalogue/utils.test.ts +6 -3
  16. package/dpr/components/_catalogue/catalogue/utils.ts +2 -2
  17. package/dpr/components/_catalogue/catalogue-list/utils.js +1 -1
  18. package/dpr/components/_catalogue/catalogue-list/utils.js.map +2 -2
  19. package/dpr/components/_catalogue/catalogue-list/utils.test.ts +1 -0
  20. package/dpr/components/_catalogue/catalogue-list/utils.ts +5 -5
  21. package/dpr/components/_charts/chart/Buckets.js +1 -1
  22. package/dpr/components/_charts/chart/Buckets.js.map +3 -3
  23. package/dpr/components/_charts/chart/Buckets.ts +3 -3
  24. package/dpr/components/_charts/chart/heatmap/HeatmapChart.js +1 -1
  25. package/dpr/components/_charts/chart/heatmap/HeatmapChart.js.map +3 -3
  26. package/dpr/components/_charts/chart/heatmap/HeatmapChart.ts +1 -13
  27. package/dpr/components/_charts/chart/heatmap/types.js +1 -1
  28. package/dpr/components/_charts/chart/heatmap/types.js.map +2 -2
  29. package/dpr/components/_charts/chart/heatmap/types.ts +1 -1
  30. package/dpr/components/_charts/utils.js +1 -1
  31. package/dpr/components/_charts/utils.js.map +3 -3
  32. package/dpr/components/_charts/utils.test.ts +1 -0
  33. package/dpr/components/_charts/utils.ts +84 -43
  34. package/dpr/components/_dashboards/dashboard-list/utils.js +1 -1
  35. package/dpr/components/_dashboards/dashboard-list/utils.js.map +2 -2
  36. package/dpr/components/_dashboards/dashboard-list/utils.test.ts +1 -0
  37. package/dpr/components/_dashboards/dashboard-list/utils.ts +16 -11
  38. package/dpr/components/_dashboards/dashboard-visualisation/DashboardVisualisation.js +1 -1
  39. package/dpr/components/_dashboards/dashboard-visualisation/DashboardVisualisation.js.map +2 -2
  40. package/dpr/components/_dashboards/dashboard-visualisation/DashboardVisualisation.ts +1 -1
  41. package/dpr/components/_dashboards/dashboard-visualisation/types.js +1 -1
  42. package/dpr/components/_dashboards/dashboard-visualisation/types.js.map +2 -2
  43. package/dpr/components/_dashboards/dashboard-visualisation/types.ts +8 -8
  44. package/dpr/components/_dashboards/scorecard/Scorecard.js +1 -1
  45. package/dpr/components/_dashboards/scorecard/Scorecard.js.map +2 -2
  46. package/dpr/components/_dashboards/scorecard/Scorecard.ts +8 -8
  47. package/dpr/components/_dashboards/scorecard/types.js +1 -1
  48. package/dpr/components/_dashboards/scorecard/types.js.map +2 -2
  49. package/dpr/components/_dashboards/scorecard/types.ts +12 -10
  50. package/dpr/components/_dashboards/scorecard/utils.js +1 -1
  51. package/dpr/components/_dashboards/scorecard/utils.js.map +1 -1
  52. package/dpr/components/_dashboards/scorecard/utils.test.ts +1 -0
  53. package/dpr/components/_filters/filter-input/enum.js +1 -1
  54. package/dpr/components/_filters/filter-input/enum.js.map +1 -1
  55. package/dpr/components/_filters/filter-input/filters.js +1 -1
  56. package/dpr/components/_filters/filter-input/filters.js.map +1 -1
  57. package/dpr/components/_filters/filter-input/filters.test.ts +1 -0
  58. package/dpr/components/_filters/filter-input/types.d.js +1 -1
  59. package/dpr/components/_filters/filter-input/types.d.js.map +1 -1
  60. package/dpr/components/_filters/filters-selected/utils.js +1 -1
  61. package/dpr/components/_filters/filters-selected/utils.js.map +3 -3
  62. package/dpr/components/_filters/filters-selected/utils.test.ts +7 -4
  63. package/dpr/components/_filters/filters-selected/utils.ts +1 -1
  64. package/dpr/components/_filters/filtersTypeEnum.js +1 -1
  65. package/dpr/components/_filters/filtersTypeEnum.js.map +1 -1
  66. package/dpr/components/_filters/types.d.js +1 -1
  67. package/dpr/components/_filters/types.d.js.map +2 -2
  68. package/dpr/components/_filters/types.d.ts +5 -5
  69. package/dpr/components/_filters/utils.js +1 -1
  70. package/dpr/components/_filters/utils.js.map +2 -2
  71. package/dpr/components/_filters/utils.test.ts +54 -49
  72. package/dpr/components/_filters/utils.ts +16 -20
  73. package/dpr/components/_inputs/date-input/utils.js +1 -1
  74. package/dpr/components/_inputs/date-input/utils.js.map +1 -1
  75. package/dpr/components/_inputs/date-input/utils.test.ts +1 -0
  76. package/dpr/components/_inputs/date-range/clientClass.mjs +2 -2
  77. package/dpr/components/_inputs/date-range/types.js +1 -1
  78. package/dpr/components/_inputs/date-range/types.js.map +2 -2
  79. package/dpr/components/_inputs/date-range/types.ts +2 -2
  80. package/dpr/components/_inputs/date-range/utils.js +1 -1
  81. package/dpr/components/_inputs/date-range/utils.js.map +2 -2
  82. package/dpr/components/_inputs/date-range/utils.test.ts +5 -7
  83. package/dpr/components/_inputs/date-range/utils.ts +4 -4
  84. package/dpr/components/_inputs/date-range/view.njk +1 -0
  85. package/dpr/components/_inputs/granular-date-range/types.js +1 -1
  86. package/dpr/components/_inputs/granular-date-range/types.js.map +1 -1
  87. package/dpr/components/_inputs/granular-date-range/utils.js +1 -1
  88. package/dpr/components/_inputs/granular-date-range/utils.js.map +1 -1
  89. package/dpr/components/_inputs/granular-date-range/utils.test.ts +1 -0
  90. package/dpr/components/_inputs/multi-select/utils.js +1 -1
  91. package/dpr/components/_inputs/multi-select/utils.js.map +3 -3
  92. package/dpr/components/_inputs/multi-select/utils.ts +1 -1
  93. package/dpr/components/_inputs/multi-select/utilt.test.ts +29 -14
  94. package/dpr/components/_inputs/start-end-date/utils.js +1 -1
  95. package/dpr/components/_inputs/start-end-date/utils.js.map +1 -1
  96. package/dpr/components/_inputs/start-end-date/utils.test.ts +1 -0
  97. package/dpr/components/_reports/report-actions/actionsTemplate.js +1 -1
  98. package/dpr/components/_reports/report-actions/actionsTemplate.js.map +1 -1
  99. package/dpr/components/_reports/report-actions/types.d.js +1 -1
  100. package/dpr/components/_reports/report-actions/types.d.js.map +2 -2
  101. package/dpr/components/_reports/report-actions/types.d.ts +1 -1
  102. package/dpr/components/_reports/report-actions/utils.js +1 -1
  103. package/dpr/components/_reports/report-actions/utils.js.map +1 -1
  104. package/dpr/components/_reports/report-actions/utils.test.ts +8 -4
  105. package/dpr/components/_reports/report-columns-form/types.d.js +1 -1
  106. package/dpr/components/_reports/report-columns-form/types.d.js.map +1 -1
  107. package/dpr/components/_reports/report-columns-form/utils.js +1 -1
  108. package/dpr/components/_reports/report-columns-form/utils.js.map +2 -2
  109. package/dpr/components/_reports/report-columns-form/utils.ts +1 -1
  110. package/dpr/components/_reports/report-data-table/types.d.js +1 -1
  111. package/dpr/components/_reports/report-data-table/types.d.js.map +1 -1
  112. package/dpr/components/_reports/report-data-table/utils.js +1 -1
  113. package/dpr/components/_reports/report-data-table/utils.js.map +3 -3
  114. package/dpr/components/_reports/report-data-table/utils.test.ts +15 -8
  115. package/dpr/components/_reports/report-data-table/utils.ts +20 -8
  116. package/dpr/components/_reports/report-pagination/types.d.js +1 -1
  117. package/dpr/components/_reports/report-pagination/types.d.js.map +2 -2
  118. package/dpr/components/_reports/report-pagination/types.d.ts +2 -2
  119. package/dpr/components/_reports/report-pagination/utils.js +1 -1
  120. package/dpr/components/_reports/report-pagination/utils.js.map +1 -1
  121. package/dpr/components/_reports/report-pagination/utils.test.ts +1 -0
  122. package/dpr/components/_reports/report-totals/utils.js +1 -1
  123. package/dpr/components/_reports/report-totals/utils.js.map +1 -1
  124. package/dpr/components/card-group/utils.js +1 -1
  125. package/dpr/components/card-group/utils.js.map +1 -1
  126. package/dpr/components/card-group/utils.test.ts +7 -0
  127. package/dpr/components/report-list/defaultTokenProvider.js +1 -1
  128. package/dpr/components/report-list/defaultTokenProvider.js.map +3 -3
  129. package/dpr/components/report-list/defaultTokenProvider.ts +3 -3
  130. package/dpr/components/report-list/types.d.js +1 -1
  131. package/dpr/components/report-list/types.d.js.map +1 -1
  132. package/dpr/components/report-list/utils.js +1 -1
  133. package/dpr/components/report-list/utils.js.map +2 -2
  134. package/dpr/components/report-list/utils.test.ts +6 -4
  135. package/dpr/components/report-list/utils.ts +5 -5
  136. package/dpr/components/show-more/utils.js +1 -1
  137. package/dpr/components/show-more/utils.js.map +1 -1
  138. package/dpr/components/user-reports/bookmarks/utils.js +1 -1
  139. package/dpr/components/user-reports/bookmarks/utils.js.map +3 -3
  140. package/dpr/components/user-reports/bookmarks/utils.test.ts +14 -11
  141. package/dpr/components/user-reports/bookmarks/utils.ts +26 -31
  142. package/dpr/components/user-reports/requested/utils.js +1 -1
  143. package/dpr/components/user-reports/requested/utils.js.map +3 -3
  144. package/dpr/components/user-reports/requested/utils.test.ts +4 -3
  145. package/dpr/components/user-reports/requested/utils.ts +4 -3
  146. package/dpr/components/user-reports/types.d.js +1 -1
  147. package/dpr/components/user-reports/types.d.js.map +2 -2
  148. package/dpr/components/user-reports/types.d.ts +1 -1
  149. package/dpr/components/user-reports/utils.js +1 -1
  150. package/dpr/components/user-reports/utils.js.map +3 -3
  151. package/dpr/components/user-reports/utils.test.ts +48 -47
  152. package/dpr/components/user-reports/utils.ts +51 -57
  153. package/dpr/components/user-reports/viewed/utils.js +1 -1
  154. package/dpr/components/user-reports/viewed/utils.js.map +2 -2
  155. package/dpr/components/user-reports/viewed/utils.ts +5 -4
  156. package/dpr/data/agentConfig.js +1 -1
  157. package/dpr/data/agentConfig.js.map +1 -1
  158. package/dpr/data/dashboardClient.js +1 -1
  159. package/dpr/data/dashboardClient.js.map +2 -2
  160. package/dpr/data/dashboardClient.ts +2 -2
  161. package/dpr/data/dprReportingClient.js +1 -1
  162. package/dpr/data/dprReportingClient.js.map +3 -3
  163. package/dpr/data/dprReportingClient.ts +3 -3
  164. package/dpr/data/missingReportClient.js +2 -0
  165. package/dpr/data/missingReportClient.js.map +7 -0
  166. package/dpr/{services/missingReport → data}/missingReportClient.ts +4 -4
  167. package/dpr/data/productCollectionClient.js +2 -0
  168. package/dpr/data/productCollectionClient.js.map +7 -0
  169. package/dpr/data/productCollectionClient.ts +28 -0
  170. package/dpr/data/reportDataStore.js +1 -1
  171. package/dpr/data/reportDataStore.js.map +1 -1
  172. package/dpr/data/reportingClient.js +1 -1
  173. package/dpr/data/reportingClient.js.map +3 -3
  174. package/dpr/data/reportingClient.ts +7 -9
  175. package/dpr/data/restClient.js +1 -1
  176. package/dpr/data/restClient.js.map +2 -2
  177. package/dpr/data/restClient.ts +5 -5
  178. package/dpr/data/types.d.js +1 -1
  179. package/dpr/data/types.d.js.map +2 -2
  180. package/dpr/data/types.d.ts +1 -1
  181. package/dpr/middleware/reportAuthoriser.js +1 -1
  182. package/dpr/middleware/reportAuthoriser.js.map +2 -2
  183. package/dpr/middleware/reportAuthoriser.ts +2 -2
  184. package/dpr/middleware/setUpDprResources.js +1 -1
  185. package/dpr/middleware/setUpDprResources.js.map +2 -2
  186. package/dpr/middleware/setUpDprResources.test.ts +59 -20
  187. package/dpr/middleware/setUpDprResources.ts +30 -29
  188. package/dpr/middleware/setUpNestedRoute.js +1 -1
  189. package/dpr/middleware/setUpNestedRoute.js.map +2 -2
  190. package/dpr/middleware/setUpNestedRoute.ts +1 -1
  191. package/dpr/routes/index.js +1 -1
  192. package/dpr/routes/index.js.map +2 -2
  193. package/dpr/routes/index.ts +1 -2
  194. package/dpr/routes/journeys/download-report/controller.js +1 -1
  195. package/dpr/routes/journeys/download-report/controller.js.map +3 -3
  196. package/dpr/routes/journeys/download-report/controller.ts +7 -6
  197. package/dpr/routes/journeys/download-report/request-download/form/controller.js +1 -1
  198. package/dpr/routes/journeys/download-report/request-download/form/controller.js.map +3 -3
  199. package/dpr/routes/journeys/download-report/request-download/form/controller.ts +1 -1
  200. package/dpr/routes/journeys/download-report/request-download/form/routes.js +1 -1
  201. package/dpr/routes/journeys/download-report/request-download/form/routes.js.map +1 -1
  202. package/dpr/routes/journeys/download-report/request-download/form/submitted/controller.js +1 -1
  203. package/dpr/routes/journeys/download-report/request-download/form/submitted/controller.js.map +3 -3
  204. package/dpr/routes/journeys/download-report/request-download/form/submitted/controller.ts +1 -1
  205. package/dpr/routes/journeys/download-report/request-download/form/submitted/routes.js +1 -1
  206. package/dpr/routes/journeys/download-report/request-download/form/submitted/routes.js.map +1 -1
  207. package/dpr/routes/journeys/download-report/request-download/form/submitted/tests.cy.js +1 -1
  208. package/dpr/routes/journeys/download-report/request-download/form/submitted/tests.cy.js.map +1 -1
  209. package/dpr/routes/journeys/download-report/request-download/form/tests.cy.js +1 -1
  210. package/dpr/routes/journeys/download-report/request-download/form/tests.cy.js.map +1 -1
  211. package/dpr/routes/journeys/download-report/request-download/routes.js +1 -1
  212. package/dpr/routes/journeys/download-report/request-download/routes.js.map +1 -1
  213. package/dpr/routes/journeys/download-report/request-download/service.js +1 -1
  214. package/dpr/routes/journeys/download-report/request-download/service.js.map +3 -3
  215. package/dpr/routes/journeys/download-report/request-download/service.ts +20 -8
  216. package/dpr/routes/journeys/download-report/routes.js +1 -1
  217. package/dpr/routes/journeys/download-report/routes.js.map +3 -3
  218. package/dpr/routes/journeys/download-report/routes.ts +1 -4
  219. package/dpr/routes/journeys/download-report/tests.cy.js +1 -1
  220. package/dpr/routes/journeys/download-report/tests.cy.js.map +2 -2
  221. package/dpr/routes/journeys/download-report/tests.cy.ts +4 -1
  222. package/dpr/routes/journeys/download-report/utils.js +1 -1
  223. package/dpr/routes/journeys/download-report/utils.js.map +2 -2
  224. package/dpr/routes/journeys/download-report/utils.ts +2 -4
  225. package/dpr/routes/journeys/my-reports/bookmarks/controller.js +1 -1
  226. package/dpr/routes/journeys/my-reports/bookmarks/controller.js.map +1 -1
  227. package/dpr/routes/journeys/my-reports/bookmarks/list/controller.js +1 -1
  228. package/dpr/routes/journeys/my-reports/bookmarks/list/controller.js.map +3 -3
  229. package/dpr/routes/journeys/my-reports/bookmarks/list/controller.ts +2 -2
  230. package/dpr/routes/journeys/my-reports/bookmarks/list/routes.js +1 -1
  231. package/dpr/routes/journeys/my-reports/bookmarks/list/routes.js.map +1 -1
  232. package/dpr/routes/journeys/my-reports/bookmarks/list/tests.cy.js +1 -1
  233. package/dpr/routes/journeys/my-reports/bookmarks/list/tests.cy.js.map +2 -2
  234. package/dpr/routes/journeys/my-reports/bookmarks/list/tests.cy.ts +1 -2
  235. package/dpr/routes/journeys/my-reports/bookmarks/routes.js +1 -1
  236. package/dpr/routes/journeys/my-reports/bookmarks/routes.js.map +1 -1
  237. package/dpr/routes/journeys/my-reports/bookmarks/service.js +3 -3
  238. package/dpr/routes/journeys/my-reports/bookmarks/service.js.map +3 -3
  239. package/dpr/routes/journeys/my-reports/bookmarks/service.ts +31 -18
  240. package/dpr/routes/journeys/my-reports/bookmarks/tests.cy.js +1 -1
  241. package/dpr/routes/journeys/my-reports/bookmarks/tests.cy.js.map +2 -2
  242. package/dpr/routes/journeys/my-reports/bookmarks/tests.cy.ts +26 -26
  243. package/dpr/routes/journeys/my-reports/bookmarks/utils.js +1 -1
  244. package/dpr/routes/journeys/my-reports/bookmarks/utils.js.map +3 -3
  245. package/dpr/routes/journeys/my-reports/bookmarks/utils.ts +10 -11
  246. package/dpr/routes/journeys/my-reports/recently-viewed/controller.js +1 -1
  247. package/dpr/routes/journeys/my-reports/recently-viewed/controller.js.map +1 -1
  248. package/dpr/routes/journeys/my-reports/recently-viewed/list/controller.js +1 -1
  249. package/dpr/routes/journeys/my-reports/recently-viewed/list/controller.js.map +3 -3
  250. package/dpr/routes/journeys/my-reports/recently-viewed/list/controller.ts +1 -1
  251. package/dpr/routes/journeys/my-reports/recently-viewed/list/routes.js +1 -1
  252. package/dpr/routes/journeys/my-reports/recently-viewed/list/routes.js.map +1 -1
  253. package/dpr/routes/journeys/my-reports/recently-viewed/list/tests.cy.js +1 -1
  254. package/dpr/routes/journeys/my-reports/recently-viewed/list/tests.cy.js.map +2 -2
  255. package/dpr/routes/journeys/my-reports/recently-viewed/list/tests.cy.ts +7 -4
  256. package/dpr/routes/journeys/my-reports/recently-viewed/routes.js +1 -1
  257. package/dpr/routes/journeys/my-reports/recently-viewed/routes.js.map +1 -1
  258. package/dpr/routes/journeys/my-reports/recently-viewed/service.js +1 -1
  259. package/dpr/routes/journeys/my-reports/recently-viewed/service.js.map +3 -3
  260. package/dpr/routes/journeys/my-reports/recently-viewed/service.ts +0 -2
  261. package/dpr/routes/journeys/my-reports/requested-reports/controller.js +1 -1
  262. package/dpr/routes/journeys/my-reports/requested-reports/controller.js.map +1 -1
  263. package/dpr/routes/journeys/my-reports/requested-reports/list/controller.js +1 -1
  264. package/dpr/routes/journeys/my-reports/requested-reports/list/controller.js.map +3 -3
  265. package/dpr/routes/journeys/my-reports/requested-reports/list/controller.ts +1 -1
  266. package/dpr/routes/journeys/my-reports/requested-reports/list/routes.js +1 -1
  267. package/dpr/routes/journeys/my-reports/requested-reports/list/routes.js.map +1 -1
  268. package/dpr/routes/journeys/my-reports/requested-reports/list/tests.cy.js +1 -1
  269. package/dpr/routes/journeys/my-reports/requested-reports/list/tests.cy.js.map +1 -1
  270. package/dpr/routes/journeys/my-reports/requested-reports/routes.js +1 -1
  271. package/dpr/routes/journeys/my-reports/requested-reports/routes.js.map +1 -1
  272. package/dpr/routes/journeys/my-reports/requested-reports/service.js +1 -1
  273. package/dpr/routes/journeys/my-reports/requested-reports/service.js.map +3 -3
  274. package/dpr/routes/journeys/my-reports/requested-reports/service.ts +25 -17
  275. package/dpr/routes/journeys/my-reports/routes.js +1 -1
  276. package/dpr/routes/journeys/my-reports/routes.js.map +3 -3
  277. package/dpr/routes/journeys/my-reports/routes.ts +0 -3
  278. package/dpr/routes/journeys/product-collection/routes.js +1 -1
  279. package/dpr/routes/journeys/product-collection/routes.js.map +1 -1
  280. package/dpr/routes/journeys/product-collection/selected/controller.js +1 -1
  281. package/dpr/routes/journeys/product-collection/selected/controller.js.map +1 -1
  282. package/dpr/routes/journeys/product-collection/selected/routes.js +1 -1
  283. package/dpr/routes/journeys/product-collection/selected/routes.js.map +1 -1
  284. package/dpr/routes/journeys/product-collection/selected/tests.cy.js +1 -1
  285. package/dpr/routes/journeys/product-collection/selected/tests.cy.js.map +2 -2
  286. package/dpr/routes/journeys/product-collection/selected/tests.cy.ts +6 -4
  287. package/dpr/routes/journeys/product-collection/selected/validation.js +1 -1
  288. package/dpr/routes/journeys/product-collection/selected/validation.js.map +1 -1
  289. package/dpr/routes/journeys/request-missing-report/form/controller.js +1 -1
  290. package/dpr/routes/journeys/request-missing-report/form/controller.js.map +3 -3
  291. package/dpr/routes/journeys/request-missing-report/form/controller.ts +21 -19
  292. package/dpr/routes/journeys/request-missing-report/form/routes.js +1 -1
  293. package/dpr/routes/journeys/request-missing-report/form/routes.js.map +1 -1
  294. package/dpr/routes/journeys/request-missing-report/form/tests.cy.js +1 -1
  295. package/dpr/routes/journeys/request-missing-report/form/tests.cy.js.map +1 -1
  296. package/dpr/routes/journeys/request-missing-report/form/validation.js +1 -1
  297. package/dpr/routes/journeys/request-missing-report/form/validation.js.map +1 -1
  298. package/dpr/routes/journeys/request-missing-report/routes.js +1 -1
  299. package/dpr/routes/journeys/request-missing-report/routes.js.map +1 -1
  300. package/dpr/routes/journeys/request-missing-report/submitted/controller.js +1 -1
  301. package/dpr/routes/journeys/request-missing-report/submitted/controller.js.map +1 -1
  302. package/dpr/routes/journeys/request-missing-report/submitted/routes.js +1 -1
  303. package/dpr/routes/journeys/request-missing-report/submitted/routes.js.map +1 -1
  304. package/dpr/routes/journeys/request-missing-report/submitted/tests.cy.js +1 -1
  305. package/dpr/routes/journeys/request-missing-report/submitted/tests.cy.js.map +1 -1
  306. package/dpr/routes/journeys/request-missing-report/tests.cy.js +1 -1
  307. package/dpr/routes/journeys/request-missing-report/tests.cy.js.map +2 -2
  308. package/dpr/routes/journeys/request-missing-report/tests.cy.ts +1 -1
  309. package/dpr/routes/journeys/request-report/controller.js +1 -1
  310. package/dpr/routes/journeys/request-report/controller.js.map +3 -3
  311. package/dpr/routes/journeys/request-report/controller.ts +1 -1
  312. package/dpr/routes/journeys/request-report/filters/controller.js +1 -1
  313. package/dpr/routes/journeys/request-report/filters/controller.js.map +3 -3
  314. package/dpr/routes/journeys/request-report/filters/controller.ts +7 -8
  315. package/dpr/routes/journeys/request-report/filters/routes.js +1 -1
  316. package/dpr/routes/journeys/request-report/filters/routes.js.map +1 -1
  317. package/dpr/routes/journeys/request-report/filters/tests.cy.js +1 -1
  318. package/dpr/routes/journeys/request-report/filters/tests.cy.js.map +1 -1
  319. package/dpr/routes/journeys/request-report/filters/utils.js +1 -1
  320. package/dpr/routes/journeys/request-report/filters/utils.js.map +3 -3
  321. package/dpr/routes/journeys/request-report/filters/utils.ts +38 -23
  322. package/dpr/routes/journeys/request-report/filters/view.njk +2 -1
  323. package/dpr/routes/journeys/request-report/routes.js +1 -1
  324. package/dpr/routes/journeys/request-report/routes.js.map +2 -2
  325. package/dpr/routes/journeys/request-report/routes.ts +2 -2
  326. package/dpr/routes/journeys/request-report/status/controller.js +1 -1
  327. package/dpr/routes/journeys/request-report/status/controller.js.map +3 -3
  328. package/dpr/routes/journeys/request-report/status/controller.ts +4 -4
  329. package/dpr/routes/journeys/request-report/status/routes.js +1 -1
  330. package/dpr/routes/journeys/request-report/status/routes.js.map +1 -1
  331. package/dpr/routes/journeys/request-report/status/tests.cy.js +1 -1
  332. package/dpr/routes/journeys/request-report/status/tests.cy.js.map +2 -2
  333. package/dpr/routes/journeys/request-report/status/tests.cy.ts +9 -4
  334. package/dpr/routes/journeys/request-report/status/utils.js +1 -1
  335. package/dpr/routes/journeys/request-report/status/utils.js.map +3 -3
  336. package/dpr/routes/journeys/request-report/status/utils.ts +10 -13
  337. package/dpr/routes/journeys/request-report/tests.cy.js +1 -1
  338. package/dpr/routes/journeys/request-report/tests.cy.js.map +2 -2
  339. package/dpr/routes/journeys/request-report/tests.cy.ts +14 -11
  340. package/dpr/routes/journeys/routes.js +1 -1
  341. package/dpr/routes/journeys/routes.js.map +1 -1
  342. package/dpr/routes/journeys/view-report/async/controller.js +1 -1
  343. package/dpr/routes/journeys/view-report/async/controller.js.map +3 -3
  344. package/dpr/routes/journeys/view-report/async/controller.ts +4 -4
  345. package/dpr/routes/journeys/view-report/async/dashboard/controller.js +1 -1
  346. package/dpr/routes/journeys/view-report/async/dashboard/controller.js.map +3 -3
  347. package/dpr/routes/journeys/view-report/async/dashboard/controller.ts +4 -4
  348. package/dpr/routes/journeys/view-report/async/dashboard/routes.js +1 -1
  349. package/dpr/routes/journeys/view-report/async/dashboard/routes.js.map +1 -1
  350. package/dpr/routes/journeys/view-report/async/dashboard/tests.cy.js +1 -1
  351. package/dpr/routes/journeys/view-report/async/dashboard/tests.cy.js.map +2 -2
  352. package/dpr/routes/journeys/view-report/async/dashboard/tests.cy.ts +2 -2
  353. package/dpr/routes/journeys/view-report/async/dashboard/utils.js +1 -1
  354. package/dpr/routes/journeys/view-report/async/dashboard/utils.js.map +3 -3
  355. package/dpr/routes/journeys/view-report/async/dashboard/utils.ts +6 -8
  356. package/dpr/routes/journeys/view-report/async/report/controller.js +1 -1
  357. package/dpr/routes/journeys/view-report/async/report/controller.js.map +3 -3
  358. package/dpr/routes/journeys/view-report/async/report/controller.ts +5 -5
  359. package/dpr/routes/journeys/view-report/async/report/routes.js +1 -1
  360. package/dpr/routes/journeys/view-report/async/report/routes.js.map +1 -1
  361. package/dpr/routes/journeys/view-report/async/report/tests.cy.js +1 -1
  362. package/dpr/routes/journeys/view-report/async/report/tests.cy.js.map +2 -2
  363. package/dpr/routes/journeys/view-report/async/report/tests.cy.ts +9 -7
  364. package/dpr/routes/journeys/view-report/async/report/types.js +1 -1
  365. package/dpr/routes/journeys/view-report/async/report/types.js.map +2 -2
  366. package/dpr/routes/journeys/view-report/async/report/types.ts +8 -8
  367. package/dpr/routes/journeys/view-report/async/report/utils.js +1 -1
  368. package/dpr/routes/journeys/view-report/async/report/utils.js.map +2 -2
  369. package/dpr/routes/journeys/view-report/async/report/utils.ts +16 -18
  370. package/dpr/routes/journeys/view-report/async/routes.js +1 -1
  371. package/dpr/routes/journeys/view-report/async/routes.js.map +1 -1
  372. package/dpr/routes/journeys/view-report/controller.js +1 -1
  373. package/dpr/routes/journeys/view-report/controller.js.map +3 -3
  374. package/dpr/routes/journeys/view-report/controller.ts +1 -1
  375. package/dpr/routes/journeys/view-report/routes.js +1 -1
  376. package/dpr/routes/journeys/view-report/routes.js.map +2 -2
  377. package/dpr/routes/journeys/view-report/routes.ts +6 -3
  378. package/dpr/routes/journeys/view-report/sync/load-report/controller.js +1 -1
  379. package/dpr/routes/journeys/view-report/sync/load-report/controller.js.map +2 -2
  380. package/dpr/routes/journeys/view-report/sync/load-report/controller.ts +1 -1
  381. package/dpr/routes/journeys/view-report/sync/load-report/routes.js +1 -1
  382. package/dpr/routes/journeys/view-report/sync/load-report/routes.js.map +1 -1
  383. package/dpr/routes/journeys/view-report/sync/report/controller.js +1 -1
  384. package/dpr/routes/journeys/view-report/sync/report/controller.js.map +3 -3
  385. package/dpr/routes/journeys/view-report/sync/report/controller.ts +6 -6
  386. package/dpr/routes/journeys/view-report/sync/report/routes.js +1 -1
  387. package/dpr/routes/journeys/view-report/sync/report/routes.js.map +1 -1
  388. package/dpr/routes/journeys/view-report/sync/report/utils.js +1 -1
  389. package/dpr/routes/journeys/view-report/sync/report/utils.js.map +3 -3
  390. package/dpr/routes/journeys/view-report/sync/report/utils.ts +29 -19
  391. package/dpr/routes/journeys/view-report/sync/routes.js +1 -1
  392. package/dpr/routes/journeys/view-report/sync/routes.js.map +1 -1
  393. package/dpr/routes/journeys/view-report/sync/tests.cy.js +1 -1
  394. package/dpr/routes/journeys/view-report/sync/tests.cy.js.map +2 -2
  395. package/dpr/routes/journeys/view-report/sync/tests.cy.ts +1 -1
  396. package/dpr/routes/journeys/view-report/utils.js +1 -1
  397. package/dpr/routes/journeys/view-report/utils.js.map +3 -3
  398. package/dpr/routes/journeys/view-report/utils.ts +22 -12
  399. package/dpr/services/dashboardService.js +1 -1
  400. package/dpr/services/dashboardService.js.map +3 -3
  401. package/dpr/services/dashboardService.ts +1 -3
  402. package/dpr/services/defaultFilterValuesService.js +1 -1
  403. package/dpr/services/defaultFilterValuesService.js.map +3 -3
  404. package/dpr/services/defaultFilterValuesService.ts +34 -15
  405. package/dpr/services/index.js +1 -1
  406. package/dpr/services/index.js.map +1 -1
  407. package/dpr/services/missingReport/missingReportService.js +2 -0
  408. package/dpr/services/missingReport/missingReportService.js.map +7 -0
  409. package/dpr/services/missingReport/missingReportService.ts +26 -0
  410. package/dpr/services/productCollection/productCollectionService.js +1 -1
  411. package/dpr/services/productCollection/productCollectionService.js.map +3 -3
  412. package/dpr/services/productCollection/productCollectionService.ts +19 -14
  413. package/dpr/services/productCollection/productCollectionStoreService.js +1 -1
  414. package/dpr/services/productCollection/productCollectionStoreService.js.map +3 -3
  415. package/dpr/services/productCollection/productCollectionStoreService.ts +9 -3
  416. package/dpr/services/reportStoreService.js +1 -1
  417. package/dpr/services/reportStoreService.js.map +2 -2
  418. package/dpr/services/reportStoreService.ts +1 -1
  419. package/dpr/services/reportingService.js +1 -1
  420. package/dpr/services/reportingService.js.map +3 -3
  421. package/dpr/services/reportingService.ts +1 -3
  422. package/dpr/setUpNunjucksFilters.js +1 -1
  423. package/dpr/setUpNunjucksFilters.js.map +1 -1
  424. package/dpr/types/AsyncReportUtils.js +1 -1
  425. package/dpr/types/AsyncReportUtils.js.map +2 -2
  426. package/dpr/types/AsyncReportUtils.ts +2 -1
  427. package/dpr/types/Bookmark.js +1 -1
  428. package/dpr/types/Bookmark.js.map +2 -2
  429. package/dpr/types/Bookmark.ts +9 -3
  430. package/dpr/types/Charts.js +1 -1
  431. package/dpr/types/Charts.js.map +1 -1
  432. package/dpr/types/Download.js +1 -1
  433. package/dpr/types/Download.js.map +1 -1
  434. package/dpr/types/DprConfig.js +1 -1
  435. package/dpr/types/DprConfig.js.map +2 -2
  436. package/dpr/types/DprConfig.ts +8 -0
  437. package/dpr/types/DprUser.js +1 -1
  438. package/dpr/types/DprUser.js.map +2 -2
  439. package/dpr/types/DprUser.ts +2 -2
  440. package/dpr/types/EmbeddedReportUtils.js +1 -1
  441. package/dpr/types/EmbeddedReportUtils.js.map +1 -1
  442. package/dpr/types/ExecutionData.d.js +1 -1
  443. package/dpr/types/ExecutionData.d.js.map +2 -2
  444. package/dpr/types/ExecutionData.d.ts +2 -2
  445. package/dpr/types/Metrics.js +1 -1
  446. package/dpr/types/Metrics.js.map +2 -2
  447. package/dpr/types/Metrics.ts +1 -1
  448. package/dpr/types/ReportQuery.js +1 -1
  449. package/dpr/types/ReportQuery.js.map +2 -2
  450. package/dpr/types/ReportQuery.ts +15 -11
  451. package/dpr/types/ReportStore.js +1 -1
  452. package/dpr/types/ReportStore.js.map +1 -1
  453. package/dpr/types/Services.d.js +1 -1
  454. package/dpr/types/Services.d.js.map +2 -2
  455. package/dpr/types/Services.d.ts +8 -8
  456. package/dpr/types/Templates.d.js +1 -1
  457. package/dpr/types/Templates.d.js.map +1 -1
  458. package/dpr/types/UserReports.js +1 -1
  459. package/dpr/types/UserReports.js.map +2 -2
  460. package/dpr/types/UserReports.ts +29 -15
  461. package/dpr/types/api.d.js +1 -1
  462. package/dpr/types/api.d.js.map +1 -1
  463. package/dpr/types/index.d.js +1 -1
  464. package/dpr/types/index.d.js.map +2 -2
  465. package/dpr/types/index.d.ts +1 -1
  466. package/dpr/utils/CollatedSummaryBuilder/CollatedSummaryBuilder.js +1 -1
  467. package/dpr/utils/CollatedSummaryBuilder/CollatedSummaryBuilder.js.map +1 -1
  468. package/dpr/utils/CollatedSummaryBuilder/CollatedSummaryBuilder.test.ts +2 -0
  469. package/dpr/utils/CreateDprServices.js +2 -0
  470. package/dpr/utils/CreateDprServices.js.map +7 -0
  471. package/dpr/utils/CreateDprServices.ts +73 -0
  472. package/dpr/utils/DataTableBuilder/DataTableBuilder.js +1 -1
  473. package/dpr/utils/DataTableBuilder/DataTableBuilder.js.map +1 -1
  474. package/dpr/utils/DataTableBuilder/DataTableBuilder.test.ts +10 -0
  475. package/dpr/utils/DataTableBuilder/types.d.js +1 -1
  476. package/dpr/utils/DataTableBuilder/types.d.js.map +2 -2
  477. package/dpr/utils/DataTableBuilder/types.d.ts +3 -3
  478. package/dpr/utils/DateMapper/DateMapper.js +1 -1
  479. package/dpr/utils/DateMapper/DateMapper.js.map +2 -2
  480. package/dpr/utils/DateMapper/DateMapper.test.ts +22 -9
  481. package/dpr/utils/DateMapper/DateMapper.ts +9 -11
  482. package/dpr/utils/DateMapper/types.d.js +1 -1
  483. package/dpr/utils/DateMapper/types.d.js.map +1 -1
  484. package/dpr/utils/ErrorHandler.js +2 -0
  485. package/dpr/utils/ErrorHandler.js.map +7 -0
  486. package/dpr/utils/ErrorHandler.ts +85 -0
  487. package/dpr/utils/ParentChildDataTableBuilder/ParentChildDataTableBuilder.js +1 -1
  488. package/dpr/utils/ParentChildDataTableBuilder/ParentChildDataTableBuilder.js.map +2 -2
  489. package/dpr/utils/ParentChildDataTableBuilder/ParentChildDataTableBuilder.test.ts +13 -2
  490. package/dpr/utils/ParentChildDataTableBuilder/ParentChildDataTableBuilder.ts +3 -3
  491. package/dpr/utils/ParentChildDataTableBuilder/types.d.js +1 -1
  492. package/dpr/utils/ParentChildDataTableBuilder/types.d.js.map +1 -1
  493. package/dpr/utils/Personalisation/personalisationUtils.js +1 -1
  494. package/dpr/utils/Personalisation/personalisationUtils.js.map +3 -3
  495. package/dpr/utils/Personalisation/personalisationUtils.ts +6 -2
  496. package/dpr/utils/Personalisation/types.d.js +1 -1
  497. package/dpr/utils/Personalisation/types.d.js.map +1 -1
  498. package/dpr/utils/SectionedDataTableBuilder/SectionedDataTableBuilder.js +1 -1
  499. package/dpr/utils/SectionedDataTableBuilder/SectionedDataTableBuilder.js.map +2 -2
  500. package/dpr/utils/SectionedDataTableBuilder/SectionedDataTableBuilder.test.ts +5 -0
  501. package/dpr/utils/SectionedDataTableBuilder/SectionedDataTableBuilder.ts +1 -1
  502. package/dpr/utils/SectionedDataTableBuilder/types.d.js +1 -1
  503. package/dpr/utils/SectionedDataTableBuilder/types.d.js.map +1 -1
  504. package/dpr/utils/SectionedFieldsTableBuilder/SectionedFieldsTableBuilder.js +1 -1
  505. package/dpr/utils/SectionedFieldsTableBuilder/SectionedFieldsTableBuilder.js.map +2 -2
  506. package/dpr/utils/SectionedFieldsTableBuilder/SectionedFieldsTableBuilder.test.ts +7 -4
  507. package/dpr/utils/SectionedFieldsTableBuilder/SectionedFieldsTableBuilder.ts +3 -3
  508. package/dpr/utils/SummaryDataTableBuilder/SummaryDataTableBuilder.js +1 -1
  509. package/dpr/utils/SummaryDataTableBuilder/SummaryDataTableBuilder.js.map +1 -1
  510. package/dpr/utils/SummaryDataTableBuilder/SummaryDataTableBuilder.test.ts +1 -0
  511. package/dpr/utils/UserStoreItemBuilder.js +1 -1
  512. package/dpr/utils/UserStoreItemBuilder.js.map +2 -2
  513. package/dpr/utils/UserStoreItemBuilder.ts +19 -32
  514. package/dpr/utils/arrayUtils.js +1 -1
  515. package/dpr/utils/arrayUtils.js.map +1 -1
  516. package/dpr/utils/datasetHelper.js +1 -1
  517. package/dpr/utils/datasetHelper.js.map +2 -2
  518. package/dpr/utils/datasetHelper.test.ts +21 -33
  519. package/dpr/utils/datasetHelper.ts +12 -17
  520. package/dpr/utils/definitionUtils.js +1 -1
  521. package/dpr/utils/definitionUtils.js.map +3 -3
  522. package/dpr/utils/definitionUtils.ts +14 -3
  523. package/dpr/utils/index.js +1 -1
  524. package/dpr/utils/index.js.map +1 -1
  525. package/dpr/utils/indexedAccesHelper.js +2 -0
  526. package/dpr/utils/indexedAccesHelper.js.map +7 -0
  527. package/dpr/utils/indexedAccesHelper.ts +24 -0
  528. package/dpr/utils/localsHelper.js +1 -1
  529. package/dpr/utils/localsHelper.js.map +2 -2
  530. package/dpr/utils/localsHelper.ts +8 -8
  531. package/dpr/utils/logger.js +1 -1
  532. package/dpr/utils/logger.js.map +2 -2
  533. package/dpr/utils/logger.ts +1 -1
  534. package/dpr/utils/reportListsHelper.js +1 -1
  535. package/dpr/utils/reportListsHelper.js.map +1 -1
  536. package/dpr/utils/reportStoreHelper.js +1 -1
  537. package/dpr/utils/reportStoreHelper.js.map +1 -1
  538. package/dpr/utils/reportStoreHelper.test.ts +3 -2
  539. package/dpr/utils/requestStatusHelper.js +1 -1
  540. package/dpr/utils/requestStatusHelper.js.map +3 -3
  541. package/dpr/utils/requestStatusHelper.ts +29 -42
  542. package/dpr/utils/sanitisedError.js +1 -1
  543. package/dpr/utils/sanitisedError.js.map +2 -2
  544. package/dpr/utils/sanitisedError.ts +1 -1
  545. package/dpr/utils/urlHelper.js +1 -1
  546. package/dpr/utils/urlHelper.js.map +2 -2
  547. package/dpr/utils/urlHelper.ts +4 -4
  548. package/dpr/validation/validate.js +1 -1
  549. package/dpr/validation/validate.js.map +2 -2
  550. package/dpr/validation/validate.ts +2 -2
  551. package/package.json +4 -2
  552. package/dpr/components/error-summary/utils.js +0 -2
  553. package/dpr/components/error-summary/utils.js.map +0 -7
  554. package/dpr/components/error-summary/utils.test.ts +0 -54
  555. package/dpr/components/error-summary/utils.ts +0 -65
  556. package/dpr/services/missingReport/missingReportClient.js +0 -2
  557. package/dpr/services/missingReport/missingReportClient.js.map +0 -7
  558. package/dpr/utils/ReportStoreServiceUtils.js +0 -2
  559. package/dpr/utils/ReportStoreServiceUtils.js.map +0 -7
  560. package/dpr/utils/ReportStoreServiceUtils.ts +0 -140
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dpr/utils/datasetHelper.ts"],
4
- "sourcesContent": ["import { DashboardDataResponse } from '../types/Metrics'\nimport { components } from '../types/api'\n\nexport const getDatasetRows = (\n listDefinition: components['schemas']['DashboardVisualisationDefinition'],\n dashboardData: DashboardDataResponse[],\n) => {\n const { measures, filters, expectNulls } = listDefinition.columns\n const keys = <Array<components['schemas']['DashboardVisualisationColumnDefinition'] & { optional: boolean }>>(\n listDefinition.columns.keys\n )\n\n const displayColumnsIds = measures.map((col) => col.id)\n const keyColumnsIds = keys?.map((col) => col.id) || []\n const filterColIds = filters?.map((col) => col.id) || []\n const hasOptionalKeys = keys?.some((key) => key.optional)\n\n if (dashboardData.length && dashboardData[0].ts) keyColumnsIds.unshift('ts')\n\n const filtered = dashboardData.filter((datasetRow: DashboardDataResponse) => {\n const validRow: boolean[] = []\n\n Object.keys(datasetRow).forEach((datasetField) => {\n const value = datasetRow[datasetField].raw\n // All rows are valid until proven otherwise\n let valid = true\n\n // 1. check if the column value is equal to a defined column value\n if (filterColIds.includes(datasetField)) {\n const filterValues = filters ? filters.filter((f) => f.id === datasetField).map((f) => f.equals) : []\n valid = filterValues.includes(<string>value)\n\n // 3. check keys exist in the defined columns\n } else if (keyColumnsIds.includes(datasetField) && hasOptionalKeys) {\n valid = true\n\n // 3. check keys exist in the defined columns\n } else if (keyColumnsIds.includes(datasetField) && !hasOptionalKeys) {\n valid = value !== '' && value !== undefined && value !== null\n\n // 2. check values exist in the defined columns\n } else if (displayColumnsIds.includes(datasetField)) {\n valid = value !== '' && value !== undefined && value !== null\n\n // 3. check that all remaining columns are null.\n } else if (expectNulls) {\n valid = value === '' || value === undefined || value === null\n }\n\n validRow.push(valid)\n })\n\n return validRow.every((val) => val)\n })\n\n if (hasOptionalKeys) {\n return filterKeys(filtered, keys || [])\n }\n\n return filtered\n}\n\nexport const getKeyVariations = (\n dashboardData: DashboardDataResponse[],\n keys: Array<components['schemas']['DashboardVisualisationColumnDefinition'] & { optional: boolean }>,\n) => {\n const colIdVariations: string[][] = []\n const keyColumnsIds = keys.map((col) => col.id)\n const allOptional = keys.every((key) => key.optional)\n const colIdCopy = [...keyColumnsIds]\n\n keyColumnsIds.reverse().forEach((id) => {\n const key = keys.find((k) => k.id === id)\n colIdVariations.push([...colIdCopy])\n if (key && key.optional) {\n colIdCopy.pop()\n }\n })\n\n if (allOptional) colIdVariations.push([])\n return colIdVariations\n}\n\nexport const getKeyIds = (dashboardData: DashboardDataResponse[], colIdVariations: string[][]) => {\n let validHeadIds: string[] = []\n colIdVariations.every((ids: string[]) => {\n const validRows = []\n\n dashboardData.forEach((datasetRow: DashboardDataResponse) => {\n const validRow: boolean[] = []\n\n Object.keys(datasetRow).forEach((datasetField) => {\n const value = datasetRow[datasetField].raw\n let valid = true\n if (ids.includes(datasetField)) {\n valid = value !== '' && value !== undefined && value !== null\n }\n validRow.push(valid)\n })\n\n if (validRow.every((val) => val)) {\n validRows.push(datasetRow)\n }\n })\n\n if (validRows.length > 0) {\n validHeadIds = ids\n return false\n }\n validHeadIds = ids\n return true\n })\n\n return validHeadIds\n}\n\nexport const filterKeys = (\n dashboardData: DashboardDataResponse[],\n keys: Array<components['schemas']['DashboardVisualisationColumnDefinition'] & { optional: boolean }>,\n) => {\n const colIdVariations = getKeyVariations(dashboardData, keys)\n const validHeadIds = getKeyIds(dashboardData, colIdVariations)\n\n return dashboardData.filter((datasetRow: DashboardDataResponse) => {\n const validRow: boolean[] = []\n Object.keys(datasetRow).forEach((datasetField) => {\n const value = datasetRow[datasetField].raw\n let valid = true\n if (validHeadIds.includes(datasetField)) {\n valid = value !== '' && value !== undefined && value !== null\n }\n validRow.push(valid)\n })\n\n return validRow.every((val) => val)\n })\n}\n\nexport const getLastestDataset = (dashboardData: DashboardDataResponse[]): DashboardDataResponse[] => {\n const latestTimestamp = dashboardData[dashboardData.length - 1]?.ts?.raw\n if (latestTimestamp) {\n return dashboardData.filter((data) => data.ts.raw === latestTimestamp)\n }\n return dashboardData\n}\n\nexport const getEarliestDataset = (dashboardData: DashboardDataResponse[]): DashboardDataResponse[] => {\n const latestTimestamp = dashboardData[0]?.ts?.raw\n if (latestTimestamp) {\n return dashboardData.filter((data) => data.ts.raw === latestTimestamp)\n }\n return dashboardData\n}\n\nexport const groupRowsByTimestamp = (dashboardData: DashboardDataResponse[]): DashboardDataResponse[][] => {\n const uniqueTimestamps = [...new Set(dashboardData.map((item) => item.ts.raw))]\n return uniqueTimestamps.map((ts) => {\n return dashboardData.filter((d) => d.ts.raw === ts)\n })\n}\n\nexport const groupRowsByKey = (dashboardData: DashboardDataResponse[], key: string): DashboardDataResponse[][] => {\n const uniqueKeyValues = [...new Set(dashboardData.map((item) => item[key].raw))]\n return uniqueKeyValues.map((keyValue) => {\n return dashboardData.filter((d) => d[key].raw === keyValue)\n })\n}\n\nexport const getGroupKey = (\n keys: Array<components['schemas']['DashboardVisualisationColumnDefinition']>,\n rawData: DashboardDataResponse[],\n) => {\n if (!keys || !keys.length || !rawData.length) {\n return undefined\n }\n\n const data = rawData[0]\n let index = keys.length - 1\n let keyFound = false\n while (!keyFound) {\n const k = `${keys[index]?.id}`\n if (k && index !== -1 && (!data[k] || !data[k].raw || data[k].raw === '' || data[k].raw === null)) {\n index -= 1\n } else {\n keyFound = true\n }\n }\n\n return index !== -1 ? keys[index] : undefined\n}\n\nexport const filterRowsByDisplayColumns = (\n listDefinition: components['schemas']['DashboardVisualisationDefinition'],\n dashboardData: DashboardDataResponse[],\n includeKeys = false,\n) => {\n const { keys: keyCols, measures } = listDefinition.columns\n const keys = keyCols || []\n let displayColumns = [...measures]\n if (includeKeys) {\n displayColumns = [...keys, ...measures]\n }\n const displayColumnsIds = displayColumns.map((col) => col.id)\n\n return dashboardData.map((datasetRow: DashboardDataResponse) => {\n return Object.keys(datasetRow)\n .filter((key) => displayColumnsIds.includes(key))\n .reduce((acc, key) => {\n acc[key] = datasetRow[key]\n return acc\n }, {} as unknown as DashboardDataResponse)\n })\n}\n\nexport default {\n getDatasetRows,\n getLastestDataset,\n getEarliestDataset,\n filterRowsByDisplayColumns,\n groupRowsByTimestamp,\n groupRowsByKey,\n getGroupKey,\n getKeyVariations,\n getKeyIds,\n filterKeys,\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { DashboardDataResponse } from '../types/Metrics'\nimport { components } from '../types/api'\n\nexport const getDatasetRows = (\n listDefinition: components['schemas']['DashboardVisualisationDefinition'],\n dashboardData: DashboardDataResponse[],\n) => {\n const { measures, filters, expectNulls } = listDefinition.columns\n const keys = <Array<components['schemas']['DashboardVisualisationColumnDefinition']>>listDefinition.columns.keys\n\n const displayColumnsIds = measures.map((col) => col.id)\n const keyColumnsIds = keys?.map((col) => col.id) || []\n const filterColIds = filters?.map((col) => col.id) || []\n const hasOptionalKeys = keys?.some((key) => key.optional)\n\n if (dashboardData.length && dashboardData[0]['ts']) keyColumnsIds.unshift('ts')\n\n const filtered = dashboardData.filter((datasetRow: DashboardDataResponse) => {\n const validRow: boolean[] = []\n\n Object.keys(datasetRow).forEach((datasetField) => {\n const value = datasetRow[datasetField].raw\n // All rows are valid until proven otherwise\n let valid = true\n\n // 1. check if the column value is equal to a defined column value\n if (filterColIds.includes(datasetField)) {\n const filterValues = filters ? filters.filter((f) => f.id === datasetField).map((f) => f.equals) : []\n valid = filterValues.includes(<string>value)\n\n // 3. check keys exist in the defined columns\n } else if (keyColumnsIds.includes(datasetField) && hasOptionalKeys) {\n valid = true\n\n // 3. check keys exist in the defined columns\n } else if (keyColumnsIds.includes(datasetField) && !hasOptionalKeys) {\n valid = value !== '' && value !== undefined && value !== null\n\n // 2. check values exist in the defined columns\n } else if (displayColumnsIds.includes(datasetField)) {\n valid = value !== '' && value !== undefined && value !== null\n\n // 3. check that all remaining columns are null.\n } else if (expectNulls) {\n valid = value === '' || value === undefined || value === null\n }\n\n validRow.push(valid)\n })\n\n return validRow.every((val) => val)\n })\n\n if (hasOptionalKeys) {\n return filterKeys(filtered, keys || [])\n }\n\n return filtered\n}\n\nexport const getKeyVariations = (keys: Array<components['schemas']['DashboardVisualisationColumnDefinition']>) => {\n const colIdVariations: string[][] = []\n const keyColumnsIds = keys.map((col) => col.id)\n const allOptional = keys.every((key) => key.optional)\n const colIdCopy = [...keyColumnsIds]\n\n keyColumnsIds.reverse().forEach((id) => {\n const key = keys.find((k) => k.id === id)\n colIdVariations.push([...colIdCopy])\n if (key && key.optional) {\n colIdCopy.pop()\n }\n })\n\n if (allOptional) colIdVariations.push([])\n return colIdVariations\n}\n\nexport const getKeyIds = (dashboardData: DashboardDataResponse[], colIdVariations: string[][]) => {\n let validHeadIds: string[] = []\n colIdVariations.every((ids: string[]) => {\n const validRows = []\n\n dashboardData.forEach((datasetRow: DashboardDataResponse) => {\n const validRow: boolean[] = []\n\n Object.keys(datasetRow).forEach((datasetField) => {\n const value = datasetRow[datasetField].raw\n let valid = true\n if (ids.includes(datasetField)) {\n valid = value !== '' && value !== undefined && value !== null\n }\n validRow.push(valid)\n })\n\n if (validRow.every((val) => val)) {\n validRows.push(datasetRow)\n }\n })\n\n if (validRows.length > 0) {\n validHeadIds = ids\n return false\n }\n validHeadIds = ids\n return true\n })\n\n return validHeadIds\n}\n\nexport const filterKeys = (\n dashboardData: DashboardDataResponse[],\n keys: Array<components['schemas']['DashboardVisualisationColumnDefinition']>,\n) => {\n const colIdVariations = getKeyVariations(keys)\n const validHeadIds = getKeyIds(dashboardData, colIdVariations)\n\n return dashboardData.filter((datasetRow: DashboardDataResponse) => {\n const validRow: boolean[] = []\n Object.keys(datasetRow).forEach((datasetField) => {\n const value = datasetRow[datasetField].raw\n let valid = true\n if (validHeadIds.includes(datasetField)) {\n valid = value !== '' && value !== undefined && value !== null\n }\n validRow.push(valid)\n })\n\n return validRow.every((val) => val)\n })\n}\n\nexport const getLastestDataset = (dashboardData: DashboardDataResponse[]): DashboardDataResponse[] => {\n const latestTimestamp = dashboardData[dashboardData.length - 1]?.['ts']?.raw\n if (latestTimestamp) {\n return dashboardData.filter((data) => data['ts'].raw === latestTimestamp)\n }\n return dashboardData\n}\n\nexport const getEarliestDataset = (dashboardData: DashboardDataResponse[]): DashboardDataResponse[] => {\n const latestTimestamp = dashboardData[0]?.['ts']?.raw\n if (latestTimestamp) {\n return dashboardData.filter((data) => data['ts'].raw === latestTimestamp)\n }\n return dashboardData\n}\n\nexport const groupRowsByTimestamp = (dashboardData: DashboardDataResponse[]): DashboardDataResponse[][] => {\n const uniqueTimestamps = [...new Set(dashboardData.map((item) => item['ts'].raw))]\n return uniqueTimestamps.map((ts) => {\n return dashboardData.filter((d) => d['ts'].raw === ts)\n })\n}\n\nexport const groupRowsByKey = (dashboardData: DashboardDataResponse[], key: string): DashboardDataResponse[][] => {\n const uniqueKeyValues = [...new Set(dashboardData.map((item) => item[key].raw))]\n return uniqueKeyValues.map((keyValue) => {\n return dashboardData.filter((d) => d[key].raw === keyValue)\n })\n}\n\nexport const getGroupKey = (\n rawData: DashboardDataResponse[],\n keys?: Array<components['schemas']['DashboardVisualisationColumnDefinition']>,\n) => {\n if (!keys || !keys.length || !rawData.length) {\n return undefined\n }\n\n const data = rawData[0]\n let index = keys.length - 1\n let keyFound = false\n while (!keyFound) {\n const k = `${keys[index]?.id}`\n if (k && index !== -1 && (!data[k] || !data[k].raw || data[k].raw === '' || data[k].raw === null)) {\n index -= 1\n } else {\n keyFound = true\n }\n }\n\n return index !== -1 ? keys[index] : undefined\n}\n\nexport const filterRowsByDisplayColumns = (\n listDefinition: components['schemas']['DashboardVisualisationDefinition'],\n dashboardData: DashboardDataResponse[],\n includeKeys = false,\n) => {\n const { keys: keyCols, measures } = listDefinition.columns\n const keys = keyCols || []\n let displayColumns = [...measures]\n if (includeKeys) {\n displayColumns = [...keys, ...measures]\n }\n const displayColumnsIds = displayColumns.map((col) => col.id)\n\n return dashboardData.map((datasetRow: DashboardDataResponse) => {\n return Object.keys(datasetRow)\n .filter((key) => displayColumnsIds.includes(key))\n .reduce((acc, key) => {\n acc[key] = datasetRow[key]\n return acc\n }, {} as unknown as DashboardDataResponse)\n })\n}\n\nexport default {\n getDatasetRows,\n getLastestDataset,\n getEarliestDataset,\n filterRowsByDisplayColumns,\n groupRowsByTimestamp,\n groupRowsByKey,\n getGroupKey,\n getKeyVariations,\n getKeyIds,\n filterKeys,\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["datasetHelper_exports", "__export", "datasetHelper_default", "filterKeys", "filterRowsByDisplayColumns", "getDatasetRows", "getEarliestDataset", "getGroupKey", "getKeyIds", "getKeyVariations", "getLastestDataset", "groupRowsByKey", "groupRowsByTimestamp", "__toCommonJS", "listDefinition", "dashboardData", "measures", "filters", "expectNulls", "keys", "displayColumnsIds", "col", "keyColumnsIds", "filterColIds", "hasOptionalKeys", "key", "filtered", "datasetRow", "validRow", "datasetField", "value", "valid", "f", "val", "colIdVariations", "allOptional", "colIdCopy", "id", "k", "validHeadIds", "ids", "validRows", "latestTimestamp", "data", "item", "ts", "d", "keyValue", "rawData", "index", "keyFound", "includeKeys", "keyCols", "displayColumns", "acc"]
7
7
  }
@@ -1,3 +1,4 @@
1
+ import { expect } from '@jest/globals'
1
2
  import { components } from '../types/api'
2
3
  import { DashboardDataResponse } from '../types/Metrics'
3
4
  import DatasetHelper from './datasetHelper'
@@ -429,7 +430,7 @@ describe('DatasetHelper', () => {
429
430
  },
430
431
  ],
431
432
  },
432
- } as unknown as DashboardVisualisation
433
+ } as unknown as components['schemas']['DashboardVisualisationDefinition']
433
434
 
434
435
  const data = [
435
436
  {
@@ -527,7 +528,7 @@ describe('DatasetHelper', () => {
527
528
  },
528
529
  ]
529
530
 
530
- const result = DatasetHelper.getGroupKey(keys, data)
531
+ const result = DatasetHelper.getGroupKey(data, keys)
531
532
  expect(result).toEqual({ id: 'key3' })
532
533
  })
533
534
 
@@ -542,7 +543,7 @@ describe('DatasetHelper', () => {
542
543
  },
543
544
  ]
544
545
 
545
- const result = DatasetHelper.getGroupKey(keys, data)
546
+ const result = DatasetHelper.getGroupKey(data, keys)
546
547
  expect(result).toEqual({ id: 'key2' })
547
548
  })
548
549
 
@@ -557,7 +558,7 @@ describe('DatasetHelper', () => {
557
558
  },
558
559
  ]
559
560
 
560
- const result = DatasetHelper.getGroupKey(keys, data)
561
+ const result = DatasetHelper.getGroupKey(data, keys)
561
562
  expect(result).toEqual({ id: 'key1' })
562
563
  })
563
564
 
@@ -570,7 +571,7 @@ describe('DatasetHelper', () => {
570
571
  { measure2: { raw: 'value' } },
571
572
  ]
572
573
 
573
- const result = DatasetHelper.getGroupKey(keys, data)
574
+ const result = DatasetHelper.getGroupKey(data, keys)
574
575
  expect(result).toEqual(undefined)
575
576
  })
576
577
 
@@ -585,7 +586,7 @@ describe('DatasetHelper', () => {
585
586
  },
586
587
  ]
587
588
 
588
- const result = DatasetHelper.getGroupKey(keys, data)
589
+ const result = DatasetHelper.getGroupKey(data, keys)
589
590
  expect(result).toEqual({ id: 'key2' })
590
591
  })
591
592
 
@@ -600,7 +601,7 @@ describe('DatasetHelper', () => {
600
601
  },
601
602
  ]
602
603
 
603
- const result = DatasetHelper.getGroupKey(keys, data)
604
+ const result = DatasetHelper.getGroupKey(data, keys)
604
605
  expect(result).toEqual({ id: 'key1' })
605
606
  })
606
607
 
@@ -613,7 +614,7 @@ describe('DatasetHelper', () => {
613
614
  { measure2: { raw: 'value' } },
614
615
  ]
615
616
 
616
- const result = DatasetHelper.getGroupKey(keys, data)
617
+ const result = DatasetHelper.getGroupKey(data, keys)
617
618
  expect(result).toEqual(undefined)
618
619
  })
619
620
 
@@ -628,7 +629,7 @@ describe('DatasetHelper', () => {
628
629
  },
629
630
  ]
630
631
 
631
- const result = DatasetHelper.getGroupKey(keys, data)
632
+ const result = DatasetHelper.getGroupKey(data, keys)
632
633
  expect(result).toEqual({ id: 'key2' })
633
634
  })
634
635
 
@@ -643,7 +644,7 @@ describe('DatasetHelper', () => {
643
644
  },
644
645
  ]
645
646
 
646
- const result = DatasetHelper.getGroupKey(keys, data)
647
+ const result = DatasetHelper.getGroupKey(data, keys)
647
648
  expect(result).toEqual({ id: 'key1' })
648
649
  })
649
650
 
@@ -656,7 +657,7 @@ describe('DatasetHelper', () => {
656
657
  { measure2: { raw: 'value' } },
657
658
  ]
658
659
 
659
- const result = DatasetHelper.getGroupKey(keys, data)
660
+ const result = DatasetHelper.getGroupKey(data, keys)
660
661
  expect(result).toEqual(undefined)
661
662
  })
662
663
 
@@ -670,7 +671,7 @@ describe('DatasetHelper', () => {
670
671
  },
671
672
  ]
672
673
 
673
- const result = DatasetHelper.getGroupKey(keys, data)
674
+ const result = DatasetHelper.getGroupKey(data, keys)
674
675
  expect(result).toEqual({ id: 'key2' })
675
676
  })
676
677
 
@@ -683,51 +684,38 @@ describe('DatasetHelper', () => {
683
684
  },
684
685
  ]
685
686
 
686
- const result = DatasetHelper.getGroupKey(keys, data)
687
+ const result = DatasetHelper.getGroupKey(data, keys)
687
688
  expect(result).toEqual({ id: 'key1' })
688
689
  })
689
690
 
690
691
  it('should set the correct key - key is undefined - none', () => {
691
692
  const data: DashboardDataResponse[] = [{ measure1: { raw: 'value' } }, { measure2: { raw: 'value' } }]
692
693
 
693
- const result = DatasetHelper.getGroupKey(keys, data)
694
+ const result = DatasetHelper.getGroupKey(data, keys)
694
695
  expect(result).toEqual(undefined)
695
696
  })
696
697
 
697
698
  it('should return undefined when no keys are provided', () => {
698
699
  const data: DashboardDataResponse[] = [{ measure1: { raw: 'value' } }, { measure2: { raw: 'value' } }]
699
700
 
700
- const result = DatasetHelper.getGroupKey(undefined, data)
701
+ const result = DatasetHelper.getGroupKey(data, undefined)
701
702
  expect(result).toEqual(undefined)
702
703
  })
703
704
 
704
705
  it('should return undefined when no keys empty', () => {
705
706
  const data: DashboardDataResponse[] = [{ measure1: { raw: 'value' } }, { measure2: { raw: 'value' } }]
706
707
 
707
- const result = DatasetHelper.getGroupKey([], data)
708
+ const result = DatasetHelper.getGroupKey(data, [])
708
709
  expect(result).toEqual(undefined)
709
710
  })
710
711
  })
711
712
 
712
713
  describe('getKeyVariations', () => {
713
- let data: DashboardDataResponse[]
714
714
  let keys: components['schemas']['DashboardVisualisationColumnDefinition'][]
715
715
 
716
- beforeEach(() => {
717
- data = [
718
- {
719
- field1: { raw: 'field1' },
720
- field2: { raw: 'field2' },
721
- field3: { raw: 'field3' },
722
- field4: { raw: 'field4' },
723
- field5: { raw: 'field5' },
724
- },
725
- ]
726
- })
727
-
728
716
  it('should get the key variations', () => {
729
717
  keys = [{ id: 'field1' }, { id: 'field2' }, { id: 'field3' }]
730
- const result = DatasetHelper.getKeyVariations(data, keys)
718
+ const result = DatasetHelper.getKeyVariations(keys)
731
719
 
732
720
  expect(result).toEqual([
733
721
  ['field1', 'field2', 'field3'],
@@ -738,7 +726,7 @@ describe('DatasetHelper', () => {
738
726
 
739
727
  it('should get the key variations with optional', () => {
740
728
  keys = [{ id: 'field1' }, { id: 'field2' }, { id: 'field3', optional: true }]
741
- const result = DatasetHelper.getKeyVariations(data, keys)
729
+ const result = DatasetHelper.getKeyVariations(keys)
742
730
 
743
731
  expect(result).toEqual([
744
732
  ['field1', 'field2', 'field3'],
@@ -749,7 +737,7 @@ describe('DatasetHelper', () => {
749
737
 
750
738
  it('should get the key variations with optional', () => {
751
739
  keys = [{ id: 'field1' }, { id: 'field2', optional: true }, { id: 'field3', optional: true }]
752
- const result = DatasetHelper.getKeyVariations(data, keys)
740
+ const result = DatasetHelper.getKeyVariations(keys)
753
741
 
754
742
  expect(result).toEqual([['field1', 'field2', 'field3'], ['field1', 'field2'], ['field1']])
755
743
  })
@@ -760,7 +748,7 @@ describe('DatasetHelper', () => {
760
748
  { id: 'field2', optional: true },
761
749
  { id: 'field3', optional: true },
762
750
  ]
763
- const result = DatasetHelper.getKeyVariations(data, keys)
751
+ const result = DatasetHelper.getKeyVariations(keys)
764
752
 
765
753
  expect(result).toEqual([['field1', 'field2', 'field3'], ['field1', 'field2'], ['field1'], []])
766
754
  })
@@ -6,16 +6,14 @@ export const getDatasetRows = (
6
6
  dashboardData: DashboardDataResponse[],
7
7
  ) => {
8
8
  const { measures, filters, expectNulls } = listDefinition.columns
9
- const keys = <Array<components['schemas']['DashboardVisualisationColumnDefinition'] & { optional: boolean }>>(
10
- listDefinition.columns.keys
11
- )
9
+ const keys = <Array<components['schemas']['DashboardVisualisationColumnDefinition']>>listDefinition.columns.keys
12
10
 
13
11
  const displayColumnsIds = measures.map((col) => col.id)
14
12
  const keyColumnsIds = keys?.map((col) => col.id) || []
15
13
  const filterColIds = filters?.map((col) => col.id) || []
16
14
  const hasOptionalKeys = keys?.some((key) => key.optional)
17
15
 
18
- if (dashboardData.length && dashboardData[0].ts) keyColumnsIds.unshift('ts')
16
+ if (dashboardData.length && dashboardData[0]['ts']) keyColumnsIds.unshift('ts')
19
17
 
20
18
  const filtered = dashboardData.filter((datasetRow: DashboardDataResponse) => {
21
19
  const validRow: boolean[] = []
@@ -60,10 +58,7 @@ export const getDatasetRows = (
60
58
  return filtered
61
59
  }
62
60
 
63
- export const getKeyVariations = (
64
- dashboardData: DashboardDataResponse[],
65
- keys: Array<components['schemas']['DashboardVisualisationColumnDefinition'] & { optional: boolean }>,
66
- ) => {
61
+ export const getKeyVariations = (keys: Array<components['schemas']['DashboardVisualisationColumnDefinition']>) => {
67
62
  const colIdVariations: string[][] = []
68
63
  const keyColumnsIds = keys.map((col) => col.id)
69
64
  const allOptional = keys.every((key) => key.optional)
@@ -116,9 +111,9 @@ export const getKeyIds = (dashboardData: DashboardDataResponse[], colIdVariation
116
111
 
117
112
  export const filterKeys = (
118
113
  dashboardData: DashboardDataResponse[],
119
- keys: Array<components['schemas']['DashboardVisualisationColumnDefinition'] & { optional: boolean }>,
114
+ keys: Array<components['schemas']['DashboardVisualisationColumnDefinition']>,
120
115
  ) => {
121
- const colIdVariations = getKeyVariations(dashboardData, keys)
116
+ const colIdVariations = getKeyVariations(keys)
122
117
  const validHeadIds = getKeyIds(dashboardData, colIdVariations)
123
118
 
124
119
  return dashboardData.filter((datasetRow: DashboardDataResponse) => {
@@ -137,25 +132,25 @@ export const filterKeys = (
137
132
  }
138
133
 
139
134
  export const getLastestDataset = (dashboardData: DashboardDataResponse[]): DashboardDataResponse[] => {
140
- const latestTimestamp = dashboardData[dashboardData.length - 1]?.ts?.raw
135
+ const latestTimestamp = dashboardData[dashboardData.length - 1]?.['ts']?.raw
141
136
  if (latestTimestamp) {
142
- return dashboardData.filter((data) => data.ts.raw === latestTimestamp)
137
+ return dashboardData.filter((data) => data['ts'].raw === latestTimestamp)
143
138
  }
144
139
  return dashboardData
145
140
  }
146
141
 
147
142
  export const getEarliestDataset = (dashboardData: DashboardDataResponse[]): DashboardDataResponse[] => {
148
- const latestTimestamp = dashboardData[0]?.ts?.raw
143
+ const latestTimestamp = dashboardData[0]?.['ts']?.raw
149
144
  if (latestTimestamp) {
150
- return dashboardData.filter((data) => data.ts.raw === latestTimestamp)
145
+ return dashboardData.filter((data) => data['ts'].raw === latestTimestamp)
151
146
  }
152
147
  return dashboardData
153
148
  }
154
149
 
155
150
  export const groupRowsByTimestamp = (dashboardData: DashboardDataResponse[]): DashboardDataResponse[][] => {
156
- const uniqueTimestamps = [...new Set(dashboardData.map((item) => item.ts.raw))]
151
+ const uniqueTimestamps = [...new Set(dashboardData.map((item) => item['ts'].raw))]
157
152
  return uniqueTimestamps.map((ts) => {
158
- return dashboardData.filter((d) => d.ts.raw === ts)
153
+ return dashboardData.filter((d) => d['ts'].raw === ts)
159
154
  })
160
155
  }
161
156
 
@@ -167,8 +162,8 @@ export const groupRowsByKey = (dashboardData: DashboardDataResponse[], key: stri
167
162
  }
168
163
 
169
164
  export const getGroupKey = (
170
- keys: Array<components['schemas']['DashboardVisualisationColumnDefinition']>,
171
165
  rawData: DashboardDataResponse[],
166
+ keys?: Array<components['schemas']['DashboardVisualisationColumnDefinition']>,
172
167
  ) => {
173
168
  if (!keys || !keys.length || !rawData.length) {
174
169
  return undefined
@@ -1,2 +1,2 @@
1
- var V=Object.create;var s=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var R=Object.getPrototypeOf,T=Object.prototype.hasOwnProperty;var k=(e,t)=>{for(var n in t)s(e,n,{get:t[n],enumerable:!0})},p=(e,t,n,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of v(t))!T.call(e,r)&&r!==n&&s(e,r,{get:()=>t[r],enumerable:!(i=S(t,r))||i.enumerable});return e};var N=(e,t,n)=>(n=e!=null?V(R(e)):{},p(t||!e||!e.__esModule?s(n,"default",{value:e,enumerable:!0}):n,e)),$=e=>p(s({},"__esModule",{value:!0}),e);var C={};k(C,{default:()=>w,getCurrentVariantDefinition:()=>d,getField:()=>D,getFieldDisplayName:()=>g,getFields:()=>h,getFilter:()=>l,getFilters:()=>x,getFiltersDefaultsValues:()=>u,getReportSummary:()=>y,getTemplate:()=>F});module.exports=$(C);var f=N(require("./logger"));const l=(e,t)=>e.find(n=>n.name===t)?.filter,u=e=>e.filter(t=>t.filter).map(t=>{const{name:n,display:i}=t,{type:r,interactive:o,defaultValue:a,defaultGranularity:m,defaultQuickFilterValue:c}=t.filter;return{name:n,display:i,type:r,interactive:o,...a&&{defaultValue:a},...m&&{defaultGranularity:m},...c&&{defaultQuickFilterValue:c}}}),d=(e,t,n)=>{if(!e){f.default.info("No definitions");return}let i;const r=e.find(o=>o.id===t);if(r)return i=r.variants.find(o=>n===o.id),i},g=(e,t)=>{const n=t.split("."),i=e.find(r=>r.name===n[0]);return i?n[1]?`${i.display} ${n[1]}`:i.display:t},D=(e,t)=>e.find(n=>n.name===t),h=e=>e.variant.specification?.fields||[],F=e=>e.variant.specification?.template,x=e=>e.filter(t=>t.filter).map(t=>t.filter),y=(e,t,n,i)=>t.getDefinitionSummary(n,e,i);var w={getCurrentVariantDefinition:d,getFieldDisplayName:g,getField:D,getFields:h,getTemplate:F,getFilter:l,getFilters:x,getFiltersDefaultsValues:u,getReportSummary:y};0&&(module.exports={getCurrentVariantDefinition,getField,getFieldDisplayName,getFields,getFilter,getFilters,getFiltersDefaultsValues,getReportSummary,getTemplate});
1
+ "use strict";var S=Object.create;var s=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var T=Object.getOwnPropertyNames;var k=Object.getPrototypeOf,E=Object.prototype.hasOwnProperty;var Q=(t,e)=>{for(var n in e)s(t,n,{get:e[n],enumerable:!0})},m=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of T(e))!E.call(t,o)&&o!==n&&s(t,o,{get:()=>e[o],enumerable:!(i=v(e,o))||i.enumerable});return t};var G=(t,e,n)=>(n=t!=null?S(k(t)):{},m(e||!t||!t.__esModule?s(n,"default",{value:t,enumerable:!0}):n,t)),N=t=>m(s({},"__esModule",{value:!0}),t);var w={};Q(w,{default:()=>$,getCurrentVariantDefinition:()=>d,getField:()=>D,getFieldDisplayName:()=>g,getFields:()=>F,getFilter:()=>l,getFilters:()=>y,getFiltersDefaultsValues:()=>u,getReportSummary:()=>R,getTemplate:()=>h});module.exports=N(w);var c=require("../components/_filters/filtersTypeEnum"),p=require("../types/UserReports"),f=G(require("./logger"));const l=(t,e)=>t.find(n=>n.name===e)?.filter,u=t=>t.filter(e=>e.filter).map(e=>{const{name:n,display:i}=e,o=e.filter?.defaultValue,r=e.filter?.defaultGranularity,a=e.filter?.defaultQuickFilterValue,V=e.filter?.type||p.ReportType.REPORT,x=e.filter?.interactive||c.FiltersType.REQUEST;return{name:n,display:i,type:V,interactive:x,...o&&{defaultValue:o},...r&&{defaultGranularity:r},...a&&{defaultQuickFilterValue:a}}}),d=(t,e,n)=>{if(!t){f.default.info("No definitions");return}let i;const o=t.find(r=>r.id===e);if(o)return i=o.variants.find(r=>n===r.id),i},g=(t,e)=>{const n=e.split("."),i=t.find(o=>o.name===n[0]);return i?n[1]?`${i.display} ${n[1]}`:i.display:e},D=(t,e)=>t.find(n=>n.name===e),F=t=>t.variant.specification?.fields||[],h=t=>t.variant.specification?.template||"list",y=t=>{const e=t.filter(n=>n.filter).map(n=>n.filter);return e.length?e:[]},R=(t,e,n,i)=>e.getDefinitionSummary(n,t,i);var $={getCurrentVariantDefinition:d,getFieldDisplayName:g,getField:D,getFields:F,getTemplate:h,getFilter:l,getFilters:y,getFiltersDefaultsValues:u,getReportSummary:R};0&&(module.exports={getCurrentVariantDefinition,getField,getFieldDisplayName,getFields,getFilter,getFilters,getFiltersDefaultsValues,getReportSummary,getTemplate});
2
2
  //# sourceMappingURL=definitionUtils.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dpr/utils/definitionUtils.ts"],
4
- "sourcesContent": ["import ReportingService from '../services/reportingService'\nimport { components } from '../types/api'\nimport { Template } from '../types/Templates'\nimport logger from './logger'\n\nexport const getFilter = (\n fields: components['schemas']['FieldDefinition'][],\n fieldId: string,\n): components['schemas']['FilterDefinition'] | undefined => {\n return fields.find((f) => f.name === fieldId)?.filter\n}\n\nexport const getFiltersDefaultsValues = (fields: components['schemas']['FieldDefinition'][]) => {\n return fields\n .filter((field) => field.filter)\n .map((field) => {\n const { name, display } = field\n const { type, interactive, defaultValue, defaultGranularity, defaultQuickFilterValue } = field.filter\n\n return {\n name,\n display,\n type,\n interactive,\n ...(defaultValue && { defaultValue }),\n ...(defaultGranularity && { defaultGranularity }),\n ...(defaultQuickFilterValue && { defaultQuickFilterValue }),\n }\n })\n}\n\nexport const getCurrentVariantDefinition = (\n definitions: components['schemas']['ReportDefinitionSummary'][],\n reportId: string,\n variantId: string,\n): components['schemas']['VariantDefinition'] | undefined => {\n if (!definitions) {\n logger.info('No definitions')\n return undefined\n }\n\n let variantDef: components['schemas']['VariantDefinition']\n const reportDef = definitions.find(\n (report: components['schemas']['ReportDefinitionSummary']) => report.id === reportId,\n )\n\n if (reportDef) {\n // TODO: this needs fixing, we should never be using `as unknown as`, but the types are very mixed up here\n variantDef = reportDef.variants.find(\n (variant) => variantId === variant.id,\n ) as unknown as components['schemas']['VariantDefinition']\n\n return variantDef\n }\n\n return undefined\n}\n\nexport const getFieldDisplayName = (fields: components['schemas']['FieldDefinition'][], fieldId: string) => {\n const ids = fieldId.split('.')\n const field = fields.find((f) => {\n return f.name === ids[0]\n })\n if (field) {\n return ids[1] ? `${field.display} ${ids[1]}` : field.display\n }\n return fieldId\n}\n\nexport const getField = (fields: components['schemas']['FieldDefinition'][], fieldId: string) => {\n return fields.find((field) => {\n return field.name === fieldId\n })\n}\n\nexport const getFields = (\n definition: components['schemas']['SingleVariantReportDefinition'],\n): components['schemas']['FieldDefinition'][] => {\n return definition.variant.specification?.fields || []\n}\n\nexport const getTemplate = (definition: components['schemas']['SingleVariantReportDefinition']): Template => {\n return definition.variant.specification?.template\n}\n\nexport const getFilters = (\n fields: components['schemas']['FieldDefinition'][],\n): components['schemas']['FilterDefinition'][] => {\n return fields.filter((field) => field.filter).map((field) => field.filter)\n}\n\nexport const getReportSummary = (\n reportId: string,\n reportingService: ReportingService,\n token: string,\n definitionPath: string,\n) => reportingService.getDefinitionSummary(token, reportId, definitionPath)\n\nexport default {\n getCurrentVariantDefinition,\n getFieldDisplayName,\n getField,\n getFields,\n getTemplate,\n getFilter,\n getFilters,\n getFiltersDefaultsValues,\n getReportSummary,\n}\n"],
5
- "mappings": "6iBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,gCAAAC,EAAA,aAAAC,EAAA,wBAAAC,EAAA,cAAAC,EAAA,cAAAC,EAAA,eAAAC,EAAA,6BAAAC,EAAA,qBAAAC,EAAA,gBAAAC,IAAA,eAAAC,EAAAZ,GAGA,IAAAa,EAAmB,uBAEZ,MAAMN,EAAY,CACvBO,EACAC,IAEOD,EAAO,KAAME,GAAMA,EAAE,OAASD,CAAO,GAAG,OAGpCN,EAA4BK,GAChCA,EACJ,OAAQG,GAAUA,EAAM,MAAM,EAC9B,IAAKA,GAAU,CACd,KAAM,CAAE,KAAAC,EAAM,QAAAC,CAAQ,EAAIF,EACpB,CAAE,KAAAG,EAAM,YAAAC,EAAa,aAAAC,EAAc,mBAAAC,EAAoB,wBAAAC,CAAwB,EAAIP,EAAM,OAE/F,MAAO,CACL,KAAAC,EACA,QAAAC,EACA,KAAAC,EACA,YAAAC,EACA,GAAIC,GAAgB,CAAE,aAAAA,CAAa,EACnC,GAAIC,GAAsB,CAAE,mBAAAA,CAAmB,EAC/C,GAAIC,GAA2B,CAAE,wBAAAA,CAAwB,CAC3D,CACF,CAAC,EAGQrB,EAA8B,CACzCsB,EACAC,EACAC,IAC2D,CAC3D,GAAI,CAACF,EAAa,CAChB,EAAAG,QAAO,KAAK,gBAAgB,EAC5B,MACF,CAEA,IAAIC,EACJ,MAAMC,EAAYL,EAAY,KAC3BM,GAA6DA,EAAO,KAAOL,CAC9E,EAEA,GAAII,EAEF,OAAAD,EAAaC,EAAU,SAAS,KAC7BE,GAAYL,IAAcK,EAAQ,EACrC,EAEOH,CAIX,EAEaxB,EAAsB,CAACS,EAAoDC,IAAoB,CAC1G,MAAMkB,EAAMlB,EAAQ,MAAM,GAAG,EACvBE,EAAQH,EAAO,KAAME,GAClBA,EAAE,OAASiB,EAAI,CAAC,CACxB,EACD,OAAIhB,EACKgB,EAAI,CAAC,EAAI,GAAGhB,EAAM,OAAO,IAAIgB,EAAI,CAAC,CAAC,GAAKhB,EAAM,QAEhDF,CACT,EAEaX,EAAW,CAACU,EAAoDC,IACpED,EAAO,KAAMG,GACXA,EAAM,OAASF,CACvB,EAGUT,EACX4B,GAEOA,EAAW,QAAQ,eAAe,QAAU,CAAC,EAGzCvB,EAAeuB,GACnBA,EAAW,QAAQ,eAAe,SAG9B1B,EACXM,GAEOA,EAAO,OAAQG,GAAUA,EAAM,MAAM,EAAE,IAAKA,GAAUA,EAAM,MAAM,EAG9DP,EAAmB,CAC9BgB,EACAS,EACAC,EACAC,IACGF,EAAiB,qBAAqBC,EAAOV,EAAUW,CAAc,EAE1E,IAAOnC,EAAQ,CACb,4BAAAC,EACA,oBAAAE,EACA,SAAAD,EACA,UAAAE,EACA,YAAAK,EACA,UAAAJ,EACA,WAAAC,EACA,yBAAAC,EACA,iBAAAC,CACF",
6
- "names": ["definitionUtils_exports", "__export", "definitionUtils_default", "getCurrentVariantDefinition", "getField", "getFieldDisplayName", "getFields", "getFilter", "getFilters", "getFiltersDefaultsValues", "getReportSummary", "getTemplate", "__toCommonJS", "import_logger", "fields", "fieldId", "f", "field", "name", "display", "type", "interactive", "defaultValue", "defaultGranularity", "defaultQuickFilterValue", "definitions", "reportId", "variantId", "logger", "variantDef", "reportDef", "report", "variant", "ids", "definition", "reportingService", "token", "definitionPath"]
4
+ "sourcesContent": ["import { FiltersType } from '../components/_filters/filtersTypeEnum'\nimport ReportingService from '../services/reportingService'\nimport { components } from '../types/api'\nimport { Template } from '../types/Templates'\nimport { ReportType } from '../types/UserReports'\nimport logger from './logger'\n\nexport const getFilter = (\n fields: components['schemas']['FieldDefinition'][],\n fieldId: string,\n): components['schemas']['FilterDefinition'] | undefined => {\n return fields.find((f) => f.name === fieldId)?.filter\n}\n\nexport const getFiltersDefaultsValues = (fields: components['schemas']['FieldDefinition'][]) => {\n return fields\n .filter((field) => field.filter)\n .map((field) => {\n const { name, display } = field\n\n const defaultValue = field.filter?.defaultValue\n const defaultGranularity = field.filter?.defaultGranularity\n const defaultQuickFilterValue = field.filter?.defaultQuickFilterValue\n const type = field.filter?.type || ReportType.REPORT\n const interactive = field.filter?.interactive || FiltersType.REQUEST\n\n return {\n name,\n display,\n type,\n interactive,\n ...(defaultValue && { defaultValue }),\n ...(defaultGranularity && { defaultGranularity }),\n ...(defaultQuickFilterValue && { defaultQuickFilterValue }),\n }\n })\n}\n\nexport const getCurrentVariantDefinition = (\n definitions: components['schemas']['ReportDefinitionSummary'][],\n reportId: string,\n variantId: string,\n): components['schemas']['VariantDefinition'] | undefined => {\n if (!definitions) {\n logger.info('No definitions')\n return undefined\n }\n\n let variantDef: components['schemas']['VariantDefinition']\n const reportDef = definitions.find(\n (report: components['schemas']['ReportDefinitionSummary']) => report.id === reportId,\n )\n\n if (reportDef) {\n // TODO: this needs fixing, we should never be using `as unknown as`, but the types are very mixed up here\n variantDef = reportDef.variants.find(\n (variant) => variantId === variant.id,\n ) as unknown as components['schemas']['VariantDefinition']\n\n return variantDef\n }\n\n return undefined\n}\n\nexport const getFieldDisplayName = (fields: components['schemas']['FieldDefinition'][], fieldId: string) => {\n const ids = fieldId.split('.')\n const field = fields.find((f) => {\n return f.name === ids[0]\n })\n if (field) {\n return ids[1] ? `${field.display} ${ids[1]}` : field.display\n }\n return fieldId\n}\n\nexport const getField = (fields: components['schemas']['FieldDefinition'][], fieldId: string) => {\n return fields.find((field) => {\n return field.name === fieldId\n })\n}\n\nexport const getFields = (\n definition: components['schemas']['SingleVariantReportDefinition'],\n): components['schemas']['FieldDefinition'][] => {\n return definition.variant.specification?.fields || []\n}\n\nexport const getTemplate = (definition: components['schemas']['SingleVariantReportDefinition']): Template => {\n return definition.variant.specification?.template || 'list'\n}\n\nexport const getFilters = (\n fields: components['schemas']['FieldDefinition'][],\n): components['schemas']['FilterDefinition'][] => {\n const filters: components['schemas']['FilterDefinition'][] = fields\n .filter((field: components['schemas']['FieldDefinition']) => field.filter)\n .map((field: components['schemas']['FieldDefinition']) => <components['schemas']['FilterDefinition']>field.filter)\n\n return filters.length ? filters : []\n}\n\nexport const getReportSummary = (\n reportId: string,\n reportingService: ReportingService,\n token: string,\n definitionPath: string,\n) => reportingService.getDefinitionSummary(token, reportId, definitionPath)\n\nexport default {\n getCurrentVariantDefinition,\n getFieldDisplayName,\n getField,\n getFields,\n getTemplate,\n getFilter,\n getFilters,\n getFiltersDefaultsValues,\n getReportSummary,\n}\n"],
5
+ "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,gCAAAC,EAAA,aAAAC,EAAA,wBAAAC,EAAA,cAAAC,EAAA,cAAAC,EAAA,eAAAC,EAAA,6BAAAC,EAAA,qBAAAC,EAAA,gBAAAC,IAAA,eAAAC,EAAAZ,GAAA,IAAAa,EAA4B,kDAI5BC,EAA2B,gCAC3BC,EAAmB,uBAEZ,MAAMR,EAAY,CACvBS,EACAC,IAEOD,EAAO,KAAME,GAAMA,EAAE,OAASD,CAAO,GAAG,OAGpCR,EAA4BO,GAChCA,EACJ,OAAQG,GAAUA,EAAM,MAAM,EAC9B,IAAKA,GAAU,CACd,KAAM,CAAE,KAAAC,EAAM,QAAAC,CAAQ,EAAIF,EAEpBG,EAAeH,EAAM,QAAQ,aAC7BI,EAAqBJ,EAAM,QAAQ,mBACnCK,EAA0BL,EAAM,QAAQ,wBACxCM,EAAON,EAAM,QAAQ,MAAQ,aAAW,OACxCO,EAAcP,EAAM,QAAQ,aAAe,cAAY,QAE7D,MAAO,CACL,KAAAC,EACA,QAAAC,EACA,KAAAI,EACA,YAAAC,EACA,GAAIJ,GAAgB,CAAE,aAAAA,CAAa,EACnC,GAAIC,GAAsB,CAAE,mBAAAA,CAAmB,EAC/C,GAAIC,GAA2B,CAAE,wBAAAA,CAAwB,CAC3D,CACF,CAAC,EAGQrB,EAA8B,CACzCwB,EACAC,EACAC,IAC2D,CAC3D,GAAI,CAACF,EAAa,CAChB,EAAAG,QAAO,KAAK,gBAAgB,EAC5B,MACF,CAEA,IAAIC,EACJ,MAAMC,EAAYL,EAAY,KAC3BM,GAA6DA,EAAO,KAAOL,CAC9E,EAEA,GAAII,EAEF,OAAAD,EAAaC,EAAU,SAAS,KAC7BE,GAAYL,IAAcK,EAAQ,EACrC,EAEOH,CAIX,EAEa1B,EAAsB,CAACW,EAAoDC,IAAoB,CAC1G,MAAMkB,EAAMlB,EAAQ,MAAM,GAAG,EACvBE,EAAQH,EAAO,KAAME,GAClBA,EAAE,OAASiB,EAAI,CAAC,CACxB,EACD,OAAIhB,EACKgB,EAAI,CAAC,EAAI,GAAGhB,EAAM,OAAO,IAAIgB,EAAI,CAAC,CAAC,GAAKhB,EAAM,QAEhDF,CACT,EAEab,EAAW,CAACY,EAAoDC,IACpED,EAAO,KAAMG,GACXA,EAAM,OAASF,CACvB,EAGUX,EACX8B,GAEOA,EAAW,QAAQ,eAAe,QAAU,CAAC,EAGzCzB,EAAeyB,GACnBA,EAAW,QAAQ,eAAe,UAAY,OAG1C5B,EACXQ,GACgD,CAChD,MAAMqB,EAAuDrB,EAC1D,OAAQG,GAAoDA,EAAM,MAAM,EACxE,IAAKA,GAA+FA,EAAM,MAAM,EAEnH,OAAOkB,EAAQ,OAASA,EAAU,CAAC,CACrC,EAEa3B,EAAmB,CAC9BkB,EACAU,EACAC,EACAC,IACGF,EAAiB,qBAAqBC,EAAOX,EAAUY,CAAc,EAE1E,IAAOtC,EAAQ,CACb,4BAAAC,EACA,oBAAAE,EACA,SAAAD,EACA,UAAAE,EACA,YAAAK,EACA,UAAAJ,EACA,WAAAC,EACA,yBAAAC,EACA,iBAAAC,CACF",
6
+ "names": ["definitionUtils_exports", "__export", "definitionUtils_default", "getCurrentVariantDefinition", "getField", "getFieldDisplayName", "getFields", "getFilter", "getFilters", "getFiltersDefaultsValues", "getReportSummary", "getTemplate", "__toCommonJS", "import_filtersTypeEnum", "import_UserReports", "import_logger", "fields", "fieldId", "f", "field", "name", "display", "defaultValue", "defaultGranularity", "defaultQuickFilterValue", "type", "interactive", "definitions", "reportId", "variantId", "logger", "variantDef", "reportDef", "report", "variant", "ids", "definition", "filters", "reportingService", "token", "definitionPath"]
7
7
  }
@@ -1,6 +1,8 @@
1
+ import { FiltersType } from '../components/_filters/filtersTypeEnum'
1
2
  import ReportingService from '../services/reportingService'
2
3
  import { components } from '../types/api'
3
4
  import { Template } from '../types/Templates'
5
+ import { ReportType } from '../types/UserReports'
4
6
  import logger from './logger'
5
7
 
6
8
  export const getFilter = (
@@ -15,7 +17,12 @@ export const getFiltersDefaultsValues = (fields: components['schemas']['FieldDef
15
17
  .filter((field) => field.filter)
16
18
  .map((field) => {
17
19
  const { name, display } = field
18
- const { type, interactive, defaultValue, defaultGranularity, defaultQuickFilterValue } = field.filter
20
+
21
+ const defaultValue = field.filter?.defaultValue
22
+ const defaultGranularity = field.filter?.defaultGranularity
23
+ const defaultQuickFilterValue = field.filter?.defaultQuickFilterValue
24
+ const type = field.filter?.type || ReportType.REPORT
25
+ const interactive = field.filter?.interactive || FiltersType.REQUEST
19
26
 
20
27
  return {
21
28
  name,
@@ -80,13 +87,17 @@ export const getFields = (
80
87
  }
81
88
 
82
89
  export const getTemplate = (definition: components['schemas']['SingleVariantReportDefinition']): Template => {
83
- return definition.variant.specification?.template
90
+ return definition.variant.specification?.template || 'list'
84
91
  }
85
92
 
86
93
  export const getFilters = (
87
94
  fields: components['schemas']['FieldDefinition'][],
88
95
  ): components['schemas']['FilterDefinition'][] => {
89
- return fields.filter((field) => field.filter).map((field) => field.filter)
96
+ const filters: components['schemas']['FilterDefinition'][] = fields
97
+ .filter((field: components['schemas']['FieldDefinition']) => field.filter)
98
+ .map((field: components['schemas']['FieldDefinition']) => <components['schemas']['FilterDefinition']>field.filter)
99
+
100
+ return filters.length ? filters : []
90
101
  }
91
102
 
92
103
  export const getReportSummary = (
@@ -1,2 +1,2 @@
1
- var e=Object.create;var i=Object.defineProperty;var k=Object.getOwnPropertyDescriptor;var n=Object.getOwnPropertyNames;var c=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty;var w=(o,r)=>{for(var t in r)i(o,t,{get:r[t],enumerable:!0})},a=(o,r,t,U)=>{if(r&&typeof r=="object"||typeof r=="function")for(let m of n(r))!d.call(o,m)&&m!==t&&i(o,m,{get:()=>r[m],enumerable:!(U=k(r,m))||U.enumerable});return o};var p=(o,r,t)=>(t=o!=null?e(c(o)):{},a(r||!o||!o.__esModule?i(t,"default",{value:o,enumerable:!0}):t,o)),x=o=>a(i({},"__esModule",{value:!0}),o);var y={};w(y,{BookmarkUtils:()=>s.default,DownloadUtils:()=>f.default,SyncReportUtils:()=>l.default});module.exports=x(y);var l=p(require("../routes/journeys/view-report/sync/report/utils")),f=p(require("../routes/journeys/download-report/utils")),s=p(require("../routes/journeys/my-reports/bookmarks/utils"));0&&(module.exports={BookmarkUtils,DownloadUtils,SyncReportUtils});
1
+ "use strict";var e=Object.create;var i=Object.defineProperty;var k=Object.getOwnPropertyDescriptor;var n=Object.getOwnPropertyNames;var c=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty;var w=(o,r)=>{for(var t in r)i(o,t,{get:r[t],enumerable:!0})},a=(o,r,t,U)=>{if(r&&typeof r=="object"||typeof r=="function")for(let m of n(r))!d.call(o,m)&&m!==t&&i(o,m,{get:()=>r[m],enumerable:!(U=k(r,m))||U.enumerable});return o};var p=(o,r,t)=>(t=o!=null?e(c(o)):{},a(r||!o||!o.__esModule?i(t,"default",{value:o,enumerable:!0}):t,o)),x=o=>a(i({},"__esModule",{value:!0}),o);var y={};w(y,{BookmarkUtils:()=>s.default,DownloadUtils:()=>f.default,SyncReportUtils:()=>l.default});module.exports=x(y);var l=p(require("../routes/journeys/view-report/sync/report/utils")),f=p(require("../routes/journeys/download-report/utils")),s=p(require("../routes/journeys/my-reports/bookmarks/utils"));0&&(module.exports={BookmarkUtils,DownloadUtils,SyncReportUtils});
2
2
  //# sourceMappingURL=index.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dpr/utils/index.ts"],
4
4
  "sourcesContent": ["import SyncReportUtils from '../routes/journeys/view-report/sync/report/utils'\nimport DownloadUtils from '../routes/journeys/download-report/utils'\nimport BookmarkUtils from '../routes/journeys/my-reports/bookmarks/utils'\n\nexport { SyncReportUtils, DownloadUtils, BookmarkUtils }\n"],
5
- "mappings": "6iBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,QAAA,oBAAAC,QAAA,sBAAAC,UAAA,eAAAC,EAAAL,GAAA,IAAAM,EAA4B,+DAC5BA,EAA0B,uDAC1BA,EAA0B",
5
+ "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,QAAA,oBAAAC,QAAA,sBAAAC,UAAA,eAAAC,EAAAL,GAAA,IAAAM,EAA4B,+DAC5BA,EAA0B,uDAC1BA,EAA0B",
6
6
  "names": ["utils_exports", "__export", "BookmarkUtils", "DownloadUtils", "SyncReportUtils", "__toCommonJS", "import_utils"]
7
7
  }
@@ -0,0 +1,2 @@
1
+ "use strict";var s=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var m=Object.prototype.hasOwnProperty;var d=(e,r)=>{for(var n in r)s(e,n,{get:r[n],enumerable:!0})},f=(e,r,n,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of g(r))!m.call(e,t)&&t!==n&&s(e,t,{get:()=>r[t],enumerable:!(a=u(r,t))||a.enumerable});return e};var l=e=>f(s({},"__esModule",{value:!0}),e);var q={};d(q,{getRequestParam:()=>p});module.exports=l(q);const p=({req:e,param:r,defaultValue:n,error:a,errorString:t})=>{const o=e.params[r];if(o===void 0&&a){const i=t||"Crtitical request parameter is undefined:";throw new Error(`${i}: paramname: ${r}`)}return o||n||""};0&&(module.exports={getRequestParam});
2
+ //# sourceMappingURL=indexedAccesHelper.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/dpr/utils/indexedAccesHelper.ts"],
4
+ "sourcesContent": ["import { Request } from 'express'\n\nexport const getRequestParam = ({\n req,\n param,\n defaultValue,\n error,\n errorString,\n}: {\n req: Request\n param: string\n defaultValue?: string\n error?: boolean\n errorString?: string\n}): string => {\n const value = req.params[param]\n\n if (value === undefined && error) {\n const errorMessage = errorString || 'Crtitical request parameter is undefined:'\n throw new Error(`${errorMessage}: paramname: ${param}`)\n }\n\n return value || defaultValue || ''\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,IAAA,eAAAC,EAAAH,GAEO,MAAME,EAAkB,CAAC,CAC9B,IAAAE,EACA,MAAAC,EACA,aAAAC,EACA,MAAAC,EACA,YAAAC,CACF,IAMc,CACZ,MAAMC,EAAQL,EAAI,OAAOC,CAAK,EAE9B,GAAII,IAAU,QAAaF,EAAO,CAChC,MAAMG,EAAeF,GAAe,4CACpC,MAAM,IAAI,MAAM,GAAGE,CAAY,gBAAgBL,CAAK,EAAE,CACxD,CAEA,OAAOI,GAASH,GAAgB,EAClC",
6
+ "names": ["indexedAccesHelper_exports", "__export", "getRequestParam", "__toCommonJS", "req", "param", "defaultValue", "error", "errorString", "value", "errorMessage"]
7
+ }
@@ -0,0 +1,24 @@
1
+ import { Request } from 'express'
2
+
3
+ export const getRequestParam = ({
4
+ req,
5
+ param,
6
+ defaultValue,
7
+ error,
8
+ errorString,
9
+ }: {
10
+ req: Request
11
+ param: string
12
+ defaultValue?: string
13
+ error?: boolean
14
+ errorString?: string
15
+ }): string => {
16
+ const value = req.params[param]
17
+
18
+ if (value === undefined && error) {
19
+ const errorMessage = errorString || 'Crtitical request parameter is undefined:'
20
+ throw new Error(`${errorMessage}: paramname: ${param}`)
21
+ }
22
+
23
+ return value || defaultValue || ''
24
+ }
@@ -1,2 +1,2 @@
1
- var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var k=(e,o)=>{for(var t in o)a(e,t,{get:o[t],enumerable:!0})},m=(e,o,t,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let s of f(o))!u.call(e,s)&&s!==t&&a(e,s,{get:()=>o[s],enumerable:!(n=p(o,s))||n.enumerable});return e};var R=e=>m(a({},"__esModule",{value:!0}),e);var P={};k(P,{default:()=>x,getValues:()=>r,setDdpPathToReqQuery:()=>d});module.exports=R(P);const r=e=>{const o=e.locals.csrfToken||"csrfToken",t=h(e);return{token:t.token,dprUser:t,...D(e),...g(e),...y(e),...b(e),csrfToken:o,nestedBaseUrl:e.locals.nestedBaseUrl}},b=e=>({definitions:e.locals.definitions||[]}),y=e=>({bookmarkingEnabled:e.locals.bookmarkingEnabled,downloadingEnabled:e.locals.downloadingEnabled}),D=e=>{const o=e.locals.requestedReports||[],t=e.locals.recentlyViewedReports||[],n=e.locals.bookmarks||[];return{requestedReports:o,recentlyViewedReports:t,bookmarks:n}},g=e=>{const{definitionsPath:o,dpdPathFromQuery:t,dpdPathFromConfig:n,pathSuffix:s}=e.locals;return{definitionsPath:o,dpdPathFromQuery:t,dpdPathFromConfig:n,pathSuffix:s||""}},h=e=>{const{dprUser:o}=e.locals,t=o?.id,n=o?.token,s=o?.activeCaseLoadId,i=o?.staffId,c=o?.emailAddress||"",l=o?.displayName||"";return{id:t,token:n,activeCaseLoadId:s,staffId:i,email:c,displayName:l}},d=(e,o)=>(o&&(e.query={...e.query,dataProductDefinitionsPath:o}),e.query);var x={getValues:r,setDdpPathToReqQuery:d};0&&(module.exports={getValues,setDdpPathToReqQuery});
1
+ "use strict";var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var k=(e,o)=>{for(var t in o)a(e,t,{get:o[t],enumerable:!0})},m=(e,o,t,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let s of f(o))!u.call(e,s)&&s!==t&&a(e,s,{get:()=>o[s],enumerable:!(n=p(o,s))||n.enumerable});return e};var R=e=>m(a({},"__esModule",{value:!0}),e);var P={};k(P,{default:()=>x,getValues:()=>r,setDdpPathToReqQuery:()=>d});module.exports=R(P);const r=e=>{const o=e.locals.csrfToken||"csrfToken",t=h(e);return{token:t.token,dprUser:t,...D(e),...g(e),...y(e),...b(e),csrfToken:o,nestedBaseUrl:e.locals.nestedBaseUrl}},b=e=>({definitions:e.locals.definitions||[]}),y=e=>({bookmarkingEnabled:e.locals.bookmarkingEnabled,downloadingEnabled:e.locals.downloadingEnabled}),D=e=>{const o=e.locals.requestedReports||[],t=e.locals.recentlyViewedReports||[],n=e.locals.bookmarks||[];return{requestedReports:o,recentlyViewedReports:t,bookmarks:n}},g=e=>{const{definitionsPath:o,dpdPathFromQuery:t,dpdPathFromConfig:n,pathSuffix:s}=e.locals;return{definitionsPath:o,dpdPathFromQuery:t,dpdPathFromConfig:n,pathSuffix:s||""}},h=e=>{const{dprUser:o}=e.locals,t=o?.id,n=o?.token,s=o?.activeCaseLoadId,i=o?.staffId,c=o?.emailAddress||"",l=o?.displayName||"";return{id:t,token:n,activeCaseLoadId:s,staffId:i,email:c,displayName:l}},d=(e,o)=>(o&&(e.query={...e.query,dataProductDefinitionsPath:o}),e.query);var x={getValues:r,setDdpPathToReqQuery:d};0&&(module.exports={getValues,setDdpPathToReqQuery});
2
2
  //# sourceMappingURL=localsHelper.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dpr/utils/localsHelper.ts"],
4
- "sourcesContent": ["import type { Response, Request } from 'express'\nimport { StoredReportData } from '../types/UserReports'\nimport { BookmarkStoreData } from '../types/Bookmark'\n\nexport const getValues = (res: Response) => {\n const csrfToken = (res.locals.csrfToken as unknown as string) || 'csrfToken'\n const dprUser = setDprUserContext(res)\n\n return {\n token: dprUser.token,\n dprUser,\n ...setUserReports(res),\n ...setDpdPaths(res),\n ...setFeatures(res),\n ...setDefinitions(res),\n csrfToken,\n nestedBaseUrl: res.locals.nestedBaseUrl,\n }\n}\n\nconst setDefinitions = (res: Response) => {\n const definitions = res.locals.definitions || []\n return {\n definitions,\n }\n}\n\nconst setFeatures = (res: Response) => {\n return {\n bookmarkingEnabled: <boolean>res.locals.bookmarkingEnabled,\n downloadingEnabled: <boolean>res.locals.downloadingEnabled,\n }\n}\n\nconst setUserReports = (res: Response) => {\n const requestedReports: StoredReportData[] = res.locals.requestedReports || []\n const recentlyViewedReports: StoredReportData[] = res.locals.recentlyViewedReports || []\n const bookmarks: BookmarkStoreData[] = res.locals.bookmarks || []\n\n return {\n requestedReports,\n recentlyViewedReports,\n bookmarks,\n }\n}\n\nconst setDpdPaths = (res: Response) => {\n const { definitionsPath, dpdPathFromQuery, dpdPathFromConfig, pathSuffix } = res.locals\n return {\n definitionsPath,\n dpdPathFromQuery,\n dpdPathFromConfig,\n pathSuffix: pathSuffix || '',\n }\n}\n\nconst setDprUserContext = (res: Response) => {\n const { dprUser } = res.locals\n const id = dprUser?.id\n const token = dprUser?.token\n const activeCaseLoadId = dprUser?.activeCaseLoadId\n const staffId = dprUser?.staffId\n const email = dprUser?.emailAddress || ''\n const displayName = dprUser?.displayName || ''\n\n return {\n id,\n token,\n activeCaseLoadId,\n staffId,\n email,\n displayName,\n }\n}\n\nexport const setDdpPathToReqQuery = (req: Request, value: string) => {\n if (value) {\n req.query = {\n ...req.query,\n dataProductDefinitionsPath: value,\n }\n }\n\n return req.query\n}\n\nexport default {\n getValues,\n setDdpPathToReqQuery,\n}\n"],
5
- "mappings": "4ZAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,cAAAC,EAAA,yBAAAC,IAAA,eAAAC,EAAAL,GAIO,MAAMG,EAAaG,GAAkB,CAC1C,MAAMC,EAAaD,EAAI,OAAO,WAAmC,YAC3DE,EAAUC,EAAkBH,CAAG,EAErC,MAAO,CACL,MAAOE,EAAQ,MACf,QAAAA,EACA,GAAGE,EAAeJ,CAAG,EACrB,GAAGK,EAAYL,CAAG,EAClB,GAAGM,EAAYN,CAAG,EAClB,GAAGO,EAAeP,CAAG,EACrB,UAAAC,EACA,cAAeD,EAAI,OAAO,aAC5B,CACF,EAEMO,EAAkBP,IAEf,CACL,YAFkBA,EAAI,OAAO,aAAe,CAAC,CAG/C,GAGIM,EAAeN,IACZ,CACL,mBAA6BA,EAAI,OAAO,mBACxC,mBAA6BA,EAAI,OAAO,kBAC1C,GAGII,EAAkBJ,GAAkB,CACxC,MAAMQ,EAAuCR,EAAI,OAAO,kBAAoB,CAAC,EACvES,EAA4CT,EAAI,OAAO,uBAAyB,CAAC,EACjFU,EAAiCV,EAAI,OAAO,WAAa,CAAC,EAEhE,MAAO,CACL,iBAAAQ,EACA,sBAAAC,EACA,UAAAC,CACF,CACF,EAEML,EAAeL,GAAkB,CACrC,KAAM,CAAE,gBAAAW,EAAiB,iBAAAC,EAAkB,kBAAAC,EAAmB,WAAAC,CAAW,EAAId,EAAI,OACjF,MAAO,CACL,gBAAAW,EACA,iBAAAC,EACA,kBAAAC,EACA,WAAYC,GAAc,EAC5B,CACF,EAEMX,EAAqBH,GAAkB,CAC3C,KAAM,CAAE,QAAAE,CAAQ,EAAIF,EAAI,OAClBe,EAAKb,GAAS,GACdc,EAAQd,GAAS,MACjBe,EAAmBf,GAAS,iBAC5BgB,EAAUhB,GAAS,QACnBiB,EAAQjB,GAAS,cAAgB,GACjCkB,EAAclB,GAAS,aAAe,GAE5C,MAAO,CACL,GAAAa,EACA,MAAAC,EACA,iBAAAC,EACA,QAAAC,EACA,MAAAC,EACA,YAAAC,CACF,CACF,EAEatB,EAAuB,CAACuB,EAAcC,KAC7CA,IACFD,EAAI,MAAQ,CACV,GAAGA,EAAI,MACP,2BAA4BC,CAC9B,GAGKD,EAAI,OAGb,IAAOzB,EAAQ,CACb,UAAAC,EACA,qBAAAC,CACF",
4
+ "sourcesContent": ["import type { Response, Request } from 'express'\nimport { StoredReportData } from '../types/UserReports'\nimport { BookmarkStoreData } from '../types/Bookmark'\n\nexport const getValues = (res: Response) => {\n const csrfToken = (res.locals['csrfToken'] as unknown as string) || 'csrfToken'\n const dprUser = setDprUserContext(res)\n\n return {\n token: dprUser.token,\n dprUser,\n ...setUserReports(res),\n ...setDpdPaths(res),\n ...setFeatures(res),\n ...setDefinitions(res),\n csrfToken,\n nestedBaseUrl: res.locals['nestedBaseUrl'],\n }\n}\n\nconst setDefinitions = (res: Response) => {\n const definitions = res.locals['definitions'] || []\n return {\n definitions,\n }\n}\n\nconst setFeatures = (res: Response) => {\n return {\n bookmarkingEnabled: <boolean>res.locals['bookmarkingEnabled'],\n downloadingEnabled: <boolean>res.locals['downloadingEnabled'],\n }\n}\n\nconst setUserReports = (res: Response) => {\n const requestedReports: StoredReportData[] = res.locals['requestedReports'] || []\n const recentlyViewedReports: StoredReportData[] = res.locals['recentlyViewedReports'] || []\n const bookmarks: BookmarkStoreData[] = res.locals['bookmarks'] || []\n\n return {\n requestedReports,\n recentlyViewedReports,\n bookmarks,\n }\n}\n\nconst setDpdPaths = (res: Response) => {\n const { definitionsPath, dpdPathFromQuery, dpdPathFromConfig, pathSuffix } = res.locals\n return {\n definitionsPath,\n dpdPathFromQuery,\n dpdPathFromConfig,\n pathSuffix: pathSuffix || '',\n }\n}\n\nconst setDprUserContext = (res: Response) => {\n const { dprUser } = res.locals\n const id = dprUser?.id\n const token = dprUser?.token\n const activeCaseLoadId = dprUser?.activeCaseLoadId\n const staffId = dprUser?.staffId\n const email = dprUser?.emailAddress || ''\n const displayName = dprUser?.displayName || ''\n\n return {\n id,\n token,\n activeCaseLoadId,\n staffId,\n email,\n displayName,\n }\n}\n\nexport const setDdpPathToReqQuery = (req: Request, value: string) => {\n if (value) {\n req.query = {\n ...req.query,\n dataProductDefinitionsPath: value,\n }\n }\n\n return req.query\n}\n\nexport default {\n getValues,\n setDdpPathToReqQuery,\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,cAAAC,EAAA,yBAAAC,IAAA,eAAAC,EAAAL,GAIO,MAAMG,EAAaG,GAAkB,CAC1C,MAAMC,EAAaD,EAAI,OAAO,WAAsC,YAC9DE,EAAUC,EAAkBH,CAAG,EAErC,MAAO,CACL,MAAOE,EAAQ,MACf,QAAAA,EACA,GAAGE,EAAeJ,CAAG,EACrB,GAAGK,EAAYL,CAAG,EAClB,GAAGM,EAAYN,CAAG,EAClB,GAAGO,EAAeP,CAAG,EACrB,UAAAC,EACA,cAAeD,EAAI,OAAO,aAC5B,CACF,EAEMO,EAAkBP,IAEf,CACL,YAFkBA,EAAI,OAAO,aAAkB,CAAC,CAGlD,GAGIM,EAAeN,IACZ,CACL,mBAA6BA,EAAI,OAAO,mBACxC,mBAA6BA,EAAI,OAAO,kBAC1C,GAGII,EAAkBJ,GAAkB,CACxC,MAAMQ,EAAuCR,EAAI,OAAO,kBAAuB,CAAC,EAC1ES,EAA4CT,EAAI,OAAO,uBAA4B,CAAC,EACpFU,EAAiCV,EAAI,OAAO,WAAgB,CAAC,EAEnE,MAAO,CACL,iBAAAQ,EACA,sBAAAC,EACA,UAAAC,CACF,CACF,EAEML,EAAeL,GAAkB,CACrC,KAAM,CAAE,gBAAAW,EAAiB,iBAAAC,EAAkB,kBAAAC,EAAmB,WAAAC,CAAW,EAAId,EAAI,OACjF,MAAO,CACL,gBAAAW,EACA,iBAAAC,EACA,kBAAAC,EACA,WAAYC,GAAc,EAC5B,CACF,EAEMX,EAAqBH,GAAkB,CAC3C,KAAM,CAAE,QAAAE,CAAQ,EAAIF,EAAI,OAClBe,EAAKb,GAAS,GACdc,EAAQd,GAAS,MACjBe,EAAmBf,GAAS,iBAC5BgB,EAAUhB,GAAS,QACnBiB,EAAQjB,GAAS,cAAgB,GACjCkB,EAAclB,GAAS,aAAe,GAE5C,MAAO,CACL,GAAAa,EACA,MAAAC,EACA,iBAAAC,EACA,QAAAC,EACA,MAAAC,EACA,YAAAC,CACF,CACF,EAEatB,EAAuB,CAACuB,EAAcC,KAC7CA,IACFD,EAAI,MAAQ,CACV,GAAGA,EAAI,MACP,2BAA4BC,CAC9B,GAGKD,EAAI,OAGb,IAAOzB,EAAQ,CACb,UAAAC,EACA,qBAAAC,CACF",
6
6
  "names": ["localsHelper_exports", "__export", "localsHelper_default", "getValues", "setDdpPathToReqQuery", "__toCommonJS", "res", "csrfToken", "dprUser", "setDprUserContext", "setUserReports", "setDpdPaths", "setFeatures", "setDefinitions", "requestedReports", "recentlyViewedReports", "bookmarks", "definitionsPath", "dpdPathFromQuery", "dpdPathFromConfig", "pathSuffix", "id", "token", "activeCaseLoadId", "staffId", "email", "displayName", "req", "value"]
7
7
  }
@@ -3,7 +3,7 @@ import { StoredReportData } from '../types/UserReports'
3
3
  import { BookmarkStoreData } from '../types/Bookmark'
4
4
 
5
5
  export const getValues = (res: Response) => {
6
- const csrfToken = (res.locals.csrfToken as unknown as string) || 'csrfToken'
6
+ const csrfToken = (res.locals['csrfToken'] as unknown as string) || 'csrfToken'
7
7
  const dprUser = setDprUserContext(res)
8
8
 
9
9
  return {
@@ -14,12 +14,12 @@ export const getValues = (res: Response) => {
14
14
  ...setFeatures(res),
15
15
  ...setDefinitions(res),
16
16
  csrfToken,
17
- nestedBaseUrl: res.locals.nestedBaseUrl,
17
+ nestedBaseUrl: res.locals['nestedBaseUrl'],
18
18
  }
19
19
  }
20
20
 
21
21
  const setDefinitions = (res: Response) => {
22
- const definitions = res.locals.definitions || []
22
+ const definitions = res.locals['definitions'] || []
23
23
  return {
24
24
  definitions,
25
25
  }
@@ -27,15 +27,15 @@ const setDefinitions = (res: Response) => {
27
27
 
28
28
  const setFeatures = (res: Response) => {
29
29
  return {
30
- bookmarkingEnabled: <boolean>res.locals.bookmarkingEnabled,
31
- downloadingEnabled: <boolean>res.locals.downloadingEnabled,
30
+ bookmarkingEnabled: <boolean>res.locals['bookmarkingEnabled'],
31
+ downloadingEnabled: <boolean>res.locals['downloadingEnabled'],
32
32
  }
33
33
  }
34
34
 
35
35
  const setUserReports = (res: Response) => {
36
- const requestedReports: StoredReportData[] = res.locals.requestedReports || []
37
- const recentlyViewedReports: StoredReportData[] = res.locals.recentlyViewedReports || []
38
- const bookmarks: BookmarkStoreData[] = res.locals.bookmarks || []
36
+ const requestedReports: StoredReportData[] = res.locals['requestedReports'] || []
37
+ const recentlyViewedReports: StoredReportData[] = res.locals['recentlyViewedReports'] || []
38
+ const bookmarks: BookmarkStoreData[] = res.locals['bookmarks'] || []
39
39
 
40
40
  return {
41
41
  requestedReports,
@@ -1,2 +1,2 @@
1
- var p=Object.create;var a=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var f=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var d=(o,e)=>{for(var t in e)a(o,t,{get:e[t],enumerable:!0})},g=(o,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of c(e))!b.call(o,r)&&r!==t&&a(o,r,{get:()=>e[r],enumerable:!(s=u(e,r))||s.enumerable});return o};var l=(o,e,t)=>(t=o!=null?p(f(o)):{},g(e||!o||!o.__esModule?a(t,"default",{value:o,enumerable:!0}):t,o)),L=o=>g(a({},"__esModule",{value:!0}),o);var x={};d(x,{default:()=>v,logger:()=>i});module.exports=L(x);var n=l(require("bunyan")),m=l(require("bunyan-format"));const S=(0,m.default)({outputMode:"short",color:!1}),P=process.env.SUPPRESS_LOGS,i=n.default.createLogger({name:"Digital Prison Reporting:",stream:S,level:P?n.default.FATAL+1:"debug"});var v=i;0&&(module.exports={logger});
1
+ "use strict";var p=Object.create;var a=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var f=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var d=(o,e)=>{for(var t in e)a(o,t,{get:e[t],enumerable:!0})},g=(o,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of c(e))!b.call(o,r)&&r!==t&&a(o,r,{get:()=>e[r],enumerable:!(s=u(e,r))||s.enumerable});return o};var l=(o,e,t)=>(t=o!=null?p(f(o)):{},g(e||!o||!o.__esModule?a(t,"default",{value:o,enumerable:!0}):t,o)),L=o=>g(a({},"__esModule",{value:!0}),o);var x={};d(x,{default:()=>v,logger:()=>i});module.exports=L(x);var n=l(require("bunyan")),m=l(require("bunyan-format"));const S=(0,m.default)({outputMode:"short",color:!1}),P=process.env.SUPPRESS_LOGS,i=n.default.createLogger({name:"Digital Prison Reporting:",stream:S,level:P?n.default.FATAL+1:"debug"});var v=i;0&&(module.exports={logger});
2
2
  //# sourceMappingURL=logger.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dpr/utils/logger.ts"],
4
- "sourcesContent": ["import bunyan from 'bunyan'\nimport bunyanFormat from 'bunyan-format'\n\nconst formatOut = bunyanFormat({ outputMode: 'short', color: false })\n\nconst disableLogs = process.env.SUPPRESS_LOGS\nexport const logger = bunyan.createLogger({\n name: 'Digital Prison Reporting:',\n stream: formatOut,\n level: disableLogs ? bunyan.FATAL + 1 : 'debug',\n})\n\nexport default logger\n"],
5
- "mappings": "6iBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,WAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EAAmB,qBACnBC,EAAyB,4BAEzB,MAAMC,KAAY,EAAAC,SAAa,CAAE,WAAY,QAAS,MAAO,EAAM,CAAC,EAE9DC,EAAc,QAAQ,IAAI,cACnBN,EAAS,EAAAO,QAAO,aAAa,CACxC,KAAM,4BACN,OAAQH,EACR,MAAOE,EAAc,EAAAC,QAAO,MAAQ,EAAI,OAC1C,CAAC,EAED,IAAOR,EAAQC",
4
+ "sourcesContent": ["import bunyan from 'bunyan'\nimport bunyanFormat from 'bunyan-format'\n\nconst formatOut = bunyanFormat({ outputMode: 'short', color: false })\n\nconst disableLogs = process.env['SUPPRESS_LOGS']\nexport const logger = bunyan.createLogger({\n name: 'Digital Prison Reporting:',\n stream: formatOut,\n level: disableLogs ? bunyan.FATAL + 1 : 'debug',\n})\n\nexport default logger\n"],
5
+ "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,WAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EAAmB,qBACnBC,EAAyB,4BAEzB,MAAMC,KAAY,EAAAC,SAAa,CAAE,WAAY,QAAS,MAAO,EAAM,CAAC,EAE9DC,EAAc,QAAQ,IAAI,cACnBN,EAAS,EAAAO,QAAO,aAAa,CACxC,KAAM,4BACN,OAAQH,EACR,MAAOE,EAAc,EAAAC,QAAO,MAAQ,EAAI,OAC1C,CAAC,EAED,IAAOR,EAAQC",
6
6
  "names": ["logger_exports", "__export", "logger_default", "logger", "__toCommonJS", "import_bunyan", "import_bunyan_format", "formatOut", "bunyanFormat", "disableLogs", "bunyan"]
7
7
  }
@@ -3,7 +3,7 @@ import bunyanFormat from 'bunyan-format'
3
3
 
4
4
  const formatOut = bunyanFormat({ outputMode: 'short', color: false })
5
5
 
6
- const disableLogs = process.env.SUPPRESS_LOGS
6
+ const disableLogs = process.env['SUPPRESS_LOGS']
7
7
  export const logger = bunyan.createLogger({
8
8
  name: 'Digital Prison Reporting:',
9
9
  stream: formatOut,