@vnejs/docs 0.2.54 → 0.2.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/architecture.md +22 -22
  3. package/package.json +1 -1
  4. package/plugins/canvas.layers/bl.md +8 -3
  5. package/plugins/canvas.layers/fl.md +8 -3
  6. package/plugins/canvas.layers/ml.md +8 -3
  7. package/plugins/canvas.layers/ul.md +8 -3
  8. package/plugins/controls/cursor.md +15 -12
  9. package/plugins/core/components.md +2 -1
  10. package/plugins/views/achievement.md +14 -9
  11. package/plugins/views/comment.md +10 -7
  12. package/plugins/views/controls.hints.md +12 -7
  13. package/plugins/views/fps.md +9 -6
  14. package/plugins/views/gamepad.debug.md +9 -6
  15. package/plugins/views/settings.md +4 -3
  16. package/plugins/views/video.md +13 -10
  17. package/plugins/views.scenario/choose.md +11 -11
  18. package/plugins/views.scenario/interface.controls.md +14 -11
  19. package/plugins/views.scenario/interface.fastforward.md +10 -7
  20. package/plugins/views.scenario/interface.md +23 -20
  21. package/plugins/views.scenario/point_and_click.md +16 -14
  22. package/plugins/views.scenario/qte.md +29 -27
  23. package/plugins/views.screens/checkers.md +1 -1
  24. package/plugins/views.screens/confirm.md +6 -5
  25. package/plugins/views.screens/credits.md +17 -14
  26. package/plugins/views.screens/disclaimer.md +14 -11
  27. package/plugins/views.screens/eula.md +4 -3
  28. package/plugins/views.screens/gallery.full.md +8 -5
  29. package/plugins/views.screens/gallery.md +9 -9
  30. package/plugins/views.screens/gamemenu.md +5 -4
  31. package/plugins/views.screens/history.md +5 -4
  32. package/plugins/views.screens/intro.md +17 -17
  33. package/plugins/views.screens/loading.md +15 -15
  34. package/plugins/views.screens/mainmenu.md +18 -19
  35. package/plugins/views.screens/mainmenu.socials.md +6 -3
  36. package/plugins/views.screens/save.md +10 -10
  37. package/plugins/views.screens/settings.defaults.md +17 -17
  38. package/plugins/views.screens/settings.md +15 -15
package/CHANGELOG.md CHANGED
@@ -2,6 +2,26 @@
2
2
 
3
3
  Краткая история изменений движка (плагины, helpers, packages, CLI и прочий runtime) и внешнего API. Версии — релизы пакета `@vnejs/docs`.
4
4
 
