Разбить index.js — заменить if/else роутер на Map-диспетчер #53
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Проблема
src/index.js— 390 строк с 217-строчным if/else для callback queries (строки 158-375). Добавление нового callback требует редактирования монолита.Решение
src/router/callbackRouter.js— Map prefix → handlersrc/router/messageRouter.js— Map command → handlerrouter.dispatch(callbackData)илиrouter.dispatch(msg)router.register('admin_product_', createHandler)Приоритет: ВЫСОКИЙ
✅ Реализовано
callbackRouter.js(36 строк) — Map диспетчер: exact + prefix matching, longest-prefix-firstmessageRouter.js(27 строк) — Map диспетчер: input handlers + text commandsroutes.js(345 строк) — все 59 callback routes + 9 text commands + 7 input handlersindex.js(69 строк, было 394) — точка входа, 82% уменьшениеКоммит:
d0b26da