@ministryofjustice/hmpps-digital-prison-reporting-frontend 4.28.0 → 4.28.2
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.
- package/dpr/DprClientClass.js +43 -0
- package/dpr/DprClientClass.js.map +7 -0
- package/dpr/{DprClientClass.mjs → DprClientClass.ts} +1 -0
- package/dpr/DprFormValidationClass.js +157 -0
- package/dpr/DprFormValidationClass.js.map +7 -0
- package/dpr/{DprFormValidationClass.mjs → DprFormValidationClass.ts} +2 -1
- package/dpr/DprGenericFormClass.js +66 -0
- package/dpr/DprGenericFormClass.js.map +7 -0
- package/dpr/{DprGenericFormClass.mjs → DprGenericFormClass.ts} +2 -1
- package/dpr/DprLoadingHelper.js +51 -0
- package/dpr/DprLoadingHelper.js.map +7 -0
- package/dpr/{DprLoadingHelper.mjs → DprLoadingHelper.ts} +1 -0
- package/dpr/DprPollingStatusClass.js +79 -0
- package/dpr/DprPollingStatusClass.js.map +7 -0
- package/dpr/{DprPollingStatusClass.mjs → DprPollingStatusClass.ts} +2 -1
- package/dpr/DprQueryParamClass.js +231 -0
- package/dpr/DprQueryParamClass.js.map +7 -0
- package/dpr/{DprQueryParamClass.mjs → DprQueryParamClass.ts} +2 -1
- package/dpr/DprSyncLoading.js +44 -0
- package/dpr/DprSyncLoading.js.map +7 -0
- package/dpr/{DprSyncLoading.mjs → DprSyncLoading.ts} +2 -1
- package/dpr/all.js +111 -0
- package/dpr/all.js.map +7 -0
- package/dpr/{all.mjs → all.ts} +29 -28
- package/dpr/assets/app.js +1 -1
- package/dpr/assets/app.js.map +2 -2
- package/dpr/components/_async/async-filters-form/clientClass.js +76 -0
- package/dpr/components/_async/async-filters-form/clientClass.js.map +7 -0
- package/dpr/components/_async/async-filters-form/{clientClass.mjs → clientClass.ts} +3 -2
- package/dpr/components/_async/async-filters-form/sortByTemplate.js.map +1 -1
- package/dpr/components/_async/async-filters-form/types.d.js.map +1 -1
- package/dpr/components/_async/async-filters-form/utils.js.map +1 -1
- package/dpr/components/_async/async-polling/clientClass.js +78 -0
- package/dpr/components/_async/async-polling/clientClass.js.map +7 -0
- package/dpr/components/_async/async-polling/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_catalogue/catalogue/types.js.map +1 -1
- package/dpr/components/_catalogue/catalogue/utils.js.map +1 -1
- package/dpr/components/_catalogue/catalogue-filter-by-type/clientClass.js +94 -0
- package/dpr/components/_catalogue/catalogue-filter-by-type/clientClass.js.map +7 -0
- package/dpr/components/_catalogue/catalogue-filter-by-type/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_catalogue/catalogue-filters/clientClass.js +70 -0
- package/dpr/components/_catalogue/catalogue-filters/clientClass.js.map +7 -0
- package/dpr/components/_catalogue/catalogue-filters/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_catalogue/catalogue-list/utils.js.map +1 -1
- package/dpr/components/_catalogue/catalogue-search/clientClass.js +106 -0
- package/dpr/components/_catalogue/catalogue-search/clientClass.js.map +7 -0
- package/dpr/components/_catalogue/catalogue-search/{clientClass.mjs → clientClass.ts} +3 -2
- package/dpr/components/_catalogue/catalogue-unauthorised-toggle/clientClass.js +135 -0
- package/dpr/components/_catalogue/catalogue-unauthorised-toggle/clientClass.js.map +7 -0
- package/dpr/components/_catalogue/catalogue-unauthorised-toggle/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_charts/chart/Chart.js.map +1 -1
- package/dpr/components/_charts/chart/ChartColours.js.map +1 -1
- package/dpr/components/_charts/chart/ChartTimeseries.js.map +1 -1
- package/dpr/components/_charts/chart/bar/BarChart.js.map +1 -1
- package/dpr/components/_charts/chart/bar/clientClass.js +98 -0
- package/dpr/components/_charts/chart/bar/clientClass.js.map +7 -0
- package/dpr/components/_charts/chart/bar/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_charts/chart/bar/types.js.map +1 -1
- package/dpr/components/_charts/chart/bar/validate.js.map +1 -1
- package/dpr/components/_charts/chart/bar-timeseries/BarTimeseriesChart.js.map +1 -1
- package/dpr/components/_charts/chart/bar-timeseries/types.js.map +1 -1
- package/dpr/components/_charts/chart/bar-timeseries/validate.js.map +1 -1
- package/dpr/components/_charts/chart/buckets/Buckets.js.map +1 -1
- package/dpr/components/_charts/chart/buckets/types.js.map +1 -1
- package/dpr/components/_charts/chart/buckets/validate.js.map +1 -1
- package/dpr/components/_charts/chart/chart-config.js.map +1 -1
- package/dpr/components/_charts/chart/clientClass.js +136 -0
- package/dpr/components/_charts/chart/clientClass.js.map +7 -0
- package/dpr/components/_charts/chart/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_charts/chart/doughnut/DoughnutChart.js.map +1 -1
- package/dpr/components/_charts/chart/doughnut/clientClass.js +170 -0
- package/dpr/components/_charts/chart/doughnut/clientClass.js.map +7 -0
- package/dpr/components/_charts/chart/doughnut/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_charts/chart/doughnut/types.js.map +1 -1
- package/dpr/components/_charts/chart/doughnut/validate.js.map +1 -1
- package/dpr/components/_charts/chart/heatmap/HeatmapChart.js.map +1 -1
- package/dpr/components/_charts/chart/heatmap/clientClass.js +118 -0
- package/dpr/components/_charts/chart/heatmap/clientClass.js.map +7 -0
- package/dpr/components/_charts/chart/heatmap/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_charts/chart/heatmap/types.js.map +1 -1
- package/dpr/components/_charts/chart/heatmap/validate.js.map +1 -1
- package/dpr/components/_charts/chart/line/LineChart.js.map +1 -1
- package/dpr/components/_charts/chart/line/clientClass.js +93 -0
- package/dpr/components/_charts/chart/line/clientClass.js.map +7 -0
- package/dpr/components/_charts/chart/line/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_charts/chart/line/types.js.map +1 -1
- package/dpr/components/_charts/chart/line/validate.js.map +1 -1
- package/dpr/components/_charts/chart/line-timeseries/LineTimeseriesChart.js.map +1 -1
- package/dpr/components/_charts/chart/line-timeseries/types.js.map +1 -1
- package/dpr/components/_charts/chart/line-timeseries/validate.js.map +1 -1
- package/dpr/components/_charts/utils.js.map +1 -1
- package/dpr/components/_dashboards/dashboard-list/types.js.map +1 -1
- package/dpr/components/_dashboards/dashboard-list/utils.js.map +1 -1
- package/dpr/components/_dashboards/dashboard-list/validate.js.map +1 -1
- package/dpr/components/_dashboards/dashboard-visualisation/Validate.js.map +1 -1
- package/dpr/components/_dashboards/dashboard-visualisation/types.js.map +1 -1
- package/dpr/components/_dashboards/scorecard/Scorecard.js.map +1 -1
- package/dpr/components/_dashboards/scorecard/clientClass.js +50 -0
- package/dpr/components/_dashboards/scorecard/clientClass.js.map +7 -0
- package/dpr/components/_dashboards/scorecard/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_dashboards/scorecard/types.js.map +1 -1
- package/dpr/components/_dashboards/scorecard/utils.js.map +1 -1
- package/dpr/components/_dashboards/scorecard/validate.js.map +1 -1
- package/dpr/components/_dashboards/scorecard-group/ScorecardGroup.js.map +1 -1
- package/dpr/components/_dashboards/scorecard-group/types.js.map +1 -1
- package/dpr/components/_dashboards/scorecard-group/validate.js.map +1 -1
- package/dpr/components/_filters/filter-input/enum.js.map +1 -1
- package/dpr/components/_filters/filter-input/filters.js.map +1 -1
- package/dpr/components/_filters/filter-input/types.d.js.map +1 -1
- package/dpr/components/_filters/filters-form/clientClass.js +104 -0
- package/dpr/components/_filters/filters-form/clientClass.js.map +7 -0
- package/dpr/components/_filters/filters-form/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_filters/filters-interactive/clientClass.js +55 -0
- package/dpr/components/_filters/filters-interactive/clientClass.js.map +7 -0
- package/dpr/components/_filters/filters-interactive/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_filters/filters-selected/clientClass.js +396 -0
- package/dpr/components/_filters/filters-selected/clientClass.js.map +7 -0
- package/dpr/components/_filters/filters-selected/{clientClass.mjs → clientClass.ts} +7 -7
- package/dpr/components/_filters/filters-selected/utils.js.map +1 -1
- package/dpr/components/_filters/filtersTypeEnum.js.map +1 -1
- package/dpr/components/_filters/types.d.js.map +1 -1
- package/dpr/components/_filters/utils.js.map +1 -1
- package/dpr/components/_inputs/autocomplete-text-input/clientClass.js +153 -0
- package/dpr/components/_inputs/autocomplete-text-input/clientClass.js.map +7 -0
- package/dpr/components/_inputs/autocomplete-text-input/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_inputs/autocomplete-text-input/utils.js.map +1 -1
- package/dpr/components/_inputs/date-input/clientClass.js +109 -0
- package/dpr/components/_inputs/date-input/clientClass.js.map +7 -0
- package/dpr/components/_inputs/date-input/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_inputs/date-input/utils.js.map +1 -1
- package/dpr/components/_inputs/date-range/clientClass.js +206 -0
- package/dpr/components/_inputs/date-range/clientClass.js.map +7 -0
- package/dpr/components/_inputs/date-range/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_inputs/date-range/types.js.map +1 -1
- package/dpr/components/_inputs/date-range/utils.js.map +1 -1
- package/dpr/components/_inputs/granular-date-range/clientClass.js +245 -0
- package/dpr/components/_inputs/granular-date-range/clientClass.js.map +7 -0
- package/dpr/components/_inputs/granular-date-range/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_inputs/granular-date-range/types.js.map +1 -1
- package/dpr/components/_inputs/granular-date-range/utils.js.map +1 -1
- package/dpr/components/_inputs/multi-select/utils.js.map +1 -1
- package/dpr/components/_inputs/start-end-date/utils.js.map +1 -1
- package/dpr/components/_reports/report-actions/actionsTemplate.js.map +1 -1
- package/dpr/components/_reports/report-actions/clientClass.js +103 -0
- package/dpr/components/_reports/report-actions/clientClass.js.map +7 -0
- package/dpr/components/_reports/report-actions/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_reports/report-actions/types.d.js.map +1 -1
- package/dpr/components/_reports/report-actions/utils.js.map +1 -1
- package/dpr/components/_reports/report-columns-form/clientClass.js +76 -0
- package/dpr/components/_reports/report-columns-form/clientClass.js.map +7 -0
- package/dpr/components/_reports/report-columns-form/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_reports/report-columns-form/types.d.js.map +1 -1
- package/dpr/components/_reports/report-columns-form/utils.js.map +1 -1
- package/dpr/components/_reports/report-data-table/clientClass.js +80 -0
- package/dpr/components/_reports/report-data-table/clientClass.js.map +7 -0
- package/dpr/components/_reports/report-data-table/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_reports/report-data-table/types.d.js.map +1 -1
- package/dpr/components/_reports/report-data-table/utils.js.map +1 -1
- package/dpr/components/_reports/report-download-message/clientClass.js +42 -0
- package/dpr/components/_reports/report-download-message/clientClass.js.map +7 -0
- package/dpr/components/_reports/report-download-message/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_reports/report-pagination/clientClass.js +61 -0
- package/dpr/components/_reports/report-pagination/clientClass.js.map +7 -0
- package/dpr/components/_reports/report-pagination/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/_reports/report-pagination/types.d.js.map +1 -1
- package/dpr/components/_reports/report-pagination/utils.js.map +1 -1
- package/dpr/components/_reports/report-totals/utils.js.map +1 -1
- package/dpr/components/_sync/sync-load/view.njk +1 -1
- package/dpr/components/bookmark-toggle/clientClass.js +111 -0
- package/dpr/components/bookmark-toggle/clientClass.js.map +7 -0
- package/dpr/components/bookmark-toggle/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/card-group/clientClass.js +53 -0
- package/dpr/components/card-group/clientClass.js.map +7 -0
- package/dpr/components/card-group/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/card-group/utils.js.map +1 -1
- package/dpr/components/report-list/defaultTokenProvider.js.map +1 -1
- package/dpr/components/report-list/types.d.js.map +1 -1
- package/dpr/components/report-list/utils.js.map +1 -1
- package/dpr/components/show-more/clientClass.js +63 -0
- package/dpr/components/show-more/clientClass.js.map +7 -0
- package/dpr/components/show-more/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/show-more/utils.js.map +1 -1
- package/dpr/components/user-reports/bookmarks/utils.js.map +1 -1
- package/dpr/components/user-reports/requested/clientClass.js +132 -0
- package/dpr/components/user-reports/requested/clientClass.js.map +7 -0
- package/dpr/components/user-reports/requested/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/user-reports/requested/utils.js.map +1 -1
- package/dpr/components/user-reports/types.d.js.map +1 -1
- package/dpr/components/user-reports/utils.js.map +1 -1
- package/dpr/components/user-reports/viewed/clientClass.js +102 -0
- package/dpr/components/user-reports/viewed/clientClass.js.map +7 -0
- package/dpr/components/user-reports/viewed/{clientClass.mjs → clientClass.ts} +2 -1
- package/dpr/components/user-reports/viewed/utils.js.map +1 -1
- package/dpr/data/agentConfig.js.map +1 -1
- package/dpr/data/dashboardClient.js.map +1 -1
- package/dpr/data/dprReportingClient.js.map +1 -1
- package/dpr/data/missingReportClient.js.map +1 -1
- package/dpr/data/productCollectionClient.js.map +1 -1
- package/dpr/data/reportDataStore.js.map +1 -1
- package/dpr/data/reportingClient.js.map +1 -1
- package/dpr/data/restClient.js.map +1 -1
- package/dpr/data/types.d.js.map +1 -1
- package/dpr/middleware/reportAuthoriser.js.map +1 -1
- package/dpr/middleware/setUpDprResources.js.map +1 -1
- package/dpr/middleware/setUpNestedRoute.js.map +1 -1
- package/dpr/routes/index.js.map +1 -1
- package/dpr/routes/journeys/api-failures.cy.js.map +1 -1
- package/dpr/routes/journeys/download-report/controller.js.map +1 -1
- package/dpr/routes/journeys/download-report/request-download/form/controller.js.map +1 -1
- package/dpr/routes/journeys/download-report/request-download/form/routes.js.map +1 -1
- package/dpr/routes/journeys/download-report/request-download/form/submitted/controller.js.map +1 -1
- package/dpr/routes/journeys/download-report/request-download/form/submitted/routes.js.map +1 -1
- package/dpr/routes/journeys/download-report/request-download/form/submitted/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/download-report/request-download/form/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/download-report/request-download/routes.js.map +1 -1
- package/dpr/routes/journeys/download-report/request-download/service.js.map +1 -1
- package/dpr/routes/journeys/download-report/routes.js.map +1 -1
- package/dpr/routes/journeys/download-report/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/download-report/utils.js.map +1 -1
- package/dpr/routes/journeys/my-reports/bookmarks/controller.js.map +1 -1
- package/dpr/routes/journeys/my-reports/bookmarks/list/controller.js.map +1 -1
- package/dpr/routes/journeys/my-reports/bookmarks/list/routes.js.map +1 -1
- package/dpr/routes/journeys/my-reports/bookmarks/list/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/my-reports/bookmarks/routes.js.map +1 -1
- package/dpr/routes/journeys/my-reports/bookmarks/service.js.map +1 -1
- package/dpr/routes/journeys/my-reports/bookmarks/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/my-reports/bookmarks/utils.js.map +1 -1
- package/dpr/routes/journeys/my-reports/recently-viewed/controller.js.map +1 -1
- package/dpr/routes/journeys/my-reports/recently-viewed/list/controller.js.map +1 -1
- package/dpr/routes/journeys/my-reports/recently-viewed/list/routes.js.map +1 -1
- package/dpr/routes/journeys/my-reports/recently-viewed/list/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/my-reports/recently-viewed/routes.js.map +1 -1
- package/dpr/routes/journeys/my-reports/recently-viewed/service.js.map +1 -1
- package/dpr/routes/journeys/my-reports/requested-reports/controller.js.map +1 -1
- package/dpr/routes/journeys/my-reports/requested-reports/list/controller.js.map +1 -1
- package/dpr/routes/journeys/my-reports/requested-reports/list/routes.js.map +1 -1
- package/dpr/routes/journeys/my-reports/requested-reports/list/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/my-reports/requested-reports/routes.js.map +1 -1
- package/dpr/routes/journeys/my-reports/requested-reports/service.js.map +1 -1
- package/dpr/routes/journeys/my-reports/routes.js.map +1 -1
- package/dpr/routes/journeys/product-collection/routes.js.map +1 -1
- package/dpr/routes/journeys/product-collection/selected/controller.js.map +1 -1
- package/dpr/routes/journeys/product-collection/selected/routes.js.map +1 -1
- package/dpr/routes/journeys/product-collection/selected/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/product-collection/selected/validation.js.map +1 -1
- package/dpr/routes/journeys/request-missing-report/form/controller.js.map +1 -1
- package/dpr/routes/journeys/request-missing-report/form/routes.js.map +1 -1
- package/dpr/routes/journeys/request-missing-report/form/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/request-missing-report/form/validation.js.map +1 -1
- package/dpr/routes/journeys/request-missing-report/routes.js.map +1 -1
- package/dpr/routes/journeys/request-missing-report/submitted/controller.js.map +1 -1
- package/dpr/routes/journeys/request-missing-report/submitted/routes.js.map +1 -1
- package/dpr/routes/journeys/request-missing-report/submitted/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/request-missing-report/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/request-report/controller.js.map +1 -1
- package/dpr/routes/journeys/request-report/filters/controller.js.map +1 -1
- package/dpr/routes/journeys/request-report/filters/routes.js.map +1 -1
- package/dpr/routes/journeys/request-report/filters/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/request-report/filters/utils.js.map +1 -1
- package/dpr/routes/journeys/request-report/routes.js.map +1 -1
- package/dpr/routes/journeys/request-report/status/controller.js.map +1 -1
- package/dpr/routes/journeys/request-report/status/routes.js.map +1 -1
- package/dpr/routes/journeys/request-report/status/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/request-report/status/utils.js.map +1 -1
- package/dpr/routes/journeys/request-report/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/routes.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/controller.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/dashboard/controller.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/dashboard/routes.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/dashboard/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/dashboard/utils.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/report/controller.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/report/report-variants.cy.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/report/routes.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/report/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/report/types.js.map +1 -1
- package/dpr/routes/journeys/view-report/async/report/utils.js +2 -2
- package/dpr/routes/journeys/view-report/async/report/utils.js.map +3 -3
- package/dpr/routes/journeys/view-report/async/report/utils.ts +2 -2
- package/dpr/routes/journeys/view-report/async/routes.js.map +1 -1
- package/dpr/routes/journeys/view-report/controller.js.map +2 -2
- package/dpr/routes/journeys/view-report/controller.ts +1 -1
- package/dpr/routes/journeys/view-report/routes.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/dashboard/controller.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/dashboard/routes.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/dashboard/utils.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/load-report/controller.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/load-report/routes.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/report/controller.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/report/routes.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/report/utils.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/routes.js.map +1 -1
- package/dpr/routes/journeys/view-report/sync/tests.cy.js.map +1 -1
- package/dpr/routes/journeys/view-report/utils.js.map +1 -1
- package/dpr/services/dashboardService.js.map +1 -1
- package/dpr/services/defaultFilterValuesService.js.map +1 -1
- package/dpr/services/featureFlagService.js.map +1 -1
- package/dpr/services/featureFlags.cy.js.map +1 -1
- package/dpr/services/index.js.map +1 -1
- package/dpr/services/missingReport/missingReportService.js.map +1 -1
- package/dpr/services/productCollection/productCollectionService.js.map +1 -1
- package/dpr/services/productCollection/productCollectionStoreService.js.map +1 -1
- package/dpr/services/reportStoreService.js.map +1 -1
- package/dpr/services/reportingService.js.map +1 -1
- package/dpr/setUpNunjucksFilters.js.map +1 -1
- package/dpr/types/AsyncReportUtils.js.map +1 -1
- package/dpr/types/Bookmark.js.map +1 -1
- package/dpr/types/Charts.js.map +1 -1
- package/dpr/types/Download.js.map +1 -1
- package/dpr/types/DprConfig.js.map +1 -1
- package/dpr/types/DprUser.js.map +1 -1
- package/dpr/types/EmbeddedReportUtils.js.map +1 -1
- package/dpr/types/ExecutionData.d.js.map +1 -1
- package/dpr/types/Metrics.js.map +1 -1
- package/dpr/types/ReportQuery.js.map +1 -1
- package/dpr/types/ReportStore.js.map +1 -1
- package/dpr/types/Services.d.js.map +1 -1
- package/dpr/types/Templates.d.js.map +1 -1
- package/dpr/types/UserReports.js.map +1 -1
- package/dpr/types/api.d.js.map +1 -1
- package/dpr/types/index.d.js.map +1 -1
- package/dpr/utils/CollatedSummaryBuilder/CollatedSummaryBuilder.js.map +1 -1
- package/dpr/utils/CreateDprServices.js.map +1 -1
- package/dpr/utils/DataTableBuilder/DataTableBuilder.js.map +1 -1
- package/dpr/utils/DataTableBuilder/types.d.js.map +1 -1
- package/dpr/utils/DateMapper/DateMapper.js.map +1 -1
- package/dpr/utils/DateMapper/types.d.js.map +1 -1
- package/dpr/utils/ErrorHandler.js.map +1 -1
- package/dpr/utils/ParentChildDataTableBuilder/ParentChildDataTableBuilder.js.map +1 -1
- package/dpr/utils/ParentChildDataTableBuilder/types.d.js.map +1 -1
- package/dpr/utils/Personalisation/personalisationUtils.js.map +1 -1
- package/dpr/utils/Personalisation/types.d.js.map +1 -1
- package/dpr/utils/SectionedDataTableBuilder/SectionedDataTableBuilder.js.map +1 -1
- package/dpr/utils/SectionedDataTableBuilder/types.d.js.map +1 -1
- package/dpr/utils/SectionedFieldsTableBuilder/SectionedFieldsTableBuilder.js.map +1 -1
- package/dpr/utils/SummaryDataTableBuilder/SummaryDataTableBuilder.js.map +1 -1
- package/dpr/utils/UserStoreItemBuilder.js.map +1 -1
- package/dpr/utils/arrayUtils.js.map +1 -1
- package/dpr/utils/datasetHelper.js.map +1 -1
- package/dpr/utils/definitionUtils.js.map +1 -1
- package/dpr/utils/index.js.map +1 -1
- package/dpr/utils/indexedAccesHelper.js.map +1 -1
- package/dpr/utils/localsHelper.js.map +1 -1
- package/dpr/utils/logger.js.map +1 -1
- package/dpr/utils/reportListsHelper.js.map +1 -1
- package/dpr/utils/reportStoreHelper.js.map +1 -1
- package/dpr/utils/requestStatusHelper.js.map +1 -1
- package/dpr/utils/sanitisedError.js.map +1 -1
- package/dpr/utils/urlHelper.js.map +1 -1
- package/dpr/validation/validate.js.map +1 -1
- package/package.json +10 -6
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../dpr/components/_charts/chart/line-timeseries/types.ts"],
|
|
4
4
|
"sourcesContent": ["import z from 'zod'\nimport LineTimeseriesChartSchemas from './validate'\n\nexport type LineTimeseriesDefinitionType = z.infer<typeof LineTimeseriesChartSchemas.LineTimeseriesSchema>\nexport type LineTimeseriesDefinitionMeasure = z.infer<typeof LineTimeseriesChartSchemas.LineTimeseriesMeasureSchema>\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../../dpr/components/_charts/chart/line-timeseries/validate.ts"],
|
|
4
4
|
"sourcesContent": ["import { z } from 'zod'\nimport { DashboardVisualisationSchema, DashboardColumns } from '../../../_dashboards/dashboard-visualisation/Validate'\n\nconst LineTimeseriesMeasureSchema = z.object({\n id: z.string(),\n display: z.string().optional(),\n unit: z.enum(['NUMBER', 'PERCENTAGE']).optional(),\n})\n\nconst LineTimeseriesOptions = z.object({\n showLatest: z.literal(false),\n})\n\nconst LineTimeseriesSchema = z.object({\n ...DashboardVisualisationSchema.shape,\n display: z.string(),\n type: z.literal('line-timeseries'),\n options: z.object(LineTimeseriesOptions.shape).optional(),\n columns: z.object({\n ...DashboardColumns.shape,\n measures: z.array(LineTimeseriesMeasureSchema).min(1, 'Measure must contain at least one item'),\n }),\n})\n\nconst LineTimeseriesChartSchemas = {\n LineTimeseriesMeasureSchema,\n LineTimeseriesSchema,\n}\n\nexport default LineTimeseriesChartSchemas\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAkB;AAClB,sBAA+D;AAE/D,MAAM,8BAA8B,aAAE,OAAO;AAAA,EAC3C,IAAI,aAAE,OAAO;AAAA,EACb,SAAS,aAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,MAAM,aAAE,KAAK,CAAC,UAAU,YAAY,CAAC,EAAE,SAAS;AAClD,CAAC;AAED,MAAM,wBAAwB,aAAE,OAAO;AAAA,EACrC,YAAY,aAAE,QAAQ,KAAK;AAC7B,CAAC;AAED,MAAM,uBAAuB,aAAE,OAAO;AAAA,EACpC,GAAG,6CAA6B;AAAA,EAChC,SAAS,aAAE,OAAO;AAAA,EAClB,MAAM,aAAE,QAAQ,iBAAiB;AAAA,EACjC,SAAS,aAAE,OAAO,sBAAsB,KAAK,EAAE,SAAS;AAAA,EACxD,SAAS,aAAE,OAAO;AAAA,IAChB,GAAG,iCAAiB;AAAA,IACpB,UAAU,aAAE,MAAM,2BAA2B,EAAE,IAAI,GAAG,wCAAwC;AAAA,EAChG,CAAC;AACH,CAAC;AAED,MAAM,6BAA6B;AAAA,EACjC;AAAA,EACA;AACF;AAEA,IAAO,mBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../dpr/components/_charts/utils.ts"],
|
|
4
4
|
"sourcesContent": ["import dayjs from 'dayjs'\nimport weekOfYear from 'dayjs/plugin/weekOfYear'\nimport { ChartDetails, ChartMetaData } from '../../types/Charts'\nimport { DashboardDataResponse } from '../../types/Metrics'\nimport DatasetHelper from '../../utils/datasetHelper'\nimport DashboardListUtils from '../_dashboards/dashboard-list/utils'\nimport { Granularity } from '../_inputs/granular-date-range/types'\nimport HeatmapChart from './chart/heatmap/HeatmapChart'\nimport BarChart from './chart/bar/BarChart'\nimport { components } from '../../types/api'\nimport {\n DashboardVisualisationData,\n DashboardVisualisationType,\n DashboardVisualisatonCardData,\n MoJTable,\n} from '../_dashboards/dashboard-visualisation/types'\nimport DoughnutChart from './chart/doughnut/DoughnutChart'\nimport LineChart from './chart/line/LineChart'\nimport LineTimeseriesChart from './chart/line-timeseries/LineTimeseriesChart'\nimport BarTimeseriesChart from './chart/bar-timeseries/BarTimeseriesChart'\nimport { PartialDate } from '../_filters/types'\n\ndayjs.extend(weekOfYear)\n\nexport const createChart = (\n chartDefinition: components['schemas']['DashboardVisualisationDefinition'],\n rawData: DashboardDataResponse[],\n type: components['schemas']['DashboardVisualisationDefinition']['type'],\n): DashboardVisualisatonCardData | undefined => {\n let table: MoJTable | undefined\n let chart: DashboardVisualisationData | undefined\n let details: ChartDetails | undefined\n\n const { dataSetRows, snapshotData } = getDataForSnapshotCharts(chartDefinition, rawData)\n if (dataSetRows.length) {\n switch (type) {\n case DashboardVisualisationType.BAR:\n chart = new BarChart().withDefinition(chartDefinition).withData(snapshotData).build()\n break\n case DashboardVisualisationType.DONUT:\n chart = new DoughnutChart().withDefinition(chartDefinition).withData(snapshotData).build()\n break\n case DashboardVisualisationType.LINE:\n chart = new LineChart().withDefinition(chartDefinition).withData(snapshotData).build()\n break\n default:\n break\n }\n\n table = createSnapshotTable(chartDefinition, dataSetRows)\n details = getChartDetails(chartDefinition, dataSetRows)\n }\n\n return {\n details,\n table,\n chart,\n }\n}\n\nexport const createTimeseriesCharts = (\n chartDefinition: components['schemas']['DashboardVisualisationDefinition'],\n rawData: DashboardDataResponse[],\n type: components['schemas']['DashboardVisualisationDefinition']['type'],\n query: Record<string, string | string[]>,\n partialDate?: PartialDate,\n) => {\n let table: MoJTable | undefined\n let chart: DashboardVisualisationData | undefined\n let details: ChartDetails | undefined\n let granularity: Granularity = Granularity.DAILY\n\n if (query) {\n Object.keys(query).forEach((key) => {\n if (key.includes('granularity')) {\n granularity = <Granularity>query[key]\n }\n })\n }\n\n const { latestData, dataSetRows, timeseriesData } = getDataForTimeseriesCharts(chartDefinition, rawData)\n\n if (dataSetRows.length) {\n switch (type) {\n case DashboardVisualisationType.MATRIX_TIMESERIES:\n chart = new HeatmapChart()\n .withDefinition(chartDefinition)\n .withGranularity(granularity)\n .withData(timeseriesData)\n .build()\n break\n case DashboardVisualisationType.LINE_TIMESERIES:\n chart = new LineTimeseriesChart()\n .withDefinition(chartDefinition)\n .withData(timeseriesData)\n .withPartialDate(partialDate)\n .build()\n break\n case DashboardVisualisationType.BAR_TIMESERIES:\n chart = new BarTimeseriesChart()\n .withDefinition(chartDefinition)\n .withData(timeseriesData)\n .withPartialDate(partialDate)\n .build()\n break\n default:\n break\n }\n\n table = createTimeseriesTable(chartDefinition, timeseriesData)\n details = getChartDetails(chartDefinition, latestData, true)\n }\n\n return {\n details,\n table,\n chart,\n }\n}\n\nconst getDataForSnapshotCharts = (\n chartDefinition: components['schemas']['DashboardVisualisationDefinition'],\n rawData: DashboardDataResponse[],\n) => {\n const data = DatasetHelper.getLastestDataset(rawData)\n const dataSetRows = DatasetHelper.getDatasetRows(chartDefinition, data)\n const snapshotData = DatasetHelper.filterRowsByDisplayColumns(chartDefinition, dataSetRows, true)\n\n return {\n dataSetRows,\n snapshotData,\n }\n}\n\nconst getDataForTimeseriesCharts = (\n chartDefinition: components['schemas']['DashboardVisualisationDefinition'],\n rawData: DashboardDataResponse[],\n) => {\n const latestData = DatasetHelper.getLastestDataset(rawData)\n const dataSetRows = DatasetHelper.getDatasetRows(chartDefinition, rawData)\n const timeseriesData = DatasetHelper.filterRowsByDisplayColumns(chartDefinition, dataSetRows, true)\n\n return {\n latestData,\n dataSetRows,\n timeseriesData,\n }\n}\n\nconst getChartDetails = (\n chartDefinition: components['schemas']['DashboardVisualisationDefinition'],\n data: DashboardDataResponse[],\n timeseries = false,\n): ChartDetails => {\n const meta: ChartMetaData[] = []\n const headlines: ChartMetaData[] = createHeadlines(chartDefinition, data, timeseries)\n\n if (data[0]?.['ts']?.raw) {\n meta.push({\n label: 'Values for:',\n value: data[0]?.['ts'].raw,\n })\n }\n\n return {\n meta,\n headlines,\n }\n}\n\nconst createHeadlines = (\n chartDefinition: components['schemas']['DashboardVisualisationDefinition'],\n data: DashboardDataResponse[],\n timeseries = false,\n) => {\n const headlines: ChartMetaData[] = []\n const { columns } = chartDefinition\n const { measures } = columns\n const isListChart = !!measures.find((col) => col.axis)\n let headline: ChartMetaData | undefined\n\n let headlineColumn: components['schemas']['DashboardVisualisationColumnDefinition'] | undefined\n let value: number | undefined\n let label: string\n\n if (timeseries) {\n headlineColumn = measures.find((col) => col.id !== 'ts')\n if (headlineColumn) {\n const { id } = headlineColumn\n const { raw } = data[0][id]\n label = `${data[0]['ts'].raw}`\n value = raw ? Number(raw) : undefined\n\n if (value) {\n headline = {\n label,\n value,\n }\n }\n }\n } else {\n headlineColumn = !isListChart ? measures[0] : measures.find((col) => col.axis && col.axis === 'y')\n\n if (headlineColumn) {\n const display = headlineColumn.display?.toLowerCase()\n label = display ? `Total ${display}` : 'Total'\n value = data.reduce((acc: number, d: DashboardDataResponse) => {\n if (headlineColumn) {\n const { id } = headlineColumn\n const { raw } = d[id]\n if (raw) {\n return acc + Number(raw)\n }\n }\n return acc\n }, 0)\n\n headline = {\n label,\n value,\n }\n }\n }\n\n if (headline) headlines.push(headline)\n\n return headlines\n}\n\nconst createSnapshotTable = (\n chartDefinition: components['schemas']['DashboardVisualisationDefinition'],\n data: DashboardDataResponse[],\n): MoJTable => {\n const { columns } = chartDefinition\n const { measures } = columns\n const keys = columns.keys || []\n\n const headerColumns = [...keys, ...measures]\n const head = headerColumns.map((column) => {\n return { text: column.display || '' }\n })\n\n const filteredRowData = DatasetHelper.filterRowsByDisplayColumns(chartDefinition, data, true)\n const rows = DashboardListUtils.createTableRows(filteredRowData)\n\n return {\n head,\n rows,\n }\n}\n\nconst createTimeseriesTable = (\n chartDefinition: components['schemas']['DashboardVisualisationDefinition'],\n timeseriesData: DashboardDataResponse[],\n): MoJTable => {\n const { columns } = chartDefinition\n const { keys, measures } = columns\n\n let flatTimeseriesData = timeseriesData.flat()\n let headerColumns = [...measures]\n\n if (timeseriesData.length > 1) {\n // Add keys as columns as well as measures, and put TS first:\n // Get TS column an remove it from headings\n const timestampIndex = headerColumns.findIndex((m) => m.id === 'ts')\n const timestampCol = headerColumns[timestampIndex]\n headerColumns.splice(timestampIndex, 1)\n // Remove duplicate TS from keys if present and add keys to headings\n const keysWithoutTs = keys ? keys.filter((k) => k.id !== 'ts') : []\n headerColumns = [...keysWithoutTs, ...headerColumns]\n // Add TS column to the start\n headerColumns.unshift(timestampCol)\n } else {\n flatTimeseriesData = DatasetHelper.filterRowsByDisplayColumns(chartDefinition, flatTimeseriesData)\n }\n\n const head = headerColumns.map((column) => {\n return { text: column.display }\n })\n\n const rows = DashboardListUtils.createTableRows(flatTimeseriesData)\n\n return {\n head,\n rows,\n } as MoJTable\n}\n\nexport default {\n createChart,\n createTimeseriesCharts,\n}\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["import_types", "dayjs", "weekOfYear", "BarChart", "DoughnutChart", "LineChart", "HeatmapChart", "LineTimeseriesChart", "BarTimeseriesChart", "DatasetHelper", "DashboardListUtils"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/dashboard-list/types.ts"],
|
|
4
4
|
"sourcesContent": ["import z from 'zod'\nimport ListSchema from './validate'\n\nexport type ListDefinitionType = z.infer<typeof ListSchema.ListSchema>\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/dashboard-list/utils.ts"],
|
|
4
4
|
"sourcesContent": ["/* eslint-disable no-param-reassign */\nimport { DashboardDataResponse } from '../../../types/Metrics'\nimport {\n ListDashboardVisualisationOptions,\n MoJTable,\n MoJTableHead,\n MoJTableRow,\n} from '../dashboard-visualisation/types'\nimport DatasetHelper from '../../../utils/datasetHelper'\nimport { components } from '../../../types/api'\n\nexport const createList = (\n listDefinition: components['schemas']['DashboardVisualisationDefinition'],\n dashboardData: DashboardDataResponse[],\n): { table: MoJTable; ts: string } => {\n const { columns, options } = listDefinition\n const listOptions = <ListDashboardVisualisationOptions>options\n const showLatest = listOptions?.showLatest !== undefined ? listOptions.showLatest : true\n const columnsAsList = listOptions?.columnsAsList\n const { measures, keys } = columns\n const showAllData = (!measures && !keys) || (!measures.length && !keys)\n\n let datasetData: DashboardDataResponse[] = [...dashboardData]\n if (showLatest) {\n datasetData = DatasetHelper.getLastestDataset(datasetData)\n }\n\n let head\n let rows\n let ts\n\n if (showAllData) {\n ;({ head, rows, ts } = createFullList(datasetData))\n } else if (columnsAsList) {\n ;({ head, rows, ts } = createListFromColumns(listDefinition, datasetData))\n } else {\n ;({ head, rows, ts } = creatListFromRows(listDefinition, datasetData))\n }\n\n if (rows.length && measures) rows = sumColumns(rows, measures)\n\n return {\n table: {\n head,\n rows,\n },\n ts,\n }\n}\n\nconst createListFromColumns = (\n listDefinition: components['schemas']['DashboardVisualisationDefinition'],\n dashboardData: DashboardDataResponse[],\n) => {\n const { columns } = listDefinition\n const { keys, measures } = columns\n const groupKey = DatasetHelper.getGroupKey(dashboardData, keys || [])\n\n const timestampData = dashboardData[0]?.['ts']?.raw\n const ts = timestampData ? `${timestampData}` : ''\n\n const head: MoJTableHead[] = []\n head.push({ text: '' })\n dashboardData.forEach((row) => {\n head.push({\n text: groupKey ? `${row[groupKey.id].raw}` : '',\n })\n })\n\n const rows: MoJTableRow[][] = []\n measures.forEach((measure) => {\n rows.push([{ text: measure.display }] as MoJTableRow[])\n })\n\n measures.forEach((measure, index) => {\n dashboardData.forEach((row) => {\n rows[index].push({ text: `${row[measure.id].raw}` })\n })\n })\n\n return {\n rows,\n head,\n ts,\n }\n}\n\nexport const createTableRows = (\n data: DashboardDataResponse[],\n measures?: components['schemas']['DashboardVisualisationColumnDefinition'][],\n): MoJTableRow[][] => {\n return data.map((dataRow) => {\n const row: MoJTableRow[] = measures?.length ? Array(measures.length) : Array(Object.keys(data[0]).length)\n Object.keys(dataRow).forEach((key, index) => {\n const headIndex = measures?.length ? measures.findIndex((m) => m.id === key) : index\n const text = dataRow[key].raw\n row.splice(headIndex, 1, { text } as MoJTableRow)\n })\n\n return row\n })\n}\n\nconst creatListFromRows = (\n listDefinition: components['schemas']['DashboardVisualisationDefinition'],\n dashboardData: DashboardDataResponse[],\n) => {\n const { measures } = listDefinition.columns\n\n const head: MoJTableHead[] = measures.map((column) => {\n return { text: column.display || '' }\n })\n\n const dataSetRows = DatasetHelper.getDatasetRows(listDefinition, dashboardData)\n const displayRows = DatasetHelper.filterRowsByDisplayColumns(listDefinition, dataSetRows)\n const rows = createTableRows(displayRows, measures)\n\n const timestampData = dataSetRows[0]?.['ts']?.raw\n const ts = timestampData ? `${timestampData}` : ''\n\n return {\n head,\n rows,\n ts,\n }\n}\n\nconst createFullList = (dashboardData: DashboardDataResponse[]) => {\n const head: MoJTableHead[] = Object.keys(dashboardData[0]).map((key) => {\n return { text: key || '' }\n })\n const rows = createTableRows(dashboardData)\n\n const latestData = DatasetHelper.getLastestDataset(dashboardData)\n const timestampData = latestData[0]?.['ts']?.raw\n const ts = timestampData ? `${timestampData}` : ''\n\n return {\n head,\n rows,\n ts,\n }\n}\n\nconst sumColumns = (\n rowsData: MoJTableRow[][],\n measures: components['schemas']['DashboardVisualisationColumnDefinition'][],\n) => {\n const sumColumnIndexes: number[] = measures.flatMap((col, idx) => (col.aggregate ? [idx] : []))\n\n if (sumColumnIndexes.length) {\n const sumRow: MoJTableRow[] = [{ html: `<strong>Total<strong>` }]\n for (let index = 1; index < measures.length; index += 1) {\n sumRow[index] = { text: '' }\n }\n\n rowsData.push(sumRow)\n sumColumnIndexes.forEach((index) => {\n const total = rowsData.reduce((acc, row) => {\n const rowIndex = row[index]\n if (rowIndex && rowIndex.text) {\n acc += Number(rowIndex.text)\n }\n return acc\n }, 0)\n rowsData[rowsData.length - 1][index] = {\n html: `<strong>${total}<strong>`,\n }\n })\n }\n\n return rowsData\n}\n\nexport default {\n createList,\n createTableRows,\n}\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["DatasetHelper"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/dashboard-list/validate.ts"],
|
|
4
4
|
"sourcesContent": ["import { z } from 'zod'\nimport {\n DashboardVisualisationSchema,\n DashboardColumns,\n DashboardVisualisationMeasureSchema,\n} from '../dashboard-visualisation/Validate'\n\nconst ListOptions = z.object({\n showLatest: z.boolean().default(true),\n columnsAsList: z.boolean().optional(),\n})\n\nconst ListSchema = z.object({\n ...DashboardVisualisationSchema.shape,\n type: z.literal('list'),\n options: z.object(ListOptions.shape),\n columns: z.object({\n ...DashboardColumns.shape,\n measures: z.array(DashboardVisualisationMeasureSchema).min(1, 'Measure must contain a single item'),\n }),\n})\n\nconst ListSchemas = {\n ListSchema,\n ListOptions,\n}\n\nexport default ListSchemas\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAkB;AAClB,sBAIO;AAEP,MAAM,cAAc,aAAE,OAAO;AAAA,EAC3B,YAAY,aAAE,QAAQ,EAAE,QAAQ,IAAI;AAAA,EACpC,eAAe,aAAE,QAAQ,EAAE,SAAS;AACtC,CAAC;AAED,MAAM,aAAa,aAAE,OAAO;AAAA,EAC1B,GAAG,6CAA6B;AAAA,EAChC,MAAM,aAAE,QAAQ,MAAM;AAAA,EACtB,SAAS,aAAE,OAAO,YAAY,KAAK;AAAA,EACnC,SAAS,aAAE,OAAO;AAAA,IAChB,GAAG,iCAAiB;AAAA,IACpB,UAAU,aAAE,MAAM,mDAAmC,EAAE,IAAI,GAAG,oCAAoC;AAAA,EACpG,CAAC;AACH,CAAC;AAED,MAAM,cAAc;AAAA,EAClB;AAAA,EACA;AACF;AAEA,IAAO,mBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/dashboard-visualisation/Validate.ts"],
|
|
4
4
|
"sourcesContent": ["import { z } from 'zod'\n\nconst dashboardBucket = z.object({\n min: z.number().optional(),\n max: z.number().optional(),\n hexColour: z.string().optional(),\n})\n\nexport const BucketOptionsSchema = z.object({\n useRagColour: z.boolean().default(false),\n buckets: z.array(dashboardBucket).default([]),\n baseColour: z.string().regex(/^#/).optional(),\n})\n\nconst dashboardVisFilter = z.object({\n id: z.string(),\n equals: z.string().nullable(),\n})\n\nconst DashboardVisualisationKeySchema = z.object({\n id: z.string(),\n display: z.string().optional(),\n optional: z.boolean().default(false),\n})\n\nexport const DashboardVisualisationMeasureSchema = z.object({\n id: z.string(),\n display: z.string().optional(),\n unit: z.enum(['NUMBER', 'PERCENTAGE']).optional(),\n aggregate: z.enum(['sum', 'average']).optional(),\n})\n\nexport const DashboardColumns = z.object({\n keys: z.array(DashboardVisualisationKeySchema),\n measures: z.array(DashboardVisualisationMeasureSchema).length(1, 'Measure must contain a single item'),\n filters: z.array(dashboardVisFilter).min(1).optional(),\n expectNulls: z.boolean().default(false),\n})\n\nconst dashboardOptions = z.object({\n ...dashboardBucket.shape,\n showLatest: z.boolean().default(true),\n columnsAsList: z.boolean().optional(),\n})\n\nexport const DashboardVisualisationSchema = z.object({\n id: z.string(),\n type: z.enum([\n 'list',\n 'doughnut',\n 'bar',\n 'bar-timeseries',\n 'line',\n 'scorecard',\n 'scorecard-group',\n 'matrix-timeseries',\n 'line-timeseries',\n ]),\n display: z.string().optional(),\n description: z.string().optional(),\n options: z.object(dashboardOptions.shape),\n columns: z.object(DashboardColumns.shape),\n})\n\nconst DashboardVisualisationSchemas = {\n DashboardVisualisationSchema,\n DashboardVisualisationMeasureSchema,\n DashboardVisualisationKeySchema,\n}\n\nexport default DashboardVisualisationSchemas\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAkB;AAElB,MAAM,kBAAkB,aAAE,OAAO;AAAA,EAC/B,KAAK,aAAE,OAAO,EAAE,SAAS;AAAA,EACzB,KAAK,aAAE,OAAO,EAAE,SAAS;AAAA,EACzB,WAAW,aAAE,OAAO,EAAE,SAAS;AACjC,CAAC;AAEM,MAAM,sBAAsB,aAAE,OAAO;AAAA,EAC1C,cAAc,aAAE,QAAQ,EAAE,QAAQ,KAAK;AAAA,EACvC,SAAS,aAAE,MAAM,eAAe,EAAE,QAAQ,CAAC,CAAC;AAAA,EAC5C,YAAY,aAAE,OAAO,EAAE,MAAM,IAAI,EAAE,SAAS;AAC9C,CAAC;AAED,MAAM,qBAAqB,aAAE,OAAO;AAAA,EAClC,IAAI,aAAE,OAAO;AAAA,EACb,QAAQ,aAAE,OAAO,EAAE,SAAS;AAC9B,CAAC;AAED,MAAM,kCAAkC,aAAE,OAAO;AAAA,EAC/C,IAAI,aAAE,OAAO;AAAA,EACb,SAAS,aAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,UAAU,aAAE,QAAQ,EAAE,QAAQ,KAAK;AACrC,CAAC;AAEM,MAAM,sCAAsC,aAAE,OAAO;AAAA,EAC1D,IAAI,aAAE,OAAO;AAAA,EACb,SAAS,aAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,MAAM,aAAE,KAAK,CAAC,UAAU,YAAY,CAAC,EAAE,SAAS;AAAA,EAChD,WAAW,aAAE,KAAK,CAAC,OAAO,SAAS,CAAC,EAAE,SAAS;AACjD,CAAC;AAEM,MAAM,mBAAmB,aAAE,OAAO;AAAA,EACvC,MAAM,aAAE,MAAM,+BAA+B;AAAA,EAC7C,UAAU,aAAE,MAAM,mCAAmC,EAAE,OAAO,GAAG,oCAAoC;AAAA,EACrG,SAAS,aAAE,MAAM,kBAAkB,EAAE,IAAI,CAAC,EAAE,SAAS;AAAA,EACrD,aAAa,aAAE,QAAQ,EAAE,QAAQ,KAAK;AACxC,CAAC;AAED,MAAM,mBAAmB,aAAE,OAAO;AAAA,EAChC,GAAG,gBAAgB;AAAA,EACnB,YAAY,aAAE,QAAQ,EAAE,QAAQ,IAAI;AAAA,EACpC,eAAe,aAAE,QAAQ,EAAE,SAAS;AACtC,CAAC;AAEM,MAAM,+BAA+B,aAAE,OAAO;AAAA,EACnD,IAAI,aAAE,OAAO;AAAA,EACb,MAAM,aAAE,KAAK;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAAA,EACD,SAAS,aAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,aAAa,aAAE,OAAO,EAAE,SAAS;AAAA,EACjC,SAAS,aAAE,OAAO,iBAAiB,KAAK;AAAA,EACxC,SAAS,aAAE,OAAO,iBAAiB,KAAK;AAC1C,CAAC;AAED,MAAM,gCAAgC;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AACF;AAEA,IAAO,mBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/dashboard-visualisation/types.ts"],
|
|
4
4
|
"sourcesContent": ["import z from 'zod'\nimport { components } from '../../../types/api'\nimport { Scorecard, ScorecardGroup } from '../scorecard/types'\nimport { MatrixChartData } from '../../_charts/chart/heatmap/types'\nimport { ChartDetails } from '../../../types/Charts'\nimport DashboardVisualisationSchemas from './Validate'\nimport { BarDefinitionMeasure } from '../../_charts/chart/bar/types'\nimport { DoughnutDefinitionMeasure } from '../../_charts/chart/doughnut/types'\nimport { LineDefinitionMeasure } from '../../_charts/chart/line/types'\nimport { LineTimeseriesDefinitionMeasure } from '../../_charts/chart/line-timeseries/types'\nimport { BarTimeseriesDefinitionMeasure } from '../../_charts/chart/bar-timeseries/types'\nimport { ChartOptionsType } from '../../_charts/chart/chart-config'\nimport { PartialDate } from '../../_filters/types'\n\nexport interface DashboardSection {\n id: string\n title?: string\n description?: string\n visualisations?: DashboardVisualisation[]\n}\n\nexport interface DashboardVisualisation {\n id: string\n type: components['schemas']['DashboardVisualisationDefinition']['type']\n title?: string | undefined\n description?: string | undefined\n data:\n | Scorecard\n | Scorecard[]\n | ScorecardGroup[]\n | DashboardVisualisatonCardData\n | DashboardVisualisationTable\n | undefined\n}\n\nexport interface DashboardVisualisatonCardData {\n chart?: DashboardVisualisationData | undefined\n table?: MoJTable | undefined\n details?: ChartDetails | undefined\n}\n\nexport interface DashboardVisualisationData {\n type: DashboardVisualisationType\n options?: DashboardVisualisationDataOptions\n data: DashboardVisualisationDataValues\n}\n\ninterface DashboardVisualisationDataOptions {\n height?: number\n unit?: components['schemas']['DashboardVisualisationColumnDefinition']['unit']\n timeseries?: boolean\n}\n\nexport interface DashboardVisualisationDataValues {\n labels?: string[]\n datasets: DashboardVisualisationDataSet[]\n axis?: 'x' | 'y'\n config: ChartOptionsType\n partialDate?: PartialDate | undefined\n}\n\nexport interface DashboardVisualisationDataSet {\n label: string\n data: number[] | MatrixChartData[]\n total?: number\n}\n\nexport interface DashboardVisualisationTable {\n table: MoJTable\n ts?: string\n}\n\nexport interface MoJTable {\n head: MoJTableHead[]\n rows: MoJTableRow[][]\n}\n\nexport interface MoJTableRow {\n text?: string\n html?: string\n}\n\nexport interface MoJTableHead {\n text?: string\n html?: string\n}\n\nexport enum DashboardVisualisationType {\n LIST = 'list',\n DONUT = 'doughnut',\n BAR = 'bar',\n LINE = 'line',\n MATRIX = 'matrix',\n MATRIX_TIMESERIES = 'matrix-timeseries',\n BAR_TIMESERIES = 'bar-timeseries',\n LINE_TIMESERIES = 'line-timeseries',\n SCORECARD = 'scorecard',\n SCORECARD_GROUP = 'scorecard-group',\n}\n\nexport type DashboardVisualisationOptions = ListDashboardVisualisationOptions | BucketDashboardVisualisationOptions\n\nexport interface ListDashboardVisualisationOptions {\n showLatest?: boolean\n columnsAsList?: boolean\n}\n\nexport interface BucketDashboardVisualisationOptions {\n useRagColour?: boolean\n buckets?: DashboardVisualisationBucket[]\n baseColour?: string\n}\n\nexport interface DashboardVisualisationBucket {\n min?: number | undefined\n max?: number | undefined\n hexColour?: string | undefined\n}\n\nexport type VisualisationDefinitionType = z.infer<typeof DashboardVisualisationSchemas.DashboardVisualisationSchema>\nexport type VisualisationDefinitionKey = z.infer<typeof DashboardVisualisationSchemas.DashboardVisualisationKeySchema>\nexport type VisualisationDefinitionMeasure = z.infer<\n typeof DashboardVisualisationSchemas.DashboardVisualisationMeasureSchema\n>\n\nexport type ChartMeasure =\n | BarDefinitionMeasure[]\n | DoughnutDefinitionMeasure[]\n | LineDefinitionMeasure[]\n | VisualisationDefinitionMeasure[]\n\nexport type TimeseriesChartMeasure = LineTimeseriesDefinitionMeasure[] | BarTimeseriesDefinitionMeasure[]\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuFO,IAAK,6BAAL,kBAAKA,gCAAL;AACL,EAAAA,4BAAA,UAAO;AACP,EAAAA,4BAAA,WAAQ;AACR,EAAAA,4BAAA,SAAM;AACN,EAAAA,4BAAA,UAAO;AACP,EAAAA,4BAAA,YAAS;AACT,EAAAA,4BAAA,uBAAoB;AACpB,EAAAA,4BAAA,oBAAiB;AACjB,EAAAA,4BAAA,qBAAkB;AAClB,EAAAA,4BAAA,eAAY;AACZ,EAAAA,4BAAA,qBAAkB;AAVR,SAAAA;AAAA,GAAA;",
|
|
6
6
|
"names": ["DashboardVisualisationType"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/scorecard/Scorecard.ts"],
|
|
4
4
|
"sourcesContent": ["/* eslint-disable prefer-destructuring */\nimport { DashboardDataResponse } from '../../../types/Metrics'\nimport { DashboardVisualisationBucket } from '../dashboard-visualisation/types'\nimport { CreateScorecardDataArgs, Scorecard, ScorecardDataset, ScorecardDefinitionType, ScorecardTrend } from './types'\nimport Buckets from '../../_charts/chart/buckets/Buckets'\nimport { components } from '../../../types/api'\nimport DatasetHelper from '../../../utils/datasetHelper'\nimport ScorecardSchemas from './validate'\nimport { ScorecardGroupDefinitionType } from '../scorecard-group/types'\n\nclass ScorecardVisualisation {\n private definition!: ScorecardDefinitionType\n\n private id!: string\n\n private measures!: ScorecardDefinitionType['columns']['measures']\n\n private options!: ScorecardDefinitionType['options']\n\n private dataset!: ScorecardDataset\n\n private bucketsHelper: Buckets | undefined\n\n private buckets: DashboardVisualisationBucket[] = []\n\n private valueKey!: string\n\n private titleColumn: components['schemas']['DashboardVisualisationColumnDefinition'] | undefined\n\n responseData: DashboardDataResponse[] = []\n\n ragColours: string[] = ['#cce2d8', '#fff7bf', '#f4cdc6']\n\n withDefinition = (definition: components['schemas']['DashboardVisualisationDefinition']) => {\n this.definition = ScorecardSchemas.ScorecardSchema.parse(definition)\n this.init()\n\n return this\n }\n\n withData = (responseData: DashboardDataResponse[]) => {\n this.responseData = responseData\n this.dataset = this.getDataset(this.definition, this.responseData)\n this.initBuckets(this.responseData, this.valueKey)\n\n return this\n }\n\n private init = () => {\n this.id = this.definition.id\n this.measures = this.definition.columns.measures\n this.options = this.definition.options\n this.titleColumn = { display: this.definition.display, id: this.valueKey }\n this.initFromMeasures()\n }\n\n private initFromMeasures = () => {\n // Zod should throw an error on line 40 so should always pass\n if (this.measures[0] !== undefined) {\n this.valueKey = this.measures[0].id\n }\n }\n\n private initBuckets = (responseData: DashboardDataResponse[], valueKey: string) => {\n if (this.options?.buckets || this.options?.useRagColour) {\n this.bucketsHelper = new Buckets(responseData, this.definition, valueKey, false, this.ragColours)\n this.buckets = this.bucketsHelper.getBuckets()\n }\n }\n\n getDataset = (\n definition: ScorecardDefinitionType | ScorecardGroupDefinitionType,\n rawData: DashboardDataResponse[],\n ): ScorecardDataset => {\n const latestData = DatasetHelper.getLastestDataset(rawData)\n const latestDataSetRows = DatasetHelper.getDatasetRows(\n <components['schemas']['DashboardVisualisationDefinition']>definition,\n latestData,\n )\n const latestTs = latestDataSetRows[0]?.['ts']?.raw\n const latestFiltered = DatasetHelper.filterRowsByDisplayColumns(\n <components['schemas']['DashboardVisualisationDefinition']>definition,\n latestDataSetRows,\n true,\n )\n\n const earliestData = DatasetHelper.getEarliestDataset(rawData)\n const earliestDataSetRows = DatasetHelper.getDatasetRows(\n <components['schemas']['DashboardVisualisationDefinition']>definition,\n earliestData,\n )\n const earliestTs = earliestDataSetRows[0]?.['ts']?.raw\n const earliestfiltered = DatasetHelper.filterRowsByDisplayColumns(\n <components['schemas']['DashboardVisualisationDefinition']>definition,\n earliestDataSetRows,\n true,\n )\n\n return {\n earliest: earliestfiltered,\n earliestTs,\n latest: latestFiltered,\n latestTs,\n }\n }\n\n createScorecardData = ({\n id,\n title,\n value,\n rag,\n valueFor,\n valueFrom,\n prevVal,\n groupTitle,\n }: CreateScorecardDataArgs): Scorecard => {\n return {\n id,\n title,\n value,\n ...(rag && { rag }),\n valueFor,\n trend: this.createTrend(valueFor, valueFrom, value, prevVal),\n ...(groupTitle && {\n group: groupTitle,\n }),\n }\n }\n\n createTrend = (\n valueFor: string,\n valueFrom: string,\n latestValue: string | number,\n earliestValue: string | number | null | undefined,\n ): ScorecardTrend | undefined => {\n let trendData\n\n if (valueFrom !== valueFor) {\n const value = earliestValue ? Number(latestValue) - Number(earliestValue) : 0\n const direction = Math.sign(value)\n trendData = {\n direction,\n value: Math.abs(value),\n from: valueFrom,\n }\n }\n\n return trendData\n }\n\n setRagScore = (\n value: string | number | undefined | null,\n rag: number | undefined,\n buckets: DashboardVisualisationBucket[] | undefined,\n bucketsHelper: Buckets | undefined,\n ) => {\n let ragScore\n if (!Number.isNaN(value) && buckets?.length && bucketsHelper) {\n ragScore = bucketsHelper.getBucketForValue(<number>value, rag)\n }\n return ragScore\n }\n\n build = () => {\n const { latest, earliest, latestTs, earliestTs } = this.dataset\n const scorecordArr: Scorecard[] = latest.map((datasetRow: DashboardDataResponse, index: number) => {\n const { raw: value, rag } = datasetRow[this.valueKey]\n const prevVal = earliest[index][this.valueKey].raw\n const valueFor = `${latestTs}`\n const valueFrom = `${earliestTs}`\n const title = this.titleColumn?.display\n\n return this.createScorecardData({\n id: this.id,\n title: title || '',\n value: value || '',\n rag: this.setRagScore(value, rag, this.buckets, this.bucketsHelper),\n prevVal,\n valueFor,\n valueFrom,\n })\n })\n\n return scorecordArr[0]\n }\n}\n\nexport { ScorecardVisualisation }\nexport default ScorecardVisualisation\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["ScorecardSchemas", "Buckets", "DatasetHelper"]
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var clientClass_exports = {};
|
|
20
|
+
__export(clientClass_exports, {
|
|
21
|
+
Pagination: () => Pagination,
|
|
22
|
+
default: () => clientClass_default
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(clientClass_exports);
|
|
25
|
+
var import_DprClientClass = require("../../../DprClientClass");
|
|
26
|
+
class Pagination extends import_DprClientClass.DprClientClass {
|
|
27
|
+
static getModuleName() {
|
|
28
|
+
return "scorecard";
|
|
29
|
+
}
|
|
30
|
+
initialise() {
|
|
31
|
+
this.scorecard = this.getElement();
|
|
32
|
+
this.value = this.scorecard.querySelector(".dpr-scorecard__value");
|
|
33
|
+
this.ragStatus = this.scorecard.querySelector(".dpr-scorecard__value-description");
|
|
34
|
+
this.initHover();
|
|
35
|
+
}
|
|
36
|
+
initHover() {
|
|
37
|
+
this.value.addEventListener("mouseover", async () => {
|
|
38
|
+
this.ragStatus.classList.add("dpr-scorecard__value-description--active");
|
|
39
|
+
});
|
|
40
|
+
this.value.addEventListener("mouseout", async () => {
|
|
41
|
+
this.ragStatus.classList.remove("dpr-scorecard__value-description--active");
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
var clientClass_default = Pagination;
|
|
46
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
47
|
+
0 && (module.exports = {
|
|
48
|
+
Pagination
|
|
49
|
+
});
|
|
50
|
+
//# sourceMappingURL=clientClass.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/scorecard/clientClass.ts"],
|
|
4
|
+
"sourcesContent": ["// @ts-nocheck\nimport { DprClientClass } from '../../../DprClientClass'\n\nclass Pagination extends DprClientClass {\n static getModuleName() {\n return 'scorecard'\n }\n\n initialise() {\n this.scorecard = this.getElement()\n this.value = this.scorecard.querySelector('.dpr-scorecard__value')\n this.ragStatus = this.scorecard.querySelector('.dpr-scorecard__value-description')\n this.initHover()\n }\n\n initHover() {\n this.value.addEventListener('mouseover', async () => {\n this.ragStatus.classList.add('dpr-scorecard__value-description--active')\n })\n this.value.addEventListener('mouseout', async () => {\n this.ragStatus.classList.remove('dpr-scorecard__value-description--active')\n })\n }\n}\n\nexport { Pagination }\nexport default Pagination\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,4BAA+B;AAE/B,MAAM,mBAAmB,qCAAe;AAAA,EACtC,OAAO,gBAAgB;AACrB,WAAO;AAAA,EACT;AAAA,EAEA,aAAa;AACX,SAAK,YAAY,KAAK,WAAW;AACjC,SAAK,QAAQ,KAAK,UAAU,cAAc,uBAAuB;AACjE,SAAK,YAAY,KAAK,UAAU,cAAc,mCAAmC;AACjF,SAAK,UAAU;AAAA,EACjB;AAAA,EAEA,YAAY;AACV,SAAK,MAAM,iBAAiB,aAAa,YAAY;AACnD,WAAK,UAAU,UAAU,IAAI,0CAA0C;AAAA,IACzE,CAAC;AACD,SAAK,MAAM,iBAAiB,YAAY,YAAY;AAClD,WAAK,UAAU,UAAU,OAAO,0CAA0C;AAAA,IAC5E,CAAC;AAAA,EACH;AACF;AAGA,IAAO,sBAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/scorecard/types.ts"],
|
|
4
4
|
"sourcesContent": ["import z from 'zod'\nimport { DashboardDataResponse } from '../../../types/Metrics'\nimport ScorecardSchema from './validate'\n\nexport interface Scorecard {\n id: string\n title: string\n group?: string\n value: number | string\n trend?: ScorecardTrend | undefined\n link?:\n | {\n href: '#'\n displayName: 'View breakdown'\n }\n | undefined\n valueFor?: string\n rag?: ScorecardRag | undefined\n}\n\nexport interface ScorecardSubGroup {\n name: string\n scorecards: Scorecard[]\n}\n\nexport interface ScorecardGroup {\n title?: string\n description?: string\n scorecards: Scorecard[]\n}\n\nexport interface ScorecardTrend {\n direction: number\n value: number\n from: string\n}\n\nexport interface ScorecardRag {\n score: number\n colour: string\n}\n\nexport interface ScorecardDataset {\n earliest: DashboardDataResponse[]\n earliestTs?: string | number | null | undefined\n latest: DashboardDataResponse[]\n latestTs?: string | number | null | undefined\n}\n\nexport interface CreateScorecardDataArgs {\n id: string\n title: string\n value: string | number\n rag?:\n | {\n colour: string\n score: number\n }\n | undefined\n valueFor: string\n valueFrom: string\n prevVal: string | number | null | undefined\n groupTitle?: string\n}\n\nexport type ScorecardDefinitionType = z.infer<typeof ScorecardSchema.ScorecardSchema>\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/scorecard/utils.ts"],
|
|
4
4
|
"sourcesContent": ["import { DashboardVisualisation, DashboardVisualisationType } from '../dashboard-visualisation/types'\nimport { Scorecard } from './types'\n\nexport const mergeScorecardsIntoGroup = (visualisations: DashboardVisualisation[]) => {\n const groupedScorecardIndexes: number[][] = visualisations\n // get scorecard indexes\n .reduce((acc: number[], vis: DashboardVisualisation, i: number) => {\n if (vis.type === DashboardVisualisationType.SCORECARD) acc.push(i)\n return acc\n }, [])\n // group adjacent indexes\n .reduce((r: number[][], n) => {\n const lastSubArray = r[r.length - 1]\n if (!lastSubArray || lastSubArray[lastSubArray.length - 1] !== n - 1) r.push([])\n r[r.length - 1].push(n)\n return r\n }, [])\n\n groupedScorecardIndexes.reverse().forEach((group: number[]) => {\n const spliceAtIndex = group[0]\n const scorecardGroup: Scorecard[] = group\n .map((scIndex: number) => {\n return visualisations[scIndex].data as Scorecard\n })\n .filter((scorecard: Scorecard) => !!scorecard)\n\n while (group.length) {\n const i = group.pop()\n if (i !== undefined) visualisations.splice(i, 1)\n }\n\n if (scorecardGroup.length) {\n visualisations.splice(spliceAtIndex, 0, {\n id: `${spliceAtIndex}`,\n type: DashboardVisualisationType.SCORECARD_GROUP,\n data: [{ scorecards: scorecardGroup }],\n })\n }\n })\n\n return visualisations\n}\n\nexport default {\n mergeScorecardsIntoGroup,\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAmE;AAG5D,MAAM,2BAA2B,CAAC,mBAA6C;AACpF,QAAM,0BAAsC,eAEzC,OAAO,CAAC,KAAe,KAA6B,MAAc;AACjE,QAAI,IAAI,SAAS,wCAA2B,UAAW,KAAI,KAAK,CAAC;AACjE,WAAO;AAAA,EACT,GAAG,CAAC,CAAC,EAEJ,OAAO,CAAC,GAAe,MAAM;AAC5B,UAAM,eAAe,EAAE,EAAE,SAAS,CAAC;AACnC,QAAI,CAAC,gBAAgB,aAAa,aAAa,SAAS,CAAC,MAAM,IAAI,EAAG,GAAE,KAAK,CAAC,CAAC;AAC/E,MAAE,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC;AACtB,WAAO;AAAA,EACT,GAAG,CAAC,CAAC;AAEP,0BAAwB,QAAQ,EAAE,QAAQ,CAAC,UAAoB;AAC7D,UAAM,gBAAgB,MAAM,CAAC;AAC7B,UAAM,iBAA8B,MACjC,IAAI,CAAC,YAAoB;AACxB,aAAO,eAAe,OAAO,EAAE;AAAA,IACjC,CAAC,EACA,OAAO,CAAC,cAAyB,CAAC,CAAC,SAAS;AAE/C,WAAO,MAAM,QAAQ;AACnB,YAAM,IAAI,MAAM,IAAI;AACpB,UAAI,MAAM,OAAW,gBAAe,OAAO,GAAG,CAAC;AAAA,IACjD;AAEA,QAAI,eAAe,QAAQ;AACzB,qBAAe,OAAO,eAAe,GAAG;AAAA,QACtC,IAAI,GAAG,aAAa;AAAA,QACpB,MAAM,wCAA2B;AAAA,QACjC,MAAM,CAAC,EAAE,YAAY,eAAe,CAAC;AAAA,MACvC,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AAED,SAAO;AACT;AAEA,IAAO,gBAAQ;AAAA,EACb;AACF;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/scorecard/validate.ts"],
|
|
4
4
|
"sourcesContent": ["import { z } from 'zod'\nimport {\n DashboardVisualisationSchema,\n DashboardColumns,\n BucketOptionsSchema,\n} from '../dashboard-visualisation/Validate'\n\nconst scorecardKey = z.object({\n id: z.string(),\n optional: z.boolean().default(false),\n})\n\nconst scorecardMeasure = z.object({\n id: z.string(),\n unit: z.enum(['NUMBER', 'PERCENTAGE']).optional(),\n})\n\nconst ScorecardMeasuresSchema = z.array(scorecardMeasure).length(1, 'Measure must contain a single item')\n\nconst ScorecardSchema = z.object({\n ...DashboardVisualisationSchema.shape,\n type: z.literal('scorecard'),\n display: z.string(),\n description: z.undefined(),\n options: z.object(BucketOptionsSchema.shape).optional(),\n columns: z.object({\n ...DashboardColumns.shape,\n keys: z.array(scorecardKey).min(1),\n measures: ScorecardMeasuresSchema,\n }),\n})\n\nexport default {\n ScorecardSchema,\n ScorecardMeasuresSchema,\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAkB;AAClB,sBAIO;AAEP,MAAM,eAAe,aAAE,OAAO;AAAA,EAC5B,IAAI,aAAE,OAAO;AAAA,EACb,UAAU,aAAE,QAAQ,EAAE,QAAQ,KAAK;AACrC,CAAC;AAED,MAAM,mBAAmB,aAAE,OAAO;AAAA,EAChC,IAAI,aAAE,OAAO;AAAA,EACb,MAAM,aAAE,KAAK,CAAC,UAAU,YAAY,CAAC,EAAE,SAAS;AAClD,CAAC;AAED,MAAM,0BAA0B,aAAE,MAAM,gBAAgB,EAAE,OAAO,GAAG,oCAAoC;AAExG,MAAM,kBAAkB,aAAE,OAAO;AAAA,EAC/B,GAAG,6CAA6B;AAAA,EAChC,MAAM,aAAE,QAAQ,WAAW;AAAA,EAC3B,SAAS,aAAE,OAAO;AAAA,EAClB,aAAa,aAAE,UAAU;AAAA,EACzB,SAAS,aAAE,OAAO,oCAAoB,KAAK,EAAE,SAAS;AAAA,EACtD,SAAS,aAAE,OAAO;AAAA,IAChB,GAAG,iCAAiB;AAAA,IACpB,MAAM,aAAE,MAAM,YAAY,EAAE,IAAI,CAAC;AAAA,IACjC,UAAU;AAAA,EACZ,CAAC;AACH,CAAC;AAED,IAAO,mBAAQ;AAAA,EACb;AAAA,EACA;AACF;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/scorecard-group/ScorecardGroup.ts"],
|
|
4
4
|
"sourcesContent": ["/* eslint-disable prefer-destructuring */\nimport { DashboardDataResponse } from '../../../types/Metrics'\nimport DatasetHelper from '../../../utils/datasetHelper'\nimport { ScorecardDataset, ScorecardGroup } from '../scorecard/types'\nimport Buckets from '../../_charts/chart/buckets/Buckets'\nimport { components } from '../../../types/api'\nimport ScorecardVisualisation from '../scorecard/Scorecard'\nimport { ScorecardGroupDefinitionType, ScorecardGroupDefinitionMeasure } from './types'\nimport { DashboardVisualisationBucket } from '../dashboard-visualisation/types'\nimport ScorecardGroupSchemas from './validate'\n\nclass ScorecardGroupVisualisation {\n private definition!: ScorecardGroupDefinitionType\n\n private id!: string\n\n private measures!: ScorecardGroupDefinitionType['columns']['measures']\n\n private keys!: ScorecardGroupDefinitionType['columns']['keys']\n\n private options!: ScorecardGroupDefinitionType['options']\n\n private dataset!: ScorecardDataset\n\n private groupKey: ScorecardGroupDefinitionMeasure | undefined\n\n private groupKeyId: string | undefined\n\n private groupKeyDisplay: string | undefined\n\n private bucketsHelper: Buckets | undefined\n\n private buckets: DashboardVisualisationBucket[] = []\n\n private valueColumn: ScorecardGroupDefinitionMeasure | undefined\n\n private valueKey = ''\n\n private titleColumn: ScorecardGroupDefinitionMeasure | undefined\n\n private titleKey = ''\n\n responseData: DashboardDataResponse[] = []\n\n scoreCardBuilder: ScorecardVisualisation\n\n constructor() {\n this.scoreCardBuilder = new ScorecardVisualisation()\n }\n\n withDefinition = (definition: components['schemas']['DashboardVisualisationDefinition']) => {\n this.definition = ScorecardGroupSchemas.ScorecardGroupSchema.parse(definition)\n this.init()\n\n return this\n }\n\n withData = (responseData: DashboardDataResponse[]) => {\n this.responseData = responseData\n this.dataset = this.scoreCardBuilder.getDataset(this.definition, this.responseData)\n this.initBuckets(this.responseData, this.valueKey)\n this.initGroupVars()\n return this\n }\n\n private init = () => {\n this.id = this.definition.id\n this.measures = this.definition.columns.measures\n this.keys = this.definition.columns.keys\n this.options = this.definition.options\n this.valueKey = this.measures[0].id\n this.titleColumn = { display: this.definition.display || '', id: this.valueKey }\n }\n\n private initBuckets = (responseData: DashboardDataResponse[], valueKey: string) => {\n if (this.options?.buckets || this.options?.useRagColour) {\n this.bucketsHelper = new Buckets(responseData, this.definition, valueKey, false, this.scoreCardBuilder.ragColours)\n this.buckets = this.bucketsHelper.getBuckets()\n }\n }\n\n private initGroupVars = () => {\n this.groupKey = DatasetHelper.getGroupKey(\n this.dataset.latest,\n <Array<components['schemas']['DashboardVisualisationColumnDefinition']>>this.keys || [],\n )\n this.groupKeyId = this.groupKey?.id\n this.groupKeyDisplay = this.groupKey?.display\n\n this.valueColumn = this.measures.find((col) => col.displayValue)\n if (this.valueColumn) {\n this.valueKey = this.valueColumn?.id\n this.titleColumn = this.measures.find((col) => {\n return col.display || col.display === ''\n })\n this.titleKey = this.titleColumn?.id || ''\n }\n }\n\n private createScorecardGroupFromColumns = () => {\n const { latest, earliest, latestTs, earliestTs } = this.dataset\n\n return latest.map((row, rowIndex) => {\n return {\n title: this.createGroupTitle(row),\n scorecards: Object.keys(row)\n .filter((colId) => colId !== this.groupKeyId)\n .map((colId) => {\n const measure = this.measures.find((m) => m.id === colId)\n const title = measure?.display || colId\n const rowCol = row[colId]\n const { raw, rag } = rowCol\n const value = Number(raw)\n\n const ragValue = rag !== undefined ? Number(rag) : undefined\n this.initBuckets([row], colId)\n\n const valueFor = `${latestTs}`\n const valueFrom = `${earliestTs}`\n\n const comparisonRow = earliest[rowIndex]\n const prevVal = comparisonRow[colId]?.raw\n const ragScore = this.scoreCardBuilder.setRagScore(value, ragValue, this.buckets, this.bucketsHelper)\n\n return this.scoreCardBuilder.createScorecardData({\n id: this.id,\n title,\n value,\n rag: ragScore,\n prevVal,\n valueFor,\n valueFrom,\n })\n }),\n }\n })\n }\n\n private createScorecardGroupFromList = (): ScorecardGroup[] => {\n const { latest, earliest } = this.dataset\n return [\n {\n title: '',\n scorecards: latest.map((row: DashboardDataResponse, index: number) => {\n const values = this.getScorecardValues(row)\n const prevVal = earliest[index][this.valueKey].raw\n return this.scoreCardBuilder.createScorecardData({\n ...values,\n prevVal,\n })\n }),\n },\n ]\n }\n\n private createScorecardGroupFromListWithGroups = () => {\n const { latest, earliest } = this.dataset\n\n let earliestGroupedByKey = DatasetHelper.groupRowsByKey(earliest, <string>this.groupKeyId)\n let latestGroupedByKey = DatasetHelper.groupRowsByKey(latest, <string>this.groupKeyId)\n if (this.groupKeyId === this.titleKey) {\n latestGroupedByKey = [latestGroupedByKey.flat()]\n earliestGroupedByKey = [earliestGroupedByKey.flat()]\n }\n\n const scorecardGroup = latestGroupedByKey.map((group, groupIndex) => {\n return {\n title: this.groupKeyDisplay ? `By ${this.groupKeyDisplay}` : '',\n scorecards: group.map((row, rowIndex) => {\n const values = this.getScorecardValues(row)\n const comparisonRow = earliestGroupedByKey[groupIndex][rowIndex]\n const prevVal = comparisonRow[this.valueKey]?.raw\n\n return this.scoreCardBuilder.createScorecardData({\n ...values,\n prevVal,\n })\n }),\n }\n })\n\n return scorecardGroup\n }\n\n private getScorecardValues = (row: DashboardDataResponse) => {\n const { latestTs, earliestTs } = this.dataset\n const title = `${this.titleColumn?.display} ${row[this.titleKey].raw}`\n const rowCol = row[this.valueKey]\n const { raw, rag: ragScore } = rowCol\n const value = Number(raw)\n const rag = ragScore !== undefined ? Number(ragScore) : undefined\n this.initBuckets([row], this.valueKey)\n const valueFor = `${latestTs}`\n const valueFrom = `${earliestTs}`\n\n return {\n id: this.id,\n title,\n value,\n rag: this.scoreCardBuilder.setRagScore(value, rag, this.buckets, this.bucketsHelper),\n valueFor,\n valueFrom,\n }\n }\n\n private createGroupTitle = (row: DashboardDataResponse) => {\n const title = this.groupKeyId ? `${row[this.groupKeyId]?.raw}` : ''\n return this.groupKeyDisplay && this.groupKeyDisplay.length ? `${this.groupKeyDisplay}: ${title}` : title\n }\n\n build = () => {\n let scorecardGroup: ScorecardGroup[]\n if (!this.valueColumn) {\n scorecardGroup = this.createScorecardGroupFromColumns()\n } else if (this.groupKey) {\n scorecardGroup = this.createScorecardGroupFromListWithGroups()\n } else {\n scorecardGroup = this.createScorecardGroupFromList()\n }\n return scorecardGroup\n }\n}\n\nexport { ScorecardGroupVisualisation }\nexport default ScorecardGroupVisualisation\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": ["ScorecardVisualisation", "ScorecardGroupSchemas", "Buckets", "DatasetHelper"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/scorecard-group/types.ts"],
|
|
4
4
|
"sourcesContent": ["import z from 'zod'\nimport ScorecardSchema from './validate'\n\nexport type ScorecardGroupDefinitionType = z.infer<typeof ScorecardSchema.ScorecardGroupSchema>\nexport type ScorecardGroupDefinitionMeasure = z.infer<typeof ScorecardSchema.ScorecardGroupColumn>\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_dashboards/scorecard-group/validate.ts"],
|
|
4
4
|
"sourcesContent": ["import { z } from 'zod'\nimport {\n DashboardVisualisationSchema,\n DashboardColumns,\n BucketOptionsSchema,\n} from '../dashboard-visualisation/Validate'\n\nconst ScorecardGroupColumn = z.object({\n id: z.string(),\n display: z.string().optional(),\n displayValue: z.boolean().optional(),\n unit: z.enum(['NUMBER', 'PERCENTAGE']).optional(),\n})\n\nconst ScorecardGroupSchema = z.object({\n ...DashboardVisualisationSchema.shape,\n type: z.literal('scorecard-group'),\n options: z.object(BucketOptionsSchema.shape).optional(),\n columns: z.object({\n ...DashboardColumns.shape,\n measures: z\n .array(ScorecardGroupColumn)\n .min(2, 'Measure must contain two or more items')\n .refine(\n (measures) => {\n const displayValue = measures.find((m) => m.displayValue !== undefined)\n return displayValue ? measures.length === 2 : true\n },\n { error: 'Measure must have length 2 when displayValue is defined' },\n ),\n }),\n})\n\nexport default {\n ScorecardGroupSchema,\n ScorecardGroupColumn,\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAkB;AAClB,sBAIO;AAEP,MAAM,uBAAuB,aAAE,OAAO;AAAA,EACpC,IAAI,aAAE,OAAO;AAAA,EACb,SAAS,aAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,cAAc,aAAE,QAAQ,EAAE,SAAS;AAAA,EACnC,MAAM,aAAE,KAAK,CAAC,UAAU,YAAY,CAAC,EAAE,SAAS;AAClD,CAAC;AAED,MAAM,uBAAuB,aAAE,OAAO;AAAA,EACpC,GAAG,6CAA6B;AAAA,EAChC,MAAM,aAAE,QAAQ,iBAAiB;AAAA,EACjC,SAAS,aAAE,OAAO,oCAAoB,KAAK,EAAE,SAAS;AAAA,EACtD,SAAS,aAAE,OAAO;AAAA,IAChB,GAAG,iCAAiB;AAAA,IACpB,UAAU,aACP,MAAM,oBAAoB,EAC1B,IAAI,GAAG,wCAAwC,EAC/C;AAAA,MACC,CAAC,aAAa;AACZ,cAAM,eAAe,SAAS,KAAK,CAAC,MAAM,EAAE,iBAAiB,MAAS;AACtE,eAAO,eAAe,SAAS,WAAW,IAAI;AAAA,MAChD;AAAA,MACA,EAAE,OAAO,0DAA0D;AAAA,IACrE;AAAA,EACJ,CAAC;AACH,CAAC;AAED,IAAO,mBAAQ;AAAA,EACb;AAAA,EACA;AACF;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_filters/filter-input/enum.ts"],
|
|
4
4
|
"sourcesContent": ["// eslint-disable-next-line import/prefer-default-export\nexport enum FilterType {\n radio = 'Radio',\n dateRange = 'DateRange',\n granularDateRange = 'GranularDateRange',\n date = 'Date',\n select = 'Select',\n autocomplete = 'Autocomplete',\n text = 'Text',\n multiselect = 'Multiselect',\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACO,IAAK,aAAL,kBAAKA,gBAAL;AACL,EAAAA,YAAA,WAAQ;AACR,EAAAA,YAAA,eAAY;AACZ,EAAAA,YAAA,uBAAoB;AACpB,EAAAA,YAAA,UAAO;AACP,EAAAA,YAAA,YAAS;AACT,EAAAA,YAAA,kBAAe;AACf,EAAAA,YAAA,UAAO;AACP,EAAAA,YAAA,iBAAc;AARJ,SAAAA;AAAA,GAAA;",
|
|
6
6
|
"names": ["FilterType"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_filters/filter-input/filters.ts"],
|
|
4
4
|
"sourcesContent": ["import { FilterOption } from './types'\n\nexport const addRequiredAttributeToAll = (items: Array<FilterOption>) => {\n return items.map((i) => ({\n ...i,\n attributes: {\n required: true,\n },\n }))\n}\n\nexport default addRequiredAttributeToAll\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,4BAA4B,CAAC,UAA+B;AACvE,SAAO,MAAM,IAAI,CAAC,OAAO;AAAA,IACvB,GAAG;AAAA,IACH,YAAY;AAAA,MACV,UAAU;AAAA,IACZ;AAAA,EACF,EAAE;AACJ;AAEA,IAAO,kBAAQ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
3
|
+
"sources": ["../../../../dpr/components/_filters/filter-input/types.d.ts"],
|
|
4
4
|
"sourcesContent": ["import { FilterType } from './enum'\n\nexport interface FilterOption {\n value: string\n text: string\n disabled?: boolean\n selected?: boolean\n}\n\nexport type FilterValue = GenericFilterValue | DateFilterValue\n\nexport interface GenericFilterValue {\n text: string\n name: string\n type: FilterType\n value?: string | DateRange\n options?: Array<FilterOption>\n minimumLength?: number\n dynamicResourceEndpoint?: string\n mandatory?: boolean\n}\n\nexport interface DateFilterValue extends GenericFilterValue {\n type: FilterType.dateRange\n value?: DateRange\n min?: string\n max?: string\n}\n\nexport interface SelectedFilter {\n text: string\n href: string\n classes: string\n}\n\nexport interface DateRange {\n start: string\n end: string\n}\n\nexport interface FilterOptions {\n filters: Array<FilterValue>\n selectedFilters: Array<SelectedFilter>\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var clientClass_exports = {};
|
|
30
|
+
__export(clientClass_exports, {
|
|
31
|
+
DprFiltersFormClass: () => DprFiltersFormClass,
|
|
32
|
+
default: () => clientClass_default
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(clientClass_exports);
|
|
35
|
+
var import_DprFormValidationClass = __toESM(require("../../../DprFormValidationClass"));
|
|
36
|
+
class DprFiltersFormClass extends import_DprFormValidationClass.default {
|
|
37
|
+
initFiltersForm({ formId, submitButtonId, resetButtonId, selectedFiltersId, removeSelectedButtonClass }) {
|
|
38
|
+
this.errorMessages = [];
|
|
39
|
+
this.mainForm = document.getElementById(formId);
|
|
40
|
+
this.mainForm.noValidate = true;
|
|
41
|
+
this.formFields = Array.from(this.mainForm.elements);
|
|
42
|
+
this.errorSummary = document.getElementById("query-error-summary");
|
|
43
|
+
this.embbeddedReportList = document.getElementById("dpr-embedded-report-list");
|
|
44
|
+
this.submitButton = document.getElementById(submitButtonId);
|
|
45
|
+
this.selectedFiltersWrapper = document.getElementById(selectedFiltersId);
|
|
46
|
+
this.selectedFiltersButtons = document.querySelectorAll(`.${removeSelectedButtonClass}`);
|
|
47
|
+
this.initValues();
|
|
48
|
+
this.initSubmitButton();
|
|
49
|
+
this.initResetButton(resetButtonId);
|
|
50
|
+
this.initFormData();
|
|
51
|
+
}
|
|
52
|
+
initValues() {
|
|
53
|
+
this.initInputsFromQueryParams();
|
|
54
|
+
this.initQueryParamsFromInputs(this.mainForm.elements);
|
|
55
|
+
this.initInputEvents(this.mainForm.elements);
|
|
56
|
+
}
|
|
57
|
+
initFormData() {
|
|
58
|
+
this.initFormValidation(this.formFields);
|
|
59
|
+
this.mainForm.classList.remove("async-filters-form--hidden");
|
|
60
|
+
}
|
|
61
|
+
initSubmitButton() {
|
|
62
|
+
this.submitButton.addEventListener("click", (e) => {
|
|
63
|
+
e.preventDefault();
|
|
64
|
+
this.initFormData();
|
|
65
|
+
const errors = this.validateForm();
|
|
66
|
+
if (this.mainForm.checkValidity() && errors.length === 0) {
|
|
67
|
+
if (this.embbeddedReportList) {
|
|
68
|
+
this.submitAction();
|
|
69
|
+
} else {
|
|
70
|
+
this.mainForm.requestSubmit();
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
initResetButton(resetButtonId) {
|
|
76
|
+
this.resetButton = document.getElementById(resetButtonId);
|
|
77
|
+
if (this.resetButton) {
|
|
78
|
+
this.defaultQuery = this.resetButton.getAttribute("defaultQuery");
|
|
79
|
+
this.resetButton.addEventListener("click", (e) => {
|
|
80
|
+
e.preventDefault();
|
|
81
|
+
this.clearQueryParams("filters");
|
|
82
|
+
this.resetAction();
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
resetAction() {
|
|
87
|
+
if (this.defaultQuery) {
|
|
88
|
+
const filters = this.defaultQuery.substring(1);
|
|
89
|
+
const href = `${window.location.href}&${filters}`;
|
|
90
|
+
window.location.href = href;
|
|
91
|
+
} else {
|
|
92
|
+
window.location.reload();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
submitAction() {
|
|
96
|
+
window.location.reload();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
var clientClass_default = DprFiltersFormClass;
|
|
100
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
101
|
+
0 && (module.exports = {
|
|
102
|
+
DprFiltersFormClass
|
|
103
|
+
});
|
|
104
|
+
//# sourceMappingURL=clientClass.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../dpr/components/_filters/filters-form/clientClass.ts"],
|
|
4
|
+
"sourcesContent": ["// @ts-nocheck\n/* eslint-disable class-methods-use-this */\nimport DprFormValidationClass from '../../../DprFormValidationClass'\n\nclass DprFiltersFormClass extends DprFormValidationClass {\n initFiltersForm({ formId, submitButtonId, resetButtonId, selectedFiltersId, removeSelectedButtonClass }) {\n this.errorMessages = []\n\n // Main form\n this.mainForm = document.getElementById(formId)\n this.mainForm.noValidate = true\n this.formFields = Array.from(this.mainForm.elements)\n this.errorSummary = document.getElementById('query-error-summary')\n this.embbeddedReportList = document.getElementById('dpr-embedded-report-list')\n\n // Buttons\n this.submitButton = document.getElementById(submitButtonId)\n this.selectedFiltersWrapper = document.getElementById(selectedFiltersId)\n this.selectedFiltersButtons = document.querySelectorAll(`.${removeSelectedButtonClass}`)\n\n this.initValues()\n this.initSubmitButton()\n this.initResetButton(resetButtonId)\n this.initFormData()\n }\n\n initValues() {\n this.initInputsFromQueryParams()\n this.initQueryParamsFromInputs(this.mainForm.elements)\n this.initInputEvents(this.mainForm.elements)\n }\n\n initFormData() {\n this.initFormValidation(this.formFields)\n this.mainForm.classList.remove('async-filters-form--hidden')\n }\n\n initSubmitButton() {\n this.submitButton.addEventListener('click', (e) => {\n e.preventDefault()\n this.initFormData()\n const errors = this.validateForm()\n if (this.mainForm.checkValidity() && errors.length === 0) {\n if (this.embbeddedReportList) {\n this.submitAction()\n } else {\n this.mainForm.requestSubmit()\n }\n }\n })\n }\n\n initResetButton(resetButtonId) {\n this.resetButton = document.getElementById(resetButtonId)\n if (this.resetButton) {\n this.defaultQuery = this.resetButton.getAttribute('defaultQuery')\n this.resetButton.addEventListener('click', (e) => {\n e.preventDefault()\n this.clearQueryParams('filters')\n this.resetAction()\n })\n }\n }\n\n resetAction() {\n if (this.defaultQuery) {\n const filters = this.defaultQuery.substring(1)\n const href = `${window.location.href}&${filters}`\n window.location.href = href\n } else {\n window.location.reload()\n }\n }\n\n submitAction() {\n window.location.reload()\n }\n}\n\nexport { DprFiltersFormClass }\nexport default DprFiltersFormClass\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oCAAmC;AAEnC,MAAM,4BAA4B,8BAAAA,QAAuB;AAAA,EACvD,gBAAgB,EAAE,QAAQ,gBAAgB,eAAe,mBAAmB,0BAA0B,GAAG;AACvG,SAAK,gBAAgB,CAAC;AAGtB,SAAK,WAAW,SAAS,eAAe,MAAM;AAC9C,SAAK,SAAS,aAAa;AAC3B,SAAK,aAAa,MAAM,KAAK,KAAK,SAAS,QAAQ;AACnD,SAAK,eAAe,SAAS,eAAe,qBAAqB;AACjE,SAAK,sBAAsB,SAAS,eAAe,0BAA0B;AAG7E,SAAK,eAAe,SAAS,eAAe,cAAc;AAC1D,SAAK,yBAAyB,SAAS,eAAe,iBAAiB;AACvE,SAAK,yBAAyB,SAAS,iBAAiB,IAAI,yBAAyB,EAAE;AAEvF,SAAK,WAAW;AAChB,SAAK,iBAAiB;AACtB,SAAK,gBAAgB,aAAa;AAClC,SAAK,aAAa;AAAA,EACpB;AAAA,EAEA,aAAa;AACX,SAAK,0BAA0B;AAC/B,SAAK,0BAA0B,KAAK,SAAS,QAAQ;AACrD,SAAK,gBAAgB,KAAK,SAAS,QAAQ;AAAA,EAC7C;AAAA,EAEA,eAAe;AACb,SAAK,mBAAmB,KAAK,UAAU;AACvC,SAAK,SAAS,UAAU,OAAO,4BAA4B;AAAA,EAC7D;AAAA,EAEA,mBAAmB;AACjB,SAAK,aAAa,iBAAiB,SAAS,CAAC,MAAM;AACjD,QAAE,eAAe;AACjB,WAAK,aAAa;AAClB,YAAM,SAAS,KAAK,aAAa;AACjC,UAAI,KAAK,SAAS,cAAc,KAAK,OAAO,WAAW,GAAG;AACxD,YAAI,KAAK,qBAAqB;AAC5B,eAAK,aAAa;AAAA,QACpB,OAAO;AACL,eAAK,SAAS,cAAc;AAAA,QAC9B;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEA,gBAAgB,eAAe;AAC7B,SAAK,cAAc,SAAS,eAAe,aAAa;AACxD,QAAI,KAAK,aAAa;AACpB,WAAK,eAAe,KAAK,YAAY,aAAa,cAAc;AAChE,WAAK,YAAY,iBAAiB,SAAS,CAAC,MAAM;AAChD,UAAE,eAAe;AACjB,aAAK,iBAAiB,SAAS;AAC/B,aAAK,YAAY;AAAA,MACnB,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EAEA,cAAc;AACZ,QAAI,KAAK,cAAc;AACrB,YAAM,UAAU,KAAK,aAAa,UAAU,CAAC;AAC7C,YAAM,OAAO,GAAG,OAAO,SAAS,IAAI,IAAI,OAAO;AAC/C,aAAO,SAAS,OAAO;AAAA,IACzB,OAAO;AACL,aAAO,SAAS,OAAO;AAAA,IACzB;AAAA,EACF;AAAA,EAEA,eAAe;AACb,WAAO,SAAS,OAAO;AAAA,EACzB;AACF;AAGA,IAAO,sBAAQ;",
|
|
6
|
+
"names": ["DprFormValidationClass"]
|
|
7
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
1
2
|
/* eslint-disable class-methods-use-this */
|
|
2
|
-
import DprFormValidationClass from '../../../DprFormValidationClass
|
|
3
|
+
import DprFormValidationClass from '../../../DprFormValidationClass'
|
|
3
4
|
|
|
4
5
|
class DprFiltersFormClass extends DprFormValidationClass {
|
|
5
6
|
initFiltersForm({ formId, submitButtonId, resetButtonId, selectedFiltersId, removeSelectedButtonClass }) {
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var clientClass_exports = {};
|
|
30
|
+
__export(clientClass_exports, {
|
|
31
|
+
InteractiveFilters: () => InteractiveFilters,
|
|
32
|
+
default: () => clientClass_default
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(clientClass_exports);
|
|
35
|
+
var import_clientClass = __toESM(require("../filters-selected/clientClass"));
|
|
36
|
+
class InteractiveFilters extends import_clientClass.default {
|
|
37
|
+
static getModuleName() {
|
|
38
|
+
return "interactive-filters";
|
|
39
|
+
}
|
|
40
|
+
initialise() {
|
|
41
|
+
this.initFiltersForm({
|
|
42
|
+
formId: "interactive-filters-form",
|
|
43
|
+
submitButtonId: "interactive-apply-filters-button",
|
|
44
|
+
resetButtonId: "interactive-reset-filters-button",
|
|
45
|
+
removeSelectedButtonClass: "interactive-remove-filter-button"
|
|
46
|
+
});
|
|
47
|
+
this.initInteractiveSelectedFilterButtonsEvents();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
var clientClass_default = InteractiveFilters;
|
|
51
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
52
|
+
0 && (module.exports = {
|
|
53
|
+
InteractiveFilters
|
|
54
|
+
});
|
|
55
|
+
//# sourceMappingURL=clientClass.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../dpr/components/_filters/filters-interactive/clientClass.ts"],
|
|
4
|
+
"sourcesContent": ["// @ts-nocheck\nimport DprSelectedFiltersClass from '../filters-selected/clientClass'\n\nclass InteractiveFilters extends DprSelectedFiltersClass {\n static getModuleName() {\n return 'interactive-filters'\n }\n\n initialise() {\n this.initFiltersForm({\n formId: 'interactive-filters-form',\n submitButtonId: 'interactive-apply-filters-button',\n resetButtonId: 'interactive-reset-filters-button',\n removeSelectedButtonClass: 'interactive-remove-filter-button',\n })\n\n this.initInteractiveSelectedFilterButtonsEvents()\n }\n}\n\nexport { InteractiveFilters }\nexport default InteractiveFilters\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAAoC;AAEpC,MAAM,2BAA2B,mBAAAA,QAAwB;AAAA,EACvD,OAAO,gBAAgB;AACrB,WAAO;AAAA,EACT;AAAA,EAEA,aAAa;AACX,SAAK,gBAAgB;AAAA,MACnB,QAAQ;AAAA,MACR,gBAAgB;AAAA,MAChB,eAAe;AAAA,MACf,2BAA2B;AAAA,IAC7B,CAAC;AAED,SAAK,2CAA2C;AAAA,EAClD;AACF;AAGA,IAAO,sBAAQ;",
|
|
6
|
+
"names": ["DprSelectedFiltersClass"]
|
|
7
|
+
}
|