5
+ ## 0.2.55
6
+
7
+ - `observer` — `SubscriberOptions.breakFollowing`: truthy-результат обработчика не запускает следующие группы приоритетов. API: `SubscriberOptions.breakFollowing`.
8
+ - `core/components`, `module.components` — фаза `SETUP` переименована в `GATE`. На `GATE` контроллер возвращает `state.isShow` (`SHOW`) или `!state.isShow` (`HIDE`) и с `breakFollowing` обрывает остальные фазы, если цикл не начался. Лог `SHOW` / `HIDE` пишется на `BEFORE`. Сняты `showCycle` и `hideCycle`. API: `CONST.COMPONENTS.LIFECYCLE_PRIORITY.SHOW.GATE`, `CONST.COMPONENTS.LIFECYCLE_PRIORITY.HIDE.GATE`. Сняты `ModuleController.showCycle`, `ModuleController.hideCycle`.
9
+ - `module.components` — `ModuleController` больше не сохраняет и не вызывает `onClose` из payload `SHOW`. API: сняты `ModuleController.onClose`, `ViewActionPayload.onClose`.
10
+ - `views/comment`, `views.screens/confirm` — таймер автоскрытия и колбэки accept/decline снимаются на `HIDE.MAIN`. Если контроллер оборвал `HIDE` на `GATE`, очистка не выполняется. В `COMMENT.SHOW` и `CONFIRM.SHOW` не передаётся `onClose`.
11
+ - `module.components` — `ModuleController.EVENT_SHOW` и `ModuleController.EVENT_HIDE` обязательны, жизненный цикл SHOW/HIDE подписывается всегда. API: `ModuleController.EVENT_SHOW`, `ModuleController.EVENT_HIDE`.
12
+ - `views/achievement`, `views/controls.hints`, `canvas.layers/bl`, `canvas.layers/fl`, `canvas.layers/ml`, `canvas.layers/ul` — добавлены `SHOW` / `HIDE`. API: `EVENTS.ACHIEVEMENT.SHOW`, `EVENTS.ACHIEVEMENT.HIDE`, `EVENTS.CONTROLS_HINTS.SHOW`, `EVENTS.CONTROLS_HINTS.HIDE`, `EVENTS.LAYER_BL.SHOW`, `EVENTS.LAYER_BL.HIDE`, `EVENTS.LAYER_FL.SHOW`, `EVENTS.LAYER_FL.HIDE`, `EVENTS.LAYER_ML.SHOW`, `EVENTS.LAYER_ML.HIDE`, `EVENTS.LAYER_UL.SHOW`, `EVENTS.LAYER_UL.HIDE`.
13
+ - `module.controller.accept`, `module.controller.arrows.vertical`, `module.controller.arrows.horizontal`, `module.controller.arrows.grid`, `module.controller.hide.on.controls`, `module.controller.backgrounds`, `module.controller.bg`, `module.controller.preload`, `module.controller.audio`, `module.controller.tabs` — `isShow` пишется в стейт на показе и снимается на скрытии. Повторный `SHOW` и `HIDE` без показа обрывает контроллер на `GATE`. API: `state.isShow`.
14
+ - `core/components` — фазы показа и скрытия view: `CONST.COMPONENTS.LIFECYCLE_PRIORITY.SHOW` (`GATE`, `BEFORE`, `MAIN`, `CONTROLS`, `AFTER`, `CLEANUP`) и `CONST.COMPONENTS.LIFECYCLE_PRIORITY.HIDE` (`GATE`, `BEFORE`, `CONTROLS`, `MAIN`, `AFTER`, `CLEANUP`). Сдвиг внутри фазы — `± 1`. API: `CONST.COMPONENTS.LIFECYCLE_PRIORITY`.
15
+ - `module.components` — обязательное `ModuleController.EVENT_UPDATE_FORCE` подписывается на `updateViewForce`. `ModuleController.CONTROLS_EXTENSIONS` (по умолчанию `{}`) в `init` сливается в `CONTROLS`. API: `ModuleController.EVENT_UPDATE_FORCE`, `ModuleController.CONTROLS_EXTENSIONS`.
16
+ - view-контракты — добавлен `UPDATE_FORCE` (`*:update_force`), payload как у `UPDATE_FAST`: `EVENTS.GALLERY.UPDATE_FORCE`, `EVENTS.SAVE_VIEW.UPDATE_FORCE`, `EVENTS.SETTINGS_SCREEN_VIEW.UPDATE_FORCE`, `EVENTS.SETTINGS_DEFAULT_VIEW.UPDATE_FORCE`, `EVENTS.SETTINGS_VIEW.UPDATE_FORCE`, `EVENTS.CHOOSE_VIEW.UPDATE_FORCE`, `EVENTS.EULA.UPDATE_FORCE`, `EVENTS.CONFIRM.UPDATE_FORCE`, `EVENTS.HISTORY_VIEW.UPDATE_FORCE`, `EVENTS.GAMEMENU.UPDATE_FORCE`, `EVENTS.CHECKERS_VIEW.UPDATE_FORCE`, `EVENTS.INTRO.UPDATE_FORCE`, `EVENTS.LOADING.UPDATE_FORCE`, `EVENTS.VIDEO.UPDATE_FORCE`, `EVENTS.COMMENT.UPDATE_FORCE`, `EVENTS.ACHIEVEMENT.UPDATE_FORCE`, `EVENTS.FPS.UPDATE_FORCE`, `EVENTS.CONTROLS_HINTS.UPDATE_FORCE`, `EVENTS.GAMEPAD_DEBUG.UPDATE_FORCE`, `EVENTS.CREDITS.UPDATE_FORCE`, `EVENTS.DISCLAIMER.UPDATE_FORCE`, `EVENTS.GALLERY_FULL_VIEW.UPDATE_FORCE`, `EVENTS.MAINMENU_SOCIALS_VIEW.UPDATE_FORCE`, `EVENTS.INTERFACE.UPDATE_FORCE`, `EVENTS.INTERFACE_CONTROLS_VIEW.UPDATE_FORCE`, `EVENTS.INTERFACE_FASTFORWARD_VIEW.UPDATE_FORCE`, `EVENTS.POINT_AND_CLICK_VIEW.UPDATE_FORCE`, `EVENTS.QTE_VIEW.UPDATE_FORCE`, `EVENTS.LAYER_BL.UPDATE_FORCE`, `EVENTS.LAYER_FL.UPDATE_FORCE`, `EVENTS.LAYER_ML.UPDATE_FORCE`, `EVENTS.LAYER_UL.UPDATE_FORCE`, `EVENTS.CURSOR.UPDATE_FORCE`. У главного меню событие уже было: `EVENTS.MAINMENU.UPDATE_FORCE`.
17
+ - `module.components` — сняты хуки `ModuleController.beforeShow`, `ModuleController.afterShow`, `ModuleController.beforeHide`, `ModuleController.afterHide`. Контроллер подписывается на свои `EVENT_SHOW` / `EVENT_HIDE` по фазам. На `HIDE.CLEANUP` — `setDefaultState`, если `ModuleController.SHOULD_CLEAR_STATE_ON_CLEANUP` (по умолчанию `true`; `false` у `cursor.controller` и `interface.controller`). Обязательные `EVENT_UPDATE_STATE` и `EVENT_UPDATE_FAST`: `UPDATE_STATE` сливает partial в стейт, `UPDATE_FAST` вызывает `updateViewFast`. `EVENTS.COMPONENTS.EXTERNAL_UPDATE` в базе: `state.isShow && updateViewFast()`. API: `CONST.COMPONENTS.LIFECYCLE_PRIORITY.SHOW.CLEANUP`, `CONST.COMPONENTS.LIFECYCLE_PRIORITY.HIDE.CLEANUP`, `ModuleController.SHOULD_CLEAR_STATE_ON_CLEANUP`.
18
+ - `module.components` — с базового `ModuleController` снята навигация по `currentItem` (`incCurrentItem`, `decCurrentItem`, `setCurrentItem`, `unsetCurrentItem`, сброс на `SHOW.GATE` и `HIDE.CLEANUP + 1`). Индекс пункта — `currentArrowVerticalItem` / `currentArrowHorizontalItem` в `@vnejs/module.controller.arrows.vertical` и `@vnejs/module.controller.arrows.horizontal`. API: сняты `ModuleController.currentItem`, `ModuleController.maxCurrentItem`, `ModuleController.incCurrentItem`, `ModuleController.decCurrentItem`, `ModuleController.setCurrentItem`, `ModuleController.unsetCurrentItem`, `ModuleControllerState.currentItem`.
19
+ - view-контракты — `STATE_UPDATE` переименован в `UPDATE_STATE` (`*:state_update` → `*:update_state`): `EVENTS.GALLERY.UPDATE_STATE`, `EVENTS.MAINMENU.UPDATE_STATE`, `EVENTS.INTRO.UPDATE_STATE`, `EVENTS.LOADING.UPDATE_STATE`, `EVENTS.SAVE_VIEW.UPDATE_STATE`, `EVENTS.SETTINGS_SCREEN_VIEW.UPDATE_STATE`, `EVENTS.SETTINGS_DEFAULT_VIEW.UPDATE_STATE`, `EVENTS.SETTINGS_VIEW.UPDATE_STATE`, `EVENTS.CHOOSE_VIEW.UPDATE_STATE`, `EVENTS.EULA.UPDATE_STATE`, `EVENTS.CONFIRM.UPDATE_STATE`, `EVENTS.HISTORY_VIEW.UPDATE_STATE`, `EVENTS.GAMEMENU.UPDATE_STATE`, `EVENTS.CHECKERS_VIEW.UPDATE_STATE`. Добавлены `UPDATE_STATE` и `UPDATE_FAST`: `EVENTS.VIDEO.UPDATE_STATE`, `EVENTS.VIDEO.UPDATE_FAST`, `EVENTS.COMMENT.UPDATE_STATE`, `EVENTS.COMMENT.UPDATE_FAST`, `EVENTS.ACHIEVEMENT.UPDATE_STATE`, `EVENTS.ACHIEVEMENT.UPDATE_FAST`, `EVENTS.FPS.UPDATE_STATE`, `EVENTS.FPS.UPDATE_FAST`, `EVENTS.CONTROLS_HINTS.UPDATE_STATE`, `EVENTS.CONTROLS_HINTS.UPDATE_FAST`, `EVENTS.GAMEPAD_DEBUG.UPDATE_STATE`, `EVENTS.GAMEPAD_DEBUG.UPDATE_FAST`, `EVENTS.CREDITS.UPDATE_STATE`, `EVENTS.CREDITS.UPDATE_FAST`, `EVENTS.DISCLAIMER.UPDATE_STATE`, `EVENTS.DISCLAIMER.UPDATE_FAST`, `EVENTS.GALLERY_FULL_VIEW.UPDATE_STATE`, `EVENTS.GALLERY_FULL_VIEW.UPDATE_FAST`, `EVENTS.MAINMENU_SOCIALS_VIEW.UPDATE_STATE`, `EVENTS.MAINMENU_SOCIALS_VIEW.UPDATE_FAST`, `EVENTS.INTERFACE.UPDATE_STATE`, `EVENTS.INTERFACE.UPDATE_FAST`, `EVENTS.INTERFACE_CONTROLS_VIEW.UPDATE_STATE`, `EVENTS.INTERFACE_CONTROLS_VIEW.UPDATE_FAST`, `EVENTS.INTERFACE_FASTFORWARD_VIEW.UPDATE_STATE`, `EVENTS.INTERFACE_FASTFORWARD_VIEW.UPDATE_FAST`, `EVENTS.POINT_AND_CLICK_VIEW.UPDATE_STATE`, `EVENTS.POINT_AND_CLICK_VIEW.UPDATE_FAST`, `EVENTS.QTE_VIEW.UPDATE_STATE`, `EVENTS.QTE_VIEW.UPDATE_FAST`, `EVENTS.LAYER_BL.UPDATE_STATE`, `EVENTS.LAYER_BL.UPDATE_FAST`, `EVENTS.LAYER_FL.UPDATE_STATE`, `EVENTS.LAYER_FL.UPDATE_FAST`, `EVENTS.LAYER_ML.UPDATE_STATE`, `EVENTS.LAYER_ML.UPDATE_FAST`, `EVENTS.LAYER_UL.UPDATE_STATE`, `EVENTS.LAYER_UL.UPDATE_FAST`, `EVENTS.CURSOR.UPDATE_STATE`, `EVENTS.CURSOR.UPDATE_FAST`.
20
+ - `module.controller.bg` — загрузка фона на `SHOW` с `CONST.COMPONENTS.LIFECYCLE_PRIORITY.SHOW.BEFORE`; флаг `isShow` на `MAIN`. Снято `EVENT_SHOW_BEFORE`.
21
+ - `module.controller.accept`, `module.controller.arrows.vertical`, `module.controller.arrows.horizontal`, `module.controller.arrows.grid`, `module.controller.tabs`, `module.controller.hide.on.controls` — PUSH/POP на фазе `CONTROLS`.
22
+ - `module.controller.audio`, `module.controller.backgrounds` — SHOW/HIDE на `AFTER`. `module.controller.preload` — SHOW на `BEFORE`.
23
+ - `views.screens/gallery`, `views.screens/mainmenu`, `views.screens/intro`, `views.screens/loading`, `views.screens/save`, `views.screens/settings`, `views.screens/settings.defaults`, `views.scenario/choose`, `views.scenario/qte`, `views.scenario/point_and_click` — снято событие `SHOW_BEFORE`. Подготовка экрана — подписка на `SHOW` с `CONST.COMPONENTS.LIFECYCLE_PRIORITY.SHOW.BEFORE`. API: сняты `EVENTS.GALLERY.SHOW_BEFORE`, `EVENTS.MAINMENU.SHOW_BEFORE`, `EVENTS.INTRO.SHOW_BEFORE`, `EVENTS.LOADING.SHOW_BEFORE`, `EVENTS.SAVE_VIEW.SHOW_BEFORE`, `EVENTS.SETTINGS_SCREEN_VIEW.SHOW_BEFORE`, `EVENTS.SETTINGS_DEFAULT_VIEW.SHOW_BEFORE`, `EVENTS.CHOOSE_VIEW.SHOW_BEFORE`, `EVENTS.QTE_VIEW.SHOW_BEFORE`, `EVENTS.POINT_AND_CLICK_VIEW.SHOW_BEFORE`.
24
+
5
25
  ## 0.2.53
