refactor(form-editor): разбиение FormEditor.tsx (4975→337) — шаг 2.2 завершён
Шаг 2.2 (часть 4) плана production-готовности: - 14 файлов в components/form-editor/ (контроллер, FieldCard, вкладки, диалоги) - сверка 13/15 блоков байт-в-байт, расхождения объяснены - warnings 566→542, check/build чисто, vitest 104/104 Итог 2.2: Chat 2696→639, TaskDetail 3278→804, Bots 3928→163, FormEditor 4975→337
This commit is contained in:
@@ -378,3 +378,14 @@
|
||||
- Что изменено: `client/src/pages/Bots.tsx` → 16 файлов в `client/src/components/bots/`: bots-types.ts (+zod-схемы), bots-utils.ts, CollapsibleSection, CreateBotUsersPicker, useBotsController.tsx (вся логика дословно, хуки 1:1), CreateBotDialog, BotListCard, BotSettingsTab (apiAccess/регенерация ключей), BotAiTab, BotWebhookTab, BotSubscriptionsTab, BotApiDocsCard, ServicesSection, JsPagesSection, TabModulesSection. В Bots.tsx — каркас композиции (публичный экспорт BotsContent сохранён — используется в Settings.tsx).
|
||||
- Как проверялось: программная сверка — 28/28 сегментов дословно; пропсы типизированы через Pick<ReturnType<typeof useBotsController>>. Чеклист: выдача/регенерация API-ключей, zod-валидации, вкладки — дословно. check/lint/build чисто; vitest 104/104.
|
||||
- Влияние на поиск/UX: нет.
|
||||
|
||||
---
|
||||
|
||||
## [2.2d] Разбиение FormEditor.tsx (4975 → 337 строк) — шаг 2.2 завершён
|
||||
|
||||
- Статус: ✅ done
|
||||
- Зачем: см. 2.2a. БЕЗ смены поведения.
|
||||
- Что изменено: `client/src/pages/FormEditor.tsx` → 14 файлов в `client/src/components/form-editor/`: types.ts, constants.ts, utils.ts, SortableWrappers, useFormEditorController.tsx (все хуки 1:1, 1440 строк), FieldCard (карточка поля: Гантт-роли, button-настройки, companyAutofill, contract-number, formula, document_template), MainTab, FieldsTab, StatusesTab, TransitionsTab (конструктор согласующих с resolveTableMode и обратной совместимостью), OfflineTab, LayoutTab (пресеты @preset), FormEditorDialogs. В FormEditor — композиция + шапка + Tabs.
|
||||
- Как проверялось: построчная программная сверка — 13/15 блоков байт-в-байт, расхождения объяснены (export-префиксы, перенос типов/констант, фрагменты вместо leading-комментариев JSX, удаление 24 неиспользуемых импортов оригинала). Чеклист: bulkSaveFormFields, правила согласующих, пресеты, QR-toggle, условия полей — дословно. check/lint/build чисто (warnings 566→542); vitest 104/104.
|
||||
- Влияние на поиск/UX: нет.
|
||||
- Итог 2.2: Chat 2696→639, TaskDetail 3278→804, Bots 3928→163, FormEditor 4975→337.
|
||||
|
||||
Reference in New Issue
Block a user