@vnejs/docs 0.2.24 → 0.2.26
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.
- package/CHANGELOG.md +20 -0
- package/package.json +1 -1
- package/plugins/canvas/video.md +1 -1
- package/plugins/controls/cursor.md +8 -8
- package/plugins/platform/metric.md +3 -3
- package/plugins/scales/health.md +3 -3
- package/plugins/scales/mana.md +3 -3
- package/plugins/scenario/choose.md +1 -1
- package/plugins/scenario/point_and_click.md +4 -4
- package/plugins/text/locs.md +4 -4
- package/plugins/text/smooth.md +9 -0
- package/plugins/text/text.md +10 -2
- package/plugins/views.scenario/interface.md +26 -6
- package/plugins/views.scenario/qte.md +4 -3
- package/plugins/views.screens/credits.md +2 -1
- package/plugins/views.screens/gallery.md +6 -3
- package/plugins/views.screens/gamemenu.md +7 -7
- package/plugins/views.screens/history.md +1 -0
- package/plugins/views.screens/save.md +7 -3
- package/plugins/views.screens/settings.defaults.md +6 -6
- package/plugins/views.screens/settings.md +8 -7
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
Краткая история изменений движка (плагины, helpers, packages, CLI и прочий runtime) и внешнего API. Версии — релизы пакета `@vnejs/docs`.
|
|
4
4
|
|
|
5
|
+
## 0.2.26
|
|
6
|
+
|
|
7
|
+
- `compatibility/views.scenario.interface/text` — TEXT → INTERFACE: `CHANGED` / `SPEAKER_CHANGED` / `EMIT_BEFORE` → `TEXT_CHANGED` / `SPEAKER_CHANGED` / `SHOW`; init `shared.interfaceTextShowAllTokensOnChange`. API: `@vnejs/compatibility.views.scenario.interface-with-text`.
|
|
8
|
+
- `compatibility/views.scenario.interface/text.smooth` — `TEXT_SMOOTH.CHANGED` → `INTERFACE.TEXT_CHANGED` (`tokens` из `globalState.text`, `tokensVisible`, `uid`).
|
|
9
|
+
- `views.scenario/interface` — прямые подписки на `TEXT.CHANGED` / `TEXT.SPEAKER_CHANGED` и `TEXT.EMIT_BEFORE_REG` сняты; связка через compatibility выше. Снято `EVENTS.INTERFACE.VISIBLE_TOKENS_CHANGED` / `InterfaceVisibleTokensChangedPayload` — вместо него `EVENTS.INTERFACE.TEXT_CHANGED`. `$ interface` show/hide/view в модуле `interface.scenario` через `CONST.INTERFACE.EXEC_ACTIONS`. SHOW / HIDE / VISIBLE / TEXT_HIDE / VIEW в `interface.actions` через `globalState.interface`. API: `CONST.INTERFACE.EXEC_ACTIONS`.
|
|
10
|
+
- `views.screens/history` — `STATE.SET` → `HIDE` с `{ isForce: true }` в `history.hide.state` на `@vnejs/module.controller.hide.on.state` (`IS_STATE_CLEAR_ENABLED = false`).
|
|
11
|
+
- `views.screens/settings` — `STATE.SET` / `STATE.CLEAR` → `HIDE` с `{ isForce: true }` в `settings.screen.hide.state` на `@vnejs/module.controller.hide.on.state`.
|
|
12
|
+
- `views.screens/save` — `STATE.SET` / `STATE.CLEAR` → `HIDE` с `{ isForce: true }` в `save.hide.state`. `ACCEPT` / `INTERACT` в `save.controller.accept` на `@vnejs/module.controller.accept` → `SAVE_VIEW.ACCEPT` → `CREATE` / `LOAD`. API: `EVENTS.SAVE_VIEW.ACCEPT`, `EVENTS.SAVE_VIEW.STATE_UPDATE`.
|
|
13
|
+
- `views.screens/gallery` — `ACCEPT` / `INTERACT` в `gallery.controller.accept` на `@vnejs/module.controller.accept` → `GALLERY.ACCEPT` → `CHOOSE` для открытого слота. API: `EVENTS.GALLERY.ACCEPT`, `EVENTS.GALLERY.STATE_UPDATE`.
|
|
14
|
+
- `views.scenario/qte` — `ACCEPT` / `INTERACT` в `qte_view.controller.accept` на `@vnejs/module.controller.accept` → `QTE_VIEW.ACTION`.
|
|
15
|
+
- `views.scenario/interface` — `ACCEPT` / `INTERACT` в `interface.controller.accept` на `@vnejs/module.controller.accept` → `INTERFACE.INTERACT`: видимый слой → `INTERACT.EMIT`, скрытый → `INTERFACE.VISIBLE`.
|
|
16
|
+
- `views.screens/credits` — `ACCEPT` / `INTERACT` в `credits.controller.accept` → `CREDITS.ACCEPT` → `HIDE`. API: `EVENTS.CREDITS.ACCEPT`.
|
|
17
|
+
|
|
18
|
+
## 0.2.25
|
|
19
|
+
|
|
20
|
+
- `module.components` — `updateEvent` → `EVENT_UPDATE_VIEW`; у `ModuleView`: `locLabel` → `LOC_LABEL`, `animationTime` → `TRANSITION`, `updateHandler` по умолчанию `onUpdateStoreComponent`; у `ModuleController`: `bgName` → `BGNAME`, `controls` / `controlsIndex` / `controlsCheckNext` → `CONTROLS` / `CONTROLS_INDEX` / `CONTROLS_CHECK_NEXT` (плюс `CONTROLS_UNVISIBLE` у interface). То же поле `CONTROLS` у accept / hide.on.controls / arrows / tabs.
|
|
21
|
+
- `module.controller.audio` — `SHOW_EVENT` / `HIDE_EVENT` / `LOAD_EVENT` → `EVENT_SHOW` / `EVENT_HIDE` / `EVENT_LOAD`.
|
|
22
|
+
- Имена модулей приведены к slug `PLUGIN_NAME`: `gamemenu.*`, `point_and_click.*` (не дефис), `metric`, `locs`, `scale_health` / `scale_mana`, `settings.screen.*`, `settings.default.*`, `choose.option.before`, `text.emit.before`, `cursor.view.set`, `layer.video.src.get`. Сценарные команды (`% point-and-click`, `$ settings.defaults`) не менялись; `$ settings.defaults` регистрируется через `execName`.
|
|
23
|
+
- Классы модулей = CamelCase от `name` (сегменты `.` `_` `-`): `GamemenuControllerAccept`, `CursorViewSet`, `Metric`, `Locs`, `SettingsScreenView`; compatibility — `CompatibilityTextWithAudioVoice`. Не `GameMenu*` / `YaMetrika` / `TextLocs`. Если имя совпадает с глобальным конструктором — суффикс `Module`: `DateModule`, `TextModule`, `CommentModule`, `HistoryModule`, `StorageModule` (не `Date` / `Text` / `Comment` / `History` / `Storage`).
|
|
24
|
+
|
|
5
25
|
## 0.2.23
|
|
6
26
|
|
|
7
27
|
- `cli/desktop`, `cli/tools` — Fastify `~5.12.3` (security 5.12.2+). API не меняется.
|
package/package.json
CHANGED
package/plugins/canvas/video.md
CHANGED
|
@@ -52,7 +52,7 @@ $ bl.video show {logo} … then bg {castle/surgery_room} …
|
|
|
52
52
|
| `layer.video.hide` | Подмодуль `video.hide` плагина. |
|
|
53
53
|
| `layer.video.change` | Подмодуль `video.change` плагина. |
|
|
54
54
|
| `layer.video.state` | Обрабатывает STATE_UPDATE, STATE_GET, STATE_ADD, STATE_RM, …. |
|
|
55
|
-
| `layer.video.
|
|
55
|
+
| `layer.video.src.get` | Подмодуль `video.src.get` плагина. |
|
|
56
56
|
| `layer.video.preload` | Подмодуль `video.preload` плагина. |
|
|
57
57
|
|
|
58
58
|
## Близкие плагины
|
|
@@ -46,14 +46,14 @@
|
|
|
46
46
|
|
|
47
47
|
## Модули
|
|
48
48
|
|
|
49
|
-
| Модуль
|
|
50
|
-
|
|
|
51
|
-
| `cursor` (`Cursor`)
|
|
52
|
-
| `cursor.
|
|
53
|
-
| `cursor.move` (`CursorMove`)
|
|
54
|
-
| `cursor.shift` (`CursorShift`)
|
|
55
|
-
| `cursor.click` (`CursorClick`)
|
|
56
|
-
| `cursor.scroll` (`CursorScroll`)
|
|
49
|
+
| Модуль | Зона ответственности |
|
|
50
|
+
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|
|
51
|
+
| `cursor` (`Cursor`) | SET_X_Y, resize; владеет `globalState.cursor` (x/y). |
|
|
52
|
+
| `cursor.view.set` (`CursorViewSet`) | VIEW_SET + STATE/STARTED для проставления `view`. Имя `view.set`, чтобы не пересечься с `plugins/views/cursor` (`cursor.view`). |
|
|
53
|
+
| `cursor.move` (`CursorMove`) | MOVE (мышь) → `CONTROLS.DEVICE_SET` (keyboard) + SHOW + SET_X_Y; скрывает системный курсор. |
|
|
54
|
+
| `cursor.shift` (`CursorShift`) | SHIFT + INIT `SHIFT_SPEED` / `SHIFT_REVERSE_*`. |
|
|
55
|
+
| `cursor.click` (`CursorClick`) | CLICK по координатам курсора. |
|
|
56
|
+
| `cursor.scroll` (`CursorScroll`) | SCROLL + INIT `SCROLL_SPEED`. |
|
|
57
57
|
|
|
58
58
|
## Близкие плагины
|
|
59
59
|
|
|
@@ -27,9 +27,9 @@
|
|
|
27
27
|
|
|
28
28
|
## Модули
|
|
29
29
|
|
|
30
|
-
| Модуль
|
|
31
|
-
|
|
|
32
|
-
| `
|
|
30
|
+
| Модуль | Зона ответственности |
|
|
31
|
+
| -------- | -------------------------------- |
|
|
32
|
+
| `metric` | Обрабатывает EMIT, GOAL, PARAMS. |
|
|
33
33
|
|
|
34
34
|
## Близкие плагины
|
|
35
35
|
|
package/plugins/scales/health.md
CHANGED
|
@@ -22,9 +22,9 @@
|
|
|
22
22
|
|
|
23
23
|
## Модули
|
|
24
24
|
|
|
25
|
-
| Модуль
|
|
26
|
-
|
|
|
27
|
-
| `
|
|
25
|
+
| Модуль | Зона ответственности |
|
|
26
|
+
| -------------- | --------------------------- |
|
|
27
|
+
| `scale_health` | Подмодуль `health` плагина. |
|
|
28
28
|
|
|
29
29
|
## Близкие плагины
|
|
30
30
|
|
package/plugins/scales/mana.md
CHANGED
|
@@ -22,9 +22,9 @@
|
|
|
22
22
|
|
|
23
23
|
## Модули
|
|
24
24
|
|
|
25
|
-
| Модуль
|
|
26
|
-
|
|
|
27
|
-
| `
|
|
25
|
+
| Модуль | Зона ответственности |
|
|
26
|
+
| ------------ | ------------------------- |
|
|
27
|
+
| `scale_mana` | Подмодуль `mana` плагина. |
|
|
28
28
|
|
|
29
29
|
## Близкие плагины
|
|
30
30
|
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
| `choose.option` | Обрабатывает `OPTION`. |
|
|
66
66
|
| `choose.skip` | Обрабатывает `SKIP`. |
|
|
67
67
|
| `choose.logs` | Логирование `EMIT` / `OPTION` / `SKIP` / `SHOW` / `HIDE`. |
|
|
68
|
-
| `choose.
|
|
68
|
+
| `choose.option.before` | Реестр обработчиков `OPTION_BEFORE_REG`; наследник `@vnejs/module.handlers`. |
|
|
69
69
|
| `choose.replace` | Реестр обработчиков `OPTION_REPLACE_REG`; наследник `@vnejs/module.replace`. |
|
|
70
70
|
| `choose.exec` | Реестр обработчиков EXEC_REG / EXEC_GET. |
|
|
71
71
|
| `choose.scenario` | Регистрация `% choose`: сбор option-строк, emit `EMIT`. |
|
|
@@ -61,10 +61,10 @@
|
|
|
61
61
|
| `point_and_click.option` | Обрабатывает `OPTION`. |
|
|
62
62
|
| `point_and_click.skip` | Обрабатывает `SKIP`. |
|
|
63
63
|
| `point_and_click.logs` | Логирование `EMIT` / `OPTION` / `SKIP` / `SHOW` / `HIDE`. |
|
|
64
|
-
| `
|
|
65
|
-
| `
|
|
66
|
-
| `
|
|
67
|
-
| `
|
|
64
|
+
| `point_and_click.exec` | Реестр обработчиков EXEC_REG / EXEC_GET. |
|
|
65
|
+
| `point_and_click.scenario` | Регистрация `% point-and-click`: сбор option-строк, emit `EMIT`. |
|
|
66
|
+
| `point_and_click.scenario.option` | Регистрация `% point-and-click.option`: skip невыбранных веток. |
|
|
67
|
+
| `point_and_click.scenario.module` | Регистрация `$ point-and-click`: action `repeat`. |
|
|
68
68
|
|
|
69
69
|
## Compatibility
|
|
70
70
|
|
package/plugins/text/locs.md
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
| `DEFAULT_LANG` | `string` | Значение по умолчанию: "ru". |
|
|
26
26
|
| `GROUPS` | `object` | `VIEWS: "views"`, `LABELS: "labels"` — папки после `{lang}/`. |
|
|
27
27
|
|
|
28
|
-
`LOCS.GET` / `LOCS.LOAD` требуют `group`. `TEXT.REPLACE` без `group` в locs-handler подставляет `GROUPS.LABELS`. View-inject (`
|
|
28
|
+
`LOCS.GET` / `LOCS.LOAD` требуют `group`. `TEXT.REPLACE` без `group` в locs-handler подставляет `GROUPS.LABELS`. View-inject (`LOC_LABEL`) берёт `GROUPS.VIEWS`.
|
|
29
29
|
|
|
30
30
|
## Настройки
|
|
31
31
|
|
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
|
|
36
36
|
## Модули
|
|
37
37
|
|
|
38
|
-
| Модуль
|
|
39
|
-
|
|
|
40
|
-
| `
|
|
38
|
+
| Модуль | Зона ответственности |
|
|
39
|
+
| ------ | -------------------------------- |
|
|
40
|
+
| `locs` | Обрабатывает LOAD, GET, CHANGED. |
|
|
41
41
|
|
|
42
42
|
## Близкие плагины
|
|
43
43
|
|
package/plugins/text/smooth.md
CHANGED
|
@@ -39,6 +39,14 @@
|
|
|
39
39
|
| `text.smooth.cycle` | Обрабатывает SMOOTH, PROCESS_CANCEL, EMIT_END, CLEAR. |
|
|
40
40
|
| `text.smooth.emit.end` | Обрабатывает EMIT_END, RECALC_DONE. |
|
|
41
41
|
|
|
42
|
+
## Compatibility
|
|
43
|
+
|
|
44
|
+
### `compatibility/views.scenario.interface/text.smooth/`
|
|
45
|
+
|
|
46
|
+
Пакет: `@vnejs/compatibility.views.scenario.interface-with-text.smooth`
|
|
47
|
+
|
|
48
|
+
Связка с [interface.md](../views.scenario/interface.md): `CHANGED` → `INTERFACE.TEXT_CHANGED` (`tokens` из `globalState.text`, `tokensVisible`, `uid`). `SYSTEM.STARTED` сбрасывает `shared.interfaceTextShowAllTokensOnChange`.
|
|
49
|
+
|
|
42
50
|
## Близкие плагины
|
|
43
51
|
|
|
44
52
|
### plugins/core/
|
|
@@ -49,3 +57,4 @@
|
|
|
49
57
|
### Остальные
|
|
50
58
|
|
|
51
59
|
- [text.md](./text.md) — `TEXT`: EVENTS.PROCESS_CANCEL, EVENTS.EMIT_END, EVENTS.RECALC_DONE, EVENTS.EMIT_PROCESS
|
|
60
|
+
- [interface.md](../views.scenario/interface.md) — `INTERFACE`: связка через compatibility выше
|
package/plugins/text/text.md
CHANGED
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
|
|
51
51
|
| Модуль | Зона ответственности |
|
|
52
52
|
| ---------------------- | ------------------------------------------------------ |
|
|
53
|
-
| `text.
|
|
53
|
+
| `text.emit.before` | Подмодуль `emit.before` плагина. |
|
|
54
54
|
| `text.emit.end` | Завершение emit и переход к next или финальному state. |
|
|
55
55
|
| `text.emit.next` | Подмодуль `emit.next` плагина. |
|
|
56
56
|
| `text.emit` | Точка входа emit: подготовка и запуск process. |
|
|
@@ -63,6 +63,14 @@
|
|
|
63
63
|
| `text.speaker` | Обрабатывает SPEAKER_INFO_UPDATE, CLEAR, SET. |
|
|
64
64
|
| `text` | Обрабатывает STATE_UPDATE, STATE_CHANGED, CLEAR, SET. |
|
|
65
65
|
|
|
66
|
+
## Compatibility
|
|
67
|
+
|
|
68
|
+
### `compatibility/views.scenario.interface/text/`
|
|
69
|
+
|
|
70
|
+
Пакет: `@vnejs/compatibility.views.scenario.interface-with-text`
|
|
71
|
+
|
|
72
|
+
Связка с [interface.md](../views.scenario/interface.md): `CHANGED` / `SPEAKER_CHANGED` / `EMIT_BEFORE` → `INTERFACE.TEXT_CHANGED` / `SPEAKER_CHANGED` / `SHOW`. Init ставит `shared.interfaceTextShowAllTokensOnChange`.
|
|
73
|
+
|
|
66
74
|
## Близкие плагины
|
|
67
75
|
|
|
68
76
|
### plugins/core/
|
|
@@ -75,4 +83,4 @@
|
|
|
75
83
|
|
|
76
84
|
### Остальные
|
|
77
85
|
|
|
78
|
-
—
|
|
86
|
+
- [interface.md](../views.scenario/interface.md) — `INTERFACE`: связка через compatibility выше
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
| `VIEW_UPDATE` | `vne:interface:view_update` | Обновить состояние или отображение. |
|
|
17
17
|
| `TEXT_HIDE` | `vne:interface:text_hide` | Скрыть UI или слой. |
|
|
18
18
|
| `TEXT_CHANGED` | `vne:interface:text_changed` | Зафиксировать изменение состояния. |
|
|
19
|
-
| `VISIBLE_TOKENS_CHANGED` | `vne:interface:visible_tokens_changed` | Зафиксировать изменение состояния. |
|
|
20
19
|
| `WALL_CHANGED` | `vne:interface:wall_changed` | Зафиксировать изменение состояния. |
|
|
21
20
|
| `SPEAKER_CHANGED` | `vne:interface:speaker_changed` | Зафиксировать смену текущего спикера. |
|
|
22
21
|
| `VISIBLE` | `vne:interface:visible` | Событие `VISIBLE` namespace плагина. |
|
|
@@ -28,7 +27,11 @@
|
|
|
28
27
|
|
|
29
28
|
## Константы
|
|
30
29
|
|
|
31
|
-
|
|
30
|
+
| Ключ | Значение | Смысл |
|
|
31
|
+
| ----------------------- | -------- | ------------------------------------------ |
|
|
32
|
+
| `EXEC_ACTIONS.SHOW` | `show` | Сценарное действие `$ interface show`. |
|
|
33
|
+
| `EXEC_ACTIONS.HIDE` | `hide` | Сценарное действие `$ interface hide`. |
|
|
34
|
+
| `EXEC_ACTIONS.VIEW` | `view` | Сценарное действие `$ interface view …`. |
|
|
32
35
|
|
|
33
36
|
## Параметры
|
|
34
37
|
|
|
@@ -48,9 +51,26 @@
|
|
|
48
51
|
|
|
49
52
|
| Модуль | Зона ответственности |
|
|
50
53
|
| ---------------------- | ------------------------------------------------------------ |
|
|
51
|
-
| `interface.controller`
|
|
52
|
-
| `interface`
|
|
53
|
-
| `interface
|
|
54
|
+
| `interface.controller` | Обрабатывает VIEW_UPDATE, VIEW_SHOW, VIEW_HIDE, …. Пустой `controls` на `ZINDEX`; `CONTROLS_UNVISIBLE` при скрытии слоя. |
|
|
55
|
+
| `interface.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `INTERFACE.INTERACT`; видимый слой → `INTERACT.EMIT`, скрытый → `INTERFACE.VISIBLE`; PUSH/POP на VIEW_SHOW/HIDE. |
|
|
56
|
+
| `interface` | STATE.SET / STATE.CLEAR → STATE_CHANGED. |
|
|
57
|
+
| `interface.scenario` | `$ interface`: `LINE_EXEC_REG` → SHOW / HIDE / VIEW по `CONST.INTERFACE.EXEC_ACTIONS`. |
|
|
58
|
+
| `interface.actions` | SHOW / HIDE / VISIBLE / TEXT_HIDE / VIEW через `globalState.interface`. |
|
|
59
|
+
| `interface.view` | Подмодуль `view` плагина. |
|
|
60
|
+
|
|
61
|
+
## Compatibility
|
|
62
|
+
|
|
63
|
+
### `compatibility/views.scenario.interface/text/`
|
|
64
|
+
|
|
65
|
+
Пакет: `@vnejs/compatibility.views.scenario.interface-with-text`
|
|
66
|
+
|
|
67
|
+
На `TEXT.CHANGED` эмитит `INTERFACE.TEXT_CHANGED` (`tokensVisible` = длина токенов, если `shared.interfaceTextShowAllTokensOnChange`). На `TEXT.SPEAKER_CHANGED` — `INTERFACE.SPEAKER_CHANGED`. В `init` ставит флаг в `true` и регистрирует `TEXT.EMIT_BEFORE` → `INTERFACE.SHOW`. Подключается в `bundles/vn.skeleton`.
|
|
68
|
+
|
|
69
|
+
### `compatibility/views.scenario.interface/text.smooth/`
|
|
70
|
+
|
|
71
|
+
Пакет: `@vnejs/compatibility.views.scenario.interface-with-text.smooth`
|
|
72
|
+
|
|
73
|
+
На `TEXT_SMOOTH.CHANGED` эмитит `INTERFACE.TEXT_CHANGED` с `tokens` из `globalState.text`, `tokensVisible` и `uid`. На `SYSTEM.STARTED` ставит `shared.interfaceTextShowAllTokensOnChange` в `false`.
|
|
54
74
|
|
|
55
75
|
## Близкие плагины
|
|
56
76
|
|
|
@@ -63,6 +83,6 @@
|
|
|
63
83
|
### Остальные
|
|
64
84
|
|
|
65
85
|
- [controls.md](../controls/controls.md) — `CONTROLS`: EVENTS.POP, EVENTS.PUSH
|
|
66
|
-
- [text.md](../text/text.md) — `TEXT`:
|
|
86
|
+
- [text.md](../text/text.md) — `TEXT`: связка через compatibility выше (`CHANGED`, `SPEAKER_CHANGED`, `EMIT_BEFORE_REG`)
|
|
67
87
|
- [choose.md](./choose.md) — compatibility скрывает interface на `CHOOSE_VIEW.SHOW_BEFORE`
|
|
68
88
|
- [qte.md](./qte.md) — compatibility скрывает interface на `QTE_VIEW.SHOW_BEFORE`
|
|
@@ -43,8 +43,9 @@ React-UI Quick Time Event: фазы анимации, зона успеха в
|
|
|
43
43
|
|
|
44
44
|
| Модуль | Зона ответственности |
|
|
45
45
|
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
46
|
-
| `qte_view.controller`
|
|
47
|
-
| `qte_view.
|
|
46
|
+
| `qte_view.controller` | Bridge `QTE.OPENED/CLOSED` → `SHOW/HIDE`; фазы `initial → intro → active → resolved → outro`; таймер fail; пустой `controls` на `ZINDEX`; emit `QTE.RESULT`. |
|
|
47
|
+
| `qte_view.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `QTE_VIEW.ACTION`; PUSH/POP на SHOW/HIDE. |
|
|
48
|
+
| `qte_view.view` | React-render круга / зоны / указателя; `LOC_LABEL` для статусов. |
|
|
48
49
|
|
|
49
50
|
## Фазы
|
|
50
51
|
|
|
@@ -102,4 +103,4 @@ sequenceDiagram
|
|
|
102
103
|
|
|
103
104
|
- [controls.md](../controls/controls.md) — `CONTROLS`: ACCEPT, INTERACT
|
|
104
105
|
- [interface.md](interface.md) — compatibility скрывает interface на `QTE_VIEW.SHOW_BEFORE`
|
|
105
|
-
- [locs.md](../text/locs.md) — тексты статуса через `
|
|
106
|
+
- [locs.md](../text/locs.md) — тексты статуса через `LOC_LABEL`
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
| `SHOW` | `vne:credits:show` | Показать UI или слой. |
|
|
12
12
|
| `HIDE` | `vne:credits:hide` | Скрыть UI или слой. |
|
|
13
13
|
| `UPDATE` | `vne:credits:update` | Обновить состояние или отображение. |
|
|
14
|
+
| `ACCEPT` | `vne:credits:accept` | ACCEPT / INTERACT → затем `HIDE`. |
|
|
14
15
|
|
|
15
16
|
## Константы
|
|
16
17
|
|
|
@@ -31,7 +32,7 @@
|
|
|
31
32
|
| Модуль | Зона ответственности |
|
|
32
33
|
| --------------------------- | -------------------------------------------------------------------------------------------------------------------- |
|
|
33
34
|
| `credits.controller` | SHOW/HIDE; пустой `controls` на `ZINDEX`; `afterHide` → emitNext. |
|
|
34
|
-
| `credits.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `CREDITS.HIDE`; PUSH/POP на SHOW/HIDE.
|
|
35
|
+
| `credits.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `CREDITS.ACCEPT` → `HIDE`; PUSH/POP на SHOW/HIDE. |
|
|
35
36
|
| `credits.hide.controls` | Наследует `@vnejs/module.controller.hide.on.controls`: `BACK` / `MENU` / `GAMEMENU` → `HIDE`; PUSH/POP на SHOW/HIDE. |
|
|
36
37
|
| `credits.hide.state` | Наследует `@vnejs/module.controller.hide.on.state`: `STATE.SET` / `STATE.CLEAR` → `HIDE` с `{ isForce: true }`. |
|
|
37
38
|
| `credits` | Модуль `credits`. |
|
|
@@ -21,7 +21,9 @@ ACCEPT/INTERACT эмитит `CHOOSE` только для выбранного
|
|
|
21
21
|
| `TAB_SET` | `vne:gallery:tab_set` | Выбрать вкладку галереи (`{ tab }`). |
|
|
22
22
|
| `UPDATE` | `vne:gallery:update` | Обновить состояние или отображение. |
|
|
23
23
|
| `PRELOAD` | `vne:gallery:preload` | Событие `PRELOAD` namespace плагина. |
|
|
24
|
-
| `CHOOSE`
|
|
24
|
+
| `CHOOSE` | `vne:gallery:choose` | Событие `CHOOSE` namespace плагина. |
|
|
25
|
+
| `ACCEPT` | `vne:gallery:accept` | ACCEPT / INTERACT по выбранному слоту. |
|
|
26
|
+
| `STATE_UPDATE` | `vne:gallery:state_update` | Слить partial в стейт accept-модуля. |
|
|
25
27
|
|
|
26
28
|
## Константы
|
|
27
29
|
|
|
@@ -50,7 +52,8 @@ ACCEPT/INTERACT эмитит `CHOOSE` только для выбранного
|
|
|
50
52
|
| Модуль | Зона ответственности |
|
|
51
53
|
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
52
54
|
| `gallery.controller.audio` | Наследник `ModuleControllerAudio`: SHOW/HIDE/PRELOAD → pause global, play/stop `view`-трека; `VOLUME_SETTING = MUSIC.VOLUME`; SHOW передаёт в `AUDIO.PLAY` уже посчитанный `volume`; при `VOLUME_CHANGED` / смене `VOLUME_SETTING` — повторный `AUDIO.VOLUME`. |
|
|
53
|
-
| `gallery.controller` | Обрабатывает UPDATE, HIDE, TAB_SET, ….
|
|
55
|
+
| `gallery.controller` | Обрабатывает UPDATE, HIDE, TAB_SET, …. Стрелки в `controls` контроллера; после смены ячейки эмитит `STATE_UPDATE`. |
|
|
56
|
+
| `gallery.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `ACCEPT` → `CHOOSE` только если слот открыт (`isOpened`, не stub); зеркалит `STATE_UPDATE`; PUSH/POP на SHOW/HIDE. |
|
|
54
57
|
| `gallery.hide.controls` | Наследует `@vnejs/module.controller.hide.on.controls`: `BACK` / `MENU` / `GAMEMENU` → `HIDE`; PUSH/POP на SHOW/HIDE. |
|
|
55
58
|
| `gallery.hide.state` | Наследует `@vnejs/module.controller.hide.on.state`: `STATE.SET` / `STATE.CLEAR` → `HIDE` с `{ isForce: true }`. |
|
|
56
59
|
| `gallery.controller.tabs` | Наследник `ModuleControllerTabs`: TAB_PREV/TAB_NEXT → `TAB_SET`; PUSH/POP controls на SHOW/HIDE. |
|
|
@@ -70,5 +73,5 @@ ACCEPT/INTERACT эмитит `CHOOSE` только для выбранного
|
|
|
70
73
|
|
|
71
74
|
- [audio.md](../audio/audio.md) — `AUDIO`: EVENTS.GLOBAL_PAUSE, EVENTS.PLAY, EVENTS.STOP, EVENTS.GLOBAL_RESUME, EVENTS.MEDIA_LOAD, EVENTS.VOLUME, EVENTS.VOLUME_CHANGED
|
|
72
75
|
- [music.md](../audio/music.md) — `MUSIC`: SETTINGS.VOLUME
|
|
73
|
-
- [controls.md](../controls/controls.md) — `CONTROLS`: CONST.BUTTONS.BACK, CONST.BUTTONS.MENU, CONST.BUTTONS.GAMEMENU, CONST.BUTTONS.ARROW_UP, CONST.BUTTONS.ARROW_RIGHT, CONST.BUTTONS.ARROW_BOTTOM
|
|
76
|
+
- [controls.md](../controls/controls.md) — `CONTROLS`: CONST.BUTTONS.BACK, CONST.BUTTONS.MENU, CONST.BUTTONS.GAMEMENU, CONST.BUTTONS.ARROW_UP, CONST.BUTTONS.ARROW_RIGHT, CONST.BUTTONS.ARROW_BOTTOM, CONST.BUTTONS.ACCEPT, CONST.BUTTONS.INTERACT
|
|
74
77
|
- [layer.md](../canvas/layer.md) — `LAYER`: SETTINGS.QUALITY
|
|
@@ -38,13 +38,13 @@
|
|
|
38
38
|
|
|
39
39
|
| Модуль | Зона ответственности |
|
|
40
40
|
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
41
|
-
| `
|
|
42
|
-
| `
|
|
43
|
-
| `
|
|
44
|
-
| `
|
|
45
|
-
| `
|
|
46
|
-
| `
|
|
47
|
-
| `
|
|
41
|
+
| `gamemenu.controller` | Обрабатывает UPDATE, HIDE, SHOW, STATE_UPDATE, UPDATE_FAST, …. Пустой `controls` на `ZINDEX`, чтобы стопорить слои ниже. |
|
|
42
|
+
| `gamemenu.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `ACCEPT` → `CLICK` по `currentArrowVerticalItem`; зеркалит `STATE_UPDATE`; PUSH/POP на SHOW/HIDE. |
|
|
43
|
+
| `gamemenu.controller.arrows` | Наследует `@vnejs/module.controller.arrows.vertical`: `ARROW_UP` / `ARROW_BOTTOM` по видимым пунктам; PUSH/POP controls на SHOW/HIDE; эмитит `STATE_UPDATE` с `{ currentArrowVerticalItem }` и `UPDATE_FAST`. |
|
|
44
|
+
| `gamemenu.hide.controls` | Наследует `@vnejs/module.controller.hide.on.controls`: `BACK` / `MENU` / `GAMEMENU` → `HIDE`; PUSH/POP на SHOW/HIDE. |
|
|
45
|
+
| `gamemenu.hide.state` | Наследует `@vnejs/module.controller.hide.on.state`: `STATE.SET` / `STATE.CLEAR` → `HIDE` с `{ isForce: true }`. |
|
|
46
|
+
| `gamemenu` | Модуль `gamemenu`. |
|
|
47
|
+
| `gamemenu.view` | Подмодуль `view` плагина. |
|
|
48
48
|
|
|
49
49
|
## Близкие плагины
|
|
50
50
|
|
|
@@ -47,6 +47,7 @@
|
|
|
47
47
|
| `history.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `ACCEPT` → `CLICK` по `currentArrowVerticalItem`; зеркалит `STATE_UPDATE`; PUSH/POP на SHOW/HIDE. |
|
|
48
48
|
| `history.controller.arrows` | Наследует `@vnejs/module.controller.arrows.vertical`: `ARROW_UP` / `ARROW_BOTTOM` по записям журнала; PUSH/POP controls на SHOW/HIDE; эмитит `STATE_UPDATE` с `{ currentArrowVerticalItem }` и `UPDATE_FAST`. |
|
|
49
49
|
| `history.hide.controls` | Наследует `@vnejs/module.controller.hide.on.controls`: `BACK` / `MENU` / `GAMEMENU` → `HIDE`; PUSH/POP на SHOW/HIDE. |
|
|
50
|
+
| `history.hide.state` | Наследует `@vnejs/module.controller.hide.on.state`: `STATE.SET` → `HIDE` с `{ isForce: true }` (`IS_STATE_CLEAR_ENABLED = false`). |
|
|
50
51
|
| `history` | Обрабатывает ADD, GET, LOAD, BACK, …. |
|
|
51
52
|
| `history.view` | Подмодуль `view` плагина. |
|
|
52
53
|
|
|
@@ -18,7 +18,9 @@ ACCEPT/INTERACT повторяет клик по слоту: на вкладке
|
|
|
18
18
|
| `DELETE` | `vne:save_view:delete` | Удалить слот (`{ key, group }`) → `SAVE.DELETE`. |
|
|
19
19
|
| `LOAD` | `vne:save_view:load` | Загрузить слот (`{ key, group }`) → `SAVE.PRELOAD` / `SAVE.LOAD`. |
|
|
20
20
|
| `UPDATE` | `vne:save_view:update` | Обновить состояние или отображение. |
|
|
21
|
-
| `PRELOAD`
|
|
21
|
+
| `PRELOAD` | `vne:save_view:preload` | Событие `PRELOAD` namespace плагина. |
|
|
22
|
+
| `ACCEPT` | `vne:save_view:accept` | ACCEPT / INTERACT по выбранному слоту. |
|
|
23
|
+
| `STATE_UPDATE` | `vne:save_view:state_update` | Слить partial в стейт accept-модуля без UPDATE view. |
|
|
22
24
|
|
|
23
25
|
## Константы
|
|
24
26
|
|
|
@@ -40,8 +42,10 @@ ACCEPT/INTERACT повторяет клик по слоту: на вкладке
|
|
|
40
42
|
| Модуль | Зона ответственности |
|
|
41
43
|
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
42
44
|
| `save.controller.audio` | Наследник `ModuleControllerAudio`: SHOW/HIDE/PRELOAD → pause global, play/stop `view`-трека; `VOLUME_SETTING = MUSIC.VOLUME`; SHOW передаёт в `AUDIO.PLAY` уже посчитанный `volume`; при `VOLUME_CHANGED` / смене `VOLUME_SETTING` — повторный `AUDIO.VOLUME`. |
|
|
43
|
-
| `save.controller` | Обрабатывает UPDATE, HIDE, LOAD, TAB_SET, …. SHOW принимает `{ tab }`; в `SAVE.*` передаёт `group` (номер страницы или `autosave`).
|
|
45
|
+
| `save.controller` | Обрабатывает UPDATE, HIDE, LOAD, TAB_SET, …. SHOW принимает `{ tab }`; в `SAVE.*` передаёт `group` (номер страницы или `autosave`). Стрелки в `controls` контроллера; после смены ячейки эмитит `STATE_UPDATE`. |
|
|
46
|
+
| `save.controller.accept` | Наследует `@vnejs/module.controller.accept`: `ACCEPT` / `INTERACT` → `ACCEPT` → `CREATE` на вкладке save, иначе `LOAD` при `screen`; зеркалит `STATE_UPDATE`; PUSH/POP на SHOW/HIDE. |
|
|
44
47
|
| `save.hide.controls` | Наследует `@vnejs/module.controller.hide.on.controls`: `BACK` / `MENU` / `GAMEMENU` → `HIDE`; PUSH/POP на SHOW/HIDE. |
|
|
48
|
+
| `save.hide.state` | Наследует `@vnejs/module.controller.hide.on.state`: `STATE.SET` / `STATE.CLEAR` → `HIDE` с `{ isForce: true }`. |
|
|
45
49
|
| `save.controller.tabs` | Наследник `ModuleControllerTabs`: TAB_PREV/TAB_NEXT → `TAB_SET`; `getTabKeys` фильтрует SAVE vs LOAD/AUTOSAVE. |
|
|
46
50
|
| `save.controller.load` | Подмодуль `controller.load` плагина. |
|
|
47
51
|
| `save.view` | Подмодуль `view` плагина. |
|
|
@@ -61,7 +65,7 @@ ACCEPT/INTERACT повторяет клик по слоту: на вкладке
|
|
|
61
65
|
- [audio.md](../audio/audio.md) — `AUDIO`: EVENTS.GLOBAL_PAUSE, EVENTS.PLAY, EVENTS.STOP, EVENTS.GLOBAL_RESUME, EVENTS.MEDIA_LOAD, EVENTS.VOLUME, EVENTS.VOLUME_CHANGED
|
|
62
66
|
- [music.md](../audio/music.md) — `MUSIC`: SETTINGS.VOLUME
|
|
63
67
|
- [confirm.md](./confirm.md) — `CONFIRM`: EVENTS.EMIT
|
|
64
|
-
- [controls.md](../controls/controls.md) — `CONTROLS`: CONST.BUTTONS.BACK, CONST.BUTTONS.MENU, CONST.BUTTONS.GAMEMENU, CONST.BUTTONS.ARROW_UP, CONST.BUTTONS.ARROW_RIGHT, CONST.BUTTONS.ARROW_BOTTOM
|
|
68
|
+
- [controls.md](../controls/controls.md) — `CONTROLS`: CONST.BUTTONS.BACK, CONST.BUTTONS.MENU, CONST.BUTTONS.GAMEMENU, CONST.BUTTONS.ARROW_UP, CONST.BUTTONS.ARROW_RIGHT, CONST.BUTTONS.ARROW_BOTTOM, CONST.BUTTONS.ACCEPT, CONST.BUTTONS.INTERACT
|
|
65
69
|
- [loading.md](./loading.md) — `LOADING`: EVENTS.EMIT
|
|
66
70
|
- [locs.md](../text/locs.md) — `LOCS`: EVENTS.GET
|
|
67
71
|
- [save.md](../save/save.md) — `SAVE`: EVENTS.CREATE, EVENTS.DELETE, EVENTS.GET, EVENTS.PRELOAD, EVENTS.LOAD
|
|
@@ -35,12 +35,12 @@ Breaking: раньше namespace был `SETTINGS_DEFAULTS`, события `vne
|
|
|
35
35
|
|
|
36
36
|
## Модули
|
|
37
37
|
|
|
38
|
-
| Модуль
|
|
39
|
-
|
|
|
40
|
-
| `settings.
|
|
41
|
-
| `settings.
|
|
42
|
-
| `settings.
|
|
43
|
-
| `settings.
|
|
38
|
+
| Модуль | Зона ответственности |
|
|
39
|
+
| ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
40
|
+
| `settings.default.controller` | SHOW/HIDE; связка с `SETTINGS_VIEW`. |
|
|
41
|
+
| `settings.default.controller.accept` | Наследует `@vnejs/module.controller.accept`: только `ACCEPT` (`IS_INTERACT_ENABLED = false`) → `CONFIRM` → `INITED`, `HIDE`, `emitNext`; PUSH/POP на SHOW/HIDE. |
|
|
42
|
+
| `settings.default` | Сценарий: `LINE_EXEC` как `$ settings.defaults` (`execName`) → `SHOW`, либо `emitNext` при `skip_if_possible` и `INITED`. |
|
|
43
|
+
| `settings.default.view` | Chrome: title + кнопка Accept. |
|
|
44
44
|
|
|
45
45
|
## Близкие плагины
|
|
46
46
|
|
|
@@ -36,13 +36,14 @@
|
|
|
36
36
|
|
|
37
37
|
## Модули
|
|
38
38
|
|
|
39
|
-
| Модуль
|
|
40
|
-
|
|
|
41
|
-
| `settings.controller.audio` | Наследник `ModuleControllerAudio`: SHOW/HIDE/PRELOAD → pause global, play/stop `view`-трека; `VOLUME_SETTING = MUSIC.VOLUME`; SHOW передаёт в `AUDIO.PLAY` уже посчитанный `volume`; при `VOLUME_CHANGED` / смене `VOLUME_SETTING` — повторный `AUDIO.VOLUME`. |
|
|
42
|
-
| `settings.controller` | SHOW/HIDE/TAB_SET; связка с `SETTINGS_VIEW`. Пустой `controls` на `ZINDEX`, чтобы стопорить слои ниже. |
|
|
43
|
-
| `settings.hide.controls` | Наследует `@vnejs/module.controller.hide.on.controls`: `BACK` / `MENU` / `GAMEMENU` → `HIDE`; PUSH/POP на SHOW/HIDE. |
|
|
44
|
-
| `settings.
|
|
45
|
-
| `settings.
|
|
39
|
+
| Модуль | Зона ответственности |
|
|
40
|
+
| ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
41
|
+
| `settings.screen.controller.audio` | Наследник `ModuleControllerAudio`: SHOW/HIDE/PRELOAD → pause global, play/stop `view`-трека; `VOLUME_SETTING = MUSIC.VOLUME`; SHOW передаёт в `AUDIO.PLAY` уже посчитанный `volume`; при `VOLUME_CHANGED` / смене `VOLUME_SETTING` — повторный `AUDIO.VOLUME`. |
|
|
42
|
+
| `settings.screen.controller` | SHOW/HIDE/TAB_SET; связка с `SETTINGS_VIEW`. Пустой `controls` на `ZINDEX`, чтобы стопорить слои ниже. |
|
|
43
|
+
| `settings.screen.hide.controls` | Наследует `@vnejs/module.controller.hide.on.controls`: `BACK` / `MENU` / `GAMEMENU` → `HIDE`; PUSH/POP на SHOW/HIDE. |
|
|
44
|
+
| `settings.screen.hide.state` | Наследует `@vnejs/module.controller.hide.on.state`: `STATE.SET` / `STATE.CLEAR` → `HIDE` с `{ isForce: true }`. |
|
|
45
|
+
| `settings.screen.controller.tabs` | Наследник `ModuleControllerTabs`: TAB_PREV/TAB_NEXT → `TAB_SET`; `getTabKeys` по `showInSettings`. |
|
|
46
|
+
| `settings.screen.view` | Chrome экрана (Screen, tabs, cross); поля и example text — в `SETTINGS_VIEW`. |
|
|
46
47
|
|
|
47
48
|
## Близкие плагины
|
|
48
49
|
|