From cd88b3fabdb0d66eb1f3c2cb9d93a83ee2516bed Mon Sep 17 00:00:00 2001
From: Ivan <8611739+IRBorisov@users.noreply.github.com>
Date: Wed, 6 Aug 2025 19:56:32 +0300
Subject: [PATCH] D: Add sidebar help documentation
---
.../features/help/components/badge-help.tsx | 15 +++-
.../features/help/items/ui/help-oss-graph.tsx | 2 +-
.../help/items/ui/help-oss-sidebar.tsx | 71 +++++++++++++++++++
.../frontend/src/features/help/labels.ts | 4 +-
.../src/features/help/models/help-topic.ts | 2 +
.../help/pages/manuals-page/topic-page.tsx | 2 +
.../side-panel/toolbar-schema.tsx | 4 ++
7 files changed, 96 insertions(+), 4 deletions(-)
create mode 100644 rsconcept/frontend/src/features/help/items/ui/help-oss-sidebar.tsx
diff --git a/rsconcept/frontend/src/features/help/components/badge-help.tsx b/rsconcept/frontend/src/features/help/components/badge-help.tsx
index 1adc56eb..977aa814 100644
--- a/rsconcept/frontend/src/features/help/components/badge-help.tsx
+++ b/rsconcept/frontend/src/features/help/components/badge-help.tsx
@@ -26,6 +26,9 @@ interface BadgeHelpProps extends Styling {
/** Classname for padding. */
padding?: string;
+ /** Size class for the tooltip. */
+ size?: string;
+
/** Place of the tooltip in relation to the cursor. */
place?: PlacesType;
@@ -36,7 +39,15 @@ interface BadgeHelpProps extends Styling {
/**
* Display help icon with a manual page tooltip.
*/
-export function BadgeHelp({ topic, padding = 'p-1', className, contentClass, style, ...restProps }: BadgeHelpProps) {
+export function BadgeHelp({
+ topic,
+ padding = 'p-1',
+ size = '1.25rem',
+ className,
+ contentClass,
+ style,
+ ...restProps
+}: BadgeHelpProps) {
const showHelp = usePreferencesStore(state => state.showHelp);
if (!showHelp) {
@@ -44,7 +55,7 @@ export function BadgeHelp({ topic, padding = 'p-1', className, contentClass, sty
}
return (
-
+
- Граф синтеза
+ Операционная схема
Настройка графа
diff --git a/rsconcept/frontend/src/features/help/items/ui/help-oss-sidebar.tsx b/rsconcept/frontend/src/features/help/items/ui/help-oss-sidebar.tsx
new file mode 100644
index 00000000..cdb7bc06
--- /dev/null
+++ b/rsconcept/frontend/src/features/help/items/ui/help-oss-sidebar.tsx
@@ -0,0 +1,71 @@
+import {
+ IconClone,
+ IconDestroy,
+ IconEdit2,
+ IconGenerateNames,
+ IconLeftOpen,
+ IconMoveDown,
+ IconMoveUp,
+ IconNewItem,
+ IconRSForm,
+ IconSortList,
+ IconTree,
+ IconTypeGraph
+} from '@/components/icons';
+
+import { LinkTopic } from '../../components/link-topic';
+import { HelpTopic } from '../../models/help-topic';
+
+export function HelpOssSidebar() {
+ return (
+
+
Боковая панель
+
+
+ {'\u2009'} Боковая панель операционной схемы позволяет оперативно редактировать содержание{' '}
+ , не переходя к ней напрямую.
+
+
+ Верхняя часть панели позволяет фильтровать список конституент аналогично{' '}
+ .
+
+
+ -
+ меню редактирования концептуальной схемы
+
+ -
+ упорядочить конституенты
+
+ -
+ перенумеровать
+
+ -
+ редактировать конституенты
+
+ -
+ новая конституента
+
+ -
+ клонировать конституенту
+
+ -
+ удалить конституенты
+
+ -
+
+ перемещение вверх/вниз
+
+ -
+
+ {'\u2009'}
+
+
+ -
+
+ {'\u2009'}
+
+
+
+
+ );
+}
diff --git a/rsconcept/frontend/src/features/help/labels.ts b/rsconcept/frontend/src/features/help/labels.ts
index 7ab4288f..f4ecc4b7 100644
--- a/rsconcept/frontend/src/features/help/labels.ts
+++ b/rsconcept/frontend/src/features/help/labels.ts
@@ -16,7 +16,8 @@ const labelHelpTopicRecord: Record
= {
[HelpTopic.UI_TYPE_GRAPH]: 'Граф ступеней',
[HelpTopic.UI_CST_STATUS]: 'Статус конституенты',
[HelpTopic.UI_CST_CLASS]: 'Класс конституенты',
- [HelpTopic.UI_OSS_GRAPH]: 'Граф синтеза',
+ [HelpTopic.UI_OSS_GRAPH]: 'Операционная схема',
+ [HelpTopic.UI_OSS_SIDEBAR]: 'Боковая панель',
[HelpTopic.UI_SUBSTITUTIONS]: 'Отождествления',
[HelpTopic.UI_RELOCATE_CST]: 'Перенос конституент',
@@ -67,6 +68,7 @@ const describeHelpTopicRecord: Record = {
[HelpTopic.UI_CST_STATUS]: 'нотация статуса конституенты',
[HelpTopic.UI_CST_CLASS]: 'нотация класса конституенты',
[HelpTopic.UI_OSS_GRAPH]: 'графическая форма
операционной схемы синтеза',
+ [HelpTopic.UI_OSS_SIDEBAR]: 'боковая панель для редактирования содержания выбранной операции',
[HelpTopic.UI_SUBSTITUTIONS]: 'таблица отождествлений конституент',
[HelpTopic.UI_RELOCATE_CST]: 'перенос конституент
в рамках ОСС',
diff --git a/rsconcept/frontend/src/features/help/models/help-topic.ts b/rsconcept/frontend/src/features/help/models/help-topic.ts
index 48f0caca..d16ace94 100644
--- a/rsconcept/frontend/src/features/help/models/help-topic.ts
+++ b/rsconcept/frontend/src/features/help/models/help-topic.ts
@@ -18,6 +18,7 @@ export const HelpTopic = {
UI_CST_STATUS: 'ui-rsform-cst-status',
UI_CST_CLASS: 'ui-rsform-cst-class',
UI_OSS_GRAPH: 'ui-oss-graph',
+ UI_OSS_SIDEBAR: 'ui-oss-sidebar',
UI_SUBSTITUTIONS: 'ui-substitutions',
UI_RELOCATE_CST: 'ui-relocate-cst',
@@ -73,6 +74,7 @@ export const topicParent = new Map([
[HelpTopic.UI_CST_STATUS, HelpTopic.INTERFACE],
[HelpTopic.UI_CST_CLASS, HelpTopic.INTERFACE],
[HelpTopic.UI_OSS_GRAPH, HelpTopic.INTERFACE],
+ [HelpTopic.UI_OSS_SIDEBAR, HelpTopic.INTERFACE],
[HelpTopic.UI_SUBSTITUTIONS, HelpTopic.INTERFACE],
[HelpTopic.UI_RELOCATE_CST, HelpTopic.INTERFACE],
diff --git a/rsconcept/frontend/src/features/help/pages/manuals-page/topic-page.tsx b/rsconcept/frontend/src/features/help/pages/manuals-page/topic-page.tsx
index 83cc3aee..7a1c1c4d 100644
--- a/rsconcept/frontend/src/features/help/pages/manuals-page/topic-page.tsx
+++ b/rsconcept/frontend/src/features/help/pages/manuals-page/topic-page.tsx
@@ -32,6 +32,7 @@ import { HelpCstStatus } from '../../items/ui/help-cst-status';
import { HelpFormulaTree } from '../../items/ui/help-formula-tree';
import { HelpLibrary } from '../../items/ui/help-library';
import { HelpOssGraph } from '../../items/ui/help-oss-graph';
+import { HelpOssSidebar } from '../../items/ui/help-oss-sidebar';
import { HelpRelocateCst } from '../../items/ui/help-relocate-cst';
import { HelpRSCard } from '../../items/ui/help-rscard';
import { HelpRSEditor } from '../../items/ui/help-rseditor';
@@ -71,6 +72,7 @@ export function TopicPage({ topic }: TopicPageProps) {
if (topic === HelpTopic.UI_CST_STATUS) return ;
if (topic === HelpTopic.UI_CST_CLASS) return ;
if (topic === HelpTopic.UI_OSS_GRAPH) return ;
+ if (topic === HelpTopic.UI_OSS_SIDEBAR) return ;
if (topic === HelpTopic.UI_SUBSTITUTIONS) return ;
if (topic === HelpTopic.UI_RELOCATE_CST) return ;
diff --git a/rsconcept/frontend/src/features/oss/pages/oss-page/editor-oss-graph/side-panel/toolbar-schema.tsx b/rsconcept/frontend/src/features/oss/pages/oss-page/editor-oss-graph/side-panel/toolbar-schema.tsx
index 26b78b1e..d0ef9669 100644
--- a/rsconcept/frontend/src/features/oss/pages/oss-page/editor-oss-graph/side-panel/toolbar-schema.tsx
+++ b/rsconcept/frontend/src/features/oss/pages/oss-page/editor-oss-graph/side-panel/toolbar-schema.tsx
@@ -1,6 +1,8 @@
'use client';
import { urls, useConceptNavigation } from '@/app';
+import { HelpTopic } from '@/features/help';
+import { BadgeHelp } from '@/features/help/components/badge-help';
import { type IConstituenta, type IRSForm } from '@/features/rsform';
import { CstType, type IConstituentaBasicsDTO, type ICreateConstituentaDTO } from '@/features/rsform/backend/types';
import { useCreateConstituenta } from '@/features/rsform/backend/use-create-constituenta';
@@ -284,6 +286,8 @@ export function ToolbarSchema({
title='Граф ступеней'
onClick={handleShowTypeGraph}
/>
+
+
);
}