@vnejs/docs 0.2.10 → 0.2.12
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/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Пакет: `@vnejs/plugins.controls.controls` · namespace: `CONTROLS`
|
|
4
4
|
|
|
5
|
-
Стек обработчиков абстрактных control-кнопок (push/pop/emit).
|
|
5
|
+
Стек обработчиков абстрактных control-кнопок (push/pop/emit) и текущий тип устройства ввода (keyboard / xbox / playstation).
|
|
6
6
|
|
|
7
7
|
## События
|
|
8
8
|
|
|
@@ -11,10 +11,17 @@
|
|
|
11
11
|
| `EMIT` | `vne:controls:emit` | Инициировать действие или цикл. |
|
|
12
12
|
| `PUSH` | `vne:controls:push` | Добавить элемент в очередь или стек. |
|
|
13
13
|
| `POP` | `vne:controls:pop` | Извлечь элемент из очереди или стека. |
|
|
14
|
+
| `DEVICE_SET` | `vne:controls:device_set` | Запросить смену типа устройства (`{ device }`). |
|
|
15
|
+
| `DEVICE_CHANGED` | `vne:controls:device_changed` | Тип устройства реально сменился (`{ device, prevDevice }`). |
|
|
14
16
|
|
|
15
17
|
## Константы
|
|
16
18
|
|
|
17
|
-
|
|
19
|
+
| Ключ | Смысл |
|
|
20
|
+
|------|--------|
|
|
21
|
+
| `BUTTONS` | Абстрактные control-кнопки (`ACCEPT`, `BACK`, …). |
|
|
22
|
+
| `DEVICES.KEYBOARD` | `"keyboard"` |
|
|
23
|
+
| `DEVICES.XBOX` | `"xbox"` |
|
|
24
|
+
| `DEVICES.PLAYSTATION` | `"playstation"` |
|
|
18
25
|
|
|
19
26
|
## Параметры
|
|
20
27
|
|
|
@@ -29,6 +36,9 @@
|
|
|
29
36
|
| Модуль | Зона ответственности |
|
|
30
37
|
|--------|----------------------|
|
|
31
38
|
| `controls` | Обрабатывает EMIT, PUSH, POP. |
|
|
39
|
+
| `controls.device` | Хранит `currentDevice`; на `DEVICE_SET` эмитит `DEVICE_CHANGED` только при реальной смене. |
|
|
40
|
+
|
|
41
|
+
Источники `DEVICE_SET`: keyboard (keydown) → keyboard; `controls.gamepad.device` (button_press / axis_move) → xbox|playstation по `gamepad.id`; cursor (`mousemove`) → keyboard.
|
|
32
42
|
|
|
33
43
|
## Близкие плагины
|
|
34
44
|
|
|
@@ -38,4 +48,6 @@
|
|
|
38
48
|
|
|
39
49
|
### Остальные
|
|
40
50
|
|
|
41
|
-
—
|
|
51
|
+
- [keyboard.md](./keyboard.md) — `KEYBOARD`
|
|
52
|
+
- [gamepad.md](./gamepad.md) — `GAMEPAD`
|
|
53
|
+
- [cursor.md](./cursor.md) — `CURSOR`
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Пакет: `@vnejs/plugins.controls.cursor` · namespace: `CURSOR`
|
|
4
4
|
|
|
5
|
-
Кастомный курсор: позиция, сдвиг, view и программный клик.
|
|
5
|
+
Кастомный курсор: позиция, сдвиг, скролл под курсором, view и программный клик.
|
|
6
6
|
|
|
7
7
|
## События
|
|
8
8
|
|
|
@@ -15,7 +15,9 @@
|
|
|
15
15
|
| `VIEW_SET` | `vne:cursor:view_set` | Записать или обновить значение. |
|
|
16
16
|
| `MOVE` | `vne:cursor:move` | Событие `MOVE` namespace плагина. |
|
|
17
17
|
| `MOVED` | `vne:cursor:moved` | Событие `MOVED` namespace плагина. |
|
|
18
|
-
| `
|
|
18
|
+
| `SET_X_Y` | `vne:cursor:set_x_y` | Установить позицию курсора (`{ x?, y? }`) с clamp и `MOVED`. |
|
|
19
|
+
| `SHIFT` | `vne:cursor:shift` | Сдвиг позиции курсора (`{ x?, y? }`). |
|
|
20
|
+
| `SCROLL` | `vne:cursor:scroll` | Скролл ближайшего scrollable под курсором (`{ x?, y? }`). |
|
|
19
21
|
|
|
20
22
|
## Константы
|
|
21
23
|
|
|
@@ -30,20 +32,28 @@
|
|
|
30
32
|
| `DEFAULT_SHIFT_REVERSE_X` | `boolean` | Значение по умолчанию: false. |
|
|
31
33
|
| `DEFAULT_SHIFT_REVERSE_Y` | `boolean` | Значение по умолчанию: false. |
|
|
32
34
|
| `BASE_SHIFT_SPEED` | `number` | Значение по умолчанию: 16. |
|
|
35
|
+
| `DEFAULT_SCROLL_SPEED` | `number` | Значение по умолчанию: 1. |
|
|
36
|
+
| `BASE_SCROLL_SPEED` | `number` | Значение по умолчанию: 16. |
|
|
33
37
|
|
|
34
38
|
## Настройки
|
|
35
39
|
|
|
36
40
|
| Ключ | Тип | Смысл |
|
|
37
41
|
|------|-----|-------|
|
|
38
|
-
| `SHIFT_SPEED` (`vne:cursor:shift_speed`) | `number` |
|
|
39
|
-
| `SHIFT_REVERSE_Y` (`vne:cursor:shift_reverse_y`) | `
|
|
40
|
-
| `SHIFT_REVERSE_X` (`vne:cursor:shift_reverse_x`) | `
|
|
42
|
+
| `SHIFT_SPEED` (`vne:cursor:shift_speed`) | `number` | Множитель скорости сдвига курсора. |
|
|
43
|
+
| `SHIFT_REVERSE_Y` (`vne:cursor:shift_reverse_y`) | `boolean` | Инверсия оси Y при `SHIFT`. |
|
|
44
|
+
| `SHIFT_REVERSE_X` (`vne:cursor:shift_reverse_x`) | `boolean` | Инверсия оси X при `SHIFT`. |
|
|
45
|
+
| `SCROLL_SPEED` (`vne:cursor:scroll_speed`) | `number` | Множитель скорости скролла при `SCROLL`. |
|
|
41
46
|
|
|
42
47
|
## Модули
|
|
43
48
|
|
|
44
49
|
| Модуль | Зона ответственности |
|
|
45
50
|
|--------|----------------------|
|
|
46
|
-
| `cursor` |
|
|
51
|
+
| `cursor` (`Cursor`) | SET_X_Y, resize; владеет `globalState.cursor` (x/y). |
|
|
52
|
+
| `cursor.view_set` (`CursorView`) | 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`. |
|
|
47
57
|
|
|
48
58
|
## Близкие плагины
|
|
49
59
|
|
|
@@ -56,4 +66,5 @@
|
|
|
56
66
|
|
|
57
67
|
### Остальные
|
|
58
68
|
|
|
59
|
-
—
|
|
69
|
+
- [controls.md](./controls.md) — `CONTROLS`: EVENTS.DEVICE_SET (mousemove → keyboard)
|
|
70
|
+
- [gamepad.md](./gamepad.md) — стики через `compatibility.controls.gamepad-with-controls.cursor`: left → `SHIFT`, right → `SCROLL`; тип устройства (xbox|ps) — `controls.gamepad.device`
|
|
@@ -74,7 +74,8 @@ Electron при `STEAM_DECK=1` добавляет `?steamDeck=1`.
|
|
|
74
74
|
|
|
75
75
|
| Модуль | Зона ответственности |
|
|
76
76
|
|--------|----------------------|
|
|
77
|
-
| `controls.gamepad` |
|
|
77
|
+
| `controls.gamepad` | Маппинг joypad-кнопок → `CONTROLS.EMIT`; профили и lock активного пада. |
|
|
78
|
+
| `controls.gamepad.device` | `button_press` / `axis_move` → `CONTROLS.DEVICE_SET` (`DEVICES.XBOX` или `DEVICES.PLAYSTATION` по `gamepad.id`). |
|
|
78
79
|
|
|
79
80
|
## Близкие плагины
|
|
80
81
|
|
|
@@ -84,4 +85,5 @@ Electron при `STEAM_DECK=1` добавляет `?steamDeck=1`.
|
|
|
84
85
|
|
|
85
86
|
### Остальные
|
|
86
87
|
|
|
87
|
-
- [controls.md](./controls.md) — `CONTROLS`: EVENTS.EMIT, CONST.BUTTONS
|
|
88
|
+
- [controls.md](./controls.md) — `CONTROLS`: EVENTS.EMIT, EVENTS.DEVICE_SET (через `controls.gamepad.device` → xbox|playstation), CONST.BUTTONS, CONST.DEVICES
|
|
89
|
+
- [cursor.md](./cursor.md) — через `compatibility.controls.gamepad-with-controls.cursor`: left stick (оси 0–1) → `CURSOR.SHIFT`, right stick (оси 2–3) → `CURSOR.SCROLL`; RT → `CURSOR.CLICK`
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# plugins/views/controls.hints/
|
|
2
|
+
|
|
3
|
+
Пакет: `@vnejs/plugins.views.controls.hints` · namespace: `CONTROLS_HINTS`
|
|
4
|
+
|
|
5
|
+
Оверлей подсказок кнопок (keyboard / xbox / playstation). Группы из `PARAMS.GROUPS` показываются и прячутся по событиям из конфига; иконки переключаются по `CONTROLS.DEVICE_CHANGED`.
|
|
6
|
+
|
|
7
|
+
## События
|
|
8
|
+
|
|
9
|
+
| Ключ | Строка | Смысл |
|
|
10
|
+
|------|--------|-------|
|
|
11
|
+
| `UPDATE` | `vne:controls_hints:update` | Обновить состояние или отображение. |
|
|
12
|
+
|
|
13
|
+
## Константы
|
|
14
|
+
|
|
15
|
+
Нет.
|
|
16
|
+
|
|
17
|
+
## Параметры
|
|
18
|
+
|
|
19
|
+
| Ключ | Тип | Смысл |
|
|
20
|
+
|------|-----|-------|
|
|
21
|
+
| `GROUPS` | `ControlsHintsGroup[]` | Группы подсказок (position, direction, show/hide events, controls). |
|
|
22
|
+
| `LOC_LABEL` | `string` | Метка locs (`controlsHints`). |
|
|
23
|
+
| `TRANSITION` | `number` | Длительность перехода View. |
|
|
24
|
+
| `ZINDEX` | `number` | Fallback z-index группы, если не задан в `position.zIndex`. |
|
|
25
|
+
| `VIEW_PROPS` | `object` | Стили `icon` / `text` / `controlFlex` / `groupFlex`. |
|
|
26
|
+
|
|
27
|
+
Для экрана обычно задают `position.zIndex = PARAMS.<SCREEN>.ZINDEX + 100`, чтобы другие экраны могли перекрыть подсказки.
|
|
28
|
+
|
|
29
|
+
Появление/скрытие группы анимируется через `View` с `transition={PARAMS.TRANSITION}` (по умолчанию `300` ms). Группа видима, если `isShow` и есть контролы для текущего device (с учётом `hideOnDevices`). При уходе в пустой список (например keyboard) предыдущие иконки держатся до конца transition, чтобы fade-out успел отрисоваться.
|
|
30
|
+
|
|
31
|
+
Элемент `controls[]`: `{ locKey, keyboard: string[], xbox: string[], playstation: string[], hideOnDevices?: ControlsDevice[] }` — пути внутри `media/view/{quality}/` (ведущий `/` снимается). `hideOnDevices` — девайсы, на которых контрол не рендерится (`CONTROLS.DEVICES.*`).
|
|
32
|
+
|
|
33
|
+
## Настройки
|
|
34
|
+
|
|
35
|
+
Нет.
|
|
36
|
+
|
|
37
|
+
## Модули
|
|
38
|
+
|
|
39
|
+
| Модуль | Зона ответственности |
|
|
40
|
+
|--------|----------------------|
|
|
41
|
+
| `controls.hints.controller` | Preload иконок на `SYSTEM.STARTED` / `MEMORY.CLEARED`; show/hide групп; `DEVICE_CHANGED`; `COMPONENTS.EXTERNAL_UPDATE` → `updateViewFast`. |
|
|
42
|
+
| `controls.hints.view` | Рендер нескольких `View` + `Flex` + `Icon` + `Text`. |
|
|
43
|
+
|
|
44
|
+
## Близкие плагины
|
|
45
|
+
|
|
46
|
+
### plugins/core/
|
|
47
|
+
|
|
48
|
+
- [components.md](../core/components.md) — `COMPONENTS`: EXTERNAL_UPDATE
|
|
49
|
+
- [media.md](../core/media.md) — `MEDIA`: LOAD
|
|
50
|
+
- [memory.md](../core/memory.md) — `MEMORY`: CLEARED
|
|
51
|
+
- [state.md](../core/state.md) — `STATE`: SET, CLEAR
|
|
52
|
+
- [system.md](../core/system.md) — `SYSTEM`: STARTED
|
|
53
|
+
|
|
54
|
+
### Остальные
|
|
55
|
+
|
|
56
|
+
- [controls.md](../controls/controls.md) — `CONTROLS`: DEVICE_CHANGED, DEVICES
|