Files
sfera/docs/component-architecture.md
T
2026-05-16 19:03:49 +03:00

2.6 KiB
Raw Blame History

Component Architecture

Рекомендуемая структура

src/
  app/
    (auth)/
    (workspace)/
      dashboard/
      projects/
      objects/
      graph/
      editor/
      designer/
      review/
      impact/
      knowledge/
      integrations/
      jobs/
      ai/
      settings/
  components/
    ui/
    layout/
    data-table/
    editor/
    designer/
    graph/
    command/
    ai/
    entities/
      one-c-projects/
      one-c-objects/
      bsl-modules/
      forms/
      reports/
      roles/
  features/
    one-c-projects/
    semantic-graph/
    bsl-editor/
    object-designer/
    form-designer/
    report-designer/
    impact-analysis/
    review/
    ai-authoring/
    ai-usage/
    integrations/
    scheduled-jobs/
  lib/
    api/
    auth/
    permissions/
    validators/
    formatters/
    one-c/
  store/
  styles/

Правило разделения

components/ui

Только базовые shadcn-like компоненты:

  • Button
  • Input
  • Dialog
  • Drawer
  • Badge
  • Card
  • Tabs

components/editor

IDE primitives:

  • BslEditor
  • ProblemsPanel
  • ReferencesPanel
  • OutlinePanel
  • SemanticDiffView
  • CompletionList

components/designer

Object/form/report designer primitives:

  • ObjectTree
  • MetadataInspector
  • FormCanvas
  • FormElementPalette
  • PropertiesInspector
  • ReportDesigner

components/entities

Переиспользуемые 1С entity-компоненты:

  • OneCProjectCard
  • OneCObjectBadge
  • ObjectKindBadge
  • RoleAccessBadge
  • ReviewSeverityBadge
  • SnapshotStatusBadge

features

Полные feature-модули:

  • список 1С-проектов
  • дерево конфигурации
  • карточка объекта 1С
  • BSL editor workspace
  • дизайнер формы
  • дизайнер отчёта
  • semantic graph
  • impact analysis
  • AI authoring panel
  • AI usage dashboard

Data Table стандарт

Каждая таблица должна иметь:

  • search
  • filters
  • saved views
  • column visibility
  • sorting
  • pagination / virtualization
  • row actions
  • bulk actions
  • export
  • audit-friendly row details

IDE Page Standard

Каждая IDE-страница строится по шаблону:

PageHeader
Toolbar
ObjectTree
PrimaryEditorOrDesigner
RightInspector
ProblemsPanel
SemanticDiffPreview
AIAssistantContext

Naming conventions

OneCProjectList
OneCObjectTree
BslEditorWorkspace
BslCompletionPanel
FormDesignerCanvas
MetadataPropertiesInspector
SemanticDiffPreview
AiAuthoringPanel

Не использовать абстрактные имена вроде:

  • MainTable
  • CustomCard
  • ModalWindow
  • BigForm