From c9da647226271d086b0f0db23828da297965dea4 Mon Sep 17 00:00:00 2001 From: Ivan <8611739+IRBorisov@users.noreply.github.com> Date: Wed, 12 Feb 2025 12:21:19 +0300 Subject: [PATCH] F: Rework DeleteCst and InlineSynthesis dialogs --- .../backend/apps/rsform/views/rsforms.py | 2 + .../oss/dialogs/DlgChangeInputSchema.tsx | 2 +- .../DlgCreateOperation/TabInputOperation.tsx | 2 +- .../TabSynthesisOperation.tsx | 1 - .../dialogs/DlgEditOperation/TabArguments.tsx | 1 - .../dialogs/DlgEditOperation/TabSynthesis.tsx | 1 - .../src/features/rsform/backend/api.ts | 23 ++-- .../rsform/backend/useInlineSynthesis.tsx | 3 +- .../features/rsform/components/PickSchema.tsx | 4 +- .../rsform/components/PickSubstitutions.tsx | 10 +- .../dialogs/DlgDeleteCst/DlgDeleteCst.tsx | 15 ++- .../DlgInlineSynthesis/DlgInlineSynthesis.tsx | 103 +++++++----------- .../DlgInlineSynthesis/TabConstituents.tsx | 39 +++++-- .../dialogs/DlgInlineSynthesis/TabSource.tsx | 39 ++++--- .../DlgInlineSynthesis/TabSubstitutions.tsx | 45 ++++---- .../rsform/pages/RSFormPage/MenuRSTabs.tsx | 6 +- .../rsform/pages/RSFormPage/RSEditContext.tsx | 39 +++---- 17 files changed, 172 insertions(+), 163 deletions(-) diff --git a/rsconcept/backend/apps/rsform/views/rsforms.py b/rsconcept/backend/apps/rsform/views/rsforms.py index 11db8874..53b3ad29 100644 --- a/rsconcept/backend/apps/rsform/views/rsforms.py +++ b/rsconcept/backend/apps/rsform/views/rsforms.py @@ -620,6 +620,8 @@ def inline_synthesis(request: Request) -> HttpResponse: receiver = m.RSForm(serializer.validated_data['receiver']) items = cast(list[m.Constituenta], serializer.validated_data['items']) + if len(items) == 0: + items = list(m.RSForm(serializer.validated_data['source']).constituents().order_by('order')) with transaction.atomic(): new_items = receiver.insert_copy(items) diff --git a/rsconcept/frontend/src/features/oss/dialogs/DlgChangeInputSchema.tsx b/rsconcept/frontend/src/features/oss/dialogs/DlgChangeInputSchema.tsx index 26888778..c85b23be 100644 --- a/rsconcept/frontend/src/features/oss/dialogs/DlgChangeInputSchema.tsx +++ b/rsconcept/frontend/src/features/oss/dialogs/DlgChangeInputSchema.tsx @@ -10,7 +10,7 @@ import { Label } from '@/components/Input'; import { ModalForm } from '@/components/Modal'; import { useLibrary } from '@/features/library/backend/useLibrary'; import { ILibraryItem, LibraryItemType } from '@/features/library/models/library'; -import PickSchema from '@/features/rsform/components/PickSchema'; +import { PickSchema } from '@/features/rsform/components/PickSchema'; import { useDialogsStore } from '@/stores/dialogs'; import { IInputUpdateDTO, IOperationPosition, schemaInputUpdate } from '../backend/api'; diff --git a/rsconcept/frontend/src/features/oss/dialogs/DlgCreateOperation/TabInputOperation.tsx b/rsconcept/frontend/src/features/oss/dialogs/DlgCreateOperation/TabInputOperation.tsx index c001da5e..fca956c9 100644 --- a/rsconcept/frontend/src/features/oss/dialogs/DlgCreateOperation/TabInputOperation.tsx +++ b/rsconcept/frontend/src/features/oss/dialogs/DlgCreateOperation/TabInputOperation.tsx @@ -8,7 +8,7 @@ import { Checkbox, Label, TextArea, TextInput } from '@/components/Input'; import { useLibrary } from '@/features/library/backend/useLibrary'; import { ILibraryItem, LibraryItemID, LibraryItemType } from '@/features/library/models/library'; import { sortItemsForOSS } from '@/features/oss/models/ossAPI'; -import PickSchema from '@/features/rsform/components/PickSchema'; +import { PickSchema } from '@/features/rsform/components/PickSchema'; import { useDialogsStore } from '@/stores/dialogs'; import { IOperationCreateDTO } from '../../backend/api'; diff --git a/rsconcept/frontend/src/features/oss/dialogs/DlgCreateOperation/TabSynthesisOperation.tsx b/rsconcept/frontend/src/features/oss/dialogs/DlgCreateOperation/TabSynthesisOperation.tsx index 9cc2638e..1f364710 100644 --- a/rsconcept/frontend/src/features/oss/dialogs/DlgCreateOperation/TabSynthesisOperation.tsx +++ b/rsconcept/frontend/src/features/oss/dialogs/DlgCreateOperation/TabSynthesisOperation.tsx @@ -49,7 +49,6 @@ function TabSynthesisOperation() { ( )} diff --git a/rsconcept/frontend/src/features/oss/dialogs/DlgEditOperation/TabArguments.tsx b/rsconcept/frontend/src/features/oss/dialogs/DlgEditOperation/TabArguments.tsx index 41a35596..903174bc 100644 --- a/rsconcept/frontend/src/features/oss/dialogs/DlgEditOperation/TabArguments.tsx +++ b/rsconcept/frontend/src/features/oss/dialogs/DlgEditOperation/TabArguments.tsx @@ -29,7 +29,6 @@ function TabArguments() { ( <>