@itwin/reports-config-widget-react 0.2.1 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.rush/temp/operation/rebuild/all.log +9 -0
- package/.rush/temp/operation/rebuild/state.json +3 -0
- package/.rush/temp/package-deps_rebuild.json +48 -44
- package/.rush/temp/shrinkwrap-deps.json +228 -207
- package/CHANGELOG.json +44 -0
- package/CHANGELOG.md +24 -1
- package/coverage/clover.xml +562 -542
- package/coverage/coverage-final.json +24 -20
- package/coverage/lcov-report/index.html +51 -51
- package/coverage/lcov-report/src/ReportsConfigWidget.ts.html +22 -22
- package/coverage/lcov-report/src/index.html +21 -21
- package/coverage/lcov-report/src/test/index.html +11 -11
- package/coverage/lcov-report/src/test/test-utils.tsx.html +20 -140
- package/coverage/lcov-report/src/widget/ReportsConfigUiProvider.tsx.html +14 -35
- package/coverage/lcov-report/src/widget/components/ActionPanel.tsx.html +26 -20
- package/coverage/lcov-report/src/widget/components/AddMappingsModal.tsx.html +94 -109
- package/coverage/lcov-report/src/widget/components/BulkExtractor.ts.html +55 -52
- package/coverage/lcov-report/src/widget/components/Constants.ts.html +1 -1
- package/coverage/lcov-report/src/widget/components/DeleteModal.tsx.html +28 -46
- package/coverage/lcov-report/src/widget/components/ExtractionStates/FailedExtractionState.tsx.html +1 -1
- package/coverage/lcov-report/src/widget/components/ExtractionStates/QueuedExtractionState.tsx.html +1 -1
- package/coverage/lcov-report/src/widget/components/ExtractionStates/RunningExtractionState.tsx.html +1 -1
- package/coverage/lcov-report/src/widget/components/ExtractionStates/StartingExtractionState.tsx.html +1 -1
- package/coverage/lcov-report/src/widget/components/ExtractionStates/SucceededExtractionState.tsx.html +1 -1
- package/coverage/lcov-report/src/widget/components/ExtractionStates/index.html +1 -1
- package/coverage/lcov-report/src/widget/components/ExtractionStatus.tsx.html +1 -1
- package/coverage/lcov-report/src/widget/components/ExtractionToast.tsx.html +1 -1
- package/coverage/lcov-report/src/widget/components/HorizontalTile.tsx.html +3 -3
- package/coverage/lcov-report/src/widget/components/LocalizedTablePaginator.tsx.html +8 -8
- package/coverage/lcov-report/src/widget/components/ReportAction.tsx.html +36 -81
- package/coverage/lcov-report/src/widget/components/ReportHorizontalTile.tsx.html +38 -41
- package/coverage/lcov-report/src/widget/components/ReportMappingHorizontalTile.tsx.html +46 -46
- package/coverage/lcov-report/src/widget/components/ReportMappings.tsx.html +127 -142
- package/coverage/lcov-report/src/widget/components/Reports.tsx.html +189 -312
- package/coverage/lcov-report/src/widget/components/ReportsConfigContext.tsx.html +370 -0
- package/coverage/lcov-report/src/widget/components/ReportsContainer.tsx.html +111 -33
- package/coverage/lcov-report/src/widget/components/ReportsHeader.tsx.html +166 -0
- package/coverage/lcov-report/src/widget/components/ReportsRouter.tsx.html +274 -0
- package/coverage/lcov-report/src/widget/components/SearchBar.tsx.html +22 -7
- package/coverage/lcov-report/src/widget/components/SelectIModel.tsx.html +40 -94
- package/coverage/lcov-report/src/widget/components/index.html +142 -97
- package/coverage/lcov-report/src/widget/components/utils.tsx.html +22 -19
- package/coverage/lcov-report/src/widget/context/{ReportsApiConfigContext.tsx.html → BulkExtractorContext.tsx.html} +23 -26
- package/coverage/lcov-report/src/widget/context/ReportsConfigApiContext.tsx.html +202 -0
- package/coverage/lcov-report/src/widget/context/index.html +30 -15
- package/coverage/lcov-report/src/widget/hooks/index.html +1 -1
- package/coverage/lcov-report/src/widget/hooks/useValidator.ts.html +11 -11
- package/coverage/lcov-report/src/widget/index.html +13 -13
- package/coverage/lcov.info +1036 -1034
- package/jest.config.js +1 -0
- package/lib/cjs/ReportsConfigWidget.js +1 -1
- package/lib/cjs/ReportsConfigWidget.js.map +1 -1
- package/lib/cjs/reports-config-widget-react.d.ts +5 -0
- package/lib/cjs/reports-config-widget-react.d.ts.map +1 -1
- package/lib/cjs/reports-config-widget-react.js +11 -0
- package/lib/cjs/reports-config-widget-react.js.map +1 -1
- package/lib/cjs/test/AddMappingModal.test.js +20 -34
- package/lib/cjs/test/AddMappingModal.test.js.map +1 -1
- package/lib/cjs/test/BulkExtractor.test.js +13 -19
- package/lib/cjs/test/BulkExtractor.test.js.map +1 -1
- package/lib/cjs/test/DeleteModal.test.d.ts.map +1 -1
- package/lib/cjs/test/DeleteModal.test.js +4 -62
- package/lib/cjs/test/DeleteModal.test.js.map +1 -1
- package/lib/cjs/test/ReportAction.test.js +14 -79
- package/lib/cjs/test/ReportAction.test.js.map +1 -1
- package/lib/cjs/test/ReportMappingHorizontalTile.test.js +20 -54
- package/lib/cjs/test/ReportMappingHorizontalTile.test.js.map +1 -1
- package/lib/cjs/test/ReportMappings.test.d.ts.map +1 -1
- package/lib/cjs/test/ReportMappings.test.js +51 -106
- package/lib/cjs/test/ReportMappings.test.js.map +1 -1
- package/lib/cjs/test/Reports.test.js +41 -96
- package/lib/cjs/test/Reports.test.js.map +1 -1
- package/lib/cjs/test/WidgetHeader.test.js +9 -3
- package/lib/cjs/test/WidgetHeader.test.js.map +1 -1
- package/lib/cjs/test/test-utils.d.ts +3 -8
- package/lib/cjs/test/test-utils.d.ts.map +1 -1
- package/lib/cjs/test/test-utils.js +6 -34
- package/lib/cjs/test/test-utils.js.map +1 -1
- package/lib/cjs/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/widget/ReportsConfigUiProvider.d.ts +3 -3
- package/lib/cjs/widget/ReportsConfigUiProvider.d.ts.map +1 -1
- package/lib/cjs/widget/ReportsConfigUiProvider.js +5 -7
- package/lib/cjs/widget/ReportsConfigUiProvider.js.map +1 -1
- package/lib/cjs/widget/components/ActionPanel.d.ts +3 -3
- package/lib/cjs/widget/components/ActionPanel.d.ts.map +1 -1
- package/lib/cjs/widget/components/ActionPanel.js +4 -4
- package/lib/cjs/widget/components/ActionPanel.js.map +1 -1
- package/lib/cjs/widget/components/ActionPanel.scss +2 -3
- package/lib/cjs/widget/components/AddMappingsModal.d.ts +4 -4
- package/lib/cjs/widget/components/AddMappingsModal.d.ts.map +1 -1
- package/lib/cjs/widget/components/AddMappingsModal.js +39 -43
- package/lib/cjs/widget/components/AddMappingsModal.js.map +1 -1
- package/lib/cjs/widget/components/AddMappingsModal.scss +1 -2
- package/lib/cjs/widget/components/BulkExtractor.d.ts +4 -4
- package/lib/cjs/widget/components/BulkExtractor.d.ts.map +1 -1
- package/lib/cjs/widget/components/BulkExtractor.js +8 -8
- package/lib/cjs/widget/components/BulkExtractor.js.map +1 -1
- package/lib/cjs/widget/components/DeleteModal.d.ts +4 -5
- package/lib/cjs/widget/components/DeleteModal.d.ts.map +1 -1
- package/lib/cjs/widget/components/DeleteModal.js +11 -15
- package/lib/cjs/widget/components/DeleteModal.js.map +1 -1
- package/lib/cjs/widget/components/DeleteModal.scss +2 -3
- package/lib/cjs/widget/components/ExtractionStatus.js +2 -2
- package/lib/cjs/widget/components/ExtractionStatus.js.map +1 -1
- package/lib/cjs/widget/components/ExtractionStatus.scss +6 -7
- package/lib/cjs/widget/components/HorizontalTile.js +2 -2
- package/lib/cjs/widget/components/HorizontalTile.js.map +1 -1
- package/lib/cjs/widget/components/HorizontalTile.scss +11 -14
- package/lib/cjs/widget/components/LocalizedTablePaginator.js +2 -2
- package/lib/cjs/widget/components/LocalizedTablePaginator.js.map +1 -1
- package/lib/cjs/widget/components/ReportAction.d.ts +4 -5
- package/lib/cjs/widget/components/ReportAction.d.ts.map +1 -1
- package/lib/cjs/widget/components/ReportAction.js +24 -26
- package/lib/cjs/widget/components/ReportAction.js.map +1 -1
- package/lib/cjs/widget/components/ReportAction.scss +1 -2
- package/lib/cjs/widget/components/ReportHorizontalTile.d.ts +4 -4
- package/lib/cjs/widget/components/ReportHorizontalTile.d.ts.map +1 -1
- package/lib/cjs/widget/components/ReportHorizontalTile.js +33 -20
- package/lib/cjs/widget/components/ReportHorizontalTile.js.map +1 -1
- package/lib/cjs/widget/components/ReportMappingHorizontalTile.d.ts +1 -1
- package/lib/cjs/widget/components/ReportMappingHorizontalTile.d.ts.map +1 -1
- package/lib/cjs/widget/components/ReportMappingHorizontalTile.js +36 -21
- package/lib/cjs/widget/components/ReportMappingHorizontalTile.js.map +1 -1
- package/lib/cjs/widget/components/ReportMappings.d.ts +4 -6
- package/lib/cjs/widget/components/ReportMappings.d.ts.map +1 -1
- package/lib/cjs/widget/components/ReportMappings.js +50 -63
- package/lib/cjs/widget/components/ReportMappings.js.map +1 -1
- package/lib/cjs/widget/components/ReportMappings.scss +10 -11
- package/lib/cjs/widget/components/Reports.d.ts +6 -1
- package/lib/cjs/widget/components/Reports.d.ts.map +1 -1
- package/lib/cjs/widget/components/Reports.js +53 -94
- package/lib/cjs/widget/components/Reports.js.map +1 -1
- package/lib/cjs/widget/components/Reports.scss +15 -15
- package/lib/cjs/widget/components/ReportsConfigContext.d.ts +18 -0
- package/lib/cjs/widget/components/ReportsConfigContext.d.ts.map +1 -0
- package/lib/cjs/widget/components/ReportsConfigContext.js +79 -0
- package/lib/cjs/widget/components/ReportsConfigContext.js.map +1 -0
- package/lib/cjs/widget/components/ReportsContainer.d.ts +14 -0
- package/lib/cjs/widget/components/ReportsContainer.d.ts.map +1 -1
- package/lib/cjs/widget/components/ReportsContainer.js +27 -16
- package/lib/cjs/widget/components/ReportsContainer.js.map +1 -1
- package/lib/cjs/widget/components/ReportsContainer.scss +1 -3
- package/lib/cjs/widget/components/ReportsHeader.d.ts +7 -0
- package/lib/cjs/widget/components/ReportsHeader.d.ts.map +1 -0
- package/lib/cjs/widget/components/ReportsHeader.js +20 -0
- package/lib/cjs/widget/components/ReportsHeader.js.map +1 -0
- package/lib/cjs/widget/components/ReportsRouter.d.ts +8 -0
- package/lib/cjs/widget/components/ReportsRouter.d.ts.map +1 -0
- package/lib/cjs/widget/components/ReportsRouter.js +51 -0
- package/lib/cjs/widget/components/ReportsRouter.js.map +1 -0
- package/lib/cjs/widget/components/SearchBar.d.ts.map +1 -1
- package/lib/cjs/widget/components/SearchBar.js +4 -5
- package/lib/cjs/widget/components/SearchBar.js.map +1 -1
- package/lib/cjs/widget/components/SearchBar.scss +1 -2
- package/lib/cjs/widget/components/SelectIModel.d.ts +3 -3
- package/lib/cjs/widget/components/SelectIModel.d.ts.map +1 -1
- package/lib/cjs/widget/components/SelectIModel.js +10 -30
- package/lib/cjs/widget/components/SelectIModel.js.map +1 -1
- package/lib/cjs/widget/components/SelectIModel.scss +2 -3
- package/lib/cjs/widget/components/utils.d.ts +1 -1
- package/lib/cjs/widget/components/utils.d.ts.map +1 -1
- package/lib/cjs/widget/components/utils.js +1 -1
- package/lib/cjs/widget/components/utils.js.map +1 -1
- package/lib/cjs/widget/components/utils.scss +16 -8
- package/lib/cjs/widget/context/BulkExtractorContext.d.ts +10 -0
- package/lib/cjs/widget/context/BulkExtractorContext.d.ts.map +1 -0
- package/lib/cjs/widget/context/{ReportsApiConfigContext.js → BulkExtractorContext.js} +7 -10
- package/lib/cjs/widget/context/BulkExtractorContext.js.map +1 -0
- package/lib/cjs/widget/context/ReportsConfigApiContext.d.ts +16 -0
- package/lib/cjs/widget/context/ReportsConfigApiContext.d.ts.map +1 -0
- package/lib/cjs/widget/context/ReportsConfigApiContext.js +43 -0
- package/lib/cjs/widget/context/ReportsConfigApiContext.js.map +1 -0
- package/lib/cjs/widget/hooks/useValidator.js +1 -1
- package/lib/cjs/widget/hooks/useValidator.js.map +1 -1
- package/lib/esm/ReportsConfigWidget.js +1 -1
- package/lib/esm/ReportsConfigWidget.js.map +1 -1
- package/lib/esm/reports-config-widget-react.d.ts +5 -0
- package/lib/esm/reports-config-widget-react.d.ts.map +1 -1
- package/lib/esm/reports-config-widget-react.js +5 -0
- package/lib/esm/reports-config-widget-react.js.map +1 -1
- package/lib/esm/test/AddMappingModal.test.js +17 -31
- package/lib/esm/test/AddMappingModal.test.js.map +1 -1
- package/lib/esm/test/BulkExtractor.test.js +14 -17
- package/lib/esm/test/BulkExtractor.test.js.map +1 -1
- package/lib/esm/test/DeleteModal.test.d.ts.map +1 -1
- package/lib/esm/test/DeleteModal.test.js +5 -44
- package/lib/esm/test/DeleteModal.test.js.map +1 -1
- package/lib/esm/test/ReportAction.test.js +14 -60
- package/lib/esm/test/ReportAction.test.js.map +1 -1
- package/lib/esm/test/ReportMappingHorizontalTile.test.js +4 -38
- package/lib/esm/test/ReportMappingHorizontalTile.test.js.map +1 -1
- package/lib/esm/test/ReportMappings.test.d.ts.map +1 -1
- package/lib/esm/test/ReportMappings.test.js +43 -98
- package/lib/esm/test/ReportMappings.test.js.map +1 -1
- package/lib/esm/test/Reports.test.js +24 -60
- package/lib/esm/test/Reports.test.js.map +1 -1
- package/lib/esm/test/WidgetHeader.test.js +8 -2
- package/lib/esm/test/WidgetHeader.test.js.map +1 -1
- package/lib/esm/test/test-utils.d.ts +3 -8
- package/lib/esm/test/test-utils.d.ts.map +1 -1
- package/lib/esm/test/test-utils.js +4 -31
- package/lib/esm/test/test-utils.js.map +1 -1
- package/lib/esm/tsconfig.tsbuildinfo +1 -1
- package/lib/esm/widget/ReportsConfigUiProvider.d.ts +3 -3
- package/lib/esm/widget/ReportsConfigUiProvider.d.ts.map +1 -1
- package/lib/esm/widget/ReportsConfigUiProvider.js +2 -4
- package/lib/esm/widget/ReportsConfigUiProvider.js.map +1 -1
- package/lib/esm/widget/components/ActionPanel.d.ts +3 -3
- package/lib/esm/widget/components/ActionPanel.d.ts.map +1 -1
- package/lib/esm/widget/components/ActionPanel.js +4 -4
- package/lib/esm/widget/components/ActionPanel.js.map +1 -1
- package/lib/esm/widget/components/ActionPanel.scss +2 -3
- package/lib/esm/widget/components/AddMappingsModal.d.ts +4 -4
- package/lib/esm/widget/components/AddMappingsModal.d.ts.map +1 -1
- package/lib/esm/widget/components/AddMappingsModal.js +35 -39
- package/lib/esm/widget/components/AddMappingsModal.js.map +1 -1
- package/lib/esm/widget/components/AddMappingsModal.scss +1 -2
- package/lib/esm/widget/components/BulkExtractor.d.ts +4 -4
- package/lib/esm/widget/components/BulkExtractor.d.ts.map +1 -1
- package/lib/esm/widget/components/BulkExtractor.js +7 -8
- package/lib/esm/widget/components/BulkExtractor.js.map +1 -1
- package/lib/esm/widget/components/DeleteModal.d.ts +4 -5
- package/lib/esm/widget/components/DeleteModal.d.ts.map +1 -1
- package/lib/esm/widget/components/DeleteModal.js +11 -15
- package/lib/esm/widget/components/DeleteModal.js.map +1 -1
- package/lib/esm/widget/components/DeleteModal.scss +2 -3
- package/lib/esm/widget/components/ExtractionStatus.scss +6 -7
- package/lib/esm/widget/components/HorizontalTile.scss +11 -14
- package/lib/esm/widget/components/ReportAction.d.ts +4 -5
- package/lib/esm/widget/components/ReportAction.d.ts.map +1 -1
- package/lib/esm/widget/components/ReportAction.js +17 -21
- package/lib/esm/widget/components/ReportAction.js.map +1 -1
- package/lib/esm/widget/components/ReportAction.scss +1 -2
- package/lib/esm/widget/components/ReportHorizontalTile.d.ts +4 -4
- package/lib/esm/widget/components/ReportHorizontalTile.d.ts.map +1 -1
- package/lib/esm/widget/components/ReportHorizontalTile.js +6 -9
- package/lib/esm/widget/components/ReportHorizontalTile.js.map +1 -1
- package/lib/esm/widget/components/ReportMappingHorizontalTile.d.ts +1 -1
- package/lib/esm/widget/components/ReportMappingHorizontalTile.d.ts.map +1 -1
- package/lib/esm/widget/components/ReportMappingHorizontalTile.js +12 -13
- package/lib/esm/widget/components/ReportMappingHorizontalTile.js.map +1 -1
- package/lib/esm/widget/components/ReportMappings.d.ts +4 -6
- package/lib/esm/widget/components/ReportMappings.d.ts.map +1 -1
- package/lib/esm/widget/components/ReportMappings.js +43 -56
- package/lib/esm/widget/components/ReportMappings.js.map +1 -1
- package/lib/esm/widget/components/ReportMappings.scss +10 -11
- package/lib/esm/widget/components/Reports.d.ts +6 -1
- package/lib/esm/widget/components/Reports.d.ts.map +1 -1
- package/lib/esm/widget/components/Reports.js +46 -87
- package/lib/esm/widget/components/Reports.js.map +1 -1
- package/lib/esm/widget/components/Reports.scss +15 -15
- package/lib/esm/widget/components/ReportsConfigContext.d.ts +18 -0
- package/lib/esm/widget/components/ReportsConfigContext.d.ts.map +1 -0
- package/lib/esm/widget/components/ReportsConfigContext.js +56 -0
- package/lib/esm/widget/components/ReportsConfigContext.js.map +1 -0
- package/lib/esm/widget/components/ReportsContainer.d.ts +14 -0
- package/lib/esm/widget/components/ReportsContainer.d.ts.map +1 -1
- package/lib/esm/widget/components/ReportsContainer.js +27 -17
- package/lib/esm/widget/components/ReportsContainer.js.map +1 -1
- package/lib/esm/widget/components/ReportsContainer.scss +1 -3
- package/lib/esm/widget/components/ReportsHeader.d.ts +7 -0
- package/lib/esm/widget/components/ReportsHeader.d.ts.map +1 -0
- package/lib/esm/widget/components/ReportsHeader.js +13 -0
- package/lib/esm/widget/components/ReportsHeader.js.map +1 -0
- package/lib/esm/widget/components/ReportsRouter.d.ts +8 -0
- package/lib/esm/widget/components/ReportsRouter.d.ts.map +1 -0
- package/lib/esm/widget/components/ReportsRouter.js +44 -0
- package/lib/esm/widget/components/ReportsRouter.js.map +1 -0
- package/lib/esm/widget/components/SearchBar.d.ts.map +1 -1
- package/lib/esm/widget/components/SearchBar.js +2 -3
- package/lib/esm/widget/components/SearchBar.js.map +1 -1
- package/lib/esm/widget/components/SearchBar.scss +1 -2
- package/lib/esm/widget/components/SelectIModel.d.ts +3 -3
- package/lib/esm/widget/components/SelectIModel.d.ts.map +1 -1
- package/lib/esm/widget/components/SelectIModel.js +7 -27
- package/lib/esm/widget/components/SelectIModel.js.map +1 -1
- package/lib/esm/widget/components/SelectIModel.scss +2 -3
- package/lib/esm/widget/components/utils.d.ts +1 -1
- package/lib/esm/widget/components/utils.d.ts.map +1 -1
- package/lib/esm/widget/components/utils.js +2 -2
- package/lib/esm/widget/components/utils.js.map +1 -1
- package/lib/esm/widget/components/utils.scss +16 -8
- package/lib/esm/widget/context/BulkExtractorContext.d.ts +10 -0
- package/lib/esm/widget/context/BulkExtractorContext.d.ts.map +1 -0
- package/lib/esm/widget/context/BulkExtractorContext.js +11 -0
- package/lib/esm/widget/context/BulkExtractorContext.js.map +1 -0
- package/lib/esm/widget/context/ReportsConfigApiContext.d.ts +16 -0
- package/lib/esm/widget/context/ReportsConfigApiContext.d.ts.map +1 -0
- package/lib/esm/widget/context/ReportsConfigApiContext.js +20 -0
- package/lib/esm/widget/context/ReportsConfigApiContext.js.map +1 -0
- package/lib/public/locales/en/ReportsConfigWidget.json +6 -1
- package/package.json +29 -29
- package/public/locales/en/ReportsConfigWidget.json +6 -1
- package/reports-config-widget-react.build.error.log +6 -6
- package/reports-config-widget-react.build.log +52 -49
- package/src/reports-config-widget-react.ts +6 -0
- package/src/test/AddMappingModal.test.tsx +20 -37
- package/src/test/BulkExtractor.test.ts +15 -17
- package/src/test/DeleteModal.test.tsx +4 -73
- package/src/test/ReportAction.test.tsx +17 -90
- package/src/test/ReportMappingHorizontalTile.test.tsx +3 -54
- package/src/test/ReportMappings.test.tsx +50 -135
- package/src/test/Reports.test.tsx +21 -80
- package/src/test/WidgetHeader.test.tsx +9 -2
- package/src/test/test-utils.tsx +9 -49
- package/src/widget/ReportsConfigUiProvider.tsx +7 -14
- package/src/widget/components/ActionPanel.scss +2 -3
- package/src/widget/components/ActionPanel.tsx +17 -15
- package/src/widget/components/AddMappingsModal.scss +1 -2
- package/src/widget/components/AddMappingsModal.tsx +55 -60
- package/src/widget/components/BulkExtractor.ts +11 -10
- package/src/widget/components/DeleteModal.scss +2 -3
- package/src/widget/components/DeleteModal.tsx +17 -23
- package/src/widget/components/ExtractionStatus.scss +6 -7
- package/src/widget/components/HorizontalTile.scss +11 -14
- package/src/widget/components/ReportAction.scss +1 -2
- package/src/widget/components/ReportAction.tsx +18 -33
- package/src/widget/components/ReportHorizontalTile.tsx +11 -12
- package/src/widget/components/ReportMappingHorizontalTile.tsx +30 -30
- package/src/widget/components/ReportMappings.scss +10 -11
- package/src/widget/components/ReportMappings.tsx +67 -72
- package/src/widget/components/Reports.scss +15 -15
- package/src/widget/components/Reports.tsx +140 -181
- package/src/widget/components/ReportsConfigContext.tsx +95 -0
- package/src/widget/components/ReportsContainer.scss +1 -3
- package/src/widget/components/ReportsContainer.tsx +47 -21
- package/src/widget/components/ReportsHeader.tsx +27 -0
- package/src/widget/components/ReportsRouter.tsx +63 -0
- package/src/widget/components/SearchBar.scss +1 -2
- package/src/widget/components/SearchBar.tsx +7 -2
- package/src/widget/components/SelectIModel.scss +2 -3
- package/src/widget/components/SelectIModel.tsx +11 -29
- package/src/widget/components/utils.scss +16 -8
- package/src/widget/components/utils.tsx +8 -7
- package/src/widget/context/{ReportsApiConfigContext.tsx → BulkExtractorContext.tsx} +9 -10
- package/src/widget/context/ReportsConfigApiContext.tsx +39 -0
- package/lib/cjs/widget/context/ReportsApiConfigContext.d.ts +0 -9
- package/lib/cjs/widget/context/ReportsApiConfigContext.d.ts.map +0 -1
- package/lib/cjs/widget/context/ReportsApiConfigContext.js.map +0 -1
- package/lib/esm/widget/context/ReportsApiConfigContext.d.ts +0 -9
- package/lib/esm/widget/context/ReportsApiConfigContext.d.ts.map +0 -1
- package/lib/esm/widget/context/ReportsApiConfigContext.js +0 -14
- package/lib/esm/widget/context/ReportsApiConfigContext.js.map +0 -1
|
@@ -23,23 +23,23 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">92% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>46/50</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">80% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>5
|
|
35
|
+
<span class='fraction'>4/5</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">90% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>9/10</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
@@ -231,45 +231,38 @@
|
|
|
231
231
|
<a name='L166'></a><a href='#L166'>166</a>
|
|
232
232
|
<a name='L167'></a><a href='#L167'>167</a>
|
|
233
233
|
<a name='L168'></a><a href='#L168'>168</a>
|
|
234
|
-
<a name='L169'></a><a href='#L169'>169</a>
|
|
235
|
-
<a name='L170'></a><a href='#L170'>170</a>
|
|
236
|
-
<a name='L171'></a><a href='#L171'>171</a>
|
|
237
|
-
<a name='L172'></a><a href='#L172'>172</a>
|
|
238
|
-
<a name='L173'></a><a href='#L173'>173</a>
|
|
239
|
-
<a name='L174'></a><a href='#L174'>174</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
234
|
+
<a name='L169'></a><a href='#L169'>169</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
240
235
|
<span class="cline-any cline-neutral"> </span>
|
|
241
236
|
<span class="cline-any cline-neutral"> </span>
|
|
242
237
|
<span class="cline-any cline-neutral"> </span>
|
|
243
|
-
<span class="cline-any cline-yes">
|
|
244
|
-
<span class="cline-any cline-yes">
|
|
238
|
+
<span class="cline-any cline-yes">7x</span>
|
|
239
|
+
<span class="cline-any cline-yes">7x</span>
|
|
245
240
|
<span class="cline-any cline-neutral"> </span>
|
|
246
|
-
<span class="cline-any cline-yes">
|
|
247
|
-
<span class="cline-any cline-yes">
|
|
248
|
-
<span class="cline-any cline-yes">
|
|
249
|
-
<span class="cline-any cline-yes">5x</span>
|
|
241
|
+
<span class="cline-any cline-yes">7x</span>
|
|
242
|
+
<span class="cline-any cline-yes">7x</span>
|
|
243
|
+
<span class="cline-any cline-yes">7x</span>
|
|
250
244
|
<span class="cline-any cline-neutral"> </span>
|
|
245
|
+
<span class="cline-any cline-yes">7x</span>
|
|
246
|
+
<span class="cline-any cline-yes">7x</span>
|
|
251
247
|
<span class="cline-any cline-neutral"> </span>
|
|
252
|
-
<span class="cline-any cline-yes">
|
|
253
|
-
<span class="cline-any cline-yes">
|
|
248
|
+
<span class="cline-any cline-yes">7x</span>
|
|
249
|
+
<span class="cline-any cline-yes">7x</span>
|
|
254
250
|
<span class="cline-any cline-neutral"> </span>
|
|
255
|
-
<span class="cline-any cline-yes">5x</span>
|
|
256
|
-
<span class="cline-any cline-yes">5x</span>
|
|
257
251
|
<span class="cline-any cline-neutral"> </span>
|
|
258
252
|
<span class="cline-any cline-neutral"> </span>
|
|
259
253
|
<span class="cline-any cline-neutral"> </span>
|
|
260
|
-
<span class="cline-any cline-yes">5x</span>
|
|
261
254
|
<span class="cline-any cline-neutral"> </span>
|
|
255
|
+
<span class="cline-any cline-yes">7x</span>
|
|
262
256
|
<span class="cline-any cline-neutral"> </span>
|
|
263
257
|
<span class="cline-any cline-neutral"> </span>
|
|
264
258
|
<span class="cline-any cline-neutral"> </span>
|
|
265
259
|
<span class="cline-any cline-neutral"> </span>
|
|
266
|
-
<span class="cline-any cline-yes">1x</span>
|
|
267
|
-
<span class="cline-any cline-yes">1x</span>
|
|
268
|
-
<span class="cline-any cline-yes">1x</span>
|
|
269
260
|
<span class="cline-any cline-neutral"> </span>
|
|
270
261
|
<span class="cline-any cline-neutral"> </span>
|
|
271
262
|
<span class="cline-any cline-yes">1x</span>
|
|
272
263
|
<span class="cline-any cline-yes">1x</span>
|
|
264
|
+
<span class="cline-any cline-yes">1x</span>
|
|
265
|
+
<span class="cline-any cline-yes">1x</span>
|
|
273
266
|
<span class="cline-any cline-neutral"> </span>
|
|
274
267
|
<span class="cline-any cline-neutral"> </span>
|
|
275
268
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -288,37 +281,34 @@
|
|
|
288
281
|
<span class="cline-any cline-neutral"> </span>
|
|
289
282
|
<span class="cline-any cline-neutral"> </span>
|
|
290
283
|
<span class="cline-any cline-neutral"> </span>
|
|
291
|
-
<span class="cline-any cline-yes">5x</span>
|
|
292
|
-
<span class="cline-any cline-neutral"> </span>
|
|
293
284
|
<span class="cline-any cline-neutral"> </span>
|
|
285
|
+
<span class="cline-any cline-yes">7x</span>
|
|
294
286
|
<span class="cline-any cline-neutral"> </span>
|
|
295
287
|
<span class="cline-any cline-neutral"> </span>
|
|
296
288
|
<span class="cline-any cline-neutral"> </span>
|
|
297
|
-
<span class="cline-any cline-yes">8x</span>
|
|
298
|
-
<span class="cline-any cline-yes">8x</span>
|
|
299
|
-
<span class="cline-any cline-yes">8x</span>
|
|
300
|
-
<span class="cline-any cline-yes">8x</span>
|
|
301
|
-
<span class="cline-any cline-yes">8x</span>
|
|
302
|
-
<span class="cline-any cline-neutral"> </span>
|
|
303
|
-
<span class="cline-any cline-yes">8x</span>
|
|
304
|
-
<span class="cline-any cline-yes">2x</span>
|
|
305
|
-
<span class="cline-any cline-yes">1x</span>
|
|
306
|
-
<span class="cline-any cline-neutral"> </span>
|
|
307
289
|
<span class="cline-any cline-neutral"> </span>
|
|
308
290
|
<span class="cline-any cline-neutral"> </span>
|
|
309
291
|
<span class="cline-any cline-neutral"> </span>
|
|
292
|
+
<span class="cline-any cline-yes">6x</span>
|
|
293
|
+
<span class="cline-any cline-yes">6x</span>
|
|
294
|
+
<span class="cline-any cline-yes">6x</span>
|
|
295
|
+
<span class="cline-any cline-yes">6x</span>
|
|
296
|
+
<span class="cline-any cline-yes">6x</span>
|
|
310
297
|
<span class="cline-any cline-neutral"> </span>
|
|
298
|
+
<span class="cline-any cline-yes">6x</span>
|
|
299
|
+
<span class="cline-any cline-yes">1x</span>
|
|
300
|
+
<span class="cline-any cline-yes">1x</span>
|
|
311
301
|
<span class="cline-any cline-neutral"> </span>
|
|
312
302
|
<span class="cline-any cline-neutral"> </span>
|
|
313
303
|
<span class="cline-any cline-neutral"> </span>
|
|
314
|
-
<span class="cline-any cline-yes">8x</span>
|
|
315
|
-
<span class="cline-any cline-yes">1x</span>
|
|
316
304
|
<span class="cline-any cline-neutral"> </span>
|
|
317
305
|
<span class="cline-any cline-neutral"> </span>
|
|
318
306
|
<span class="cline-any cline-neutral"> </span>
|
|
319
307
|
<span class="cline-any cline-neutral"> </span>
|
|
320
308
|
<span class="cline-any cline-neutral"> </span>
|
|
321
309
|
<span class="cline-any cline-neutral"> </span>
|
|
310
|
+
<span class="cline-any cline-yes">6x</span>
|
|
311
|
+
<span class="cline-any cline-yes">1x</span>
|
|
322
312
|
<span class="cline-any cline-neutral"> </span>
|
|
323
313
|
<span class="cline-any cline-neutral"> </span>
|
|
324
314
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -338,14 +328,11 @@
|
|
|
338
328
|
<span class="cline-any cline-neutral"> </span>
|
|
339
329
|
<span class="cline-any cline-neutral"> </span>
|
|
340
330
|
<span class="cline-any cline-neutral"> </span>
|
|
341
|
-
<span class="cline-any cline-yes">
|
|
331
|
+
<span class="cline-any cline-yes">6x</span>
|
|
342
332
|
<span class="cline-any cline-yes">1x</span>
|
|
343
333
|
<span class="cline-any cline-yes">1x</span>
|
|
344
334
|
<span class="cline-any cline-yes">1x</span>
|
|
345
335
|
<span class="cline-any cline-yes">1x</span>
|
|
346
|
-
<span class="cline-any cline-neutral"> </span>
|
|
347
|
-
<span class="cline-any cline-neutral"> </span>
|
|
348
|
-
<span class="cline-any cline-yes">1x</span>
|
|
349
336
|
<span class="cline-any cline-yes">1x</span>
|
|
350
337
|
<span class="cline-any cline-yes">1x</span>
|
|
351
338
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -361,18 +348,23 @@
|
|
|
361
348
|
<span class="cline-any cline-neutral"> </span>
|
|
362
349
|
<span class="cline-any cline-neutral"> </span>
|
|
363
350
|
<span class="cline-any cline-neutral"> </span>
|
|
364
|
-
<span class="cline-any cline-yes">
|
|
351
|
+
<span class="cline-any cline-yes">6x</span>
|
|
352
|
+
<span class="cline-any cline-yes">1x</span>
|
|
365
353
|
<span class="cline-any cline-neutral"> </span>
|
|
366
354
|
<span class="cline-any cline-neutral"> </span>
|
|
355
|
+
<span class="cline-any cline-yes">6x</span>
|
|
356
|
+
<span class="cline-any cline-yes">6x</span>
|
|
357
|
+
<span class="cline-any cline-yes">132x</span>
|
|
367
358
|
<span class="cline-any cline-neutral"> </span>
|
|
359
|
+
<span class="cline-any cline-yes">6x</span>
|
|
368
360
|
<span class="cline-any cline-neutral"> </span>
|
|
369
361
|
<span class="cline-any cline-neutral"> </span>
|
|
370
362
|
<span class="cline-any cline-neutral"> </span>
|
|
371
363
|
<span class="cline-any cline-neutral"> </span>
|
|
372
|
-
<span class="cline-any cline-no"> </span>
|
|
373
364
|
<span class="cline-any cline-neutral"> </span>
|
|
374
365
|
<span class="cline-any cline-neutral"> </span>
|
|
375
366
|
<span class="cline-any cline-neutral"> </span>
|
|
367
|
+
<span class="cline-any cline-no"> </span>
|
|
376
368
|
<span class="cline-any cline-neutral"> </span>
|
|
377
369
|
<span class="cline-any cline-neutral"> </span>
|
|
378
370
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -389,10 +381,8 @@
|
|
|
389
381
|
<span class="cline-any cline-neutral"> </span>
|
|
390
382
|
<span class="cline-any cline-neutral"> </span>
|
|
391
383
|
<span class="cline-any cline-neutral"> </span>
|
|
392
|
-
<span class="cline-any cline-yes">153x</span>
|
|
393
384
|
<span class="cline-any cline-neutral"> </span>
|
|
394
385
|
<span class="cline-any cline-neutral"> </span>
|
|
395
|
-
<span class="cline-any cline-yes">1x</span>
|
|
396
386
|
<span class="cline-any cline-neutral"> </span>
|
|
397
387
|
<span class="cline-any cline-neutral"> </span>
|
|
398
388
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -414,35 +404,33 @@
|
|
|
414
404
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
415
405
|
*--------------------------------------------------------------------------------------------*/
|
|
416
406
|
import { Modal, Table, tableFilters } from "@itwin/itwinui-react";
|
|
417
|
-
import React, { useEffect, useMemo, useState } from "react";
|
|
418
|
-
import type { Mapping } from "@itwin/insights-client";
|
|
419
|
-
import { MappingsClient, REPORTING_BASE_PATH, ReportsClient } from "@itwin/insights-client";
|
|
407
|
+
import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
408
|
+
import type { Mapping, MappingsClient } from "@itwin/insights-client";
|
|
420
409
|
import ActionPanel from "./ActionPanel";
|
|
421
410
|
import "./AddMappingsModal.scss";
|
|
422
411
|
import { LocalizedTablePaginator } from "./LocalizedTablePaginator";
|
|
423
412
|
import type { ReportMappingAndMapping } from "./ReportMappings";
|
|
424
|
-
import
|
|
425
|
-
import { useReportsApiConfig } from "../context/ReportsApiConfigContext";
|
|
413
|
+
import { useReportsConfigApi } from "../context/ReportsConfigApiContext";
|
|
426
414
|
import { SelectIModel } from "./SelectIModel";
|
|
427
415
|
import type { CreateTypeFromInterface } from "./utils";
|
|
428
|
-
import {
|
|
416
|
+
import { handleError } from "./utils";
|
|
429
417
|
import { ReportsConfigWidget } from "../../ReportsConfigWidget";
|
|
418
|
+
import type { AccessToken } from "@itwin/core-bentley";
|
|
419
|
+
import type { Column } from "react-table";
|
|
430
420
|
|
|
431
421
|
export type MappingType = CreateTypeFromInterface<Mapping>;
|
|
432
422
|
|
|
433
423
|
const fetchMappings = async (
|
|
434
|
-
setMappings:
|
|
424
|
+
setMappings: (mappings: Mapping[]) => void,
|
|
435
425
|
iModelId: string,
|
|
436
|
-
setIsLoading:
|
|
437
|
-
|
|
426
|
+
setIsLoading: (isLoading: boolean) => void,
|
|
427
|
+
mappingsClient: MappingsClient,
|
|
428
|
+
getAccessToken: () => Promise<AccessToken>
|
|
438
429
|
) => {
|
|
439
430
|
try {
|
|
440
431
|
setIsLoading(true);
|
|
441
|
-
const
|
|
442
|
-
|
|
443
|
-
);
|
|
444
|
-
const accessToken = await apiContext.getAccessToken();
|
|
445
|
-
const mappings = await mappingsClientApi.getMappings(
|
|
432
|
+
const accessToken = await getAccessToken();
|
|
433
|
+
const mappings = await mappingsClient.getMappings(
|
|
446
434
|
accessToken,
|
|
447
435
|
iModelId
|
|
448
436
|
);
|
|
@@ -454,24 +442,26 @@ const fetchMappings = async (
|
|
|
454
442
|
}
|
|
455
443
|
};
|
|
456
444
|
|
|
457
|
-
interface AddMappingsModalProps {
|
|
445
|
+
export interface AddMappingsModalProps {
|
|
458
446
|
reportId: string;
|
|
459
447
|
existingMappings: ReportMappingAndMapping[];
|
|
460
448
|
show: boolean;
|
|
461
|
-
|
|
449
|
+
onClose: () => Promise<void>;
|
|
450
|
+
defaultIModelId?: string;
|
|
462
451
|
}
|
|
463
452
|
|
|
464
453
|
export const AddMappingsModal = ({
|
|
465
454
|
reportId,
|
|
466
455
|
existingMappings,
|
|
467
456
|
show,
|
|
468
|
-
|
|
457
|
+
onClose,
|
|
458
|
+
defaultIModelId,
|
|
469
459
|
}: AddMappingsModalProps) => {
|
|
470
460
|
const [isLoading, setIsLoading] = useState<boolean>(false);
|
|
471
|
-
const
|
|
472
|
-
const [selectedIModelId, setSelectediModelId] = useState<string>(
|
|
461
|
+
const selectedMappings = useRef<Mapping[]>([]);
|
|
462
|
+
const [selectedIModelId, setSelectediModelId] = useState<string | undefined>(defaultIModelId);
|
|
473
463
|
const [mappings, setMappings] = useState<Mapping[]>([]);
|
|
474
|
-
const
|
|
464
|
+
const { getAccessToken, mappingsClient, reportsClient } = useReportsConfigApi();
|
|
475
465
|
|
|
476
466
|
useEffect(() => {
|
|
477
467
|
if (selectedIModelId) {
|
|
@@ -479,35 +469,30 @@ export const AddMappingsModal = ({
|
|
|
479
469
|
setMappings,
|
|
480
470
|
selectedIModelId,
|
|
481
471
|
setIsLoading,
|
|
482
|
-
|
|
472
|
+
mappingsClient,
|
|
473
|
+
getAccessToken
|
|
483
474
|
);
|
|
484
475
|
}
|
|
485
|
-
}, [
|
|
476
|
+
}, [getAccessToken, mappingsClient, selectedIModelId, setIsLoading]);
|
|
486
477
|
|
|
487
478
|
const mappingsColumns = useMemo(
|
|
488
|
-
() => [
|
|
479
|
+
(): Column<CreateTypeFromInterface<Mapping>>[] => [
|
|
489
480
|
{
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
),
|
|
497
|
-
accessor: "mappingName",
|
|
498
|
-
Filter: tableFilters.TextFilter(),
|
|
499
|
-
},
|
|
500
|
-
{
|
|
501
|
-
id: "description",
|
|
502
|
-
Header: ReportsConfigWidget.localization.getLocalizedString(
|
|
503
|
-
"ReportsConfigWidget:Description"
|
|
504
|
-
),
|
|
505
|
-
accessor: "description",
|
|
506
|
-
Filter: tableFilters.TextFilter(),
|
|
507
|
-
},
|
|
508
|
-
],
|
|
481
|
+
id: "mappingName",
|
|
482
|
+
Header: ReportsConfigWidget.localization.getLocalizedString(
|
|
483
|
+
"ReportsConfigWidget:MappingName"
|
|
484
|
+
),
|
|
485
|
+
accessor: "mappingName",
|
|
486
|
+
Filter: tableFilters.TextFilter(),
|
|
509
487
|
},
|
|
510
|
-
|
|
488
|
+
{
|
|
489
|
+
id: "description",
|
|
490
|
+
Header: ReportsConfigWidget.localization.getLocalizedString(
|
|
491
|
+
"ReportsConfigWidget:Description"
|
|
492
|
+
),
|
|
493
|
+
accessor: "description",
|
|
494
|
+
Filter: tableFilters.TextFilter(),
|
|
495
|
+
}],
|
|
511
496
|
[]
|
|
512
497
|
);
|
|
513
498
|
|
|
@@ -515,24 +500,29 @@ export const AddMappingsModal = ({
|
|
|
515
500
|
try {
|
|
516
501
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!selectedIModelId) <span class="cstat-no" title="statement not covered" >return;</span>
|
|
517
502
|
setIsLoading(true);
|
|
518
|
-
const
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
const accessToken = await apiConfig.getAccessToken();
|
|
522
|
-
for (const mapping of selectedMappings) {
|
|
523
|
-
await reportsClientApi.createReportMapping(accessToken, reportId, {
|
|
503
|
+
const accessToken = await getAccessToken();
|
|
504
|
+
for (const mapping of selectedMappings.current) {
|
|
505
|
+
await reportsClient.createReportMapping(accessToken, reportId, {
|
|
524
506
|
imodelId: selectedIModelId,
|
|
525
507
|
mappingId: mapping.id,
|
|
526
508
|
});
|
|
527
509
|
}
|
|
528
510
|
|
|
529
|
-
await
|
|
511
|
+
await onClose();
|
|
530
512
|
} catch (error: any) {
|
|
531
513
|
<span class="cstat-no" title="statement not covered" > handleError(error.status);</span>
|
|
532
514
|
} finally {
|
|
533
515
|
setIsLoading(false);
|
|
534
516
|
}
|
|
535
517
|
};
|
|
518
|
+
|
|
519
|
+
const onSelect = useCallback((selectData: Mapping[] | undefined) => {
|
|
520
|
+
if (selectData) selectedMappings.current = selectData;
|
|
521
|
+
}, []);
|
|
522
|
+
|
|
523
|
+
const tableData = useMemo(() => isLoading ? [] : mappings, [isLoading, mappings]);
|
|
524
|
+
const isRowDisabled = useCallback((rowData: MappingType) =>
|
|
525
|
+
existingMappings.some((v) => v.mappingId === rowData.id), [existingMappings]);
|
|
536
526
|
|
|
537
527
|
return (
|
|
538
528
|
<Modal
|
|
@@ -542,7 +532,7 @@ export const AddMappingsModal = ({
|
|
|
542
532
|
isOpen={show}
|
|
543
533
|
isDismissible={!isLoading}
|
|
544
534
|
onClose={<span class="fstat-no" title="function not covered" >async </span>() => {
|
|
545
|
-
<span class="cstat-no" title="statement not covered" > await
|
|
535
|
+
<span class="cstat-no" title="statement not covered" > await onClose();</span>
|
|
546
536
|
}}
|
|
547
537
|
style={{ display: "flex", flexDirection: "column", maxHeight: "77vh" }}
|
|
548
538
|
>
|
|
@@ -552,7 +542,7 @@ export const AddMappingsModal = ({
|
|
|
552
542
|
setSelectedIModelId={setSelectediModelId}
|
|
553
543
|
/>
|
|
554
544
|
<Table<MappingType>
|
|
555
|
-
data={
|
|
545
|
+
data={tableData}
|
|
556
546
|
columns={mappingsColumns}
|
|
557
547
|
className="rcw-add-mappings-table"
|
|
558
548
|
emptyTableContent={ReportsConfigWidget.localization.getLocalizedString(
|
|
@@ -561,22 +551,17 @@ export const AddMappingsModal = ({
|
|
|
561
551
|
isSortable
|
|
562
552
|
isSelectable
|
|
563
553
|
isLoading={isLoading}
|
|
564
|
-
isRowDisabled={
|
|
565
|
-
|
|
566
|
-
}
|
|
567
|
-
onSelect={(selectData: Mapping[] | undefined) => {
|
|
568
|
-
selectData && setSelectedMappings(selectData);
|
|
569
|
-
}}
|
|
554
|
+
isRowDisabled={isRowDisabled}
|
|
555
|
+
onSelect={onSelect}
|
|
570
556
|
paginatorRenderer={LocalizedTablePaginator}
|
|
571
557
|
/>
|
|
572
558
|
</div>
|
|
559
|
+
{/* Add button permanently enabled as a workaround to the warning stating that the table and parent component are being rendered at the same time. */}
|
|
573
560
|
<ActionPanel
|
|
574
561
|
actionLabel={ReportsConfigWidget.localization.getLocalizedString(
|
|
575
562
|
"ReportsConfigWidget:Add"
|
|
576
563
|
)}
|
|
577
564
|
onAction={onSave}
|
|
578
|
-
onCancel={returnFn}
|
|
579
|
-
isSavingDisabled={selectedMappings.length === 0}
|
|
580
565
|
isLoading={isLoading}
|
|
581
566
|
/>
|
|
582
567
|
</Modal>
|
|
@@ -589,7 +574,7 @@ export const AddMappingsModal = ({
|
|
|
589
574
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
590
575
|
Code coverage generated by
|
|
591
576
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
592
|
-
at
|
|
577
|
+
at Thu Aug 17 2023 14:40:52 GMT+0000 (Coordinated Universal Time)
|
|
593
578
|
</div>
|
|
594
579
|
<script src="../../../prettify.js"></script>
|
|
595
580
|
<script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">92.92% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>92/99</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">90.47% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>19/21</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>15/15</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">93.68% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>89/95</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -255,14 +255,14 @@
|
|
|
255
255
|
<a name='L190'></a><a href='#L190'>190</a>
|
|
256
256
|
<a name='L191'></a><a href='#L191'>191</a>
|
|
257
257
|
<a name='L192'></a><a href='#L192'>192</a>
|
|
258
|
-
<a name='L193'></a><a href='#L193'>193</a
|
|
258
|
+
<a name='L193'></a><a href='#L193'>193</a>
|
|
259
|
+
<a name='L194'></a><a href='#L194'>194</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
259
260
|
<span class="cline-any cline-neutral"> </span>
|
|
260
261
|
<span class="cline-any cline-neutral"> </span>
|
|
261
262
|
<span class="cline-any cline-neutral"> </span>
|
|
262
263
|
<span class="cline-any cline-yes">8x</span>
|
|
263
264
|
<span class="cline-any cline-neutral"> </span>
|
|
264
265
|
<span class="cline-any cline-yes">8x</span>
|
|
265
|
-
<span class="cline-any cline-neutral"> </span>
|
|
266
266
|
<span class="cline-any cline-yes">8x</span>
|
|
267
267
|
<span class="cline-any cline-yes">8x</span>
|
|
268
268
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -272,32 +272,34 @@
|
|
|
272
272
|
<span class="cline-any cline-neutral"> </span>
|
|
273
273
|
<span class="cline-any cline-neutral"> </span>
|
|
274
274
|
<span class="cline-any cline-neutral"> </span>
|
|
275
|
+
<span class="cline-any cline-neutral"> </span>
|
|
275
276
|
<span class="cline-any cline-yes">8x</span>
|
|
276
277
|
<span class="cline-any cline-neutral"> </span>
|
|
277
278
|
<span class="cline-any cline-neutral"> </span>
|
|
278
279
|
<span class="cline-any cline-neutral"> </span>
|
|
279
280
|
<span class="cline-any cline-neutral"> </span>
|
|
280
|
-
<span class="cline-any cline-yes">
|
|
281
|
-
<span class="cline-any cline-yes">
|
|
282
|
-
<span class="cline-any cline-yes">
|
|
283
|
-
<span class="cline-any cline-yes">
|
|
284
|
-
<span class="cline-any cline-yes">
|
|
281
|
+
<span class="cline-any cline-yes">68x</span>
|
|
282
|
+
<span class="cline-any cline-yes">68x</span>
|
|
283
|
+
<span class="cline-any cline-yes">68x</span>
|
|
284
|
+
<span class="cline-any cline-yes">68x</span>
|
|
285
|
+
<span class="cline-any cline-yes">68x</span>
|
|
286
|
+
<span class="cline-any cline-neutral"> </span>
|
|
285
287
|
<span class="cline-any cline-neutral"> </span>
|
|
286
288
|
<span class="cline-any cline-neutral"> </span>
|
|
289
|
+
<span class="cline-any cline-yes">68x</span>
|
|
287
290
|
<span class="cline-any cline-neutral"> </span>
|
|
288
|
-
<span class="cline-any cline-yes">19x</span>
|
|
289
291
|
<span class="cline-any cline-neutral"> </span>
|
|
290
292
|
<span class="cline-any cline-neutral"> </span>
|
|
291
293
|
<span class="cline-any cline-neutral"> </span>
|
|
292
294
|
<span class="cline-any cline-neutral"> </span>
|
|
293
295
|
<span class="cline-any cline-neutral"> </span>
|
|
294
296
|
<span class="cline-any cline-neutral"> </span>
|
|
295
|
-
<span class="cline-any cline-
|
|
296
|
-
<span class="cline-any cline-yes">
|
|
297
|
-
<span class="cline-any cline-yes">
|
|
298
|
-
<span class="cline-any cline-yes">
|
|
299
|
-
<span class="cline-any cline-yes">
|
|
300
|
-
<span class="cline-any cline-yes">
|
|
297
|
+
<span class="cline-any cline-neutral"> </span>
|
|
298
|
+
<span class="cline-any cline-yes">68x</span>
|
|
299
|
+
<span class="cline-any cline-yes">68x</span>
|
|
300
|
+
<span class="cline-any cline-yes">68x</span>
|
|
301
|
+
<span class="cline-any cline-yes">68x</span>
|
|
302
|
+
<span class="cline-any cline-yes">68x</span>
|
|
301
303
|
<span class="cline-any cline-neutral"> </span>
|
|
302
304
|
<span class="cline-any cline-neutral"> </span>
|
|
303
305
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -377,16 +379,16 @@
|
|
|
377
379
|
<span class="cline-any cline-neutral"> </span>
|
|
378
380
|
<span class="cline-any cline-neutral"> </span>
|
|
379
381
|
<span class="cline-any cline-neutral"> </span>
|
|
380
|
-
<span class="cline-any cline-yes">
|
|
381
|
-
<span class="cline-any cline-
|
|
382
|
-
<span class="cline-any cline-
|
|
383
|
-
<span class="cline-any cline-
|
|
384
|
-
<span class="cline-any cline-
|
|
382
|
+
<span class="cline-any cline-yes">27x</span>
|
|
383
|
+
<span class="cline-any cline-yes">13x</span>
|
|
384
|
+
<span class="cline-any cline-yes">13x</span>
|
|
385
|
+
<span class="cline-any cline-yes">8x</span>
|
|
386
|
+
<span class="cline-any cline-yes">8x</span>
|
|
385
387
|
<span class="cline-any cline-no"> </span>
|
|
386
388
|
<span class="cline-any cline-neutral"> </span>
|
|
387
389
|
<span class="cline-any cline-neutral"> </span>
|
|
388
390
|
<span class="cline-any cline-neutral"> </span>
|
|
389
|
-
<span class="cline-any cline-
|
|
391
|
+
<span class="cline-any cline-yes">13x</span>
|
|
390
392
|
<span class="cline-any cline-neutral"> </span>
|
|
391
393
|
<span class="cline-any cline-neutral"> </span>
|
|
392
394
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -423,9 +425,9 @@
|
|
|
423
425
|
<span class="cline-any cline-neutral"> </span>
|
|
424
426
|
<span class="cline-any cline-neutral"> </span>
|
|
425
427
|
<span class="cline-any cline-neutral"> </span>
|
|
426
|
-
<span class="cline-any cline-
|
|
427
|
-
<span class="cline-any cline-
|
|
428
|
-
<span class="cline-any cline-
|
|
428
|
+
<span class="cline-any cline-yes">13x</span>
|
|
429
|
+
<span class="cline-any cline-yes">13x</span>
|
|
430
|
+
<span class="cline-any cline-yes">13x</span>
|
|
429
431
|
<span class="cline-any cline-neutral"> </span>
|
|
430
432
|
<span class="cline-any cline-neutral"> </span>
|
|
431
433
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -451,12 +453,12 @@
|
|
|
451
453
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
452
454
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
453
455
|
*--------------------------------------------------------------------------------------------*/
|
|
454
|
-
import {
|
|
455
|
-
import type { ReportMapping } from "@itwin/insights-client";
|
|
456
|
-
import {
|
|
457
|
-
import type { ReportsApiConfig } from "../context/ReportsApiConfigContext";
|
|
456
|
+
import { ExtractorState } from "@itwin/insights-client";
|
|
457
|
+
import type { ExtractionClient, ReportMapping, ReportsClient } from "@itwin/insights-client";
|
|
458
|
+
import { handleError } from "./utils";
|
|
458
459
|
import { ExtractionStates } from "./ExtractionStatus";
|
|
459
460
|
import { STATUS_CHECK_INTERVAL } from "./Constants";
|
|
461
|
+
import type { AccessToken } from "@itwin/core-bentley";
|
|
460
462
|
|
|
461
463
|
export type ReportMappingAndMapping = ReportMapping & {
|
|
462
464
|
mappingName: string;
|
|
@@ -464,7 +466,7 @@ export type ReportMappingAndMapping = ReportMapping & {
|
|
|
464
466
|
iModelName: string;
|
|
465
467
|
};
|
|
466
468
|
|
|
467
|
-
export
|
|
469
|
+
export class BulkExtractor {
|
|
468
470
|
private _reportsClientApi: ReportsClient;
|
|
469
471
|
private _extractionClientApi: ExtractionClient;
|
|
470
472
|
private _accessToken: () => Promise<string>;
|
|
@@ -480,14 +482,15 @@ export default class BulkExtractor {
|
|
|
480
482
|
private _iModels: string[] = [];
|
|
481
483
|
|
|
482
484
|
constructor(
|
|
483
|
-
|
|
485
|
+
reportsClient: ReportsClient,
|
|
486
|
+
extractionClient: ExtractionClient,
|
|
487
|
+
getAccessToken: () => Promise<AccessToken>,
|
|
484
488
|
successfulExtractionToast: (iModelName: string, odataFeedUrl: string) => void,
|
|
485
489
|
failedExtractionToast: (iModelName: string) => void,
|
|
486
490
|
) {
|
|
487
|
-
|
|
488
|
-
this.
|
|
489
|
-
this.
|
|
490
|
-
this._accessToken = apiConfig.getAccessToken;
|
|
491
|
+
this._reportsClientApi = reportsClient;
|
|
492
|
+
this._extractionClientApi = extractionClient;
|
|
493
|
+
this._accessToken = getAccessToken;
|
|
491
494
|
this._successfulExtractionToast = successfulExtractionToast;
|
|
492
495
|
this._failedExtractionToast = failedExtractionToast;
|
|
493
496
|
}
|
|
@@ -569,16 +572,16 @@ export default class BulkExtractor {
|
|
|
569
572
|
}
|
|
570
573
|
|
|
571
574
|
private checkRunning(): void {
|
|
572
|
-
|
|
573
|
-
let allFinished =
|
|
574
|
-
|
|
575
|
-
const state =
|
|
576
|
-
|
|
575
|
+
if (this._setJobRunning) {
|
|
576
|
+
let allFinished = true;
|
|
577
|
+
this._iModels.forEach((iModelId) => {
|
|
578
|
+
const state = this._iModelStates.get(iModelId);
|
|
579
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (state === ExtractorState.Queued || state === ExtractorState.Running) {
|
|
577
580
|
<span class="cstat-no" title="statement not covered" > allFinished = false;</span>
|
|
578
581
|
}
|
|
579
582
|
});
|
|
580
583
|
|
|
581
|
-
|
|
584
|
+
this._setJobRunning(!allFinished);
|
|
582
585
|
}
|
|
583
586
|
}
|
|
584
587
|
|
|
@@ -614,10 +617,10 @@ export default class BulkExtractor {
|
|
|
614
617
|
return this.runIModelExtractions([iModelId]);
|
|
615
618
|
}
|
|
616
619
|
|
|
617
|
-
public
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
620
|
+
public setHook(setJobRunning: React.Dispatch<React.SetStateAction<boolean>>, iModels: string[]): void {
|
|
621
|
+
this._setJobRunning = setJobRunning;
|
|
622
|
+
this._iModels = iModels;
|
|
623
|
+
this.checkRunning();
|
|
621
624
|
}
|
|
622
625
|
|
|
623
626
|
public async runIModelExtractions(iModels: string[]): Promise<void> {
|
|
@@ -646,7 +649,7 @@ export default class BulkExtractor {
|
|
|
646
649
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
647
650
|
Code coverage generated by
|
|
648
651
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
649
|
-
at
|
|
652
|
+
at Thu Aug 17 2023 14:40:52 GMT+0000 (Coordinated Universal Time)
|
|
650
653
|
</div>
|
|
651
654
|
<script src="../../../prettify.js"></script>
|
|
652
655
|
<script>
|