6
26
 
7
27
  - `module.controller.hide.on.controls`, `module.controller.accept`, `module.controller.arrows.*` — PUSH/POP controls только при смене локального `isShow` (как у `ModuleController`), без лишнего POP на HIDE до SHOW.
package/architecture.md CHANGED
@@ -166,28 +166,28 @@ flowchart TD
166
166
  MCO --> ML
167
167
  ```
168
168
 
169
- | Пакет | Назначение |
170
- | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
171
- | **`@vnejs/module`** | **`Module`**: `VNE`, `on`/`emit`, `inject`, state, shared, media, lifecycle |
172
- | **`@vnejs/module.core`** | **`ModuleCore`** — типизированный доступ к **core-контрактам** |
173
- | **`@vnejs/module.replace`** | **`ModuleReplace`** — последовательная подмена значения поля payload через `REPLACE_KEY` и цепочку handlers |
174
- | **`@vnejs/module.replace.exec`** | **`ModuleReplaceExec`** — реестр exec-handlers по имени модуля (`EXEC_REG` / `EXEC_GET`) |
175
- | **`@vnejs/module.components`** | **`ModuleView`**, **`ModuleController`** — React-view, zustand, media, controls |
176
- | **`@vnejs/module.layer`** | Canvas layers: controller, image, sprite, text, video, props, view |
177
- | **`@vnejs/module.audio`** | База для audio-плагинов scenario-слоёв (`music` / `sound` / …) |
178
- | **`@vnejs/module.controller.audio`** | Overlay-BGM для view-экранов: pause global / play `view` / resume на SHOW/HIDE/PRELOAD |
179
- | **`@vnejs/module.controller.tabs`** | Навигация по вкладкам: TAB_PREV/TAB_NEXT → `TAB_SET`; guard + `applyTab` (`STATE_UPDATE` `{ tab }`) + abstract `onTabSet`; PUSH/POP на SHOW/HIDE |
180
- | **`@vnejs/module.controller.preload`** | Предзагрузка меток и событий экрана по SHOW / PRELOAD / MEMORY.CLEARED; SHOW/HIDE/PRELOAD задаёт плагин |
181
- | **`@vnejs/module.controller.backgrounds`** | Ротация списка фонов по SHOW / таймеру / MEMORY.CLEARED; стоп на HIDE; события и список задаёт плагин |
182
- | **`@vnejs/module.controller.bg`** | Статичный фон экрана: SHOW_BEFORE → `bgSrc` в стейт; опционально PRELOAD / start / STATE.CLEAR; MEMORY.CLEARED — preload и/или refresh при isShow |
183
- | **`@vnejs/module.controller.accept`** | ACCEPT / INTERACT → событие ACCEPT плагина; PUSH/POP controls на SHOW/HIDE |
184
- | **`@vnejs/module.controller.arrows.vertical`** | ARROW_UP / ARROW_BOTTOM по видимым пунктам; PUSH/POP controls на SHOW/HIDE |
185
- | **`@vnejs/module.controller.arrows.horizontal`** | ARROW_LEFT / ARROW_RIGHT по пунктам; PUSH/POP controls на SHOW/HIDE |
186
- | **`@vnejs/module.controller.arrows.grid`** | Четыре стрелки по сетке; `GRID_NEXT` / `GRID_PREV` на краю; PUSH/POP на SHOW/HIDE; `GRID_UPDATE_ITEMS` без payload, meta через `STATE_UPDATE` |
187
- | **`@vnejs/module.controller.pages`** | Пагинация: `PAGE_SET` / `PAGE_NEXT` / `PAGE_PREV` → `setPage` → abstract `applyPage` + `UPDATE_FAST`; стейт `pageIndex` / `pagesCount` |
188
- | **`@vnejs/module.controller.hide.on.state`** | STATE.SET / STATE.CLEAR → emit HIDE плагина (`isForce` задаёт наследник) |
189
- | **`@vnejs/module.controller.hide.on.controls`** | BACK / MENU / GAMEMENU → emit HIDE плагина; PUSH/POP controls на SHOW/HIDE |
190
- | **`@vnejs/module.scales.common`** | База для scales / RPG-модулей |
169
+ | Пакет | Назначение |
170
+ | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
171
+ | **`@vnejs/module`** | **`Module`**: `VNE`, `on`/`emit`, `inject`, state, shared, media, lifecycle |
172
+ | **`@vnejs/module.core`** | **`ModuleCore`** — типизированный доступ к **core-контрактам** |
173
+ | **`@vnejs/module.replace`** | **`ModuleReplace`** — последовательная подмена значения поля payload через `REPLACE_KEY` и цепочку handlers |
174
+ | **`@vnejs/module.replace.exec`** | **`ModuleReplaceExec`** — реестр exec-handlers по имени модуля (`EXEC_REG` / `EXEC_GET`) |
175
+ | **`@vnejs/module.components`** | **`ModuleView`**, **`ModuleController`** — React-view, zustand, media, controls. SHOW/HIDE по `CONST.COMPONENTS.LIFECYCLE_PRIORITY`; `UPDATE_STATE`, `UPDATE_FAST`, `EXTERNAL_UPDATE` (`isShow` → `updateViewFast`) |
176
+ | **`@vnejs/module.layer`** | Canvas layers: controller, image, sprite, text, video, props, view |
177
+ | **`@vnejs/module.audio`** | База для audio-плагинов scenario-слоёв (`music` / `sound` / …) |
178
+ | **`@vnejs/module.controller.audio`** | Overlay-BGM для view-экранов: pause global / play `view` / resume на `SHOW.AFTER` / `HIDE.AFTER` / PRELOAD |
179
+ | **`@vnejs/module.controller.tabs`** | Навигация по вкладкам: TAB_PREV/TAB_NEXT → `TAB_SET`; guard + `applyTab` (`UPDATE_STATE` `{ tab }`) + abstract `onTabSet`; вкладка на `SHOW.BEFORE`, PUSH/POP на `CONTROLS` |
180
+ | **`@vnejs/module.controller.preload`** | Предзагрузка меток и событий экрана на `SHOW.BEFORE` / PRELOAD / MEMORY.CLEARED; SHOW/HIDE/PRELOAD задаёт плагин |
181
+ | **`@vnejs/module.controller.backgrounds`** | Ротация списка фонов на `SHOW.AFTER` / таймеру / MEMORY.CLEARED; стоп на `HIDE.AFTER`; события и список задаёт плагин |
182
+ | **`@vnejs/module.controller.bg`** | Статичный фон экрана: `SHOW.BEFORE` пишет `bgSrc` через `UPDATE_STATE`; `isShow` на `SHOW.MAIN` / `HIDE.MAIN`; опционально PRELOAD / start / STATE.CLEAR; MEMORY.CLEARED — preload и/или refresh при isShow |
183
+ | **`@vnejs/module.controller.accept`** | ACCEPT / INTERACT → событие ACCEPT плагина; PUSH/POP controls на `SHOW.CONTROLS` / `HIDE.CONTROLS` |
184
+ | **`@vnejs/module.controller.arrows.vertical`** | ARROW_UP / ARROW_BOTTOM по видимым пунктам; PUSH/POP controls на `SHOW.CONTROLS` / `HIDE.CONTROLS`; индекс через `UPDATE_STATE` |
185
+ | **`@vnejs/module.controller.arrows.horizontal`** | ARROW_LEFT / ARROW_RIGHT по пунктам; PUSH/POP controls на `SHOW.CONTROLS` / `HIDE.CONTROLS`; индекс через `UPDATE_STATE` |
186
+ | **`@vnejs/module.controller.arrows.grid`** | Четыре стрелки по сетке; `GRID_NEXT` / `GRID_PREV` на краю; PUSH/POP на `SHOW.CONTROLS` / `HIDE.CONTROLS`; `GRID_UPDATE_ITEMS` без payload, meta через `UPDATE_STATE` |
187
+ | **`@vnejs/module.controller.pages`** | Пагинация: `PAGE_SET` / `PAGE_NEXT` / `PAGE_PREV` → `setPage` → `UPDATE_STATE` (`pageIndex`) + abstract `applyPage` + `UPDATE_FAST` |
188
+ | **`@vnejs/module.controller.hide.on.state`** | STATE.SET / STATE.CLEAR → emit HIDE плагина (`isForce` задаёт наследник) |
189
+ | **`@vnejs/module.controller.hide.on.controls`** | BACK / MENU / GAMEMENU → emit HIDE плагина; PUSH/POP controls на `SHOW.CONTROLS` / `HIDE.CONTROLS` |
190
+ | **`@vnejs/module.scales.common`** | База для scales / RPG-модулей |
191
191
 
192
192
  ### Принципы
193
193
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vnejs/docs",
3
- "version": "0.2.54",
3
+ "version": "0.2.55",
4
4
  "description": "VNEJS documentation for engine consumers and coding agents",
5
5
  "files": [
6
6
  "*.md",
@@ -8,9 +8,14 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.canvas.layers.bl`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | -------- | --------------------- | ----------------------------------- |
13
- | `UPDATE` | `vne:layer_bl:update` | Обновить состояние или отображение. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | --------------------------- | ----------------------------------------------- |
13
+ | `SHOW` | `vne:layer_bl:show` | Показать UI или слой. |
14
+ | `HIDE` | `vne:layer_bl:hide` | Скрыть UI или слой. |
15
+ | `UPDATE` | `vne:layer_bl:update` | Обновить состояние или отображение. |
16
+ | `UPDATE_FAST` | `vne:layer_bl:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:layer_bl:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:layer_bl:update_state` | Слить partial в стейт контроллера. |
14
19
 
