From f64bc1b4357b76b80fb85d0ee4bf06a124be4ec0 Mon Sep 17 00:00:00 2001 From: alex <48489896+devnaumov@users.noreply.github.com> Date: Wed, 12 Nov 2025 16:35:01 +0100 Subject: [PATCH] dbeaver/pro#7359 add support service (#3878) Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com> --- .../packages/core-links/src/WebsiteLinks.ts | 1 + webapp/packages/core-support/.gitignore | 24 +++++++++++ webapp/packages/core-support/package.json | 41 +++++++++++++++++++ .../src/GeneralSupportInstruction.tsx | 25 +++++++++++ .../src/GeneralSupportInstructionLazy.ts | 11 +++++ .../core-support/src/LocaleService.ts | 30 ++++++++++++++ .../core-support/src/SupportService.ts | 22 ++++++++++ webapp/packages/core-support/src/index.ts | 12 ++++++ .../packages/core-support/src/locales/en.ts | 4 ++ .../packages/core-support/src/locales/ru.ts | 4 ++ webapp/packages/core-support/src/module.ts | 20 +++++++++ webapp/packages/core-support/tsconfig.json | 40 ++++++++++++++++++ .../plugin-administration/package.json | 1 + .../src/Administration/Administration.tsx | 10 +++++ .../plugin-administration/tsconfig.json | 3 ++ .../packages/plugin-set-common/package.json | 1 + .../packages/plugin-set-common/src/index.ts | 2 + .../packages/plugin-set-common/tsconfig.json | 3 ++ .../product-default-impl/package.json | 1 + .../product-default-impl/tsconfig.json | 3 ++ webapp/yarn.lock | 22 ++++++++++ 21 files changed, 280 insertions(+) create mode 100644 webapp/packages/core-support/.gitignore create mode 100644 webapp/packages/core-support/package.json create mode 100644 webapp/packages/core-support/src/GeneralSupportInstruction.tsx create mode 100644 webapp/packages/core-support/src/GeneralSupportInstructionLazy.ts create mode 100644 webapp/packages/core-support/src/LocaleService.ts create mode 100644 webapp/packages/core-support/src/SupportService.ts create mode 100644 webapp/packages/core-support/src/index.ts create mode 100644 webapp/packages/core-support/src/locales/en.ts create mode 100644 webapp/packages/core-support/src/locales/ru.ts create mode 100644 webapp/packages/core-support/src/module.ts create mode 100644 webapp/packages/core-support/tsconfig.json diff --git a/webapp/packages/core-links/src/WebsiteLinks.ts b/webapp/packages/core-links/src/WebsiteLinks.ts index 5e07b79aad..e20054b625 100644 --- a/webapp/packages/core-links/src/WebsiteLinks.ts +++ b/webapp/packages/core-links/src/WebsiteLinks.ts @@ -36,6 +36,7 @@ export const WEBSITE_LINKS = { LATEST_COMMUNITY_VERSION_PAGE: 'https://dbeaver.com/product/cloudbeaver-ce-version.json', TEAM_ARCHIVE: 'https://dbeaver.com/downloads-team', CONTACT_PAGE: 'https://dbeaver.com/contact/', + TECH_SUPPORT_PAGE: 'https://dbeaver.com/tickets/', getTeamArchiveById(id: string): string { return `${WEBSITE_LINKS.TEAM_ARCHIVE}/${id}`; diff --git a/webapp/packages/core-support/.gitignore b/webapp/packages/core-support/.gitignore new file mode 100644 index 0000000000..0990be9258 --- /dev/null +++ b/webapp/packages/core-support/.gitignore @@ -0,0 +1,24 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# production +/lib + +# misc +.DS_Store +.env* + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# typescript +*.tsbuildinfo \ No newline at end of file diff --git a/webapp/packages/core-support/package.json b/webapp/packages/core-support/package.json new file mode 100644 index 0000000000..85ff25962c --- /dev/null +++ b/webapp/packages/core-support/package.json @@ -0,0 +1,41 @@ +{ + "name": "@cloudbeaver/core-support", + "type": "module", + "sideEffects": [ + "./lib/module.js", + "./lib/index.js", + "src/**/*.css", + "src/**/*.scss", + "public/**/*" + ], + "version": "0.1.0", + "description": "", + "license": "Apache-2.0", + "exports": { + ".": "./lib/index.js", + "./module": "./lib/module.js" + }, + "scripts": { + "build": "tsc -b", + "clean": "rimraf --glob lib", + "lint": "eslint ./src/ --ext .ts,.tsx", + "test": "dbeaver-test", + "validate-dependencies": "core-cli-validate-dependencies" + }, + "dependencies": { + "@cloudbeaver/core-blocks": "workspace:*", + "@cloudbeaver/core-di": "workspace:*", + "@cloudbeaver/core-links": "workspace:*", + "@cloudbeaver/core-localization": "workspace:*", + "react": "^19", + "tslib": "^2" + }, + "devDependencies": { + "@cloudbeaver/core-cli": "workspace:*", + "@cloudbeaver/tsconfig": "workspace:*", + "@dbeaver/cli": "workspace:*", + "@types/react": "^19", + "rimraf": "^6", + "typescript": "^5" + } +} diff --git a/webapp/packages/core-support/src/GeneralSupportInstruction.tsx b/webapp/packages/core-support/src/GeneralSupportInstruction.tsx new file mode 100644 index 0000000000..828e3e0b0a --- /dev/null +++ b/webapp/packages/core-support/src/GeneralSupportInstruction.tsx @@ -0,0 +1,25 @@ +/* + * CloudBeaver - Cloud Database Manager + * Copyright (C) 2020-2025 DBeaver Corp and others + * + * Licensed under the Apache License, Version 2.0. + * you may not use this file except in compliance with the License. + */ + +import { Link, Text, useTranslate } from '@cloudbeaver/core-blocks'; +import { WEBSITE_LINKS } from '@cloudbeaver/core-links'; + +export const GeneralSupportInstruction: React.FC = function GeneralSupportInstruction() { + const translate = useTranslate(); + + return ( +