poe-svelte-ui-lib 1.28.6 → 1.29.0
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.
|
@@ -5,10 +5,12 @@
|
|
|
5
5
|
Смарт-виджет информации об устройстве. Как и `WidgetWiFi`, не привязывается к одной произвольной
|
|
6
6
|
переменной устройства — работает с фиксированным набором полей, соответствующих реальной
|
|
7
7
|
прошивочной конвенции (`main_config.c`, группа `CFG`, ProdFactory-ESP): `DevSN`, `DevID`, `DevFW`,
|
|
8
|
-
`RunCnt` — только чтение; `DevName`, `HostName`, `WebUser`, `WebPsw` —
|
|
9
|
-
сохраняются одним пакетом по кнопке "Сохранить". Отдельная кнопка
|
|
10
|
-
заголовком вызывает `onRestart` немедленно (не входит в пакет сохранения
|
|
11
|
-
|
|
8
|
+
`RunCnt`, `StaIP`, `ApIP` — только чтение; `DevName`, `HostName`, `WebUser`, `WebPsw` —
|
|
9
|
+
редактируются локально и сохраняются одним пакетом по кнопке "Сохранить". Отдельная кнопка
|
|
10
|
+
"Перезагрузить" рядом с заголовком вызывает `onRestart` немедленно (не входит в пакет сохранения
|
|
11
|
+
полей). Реальное имя поля устройства для каждого ключа можно переопределить через `keys` (по
|
|
12
|
+
умолчанию совпадает с именем ключа). Компонент ничего не знает про DeviceStore/WebSocket —
|
|
13
|
+
только `value`/`onSave`/`onRestart`.
|
|
12
14
|
|
|
13
15
|
## Пропсы
|
|
14
16
|
|
|
@@ -33,6 +35,8 @@
|
|
|
33
35
|
| `HostName` | `string` | нет | Имя хоста |
|
|
34
36
|
| `WebUser` | `string` | нет | Имя пользователя Web-панели |
|
|
35
37
|
| `WebPsw` | `string` | нет | Пароль Web-панели |
|
|
38
|
+
| `StaIP` | `string` | да | Текущий IP-адрес в режиме STA |
|
|
39
|
+
| `ApIP` | `string` | да | Текущий IP-адрес в режиме AP |
|
|
36
40
|
|
|
37
41
|
## Примеры
|
|
38
42
|
|
|
@@ -55,6 +59,8 @@
|
|
|
55
59
|
HostName: "syp-device-01",
|
|
56
60
|
WebUser: "admin",
|
|
57
61
|
WebPsw: "",
|
|
62
|
+
StaIP: "192.168.1.42",
|
|
63
|
+
ApIP: "192.168.4.1",
|
|
58
64
|
}}
|
|
59
65
|
onSave={handleSave}
|
|
60
66
|
onRestart={() => console.log("Перезагрузка устройства")}
|
|
@@ -70,8 +76,10 @@
|
|
|
70
76
|
| `component` | `UIComponent & { properties: Partial<IWidgetDeviceInfoProps> }` | Объект компонента с его свойствами |
|
|
71
77
|
| `onPropertyChange` | `(updates: Partial<{ properties?: string \| object; name?: string; access?: string }>) => void` | Коллбэк для обновления свойств компонента |
|
|
72
78
|
|
|
73
|
-
Панель
|
|
74
|
-
|
|
79
|
+
Панель содержит заголовок, мастер-цвет (через общий `WidgetAccentPicker.svelte`), префикс
|
|
80
|
+
прошивочной группы (ID), переопределение имени поля устройства для каждого ключа
|
|
81
|
+
`IWidgetDeviceInfoConfig` (по умолчанию совпадает с именем ключа) и команду перезагрузки
|
|
82
|
+
(Header/Argument, по умолчанию `SET`/`Restart`).
|
|
75
83
|
|
|
76
84
|
## Заметки
|
|
77
85
|
|
|
@@ -37,6 +37,8 @@
|
|
|
37
37
|
HostName: "",
|
|
38
38
|
WebUser: "",
|
|
39
39
|
WebPsw: "",
|
|
40
|
+
StaIP: "",
|
|
41
|
+
ApIP: "",
|
|
40
42
|
},
|
|
41
43
|
)
|
|
42
44
|
|
|
@@ -85,6 +87,10 @@
|
|
|
85
87
|
<UI.Input label={{ name: "Версия ПО" }} value={info.DevFW} readonly />
|
|
86
88
|
<UI.Input label={{ name: "Запусков" }} value={info.RunCnt} readonly />
|
|
87
89
|
</div>
|
|
90
|
+
<div class="grid grid-cols-1 gap-2 sm:grid-cols-2">
|
|
91
|
+
<UI.Input label={{ name: "IP-адрес (STA)" }} value={info.StaIP} readonly />
|
|
92
|
+
<UI.Input label={{ name: "IP-адрес (AP)" }} value={info.ApIP} readonly />
|
|
93
|
+
</div>
|
|
88
94
|
</div>
|
|
89
95
|
|
|
90
96
|
<!-- Редактируемые настройки -->
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
<!-- $lib/WidgetDeviceInfo/WidgetDeviceInfoProps.svelte — панель пропсов конструктора
|
|
2
|
-
для WidgetDeviceInfo
|
|
2
|
+
для WidgetDeviceInfo: заголовок/мастер-цвет/префикс группы, переопределение имён полей
|
|
3
|
+
устройства (keys) и команда перезагрузки — все с дефолтами, равными текущей прошивочной
|
|
4
|
+
конвенции (см. DEFAULT_PROPS.WidgetDeviceInfo в DevCloud). -->
|
|
3
5
|
<script lang="ts">
|
|
4
6
|
import { T } from "../locales/i18n"
|
|
5
7
|
import * as UI from ".."
|
|
@@ -8,7 +10,18 @@
|
|
|
8
10
|
import PropsGroup from "../PropsGroup.svelte"
|
|
9
11
|
import { optionsStore } from "../options"
|
|
10
12
|
|
|
11
|
-
const DEVICE_INFO_KEYS: (keyof IWidgetDeviceInfoConfig)[] = [
|
|
13
|
+
const DEVICE_INFO_KEYS: (keyof IWidgetDeviceInfoConfig)[] = [
|
|
14
|
+
"DevSN",
|
|
15
|
+
"DevID",
|
|
16
|
+
"DevFW",
|
|
17
|
+
"RunCnt",
|
|
18
|
+
"DevName",
|
|
19
|
+
"HostName",
|
|
20
|
+
"WebUser",
|
|
21
|
+
"WebPsw",
|
|
22
|
+
"StaIP",
|
|
23
|
+
"ApIP",
|
|
24
|
+
]
|
|
12
25
|
|
|
13
26
|
const { component, onPropertyChange } = $props<{
|
|
14
27
|
component: UIComponent & { properties: Partial<IWidgetDeviceInfoProps> }
|
package/dist/types.d.ts
CHANGED