15
20
  ## Константы
16
21
 
@@ -8,9 +8,14 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.canvas.layers.fl`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | -------- | --------------------- | ----------------------------------- |
13
- | `UPDATE` | `vne:layer_fl:update` | Обновить состояние или отображение. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | --------------------------- | ----------------------------------------------- |
13
+ | `SHOW` | `vne:layer_fl:show` | Показать UI или слой. |
14
+ | `HIDE` | `vne:layer_fl:hide` | Скрыть UI или слой. |
15
+ | `UPDATE` | `vne:layer_fl:update` | Обновить состояние или отображение. |
16
+ | `UPDATE_FAST` | `vne:layer_fl:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:layer_fl:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:layer_fl:update_state` | Слить partial в стейт контроллера. |
14
19
 
15
20
  ## Константы
16
21
 
@@ -8,9 +8,14 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.canvas.layers.ml`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | -------- | --------------------- | ----------------------------------- |
13
- | `UPDATE` | `vne:layer_ml:update` | Обновить состояние или отображение. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | --------------------------- | ----------------------------------------------- |
13
+ | `SHOW` | `vne:layer_ml:show` | Показать UI или слой. |
14
+ | `HIDE` | `vne:layer_ml:hide` | Скрыть UI или слой. |
15
+ | `UPDATE` | `vne:layer_ml:update` | Обновить состояние или отображение. |
16
+ | `UPDATE_FAST` | `vne:layer_ml:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:layer_ml:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:layer_ml:update_state` | Слить partial в стейт контроллера. |
14
19
 
