From ef86884acabd370dca978bccbba32f87de465d2b Mon Sep 17 00:00:00 2001 From: naumov Date: Mon, 21 Nov 2022 21:13:09 +0400 Subject: [PATCH] CB-2878 change error title --- .../core-version/src/VersionResource.ts | 46 +++++++++++-------- .../src/VersionUpdate.tsx | 29 ++++-------- 2 files changed, 36 insertions(+), 39 deletions(-) diff --git a/webapp/packages/core-version/src/VersionResource.ts b/webapp/packages/core-version/src/VersionResource.ts index 8ae823a2eb..deb6322e89 100644 --- a/webapp/packages/core-version/src/VersionResource.ts +++ b/webapp/packages/core-version/src/VersionResource.ts @@ -9,6 +9,7 @@ import { computed, makeObservable, observable, runInAction } from 'mobx'; import { injectable } from '@cloudbeaver/core-di'; +import { NotificationService } from '@cloudbeaver/core-events'; import { ServerConfigResource } from '@cloudbeaver/core-root'; import { CachedMapAllKey, CachedMapResource } from '@cloudbeaver/core-sdk'; @@ -32,12 +33,13 @@ export class VersionResource extends CachedMapResource { } constructor( - private readonly serverConfigResource: ServerConfigResource + private readonly serverConfigResource: ServerConfigResource, + private readonly notificationService: NotificationService, ) { super(); this.latestVersionNumber = null; - this.preloadResource(this.serverConfigResource, () => {}); + this.preloadResource(this.serverConfigResource, () => { }); makeObservable(this, { latestVersionNumber: observable.ref, @@ -56,26 +58,32 @@ export class VersionResource extends CachedMapResource { return this.data; } - const response = await fetch(versionLink, { - cache: 'no-cache', - }); + try { + const response = await fetch(versionLink, { + cache: 'no-cache', + }); - const json = await response.json() as IVersions; + const json = await response.json() as IVersions; - if (json.latestVersion) { - this.latestVersionNumber = json.latestVersion; - } - - if (!json.versions) { - return this.data; - } - - runInAction(() => { - this.data.clear(); - for (const version of json.versions!) { - this.data.set(version.number, version); + if (json.latestVersion) { + this.latestVersionNumber = json.latestVersion; } - }); + + + if (!json.versions) { + return this.data; + } + + runInAction(() => { + this.data.clear(); + for (const version of json.versions!) { + this.data.set(version.number, version); + } + }); + + } catch (exception: any) { + this.notificationService.logException(exception, 'versions_load_fail'); + } return this.data; } diff --git a/webapp/packages/plugin-version-update-administration/src/VersionUpdate.tsx b/webapp/packages/plugin-version-update-administration/src/VersionUpdate.tsx index 8a9d000575..d939ddf3ad 100644 --- a/webapp/packages/plugin-version-update-administration/src/VersionUpdate.tsx +++ b/webapp/packages/plugin-version-update-administration/src/VersionUpdate.tsx @@ -11,7 +11,7 @@ import styled, { css } from 'reshadow'; import { gte } from 'semver'; import type { AdministrationItemContentComponent } from '@cloudbeaver/core-administration'; -import { BASE_CONTAINERS_STYLES, ColoredContainer, Loader, useMapResource, useStyles } from '@cloudbeaver/core-blocks'; +import { BASE_CONTAINERS_STYLES, ColoredContainer, useMapResource, useStyles } from '@cloudbeaver/core-blocks'; import { useService } from '@cloudbeaver/core-di'; import { CachedMapAllKey } from '@cloudbeaver/core-sdk'; import { VersionResource, VersionService } from '@cloudbeaver/core-version'; @@ -26,11 +26,6 @@ const styles = css` composes: theme-typography--body2 from global; list-style-position: inside; } - - Loader { - width: 100%; - height: 100%; - } `; export const VersionUpdate: AdministrationItemContentComponent = observer(function VersionUpdate() { @@ -44,20 +39,14 @@ export const VersionUpdate: AdministrationItemContentComponent = observer(functi return styled(style)( - - {() => ( - <> - - {versions.length > 0 && ( - <> - - - - )} - - - )} - + + {versions.length > 0 && ( + <> + + + + )} + ); });