From 75fdc2bcecc8c312a8e26e4928534790ccb62749 Mon Sep 17 00:00:00 2001 From: Alexey Date: Tue, 16 Jul 2024 20:23:50 +0300 Subject: [PATCH] Fix/cb-3823/typescript-error (#2784) * CB-5134 fix: typescript error * CB-5134 fix: typescript error --- .../packages/plugin-data-import/src/DataImportBootstrap.ts | 2 +- .../src/DVResultSetGroupingPluginBootstrap.ts | 4 ++-- .../src/DVResultSetGroupingPresentation.tsx | 3 ++- .../plugin-data-viewer/src/TableViewer/TableStatistics.tsx | 4 ++-- .../plugin-data-viewer/src/TableViewer/TableViewer.tsx | 5 +++-- .../ImageValue/ImageValuePresentation.tsx | 3 ++- webapp/packages/plugin-gis-viewer/src/GISViewer.tsx | 3 ++- 7 files changed, 14 insertions(+), 10 deletions(-) diff --git a/webapp/packages/plugin-data-import/src/DataImportBootstrap.ts b/webapp/packages/plugin-data-import/src/DataImportBootstrap.ts index b57afad88a..a132e23de6 100644 --- a/webapp/packages/plugin-data-import/src/DataImportBootstrap.ts +++ b/webapp/packages/plugin-data-import/src/DataImportBootstrap.ts @@ -52,7 +52,7 @@ export class DataImportBootstrap extends Bootstrap { return action.info; }, handler: async (context, action) => { - const model = context.get(DATA_CONTEXT_DV_DDM)!; + const model = context.get(DATA_CONTEXT_DV_DDM)! as any; const resultIndex = context.get(DATA_CONTEXT_DV_DDM_RESULT_INDEX)!; if (!isResultSetDataModel(model)) { diff --git a/webapp/packages/plugin-data-viewer-result-set-grouping/src/DVResultSetGroupingPluginBootstrap.ts b/webapp/packages/plugin-data-viewer-result-set-grouping/src/DVResultSetGroupingPluginBootstrap.ts index 630b253375..1846d0b236 100644 --- a/webapp/packages/plugin-data-viewer-result-set-grouping/src/DVResultSetGroupingPluginBootstrap.ts +++ b/webapp/packages/plugin-data-viewer-result-set-grouping/src/DVResultSetGroupingPluginBootstrap.ts @@ -191,8 +191,8 @@ export class DVResultSetGroupingPluginBootstrap extends Bootstrap { icon: '/icons/plugin_data_viewer_result_set_grouping_m.svg', dataFormat: ResultDataFormat.Resultset, hidden: (dataFormat, model, resultIndex) => { - const source = model.source; - if (!source.hasResult(resultIndex) || !isResultSetDataSource(source)) { + const source = model.source as any; + if (!isResultSetDataSource(source) || !source.hasResult(resultIndex)) { return true; } diff --git a/webapp/packages/plugin-data-viewer-result-set-grouping/src/DVResultSetGroupingPresentation.tsx b/webapp/packages/plugin-data-viewer-result-set-grouping/src/DVResultSetGroupingPresentation.tsx index 2c3f1c2269..108c90dd3a 100644 --- a/webapp/packages/plugin-data-viewer-result-set-grouping/src/DVResultSetGroupingPresentation.tsx +++ b/webapp/packages/plugin-data-viewer-result-set-grouping/src/DVResultSetGroupingPresentation.tsx @@ -20,9 +20,10 @@ import { useGroupingDataModel } from './useGroupingDataModel'; import { useGroupingDnDColumns } from './useGroupingDnDColumns'; export const DVResultSetGroupingPresentation: DataPresentationComponent = observer(function DVResultSetGroupingPresentation({ - model: originalModel, + model: unknownModel, resultIndex, }) { + const originalModel = unknownModel as any; if (!isResultSetDataModel(originalModel)) { throw new Error('DVResultSetGroupingPresentation can only be used with ResultSetDataSource'); } diff --git a/webapp/packages/plugin-data-viewer/src/TableViewer/TableStatistics.tsx b/webapp/packages/plugin-data-viewer/src/TableViewer/TableStatistics.tsx index fa17457cbd..756dfcab87 100644 --- a/webapp/packages/plugin-data-viewer/src/TableViewer/TableStatistics.tsx +++ b/webapp/packages/plugin-data-viewer/src/TableViewer/TableStatistics.tsx @@ -11,7 +11,7 @@ import { s, useS, useTranslate } from '@cloudbeaver/core-blocks'; import type { IDatabaseDataModel } from '../DatabaseDataModel/IDatabaseDataModel'; import { IDatabaseResultSet } from '../DatabaseDataModel/IDatabaseResultSet'; -import { isResultSetDataSource } from '../ResultSet/ResultSetDataSource'; +import { isResultSetDataSource, ResultSetDataSource } from '../ResultSet/ResultSetDataSource'; import classes from './TableStatistics.module.css'; interface Props { @@ -26,7 +26,7 @@ export const TableStatistics = observer(function TableStatistics({ model, let updatedRows: number | null = null; if (isResultSetDataSource(source)) { - const result = source.getResult(resultIndex) as IDatabaseResultSet | null; + const result = (source as ResultSetDataSource).getResult(resultIndex) as IDatabaseResultSet | null; updatedRows = result?.updateRowCount ?? null; } diff --git a/webapp/packages/plugin-data-viewer/src/TableViewer/TableViewer.tsx b/webapp/packages/plugin-data-viewer/src/TableViewer/TableViewer.tsx index 470431cd37..bce12835da 100644 --- a/webapp/packages/plugin-data-viewer/src/TableViewer/TableViewer.tsx +++ b/webapp/packages/plugin-data-viewer/src/TableViewer/TableViewer.tsx @@ -72,11 +72,12 @@ export const TableViewer = observer( const localActions = useObjectRef({ clearConstraints() { - if (!isResultSetDataModel(dataModel)) { + const unknownModel = dataModel as any; + if (!isResultSetDataModel(unknownModel)) { return; } - const constraints = dataModel?.source.tryGetAction(resultIndex, DatabaseDataConstraintAction); + const constraints = unknownModel?.source.tryGetAction(resultIndex, DatabaseDataConstraintAction); if (constraints) { constraints.deleteAll(); diff --git a/webapp/packages/plugin-data-viewer/src/ValuePanelPresentation/ImageValue/ImageValuePresentation.tsx b/webapp/packages/plugin-data-viewer/src/ValuePanelPresentation/ImageValue/ImageValuePresentation.tsx index bdbab40fd9..41e56e7806 100644 --- a/webapp/packages/plugin-data-viewer/src/ValuePanelPresentation/ImageValue/ImageValuePresentation.tsx +++ b/webapp/packages/plugin-data-viewer/src/ValuePanelPresentation/ImageValue/ImageValuePresentation.tsx @@ -21,9 +21,10 @@ import styles from './ImageValuePresentation.module.css'; import { useValuePanelImageValue } from './useValuePanelImageValue'; export const ImageValuePresentation: TabContainerPanelComponent = observer(function ImageValuePresentation({ - model, + model: unknownModel, resultIndex, }) { + const model = unknownModel as any; if (!isResultSetDataModel(model)) { throw new Error('ImageValuePresentation can be used only with ResultSetDataSource'); } diff --git a/webapp/packages/plugin-gis-viewer/src/GISViewer.tsx b/webapp/packages/plugin-gis-viewer/src/GISViewer.tsx index 1922232e62..606b20da66 100644 --- a/webapp/packages/plugin-gis-viewer/src/GISViewer.tsx +++ b/webapp/packages/plugin-gis-viewer/src/GISViewer.tsx @@ -10,7 +10,8 @@ import { type IDataValuePanelProps, isResultSetDataModel } from '@cloudbeaver/pl import { GISValuePresentation } from './GISValuePresentation'; -export const GISViewer: TabContainerPanelComponent = function GISViewer({ model, resultIndex }) { +export const GISViewer: TabContainerPanelComponent = function GISViewer({ model: unknownModel, resultIndex }) { + const model = unknownModel as any; if (!isResultSetDataModel(model)) { throw new Error('GISViewer can only be used with ResultSetDataSource'); }