15
20
  ## Константы
16
21
 
@@ -8,9 +8,14 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.canvas.layers.ul`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | -------- | --------------------- | ----------------------------------- |
13
- | `UPDATE` | `vne:layer_ul:update` | Обновить состояние или отображение. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | --------------------------- | ----------------------------------------------- |
13
+ | `SHOW` | `vne:layer_ul:show` | Показать UI или слой. |
14
+ | `HIDE` | `vne:layer_ul:hide` | Скрыть UI или слой. |
15
+ | `UPDATE` | `vne:layer_ul:update` | Обновить состояние или отображение. |
16
+ | `UPDATE_FAST` | `vne:layer_ul:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:layer_ul:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:layer_ul:update_state` | Слить partial в стейт контроллера. |
14
19
 
15
20
  ## Константы
16
21
 
@@ -8,18 +8,21 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.controls.cursor`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | ---------- | --------------------- | ------------------------------------------------------------ |
13
- | `SHOW` | `vne:cursor:show` | Показать UI или слой. |
14
- | `HIDE` | `vne:cursor:hide` | Скрыть UI или слой. |
15
- | `UPDATE` | `vne:cursor:update` | Обновить состояние или отображение. |
16
- | `CLICK` | `vne:cursor:click` | Событие `CLICK` namespace плагина. |
17
- | `VIEW_SET` | `vne:cursor:view_set` | Записать или обновить значение. |
18
- | `MOVE` | `vne:cursor:move` | Событие `MOVE` namespace плагина. |
19
- | `MOVED` | `vne:cursor:moved` | Событие `MOVED` namespace плагина. |
20
- | `SET_X_Y` | `vne:cursor:set_x_y` | Установить позицию курсора (`{ x?, y? }`) с clamp и `MOVED`. |
21
- | `SHIFT` | `vne:cursor:shift` | Сдвиг позиции курсора (`{ x?, y? }`). |
22
- | `SCROLL` | `vne:cursor:scroll` | Скролл ближайшего scrollable под курсором (`{ x?, y? }`). |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | ------------------------- | ------------------------------------------------------------ |
13
+ | `SHOW` | `vne:cursor:show` | Показать UI или слой. |
14
+ | `HIDE` | `vne:cursor:hide` | Скрыть UI или слой. |
15
+ | `UPDATE` | `vne:cursor:update` | Обновить состояние или отображение. |
16
+ | `UPDATE_FAST` | `vne:cursor:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:cursor:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:cursor:update_state` | Слить partial в стейт контроллера. |
19
+ | `CLICK` | `vne:cursor:click` | Событие `CLICK` namespace плагина. |
20
+ | `VIEW_SET` | `vne:cursor:view_set` | Записать или обновить значение. |
21
+ | `MOVE` | `vne:cursor:move` | Событие `MOVE` namespace плагина. |
22
+ | `MOVED` | `vne:cursor:moved` | Событие `MOVED` namespace плагина. |
23
+ | `SET_X_Y` | `vne:cursor:set_x_y` | Установить позицию курсора (`{ x?, y? }`) с clamp и `MOVED`. |
24
+ | `SHIFT` | `vne:cursor:shift` | Сдвиг позиции курсора (`{ x?, y? }`). |
25
+ | `SCROLL` | `vne:cursor:scroll` | Скролл ближайшего scrollable под курсором (`{ x?, y? }`). |
23
26
 
24
27
  ## Константы
25
28
 
@@ -13,12 +13,13 @@ Payloads и результаты хендлеров типизированы ч
13
13
  | `RENDER` | `vne:components:render` | Запрос на отрисовку: создаётся дочерний контейнер, вызывается переданная `renderFunc`; завершение — когда компонент вызовет `onMount`. |
14
14
  | `INJECT` | `vne:components:inject` | Прогон значения через все зарегистрированные inject-обработчики по очереди; возвращает массив результатов. |
15
15
  | `INJECT_REG` | `vne:components:inject_reg` | Регистрация нового inject-обработчика в цепочку. |
16
- | `EXTERNAL_UPDATE` | `vne:components:external_update` | Запрос на принудительное обновление отображения UI без полного re-render. |
16
+ | `EXTERNAL_UPDATE` | `vne:components:external_update` | Запрос на обновление UI. `ModuleController` отвечает `state.isShow && updateViewFast()`. |
17
17
 
18
18
  ## Константы
19
19
 
20
20
  - **`LOGS_ACTIONS.RENDER`** — `"render"`: метка действия для логов при рендере.
21
21
  - **`LOGS_ACTIONS.SHOW` / `HIDE`** — `"show"` / `"hide"`: метки для `ModuleController` (show/hide view).
22
+ - **`LIFECYCLE_PRIORITY.SHOW` / `HIDE`** — фазы `GATE`, `BEFORE`, `MAIN`, `CONTROLS`, `AFTER`, `CLEANUP`. На `GATE` `ModuleController` решает, продолжать ли остальные фазы. На `HIDE.CLEANUP` вызывает `setDefaultState`, если `SHOULD_CLEAR_STATE_ON_CLEANUP`.
22
23
 
23
24
  ## Параметры
24
25
 
@@ -8,15 +8,20 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.views.achievement`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | ---------- | -------------------------- | ----------------------------------------------------- |
13
- | `CLEAR` | `vne:achievement:clear` | Очистить накопленное состояние. |
14
- | `LOAD` | `vne:achievement:load` | Загрузить данные или ресурс. |
15
- | `UNLOCK` | `vne:achievement:unlock` | Запросить данные у обработчиков и продолжить цепочку. |
16
- | `APPEND` | `vne:achievement:append` | Событие `APPEND` namespace плагина. |
17
- | `UPDATE` | `vne:achievement:update` | Обновить состояние или отображение. |
18
- | `LOCKED` | `vne:achievement:locked` | Событие `LOCKED` namespace плагина. |
19
- | `UNLOCKED` | `vne:achievement:unlocked` | Событие `UNLOCKED` namespace плагина. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | ------------------------------ | ----------------------------------------------------- |
13
+ | `CLEAR` | `vne:achievement:clear` | Очистить накопленное состояние. |
14
+ | `LOAD` | `vne:achievement:load` | Загрузить данные или ресурс. |
15
+ | `UNLOCK` | `vne:achievement:unlock` | Запросить данные у обработчиков и продолжить цепочку. |
16
+ | `APPEND` | `vne:achievement:append` | Событие `APPEND` namespace плагина. |
17
+ | `SHOW` | `vne:achievement:show` | Показать UI или слой. |
18
+ | `HIDE` | `vne:achievement:hide` | Скрыть UI или слой. |
19
+ | `UPDATE` | `vne:achievement:update` | Обновить состояние или отображение. |
20
+ | `UPDATE_FAST` | `vne:achievement:update_fast` | Быстрое обновление отображения. |
21
+ | `UPDATE_FORCE` | `vne:achievement:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
22
+ | `UPDATE_STATE` | `vne:achievement:update_state` | Слить partial в стейт контроллера. |
23
+ | `LOCKED` | `vne:achievement:locked` | Событие `LOCKED` namespace плагина. |
24
+ | `UNLOCKED` | `vne:achievement:unlocked` | Событие `UNLOCKED` namespace плагина. |
20
25
 
21
26
  ## Константы
22
27
 
@@ -8,11 +8,14 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.views.comment`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | -------- | -------------------- | ----------------------------------- |
13
- | `SHOW` | `vne:comment:show` | Показать UI или слой. |
14
- | `HIDE` | `vne:comment:hide` | Скрыть UI или слой. |
15
- | `UPDATE` | `vne:comment:update` | Обновить состояние или отображение. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | -------------------------- | ----------------------------------------------- |
13
+ | `SHOW` | `vne:comment:show` | Показать UI или слой. |
14
+ | `HIDE` | `vne:comment:hide` | Скрыть UI или слой. |
15
+ | `UPDATE` | `vne:comment:update` | Обновить состояние или отображение. |
16
+ | `UPDATE_FAST` | `vne:comment:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:comment:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:comment:update_state` | Слить partial в стейт контроллера. |
16
19
 
17
20
  ## Константы
18
21
 
@@ -34,8 +37,8 @@ Payloads и результаты хендлеров типизированы ч
34
37
 
35
38
  | Модуль | Зона ответственности |
36
39
  | -------------------- | --------------------------------------------------------------------------------------------------------------- |
37
- | `comment` | Модуль `comment`. |
38
- | `comment.controller` | Обрабатывает UPDATE, SHOW, HIDE, EXTERNAL_UPDATE, …. |
40
+ | `comment` | Команда сценария показывает или скрывает комментарий. Таймер автоскрытия снимается на `HIDE.MAIN`, если контроллер не оборвал скрытие на `GATE`. |
41
+ | `comment.controller` | Обрабатывает UPDATE, SHOW, HIDE. `EXTERNAL_UPDATE` пересчитывает текст и обновляет view. |
39
42
  | `comment.hide` | Наследует `@vnejs/module.controller.hide.on.state`: `STATE.SET` / `STATE.CLEAR` → `HIDE` с `{ isForce: true }`. |
40
43
  | `comment.view` | Подмодуль `view` плагина. |
41
44
 
@@ -8,9 +8,14 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.views.controls.hints`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | -------- | --------------------------- | ----------------------------------- |
13
- | `UPDATE` | `vne:controls_hints:update` | Обновить состояние или отображение. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | --------------------------------- | ----------------------------------------------- |
13
+ | `SHOW` | `vne:controls_hints:show` | Показать UI или слой. |
14
+ | `HIDE` | `vne:controls_hints:hide` | Скрыть UI или слой. |
15
+ | `UPDATE` | `vne:controls_hints:update` | Обновить состояние или отображение. |
16
+ | `UPDATE_FAST` | `vne:controls_hints:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:controls_hints:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:controls_hints:update_state` | Слить partial в стейт контроллера. |
14
19
 
15
20
  ## Константы
16
21
 
@@ -38,10 +43,10 @@ Payloads и результаты хендлеров типизированы ч
38
43
 
39
44
  ## Модули
40
45
 
41
- | Модуль | Зона ответственности |
42
- | --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
43
- | `controls.hints.controller` | Preload иконок в `start` и на `MEMORY.CLEARED`; show/hide групп; `DEVICE_CHANGED`; `COMPONENTS.EXTERNAL_UPDATE` → `updateViewFast`. |
44
- | `controls.hints.view` | Рендер нескольких `View` + `Flex` + `Icon` + `Text`. |
46
+ | Модуль | Зона ответственности |
47
+ | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
48
+ | `controls.hints.controller` | Preload иконок в `start` и на `MEMORY.CLEARED`; show/hide групп; `DEVICE_CHANGED`. `EXTERNAL_UPDATE` всегда вызывает `updateViewFast` (без проверки `isShow`). |
49
+ | `controls.hints.view` | Рендер нескольких `View` + `Flex` + `Icon` + `Text`. |
45
50
 
46
51
  ## Близкие плагины
47
52
 
@@ -8,12 +8,15 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.views.fps`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | -------- | ---------------- | ----------------------------------- |
13
- | `SHOW` | `vne:fps:show` | Показать UI или слой. |
14
- | `HIDE` | `vne:fps:hide` | Скрыть UI или слой. |
15
- | `UPDATE` | `vne:fps:update` | Обновить состояние или отображение. |
16
- | `CHANGE` | `vne:fps:change` | Событие `CHANGE` namespace плагина. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | ---------------------- | ----------------------------------------------- |
13
+ | `SHOW` | `vne:fps:show` | Показать UI или слой. |
14
+ | `HIDE` | `vne:fps:hide` | Скрыть UI или слой. |
15
+ | `UPDATE` | `vne:fps:update` | Обновить состояние или отображение. |
16
+ | `UPDATE_FAST` | `vne:fps:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:fps:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:fps:update_state` | Слить partial в стейт контроллера. |
19
+ | `CHANGE` | `vne:fps:change` | Событие `CHANGE` namespace плагина. |
17
20
 
18
21
  ## Константы
19
22
 
@@ -8,12 +8,15 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.views.gamepad.debug`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | -------- | -------------------------- | --------------------- |
13
- | `SHOW` | `vne:gamepad.debug:show` | Показать UI. |
14
- | `HIDE` | `vne:gamepad.debug:hide` | Скрыть UI. |
15
- | `UPDATE` | `vne:gamepad.debug:update` | Обновить отображение. |
16
- | `CHANGE` | `vne:gamepad.debug:change` | Новый текст дампа. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | -------------------------------- | ----------------------------------------------- |
13
+ | `SHOW` | `vne:gamepad.debug:show` | Показать UI. |
14
+ | `HIDE` | `vne:gamepad.debug:hide` | Скрыть UI. |
15
+ | `UPDATE` | `vne:gamepad.debug:update` | Обновить отображение. |
16
+ | `UPDATE_FAST` | `vne:gamepad.debug:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:gamepad.debug:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:gamepad.debug:update_state` | Слить partial в стейт контроллера. |
19
+ | `CHANGE` | `vne:gamepad.debug:change` | Новый текст дампа. |
17
20
 
18
21
  ## Константы
19
22
 
@@ -15,7 +15,8 @@ Payloads и результаты хендлеров типизированы ч
15
15
  | `HIDE` | `vne:settings_view:hide` | Скрыть слой полей. |
16
16
  | `UPDATE` | `vne:settings_view:update` | Обновить состояние или отображение. |
17
17
  | `UPDATE_FAST` | `vne:settings_view:update_fast` | Быстрый UPDATE view без анимации (стрелки). |
18
- | `STATE_UPDATE` | `vne:settings_view:state_update` | Слить `{ currentArrowVerticalItem }` в стейт controller; пересчитать `currentItemInner`. |
18
+ | `UPDATE_FORCE` | `vne:settings_view:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
19
+ | `UPDATE_STATE` | `vne:settings_view:update_state` | Слить `{ currentArrowVerticalItem }` в стейт controller; пересчитать `currentItemInner`. |
19
20
 
20
21
  ## Константы
21
22
 
@@ -43,8 +44,8 @@ Payloads и результаты хендлеров типизированы ч
43
44
 
44
45
  | Модуль | Зона ответственности |
45
46
  | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
46
- | `settings.fields.controller` | `SHOW`/`HIDE`/`TAB_SET`; зеркалит `STATE_UPDATE` (`currentArrowVerticalItem` + `currentItemInner`). На `selector_texts` / `actions` (`options`): `ARROW_LEFT`/`ARROW_RIGHT` циклят `currentItemInner` (modulo); у `selector_texts` сразу `SETTINGS.SET`. `INTERACT` — option value или named action (в т.ч. `actions` без `settingKey`). `ACCEPT` не обрабатывает — оставляют экраны. |
47
- | `settings.fields.controller.arrows` | Наследует `@vnejs/module.controller.arrows.vertical`: `ARROW_UP`/`ARROW_BOTTOM` по полям; PUSH/POP на SHOW/HIDE; `TAB_SET` сбрасывает индекс; эмитит `STATE_UPDATE` с `{ currentArrowVerticalItem }` и `UPDATE_FAST`. |
47
+ | `settings.fields.controller` | `SHOW`/`HIDE`/`TAB_SET`; зеркалит `UPDATE_STATE` (`currentArrowVerticalItem` + `currentItemInner`). На `selector_texts` / `actions` (`options`): `ARROW_LEFT`/`ARROW_RIGHT` циклят `currentItemInner` (modulo); у `selector_texts` сразу `SETTINGS.SET`. `INTERACT` — option value или named action (в т.ч. `actions` без `settingKey`). `ACCEPT` не обрабатывает — оставляют экраны. |
48
+ | `settings.fields.controller.arrows` | Наследует `@vnejs/module.controller.arrows.vertical`: `ARROW_UP`/`ARROW_BOTTOM` по полям; PUSH/POP на SHOW/HIDE; `TAB_SET` сбрасывает индекс; эмитит `UPDATE_STATE` с `{ currentArrowVerticalItem }` и `UPDATE_FAST`. |
48
49
  | `settings.fields.view` | Обёртка `<View {...propsView} />` (fade show/hide); внутри вкладки `<SettingsTabContent />` с `PositionBox opacity` для crossfade по `tabKey`. Подсветка полей по `currentArrowVerticalItem`. |
49
50
 
50
51
  ## Близкие плагины
@@ -8,16 +8,19 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.views.video`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | --------- | ------------------- | ----------------------------------------------------- |
13
- | `SET` | `vne:video:set` | Запросить данные у обработчиков и продолжить цепочку. |
14
- | `GET` | `vne:video:get` | Получить значение или ресурс. |
15
- | `LOAD` | `vne:video:load` | Загрузить данные или ресурс. |
16
- | `PLAY` | `vne:video:play` | Начать воспроизведение. |
17
- | `SET_SRC` | `vne:video:set_src` | Записать или обновить значение. |
18
- | `SHOW` | `vne:video:show` | Показать UI или слой. |
19
- | `HIDE` | `vne:video:hide` | Скрыть UI или слой. |
20
- | `UPDATE` | `vne:video:update` | Обновить состояние или отображение. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | ------------------------ | ----------------------------------------------------- |
13
+ | `SET` | `vne:video:set` | Запросить данные у обработчиков и продолжить цепочку. |
14
+ | `GET` | `vne:video:get` | Получить значение или ресурс. |
15
+ | `LOAD` | `vne:video:load` | Загрузить данные или ресурс. |
16
+ | `PLAY` | `vne:video:play` | Начать воспроизведение. |
17
+ | `SET_SRC` | `vne:video:set_src` | Записать или обновить значение. |
18
+ | `SHOW` | `vne:video:show` | Показать UI или слой. |
19
+ | `HIDE` | `vne:video:hide` | Скрыть UI или слой. |
20
+ | `UPDATE` | `vne:video:update` | Обновить состояние или отображение. |
21
+ | `UPDATE_FAST` | `vne:video:update_fast` | Быстрое обновление отображения. |
22
+ | `UPDATE_FORCE` | `vne:video:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
23
+ | `UPDATE_STATE` | `vne:video:update_state` | Слить partial в стейт контроллера. |
21
24
 
22
25
  ## Константы
23
26
 
@@ -11,11 +11,11 @@ Payloads и результаты хендлеров типизированы ч
11
11
  | Ключ | Строка | Смысл |
12
12
  | -------------- | ------------------------------ | ---------------------------------------------------------------------- |
13
13
  | `SHOW` | `vne:choose_view:show` | Показать UI выбора. |
14
- | `SHOW_BEFORE` | `vne:choose_view:show_before` | Хук перед показом (после загрузки state из `globalState.choose`). |
15
14
  | `HIDE` | `vne:choose_view:hide` | Скрыть UI выбора. |
16
15
  | `UPDATE` | `vne:choose_view:update` | Обновить React-store / отображение. |
17
- | `STATE_UPDATE` | `vne:choose_view:state_update` | Слить partial в стейт контроллера без UPDATE view. |
16
+ | `UPDATE_STATE` | `vne:choose_view:update_state` | Слить partial в стейт контроллера без UPDATE view. |
18
17
  | `UPDATE_FAST` | `vne:choose_view:update_fast` | Перерисовать view с `isFast`, стейт не меняет. |
18
+ | `UPDATE_FORCE` | `vne:choose_view:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
19
19
  | `ACCEPT` | `vne:choose_view:accept` | `ACCEPT` / `INTERACT` → `CHOOSE.OPTION` по `currentArrowVerticalItem`. |
20
20
 
21
21
  Сценарные события (`EMIT`, `OPTION`, `SHOW`, `HIDE`, `SKIP`, `EXEC_*`, `STATE_UPDATE`) — в контракте `@vnejs/contracts.scenario.choose`, namespace `CHOOSE`.
@@ -39,13 +39,13 @@ Payloads и результаты хендлеров типизированы ч
39
39
 
40
40
  ## Модули
41
41
 
42
- | Модуль | Зона ответственности |
43
- | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
44
- | `choose_view.bridge` | Bridge `CHOOSE.SHOW/HIDE` → `CHOOSE_VIEW.SHOW/HIDE`. |
45
- | `choose_view.controller` | `CONTROLS_EXTENSIONS`, `beforeShow` / `afterHide`, зеркало `STATE_UPDATE` / `UPDATE_FAST`. |
46
- | `choose_view.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `ACCEPT` → `CHOOSE.OPTION` по `currentArrowVerticalItem`; зеркалит `STATE_UPDATE`; PUSH/POP на SHOW/HIDE. |
47
- | `choose_view.controller.arrows` | Наследует `@vnejs/module.controller.arrows.vertical`: `ARROW_UP` / `ARROW_BOTTOM` по полному `options[]`; скипает `hided` через `isArrowItemAvailable` (индекс исходный); PUSH/POP на SHOW/HIDE; эмитит `STATE_UPDATE` с `{ currentArrowVerticalItem }` и `UPDATE_FAST`. |
48
- | `choose_view.view` | React-render опций; опциональный заголовок из `args.title`. |
42
+ | Модуль | Зона ответственности |
43
+ | ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
44
+ | `choose_view.bridge` | Bridge `CHOOSE.SHOW/HIDE` → `CHOOSE_VIEW.SHOW/HIDE`. |
45
+ | `choose_view.controller` | `CONTROLS_EXTENSIONS` сливается в `CONTROLS` в `ModuleController.init`; на `SHOW` + `LIFECYCLE_PRIORITY.SHOW.BEFORE` копирует `globalState.choose`; сброс стейта на `HIDE.CLEANUP` делает `ModuleController` (`SHOULD_CLEAR_STATE_ON_CLEANUP`). Зеркало `UPDATE_STATE` / `UPDATE_FAST`. |
46
+ | `choose_view.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `ACCEPT` → `CHOOSE.OPTION` по `currentArrowVerticalItem`; зеркалит `UPDATE_STATE`; PUSH/POP на SHOW/HIDE. |
47
+ | `choose_view.controller.arrows` | Наследует `@vnejs/module.controller.arrows.vertical`: `ARROW_UP` / `ARROW_BOTTOM` по полному `options[]`; скипает `hided` через `isArrowItemAvailable` (индекс исходный); PUSH/POP на SHOW/HIDE; эмитит `UPDATE_STATE` с `{ currentArrowVerticalItem }` и `UPDATE_FAST`. |
48
+ | `choose_view.view` | React-render опций; опциональный заголовок из `args.title`. |
49
49
 
50
50
  ## Связь с CHOOSE
51
51
 
@@ -60,7 +60,7 @@ sequenceDiagram
60
60
  OBS->>BR: bridge
61
61
  BR->>OBS: vne:choose_view:show
62
62
  OBS->>VC: onShow
63
- Note over VC: beforeShow читает globalState.choose
63
+ Note over VC: SHOW BEFORE читает globalState.choose
64
64
  VC->>OBS: vne:choose:option
65
65
  OBS->>SC: onChooseOption
66
66
  SC->>OBS: vne:choose:hide
@@ -81,5 +81,5 @@ sequenceDiagram
81
81
  ### Остальные
82
82
 
83
83
  - [controls.md](../controls/controls.md) — `CONTROLS`: стрелки, ACCEPT, INTERACT
84
- - [interface.md](interface.md) — compatibility скрывает interface на `CHOOSE_VIEW.SHOW_BEFORE`
84
+ - [interface.md](interface.md) — compatibility скрывает interface на `CHOOSE_VIEW.SHOW` (`LIFECYCLE_PRIORITY.SHOW.BEFORE`)
85
85
  - [qte.md](./qte.md) — `QTE_VIEW`: при опции с `qte:` открывается поверх choose (z-index 1300 > 1200)
@@ -8,13 +8,16 @@
8
8
 
9
9
  Payloads и результаты хендлеров типизированы через module augmentation контракта (`VneEventPayloadMap` / `VneEventResultMap`); типы — в `@vnejs/contracts.views.scenario.interface.controls`.
10
10
 
11
- | Ключ | Строка | Смысл |
12
- | -------- | ------------------------------- | ----------------------------------- |
13
- | `SHOW` | `vne:interface_controls:show` | Показать UI или слой. |
14
- | `HIDE` | `vne:interface_controls:hide` | Скрыть UI или слой. |
15
- | `UPDATE` | `vne:interface_controls:update` | Обновить состояние или отображение. |
16
- | `CLICK` | `vne:interface_controls:click` | Событие `CLICK` namespace плагина. |
17
- | `ICONS` | `vne:interface_controls:icons` | Событие `ICONS` namespace плагина. |
11
+ | Ключ | Строка | Смысл |
12
+ | -------------- | ------------------------------------- | ----------------------------------------------- |
13
+ | `SHOW` | `vne:interface_controls:show` | Показать UI или слой. |
14
+ | `HIDE` | `vne:interface_controls:hide` | Скрыть UI или слой. |
15
+ | `UPDATE` | `vne:interface_controls:update` | Обновить состояние или отображение. |
16
+ | `UPDATE_FAST` | `vne:interface_controls:update_fast` | Быстрое обновление отображения. |
17
+ | `UPDATE_FORCE` | `vne:interface_controls:update_force` | Перерисовать view с `isForce`, стейт не меняет. |
18
+ | `UPDATE_STATE` | `vne:interface_controls:update_state` | Слить partial в стейт контроллера. |
19
+ | `CLICK` | `vne:interface_controls:click` | Событие `CLICK` namespace плагина. |
20
+ | `ICONS` | `vne:interface_controls:icons` | Событие `ICONS` namespace плагина. |
18
21
 
19
22
  ## Константы
20
23
 
@@ -34,10 +37,10 @@ Payloads и результаты хендлеров типизированы ч
34
37
 
35
38
  ## Модули
36
39
 
37
- | Модуль | Зона ответственности |
38
- | ------------------------------- | ------------------------------------------------ |
39
- | `interface.controls.controller` | Обрабатывает UPDATE, VISIBLE, INTERACT, SHOW, …. |
40
- | `interface.controls.view` | Подмодуль `controls.view` плагина. |
40
+ | Модуль | Зона ответственности |
41
+ | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
42
+ | `interface.controls.controller` | Обрабатывает UPDATE, VISIBLE, INTERACT, SHOW, …. `CONTROLS_EXTENSIONS` сливается в `CONTROLS` в `ModuleController.init`. |
43
+ | `interface.controls.view` | Подмодуль `controls.view` плагина. |
41
44
 
42
45
  ## Близкие плагины
43
46