@victronenergy/mfd-modules 10.3.0 → 10.4.2
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/dist/src/Modules/App/App.provider.d.ts.map +1 -1
- package/dist/src/Modules/App/App.provider.js +5 -5
- package/dist/src/Modules/App/App.provider.js.map +1 -1
- package/dist/src/Modules/App/App.store.d.ts +17 -8
- package/dist/src/Modules/App/App.store.d.ts.map +1 -1
- package/dist/src/Modules/App/App.store.js +16 -1
- package/dist/src/Modules/App/App.store.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.provider.d.ts","sourceRoot":"/","sources":["src/Modules/App/App.provider.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"App.provider.d.ts","sourceRoot":"/","sources":["src/Modules/App/App.provider.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,WAAW,EAGZ,MAAM,aAAa,CAAA;AAGpB,eAAO,MAAM,MAAM,QAAO,WA6FzB,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useEffect, useMemo } from "react";
|
|
2
2
|
import { useMqtt, useTopicState } from "../Mqtt";
|
|
3
|
-
import { useAppStore } from "./App.store";
|
|
3
|
+
import { TEMPERATURE_UNITS, SPEED_UNITS, VolumeUnit, PowerUnit, useAppStore, parseUnionValue, parseEnumValue, } from "./App.store";
|
|
4
4
|
import { stringToHSVWPresets } from "../../utils/hsvw";
|
|
5
5
|
export var useApp = function () {
|
|
6
6
|
var appStore = useAppStore();
|
|
@@ -42,17 +42,17 @@ export var useApp = function () {
|
|
|
42
42
|
}, [firmwareVersion]);
|
|
43
43
|
useEffect(function () {
|
|
44
44
|
if (temperatureUnit !== undefined) {
|
|
45
|
-
appStore.setUnit("temperature", temperatureUnit);
|
|
45
|
+
appStore.setUnit("temperature", parseUnionValue(TEMPERATURE_UNITS, temperatureUnit, "celsius"));
|
|
46
46
|
}
|
|
47
47
|
}, [temperatureUnit]);
|
|
48
48
|
useEffect(function () {
|
|
49
49
|
if (speedUnit !== undefined) {
|
|
50
|
-
appStore.setUnit("speed", speedUnit);
|
|
50
|
+
appStore.setUnit("speed", parseUnionValue(SPEED_UNITS, speedUnit, "m/s"));
|
|
51
51
|
}
|
|
52
52
|
}, [speedUnit]);
|
|
53
53
|
useEffect(function () {
|
|
54
54
|
if (volumeUnit !== undefined) {
|
|
55
|
-
appStore.setUnit("volume", volumeUnit);
|
|
55
|
+
appStore.setUnit("volume", parseEnumValue(VolumeUnit, volumeUnit, VolumeUnit.CUBIC_METERS));
|
|
56
56
|
}
|
|
57
57
|
}, [volumeUnit]);
|
|
58
58
|
useEffect(function () {
|
|
@@ -62,7 +62,7 @@ export var useApp = function () {
|
|
|
62
62
|
}, [guiVersion]);
|
|
63
63
|
useEffect(function () {
|
|
64
64
|
if (electricalPowerIndicator !== undefined) {
|
|
65
|
-
appStore.setElectricalPowerIndicator(electricalPowerIndicator);
|
|
65
|
+
appStore.setElectricalPowerIndicator(parseEnumValue(PowerUnit, electricalPowerIndicator, PowerUnit.AMPS));
|
|
66
66
|
}
|
|
67
67
|
}, [electricalPowerIndicator]);
|
|
68
68
|
useEffect(function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.provider.js","sourceRoot":"/","sources":["src/Modules/App/App.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAY,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC1D,OAAO,
|
|
1
|
+
{"version":3,"file":"App.provider.js","sourceRoot":"/","sources":["src/Modules/App/App.provider.ts"],"names":[],"mappings":"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","sourcesContent":["import { useEffect, useMemo } from \"react\"\nimport { PortalId, useMqtt, useTopicState } from \"../Mqtt\"\nimport {\n TEMPERATURE_UNITS,\n SPEED_UNITS,\n VolumeUnit,\n PowerUnit,\n useAppStore,\n AppProvider,\n parseUnionValue,\n parseEnumValue,\n} from \"./App.store\"\nimport { stringToHSVWPresets } from \"../../utils/hsvw\"\n\nexport const useApp = (): AppProvider => {\n const appStore = useAppStore()\n const mqtt = useMqtt()\n\n const getTopics = (portalId: PortalId) => ({\n locked: `N/${portalId}/settings/0/Settings/VenusApp/LockState`,\n firmwareVersion: `N/${portalId}/system/0/FirmwareVersion`,\n units: {\n temperature: `N/${portalId}/settings/0/Settings/System/Units/Temperature`,\n speed: `N/${portalId}/settings/0/Settings/Gps/SpeedUnit`,\n volume: `N/${portalId}/settings/0/Settings/System/VolumeUnit`,\n },\n guiVersion: `N/${portalId}/settings/0/Settings/Gui/RunningVersion`,\n electricalPowerIndicator: `N/${portalId}/settings/0/Settings/Gui/ElectricalPowerIndicator`,\n rgbColorPresetsArray: `N/${portalId}/settings/0/Settings/Gui2/Switchpane/Preset/RGB`,\n rgbwColorPresetsArray: `N/${portalId}/settings/0/Settings/Gui2/Switchpane/Preset/RGBW`,\n cctColorPresetsArray: `N/${portalId}/settings/0/Settings/Gui2/Switchpane/Preset/CCT`,\n })\n\n const topics = useMemo(() => getTopics(mqtt.portalId), [mqtt.portalId])\n\n const locked = useTopicState<number>(topics.locked)\n const firmwareVersion = useTopicState<string>(topics.firmwareVersion)\n const temperatureUnit = useTopicState<string>(topics.units.temperature)\n const speedUnit = useTopicState<string>(topics.units.speed)\n const volumeUnit = useTopicState<number>(topics.units.volume)\n const guiVersion = useTopicState<number>(topics.guiVersion)\n const electricalPowerIndicator = useTopicState<number>(topics.electricalPowerIndicator)\n const rgbColorPresetsCommaSeparatedString = useTopicState<string>(topics.rgbColorPresetsArray)\n const rgbwColorPresetsCommaSeparatedString = useTopicState<string>(topics.rgbwColorPresetsArray)\n const cctColorPresetsCommaSeparatedString = useTopicState<string>(topics.cctColorPresetsArray)\n\n useEffect(() => {\n if (locked !== undefined) {\n appStore.setLockedWithoutPersistence(!!locked)\n }\n }, [locked])\n\n useEffect(() => {\n if (firmwareVersion) {\n appStore.setFirmwareVersion(firmwareVersion)\n }\n }, [firmwareVersion])\n\n useEffect(() => {\n if (temperatureUnit !== undefined) {\n appStore.setUnit(\"temperature\", parseUnionValue(TEMPERATURE_UNITS, temperatureUnit, \"celsius\"))\n }\n }, [temperatureUnit])\n\n useEffect(() => {\n if (speedUnit !== undefined) {\n appStore.setUnit(\"speed\", parseUnionValue(SPEED_UNITS, speedUnit, \"m/s\"))\n }\n }, [speedUnit])\n\n useEffect(() => {\n if (volumeUnit !== undefined) {\n appStore.setUnit(\"volume\", parseEnumValue(VolumeUnit, volumeUnit, VolumeUnit.CUBIC_METERS))\n }\n }, [volumeUnit])\n\n useEffect(() => {\n if (guiVersion) {\n appStore.setGuiVersion(guiVersion)\n }\n }, [guiVersion])\n\n useEffect(() => {\n if (electricalPowerIndicator !== undefined) {\n appStore.setElectricalPowerIndicator(parseEnumValue(PowerUnit, electricalPowerIndicator, PowerUnit.AMPS))\n }\n }, [electricalPowerIndicator])\n\n useEffect(() => {\n if (rgbColorPresetsCommaSeparatedString !== undefined) {\n appStore.setRGBColorPresets(stringToHSVWPresets(rgbColorPresetsCommaSeparatedString))\n }\n }, [rgbColorPresetsCommaSeparatedString])\n\n useEffect(() => {\n if (rgbwColorPresetsCommaSeparatedString !== undefined) {\n appStore.setRGBWColorPresets(stringToHSVWPresets(rgbwColorPresetsCommaSeparatedString))\n }\n }, [rgbwColorPresetsCommaSeparatedString])\n\n useEffect(() => {\n if (cctColorPresetsCommaSeparatedString !== undefined) {\n appStore.setCCTColorPresets(stringToHSVWPresets(cctColorPresetsCommaSeparatedString))\n }\n }, [cctColorPresetsCommaSeparatedString])\n\n return appStore\n}\n"]}
|
|
@@ -13,7 +13,7 @@ export interface AppState {
|
|
|
13
13
|
firmwareVersion: string;
|
|
14
14
|
units: IUnit;
|
|
15
15
|
guiVersion: number;
|
|
16
|
-
electricalPowerIndicator:
|
|
16
|
+
electricalPowerIndicator: PowerUnit;
|
|
17
17
|
rgbColorPresets: HSVWColorPresets;
|
|
18
18
|
rgbwColorPresets: HSVWColorPresets;
|
|
19
19
|
cctColorPresets: HSVWColorPresets;
|
|
@@ -33,14 +33,23 @@ export interface AppProvider extends AppState {
|
|
|
33
33
|
updateRGBWColorPresets: (presets: HSVWColorPresets) => void;
|
|
34
34
|
updateCCTColorPresets: (presets: HSVWColorPresets) => void;
|
|
35
35
|
}
|
|
36
|
-
export
|
|
37
|
-
export type
|
|
36
|
+
export declare const TEMPERATURE_UNITS: readonly ["fahrenheit", "celsius"];
|
|
37
|
+
export type TemperatureUnit = (typeof TEMPERATURE_UNITS)[number];
|
|
38
|
+
export declare const SPEED_UNITS: readonly ["km/h", "m/s", "mph", "kt"];
|
|
39
|
+
export type SpeedUnit = (typeof SPEED_UNITS)[number];
|
|
40
|
+
export declare function parseUnionValue<T extends string>(valid: readonly T[], value: string, fallback: T): T;
|
|
41
|
+
export declare function parseEnumValue<T extends number>(enumObj: Record<string, number | string>, value: number, fallback: T): T;
|
|
38
42
|
export declare enum VolumeUnit {
|
|
39
43
|
CUBIC_METERS = 0,
|
|
40
44
|
LITRES = 1,
|
|
41
45
|
GALLONS_IMPERIAL = 2,
|
|
42
46
|
GALLONS_US = 3
|
|
43
47
|
}
|
|
48
|
+
export declare enum PowerUnit {
|
|
49
|
+
WATTS = 0,
|
|
50
|
+
AMPS = 1,
|
|
51
|
+
MIXED = 2
|
|
52
|
+
}
|
|
44
53
|
export declare class AppStore implements AppProvider {
|
|
45
54
|
page: string;
|
|
46
55
|
locked: boolean;
|
|
@@ -50,16 +59,16 @@ export declare class AppStore implements AppProvider {
|
|
|
50
59
|
firmwareVersion: string;
|
|
51
60
|
units: IUnit;
|
|
52
61
|
guiVersion: number;
|
|
53
|
-
electricalPowerIndicator:
|
|
62
|
+
electricalPowerIndicator: PowerUnit;
|
|
54
63
|
rgbColorPresets: HSVWColorPresets;
|
|
55
64
|
rgbwColorPresets: HSVWColorPresets;
|
|
56
65
|
cctColorPresets: HSVWColorPresets;
|
|
57
66
|
constructor(mqttStore: MqttStore);
|
|
58
67
|
get humanReadableFirmwareVersion(): any;
|
|
59
68
|
get temperatureUnitToHumanReadable(): "°C" | "°F";
|
|
60
|
-
get temperatureUnit():
|
|
61
|
-
get speedUnitToHumanReadable():
|
|
62
|
-
get speedUnit():
|
|
69
|
+
get temperatureUnit(): "fahrenheit" | "celsius";
|
|
70
|
+
get speedUnitToHumanReadable(): "km/h" | "m/s" | "mph" | "kt";
|
|
71
|
+
get speedUnit(): "km/h" | "m/s" | "mph" | "kt";
|
|
63
72
|
get volumeUnitToHumanReadable(): "m³" | "l" | "gal";
|
|
64
73
|
get volumeUnit(): VolumeUnit;
|
|
65
74
|
setPage: (page: string) => string;
|
|
@@ -71,7 +80,7 @@ export declare class AppStore implements AppProvider {
|
|
|
71
80
|
setFirmwareVersion: (firmwareVersion: string) => string;
|
|
72
81
|
setUnit: <K extends keyof IUnit>(unit: K, value: IUnit[K]) => void;
|
|
73
82
|
setGuiVersion: (guiVersion: number) => number;
|
|
74
|
-
setElectricalPowerIndicator: (electricalPowerIndicator:
|
|
83
|
+
setElectricalPowerIndicator: (electricalPowerIndicator: PowerUnit) => PowerUnit;
|
|
75
84
|
setRGBColorPresets: (presets: HSVWColorPresets) => HSVWColorPresets;
|
|
76
85
|
setRGBWColorPresets: (presets: HSVWColorPresets) => HSVWColorPresets;
|
|
77
86
|
setCCTColorPresets: (presets: HSVWColorPresets) => HSVWColorPresets;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.store.d.ts","sourceRoot":"/","sources":["src/Modules/App/App.store.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAW,MAAM,SAAS,CAAA;AAC5C,OAAO,EAAyB,gBAAgB,EAAuB,MAAM,kBAAkB,CAAA;AAE/F,MAAM,WAAW,KAAK;IACpB,WAAW,EAAE,eAAe,CAAA;IAC5B,KAAK,EAAE,SAAS,CAAA;IAChB,MAAM,EAAE,UAAU,CAAA;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,wBAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"App.store.d.ts","sourceRoot":"/","sources":["src/Modules/App/App.store.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,15 @@ import { versionToHumanReadable } from "../../utils/util";
|
|
|
15
15
|
import { VIEWS } from "../../utils/constants";
|
|
16
16
|
import { useMqtt } from "../Mqtt";
|
|
17
17
|
import { emptyHSVWColorPresets, hwvwPresetsToString } from "../../utils/hsvw";
|
|
18
|
+
export var TEMPERATURE_UNITS = ["fahrenheit", "celsius"];
|
|
19
|
+
export var SPEED_UNITS = ["km/h", "m/s", "mph", "kt"];
|
|
20
|
+
export function parseUnionValue(valid, value, fallback) {
|
|
21
|
+
return valid.includes(value) ? value : fallback;
|
|
22
|
+
}
|
|
23
|
+
export function parseEnumValue(enumObj, value, fallback) {
|
|
24
|
+
var validValues = Object.values(enumObj).filter(function (v) { return typeof v === "number"; });
|
|
25
|
+
return validValues.includes(value) ? value : fallback;
|
|
26
|
+
}
|
|
18
27
|
export var VolumeUnit;
|
|
19
28
|
(function (VolumeUnit) {
|
|
20
29
|
VolumeUnit[VolumeUnit["CUBIC_METERS"] = 0] = "CUBIC_METERS";
|
|
@@ -22,6 +31,12 @@ export var VolumeUnit;
|
|
|
22
31
|
VolumeUnit[VolumeUnit["GALLONS_IMPERIAL"] = 2] = "GALLONS_IMPERIAL";
|
|
23
32
|
VolumeUnit[VolumeUnit["GALLONS_US"] = 3] = "GALLONS_US";
|
|
24
33
|
})(VolumeUnit || (VolumeUnit = {}));
|
|
34
|
+
export var PowerUnit;
|
|
35
|
+
(function (PowerUnit) {
|
|
36
|
+
PowerUnit[PowerUnit["WATTS"] = 0] = "WATTS";
|
|
37
|
+
PowerUnit[PowerUnit["AMPS"] = 1] = "AMPS";
|
|
38
|
+
PowerUnit[PowerUnit["MIXED"] = 2] = "MIXED";
|
|
39
|
+
})(PowerUnit || (PowerUnit = {}));
|
|
25
40
|
var store;
|
|
26
41
|
var AppStore = /** @class */ (function () {
|
|
27
42
|
function AppStore(mqttStore) {
|
|
@@ -235,7 +250,7 @@ var AppStore = /** @class */ (function () {
|
|
|
235
250
|
volume: VolumeUnit.CUBIC_METERS,
|
|
236
251
|
};
|
|
237
252
|
this.guiVersion = 2;
|
|
238
|
-
this.electricalPowerIndicator =
|
|
253
|
+
this.electricalPowerIndicator = PowerUnit.AMPS;
|
|
239
254
|
this.rgbColorPresets = emptyHSVWColorPresets;
|
|
240
255
|
this.rgbwColorPresets = emptyHSVWColorPresets;
|
|
241
256
|
this.cctColorPresets = emptyHSVWColorPresets;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.store.js","sourceRoot":"/","sources":["src/Modules/App/App.store.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAutoObservable } from \"mobx\"\nimport { useMemo } from \"react\"\nimport { versionToHumanReadable } from \"../../utils/util\"\nimport { VIEWS } from \"../../utils/constants\"\nimport { MqttStore, useMqtt } from \"../Mqtt\"\nimport { emptyHSVWColorPresets, HSVWColorPresets, hwvwPresetsToString } from \"../../utils/hsvw\"\n\nexport interface IUnit {\n temperature: TemperatureUnit\n speed: SpeedUnit\n volume: VolumeUnit\n}\n\nexport interface AppState {\n page: string\n locked: boolean\n remote: boolean\n language?: string\n firmwareVersion: string\n units: IUnit\n guiVersion: number\n electricalPowerIndicator: number\n\n rgbColorPresets: HSVWColorPresets\n rgbwColorPresets: HSVWColorPresets\n cctColorPresets: HSVWColorPresets\n\n humanReadableFirmwareVersion: string\n temperatureUnitToHumanReadable: string\n temperatureUnit: TemperatureUnit\n speedUnitToHumanReadable: string\n speedUnit: SpeedUnit\n volumeUnitToHumanReadable: string\n volumeUnit: VolumeUnit\n\n toggleRemote: () => void\n toggleLocked: () => void\n setPage: (page: string) => void\n}\n\nexport interface AppProvider extends AppState {\n updateRGBColorPresets: (presets: HSVWColorPresets) => void\n updateRGBWColorPresets: (presets: HSVWColorPresets) => void\n updateCCTColorPresets: (presets: HSVWColorPresets) => void\n}\n\nexport type TemperatureUnit = \"fahrenheit\" | \"celsius\"\nexport type SpeedUnit = \"km/h\" | \"m/s\" | \"mph\" | \"kt\"\nexport enum VolumeUnit {\n CUBIC_METERS = 0,\n LITRES = 1,\n GALLONS_IMPERIAL = 2,\n GALLONS_US = 3,\n}\n\nlet store: AppStore\n\nexport class AppStore implements AppProvider {\n page: string = VIEWS.METRICS\n locked: boolean = false\n // figure out whether we are connecting to VRM provided MQTT broker\n // see https://github.com/victronenergy/dbus-flashmq?tab=readme-ov-file#determining-the-broker-url-for-a-given-installation\n remote: boolean =\n typeof window !== \"undefined\" &&\n window?.location.protocol === \"https:\" &&\n window?.location.hostname.endsWith(\"victronenergy.com\") &&\n (window?.location.hostname.startsWith(\"mqtt\") || window?.location.hostname.startsWith(\"webmqtt\"))\n language?: string\n mqtt: MqttStore\n firmwareVersion: string\n units: IUnit\n guiVersion: number\n electricalPowerIndicator: number\n\n rgbColorPresets: HSVWColorPresets\n rgbwColorPresets: HSVWColorPresets\n cctColorPresets: HSVWColorPresets\n\n constructor(mqttStore: MqttStore) {\n makeAutoObservable(this, { mqtt: false })\n this.mqtt = mqttStore\n this.firmwareVersion = \"-\"\n this.units = {\n temperature: \"celsius\",\n speed: \"km/h\",\n volume: VolumeUnit.CUBIC_METERS,\n }\n this.guiVersion = 2\n this.electricalPowerIndicator = 1\n this.rgbColorPresets = emptyHSVWColorPresets\n this.rgbwColorPresets = emptyHSVWColorPresets\n this.cctColorPresets = emptyHSVWColorPresets\n }\n\n get humanReadableFirmwareVersion() {\n return versionToHumanReadable(+this.firmwareVersion) || \"-\"\n }\n\n get temperatureUnitToHumanReadable() {\n if (this.units.temperature === \"celsius\") {\n return \"°C\"\n }\n\n return \"°F\"\n }\n\n get temperatureUnit() {\n return this.units.temperature\n }\n\n get speedUnitToHumanReadable() {\n return this.units.speed\n }\n\n get speedUnit() {\n return this.units.speed\n }\n\n get volumeUnitToHumanReadable() {\n switch (this.units.volume) {\n case VolumeUnit.CUBIC_METERS:\n return \"m³\"\n case VolumeUnit.LITRES:\n return \"l\"\n case VolumeUnit.GALLONS_IMPERIAL:\n return \"gal\"\n case VolumeUnit.GALLONS_US:\n return \"gal\"\n }\n }\n\n get volumeUnit() {\n return this.units.volume\n }\n\n setPage = (page: string) => (this.page = page)\n setLockedWithoutPersistence = (locked: boolean) => (this.locked = locked)\n setRemote = (remote: boolean) => {\n this.remote = remote\n\n // @ts-expect-error Missing TS declaration for venusNativeApp\n if (window?.venusNativeApp) {\n if (remote) {\n // @ts-expect-error Missing TS declaration for venusNativeApp\n window.venusNativeApp.switchToRemote()\n } else {\n // @ts-expect-error Missing TS declaration for venusNativeApp\n window.venusNativeApp.switchToLocal()\n }\n }\n }\n toggleRemote = () => this.setRemote(!this.remote)\n toggleLocked = () => {\n this.mqtt.publish(`N/${this.mqtt.portalId}/settings/0/Settings/VenusApp/LockState`, +!this.locked)\n this.locked = !this.locked\n }\n setLanguage = (language: string) => (this.language = language)\n setFirmwareVersion = (firmwareVersion: string) => (this.firmwareVersion = firmwareVersion)\n setUnit = <K extends keyof IUnit>(unit: K, value: IUnit[K]) => {\n this.units = {\n ...this.units,\n [unit]: value,\n }\n }\n setGuiVersion = (guiVersion: number) => (this.guiVersion = guiVersion)\n setElectricalPowerIndicator = (electricalPowerIndicator: number) =>\n (this.electricalPowerIndicator = electricalPowerIndicator)\n\n setRGBColorPresets = (presets: HSVWColorPresets) => (this.rgbColorPresets = presets)\n setRGBWColorPresets = (presets: HSVWColorPresets) => (this.rgbwColorPresets = presets)\n setCCTColorPresets = (presets: HSVWColorPresets) => (this.cctColorPresets = presets)\n\n updateRGBColorPresets = (presets: HSVWColorPresets) => {\n this.mqtt.publish(\n `W/${this.mqtt.portalId}/settings/0/Settings/Gui2/Switchpane/Preset/RGB`,\n hwvwPresetsToString(presets)\n )\n }\n updateRGBWColorPresets = (presets: HSVWColorPresets) => {\n this.mqtt.publish(\n `W/${this.mqtt.portalId}/settings/0/Settings/Gui2/Switchpane/Preset/RGBW`,\n hwvwPresetsToString(presets)\n )\n }\n updateCCTColorPresets = (presets: HSVWColorPresets) => {\n this.mqtt.publish(\n `W/${this.mqtt.portalId}/settings/0/Settings/Gui2/Switchpane/Preset/CCT`,\n hwvwPresetsToString(presets)\n )\n }\n}\n\nfunction initializeStore(mqttStore: MqttStore) {\n const _store = store ?? new AppStore(mqttStore)\n // For SSG and SSR always create a new store\n if (typeof window === \"undefined\") return _store\n // Create the store once in the client\n if (!store) store = _store\n\n return _store\n}\n\nexport function useAppStore(): AppStore {\n const mqtt = useMqtt()\n return useMemo(() => initializeStore(mqtt), [])\n}\n"]}
|
|
1
|
+
{"version":3,"file":"App.store.js","sourceRoot":"/","sources":["src/Modules/App/App.store.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAutoObservable } from \"mobx\"\nimport { useMemo } from \"react\"\nimport { versionToHumanReadable } from \"../../utils/util\"\nimport { VIEWS } from \"../../utils/constants\"\nimport { MqttStore, useMqtt } from \"../Mqtt\"\nimport { emptyHSVWColorPresets, HSVWColorPresets, hwvwPresetsToString } from \"../../utils/hsvw\"\n\nexport interface IUnit {\n temperature: TemperatureUnit\n speed: SpeedUnit\n volume: VolumeUnit\n}\n\nexport interface AppState {\n page: string\n locked: boolean\n remote: boolean\n language?: string\n firmwareVersion: string\n units: IUnit\n guiVersion: number\n electricalPowerIndicator: PowerUnit\n\n rgbColorPresets: HSVWColorPresets\n rgbwColorPresets: HSVWColorPresets\n cctColorPresets: HSVWColorPresets\n\n humanReadableFirmwareVersion: string\n temperatureUnitToHumanReadable: string\n temperatureUnit: TemperatureUnit\n speedUnitToHumanReadable: string\n speedUnit: SpeedUnit\n volumeUnitToHumanReadable: string\n volumeUnit: VolumeUnit\n\n toggleRemote: () => void\n toggleLocked: () => void\n setPage: (page: string) => void\n}\n\nexport interface AppProvider extends AppState {\n updateRGBColorPresets: (presets: HSVWColorPresets) => void\n updateRGBWColorPresets: (presets: HSVWColorPresets) => void\n updateCCTColorPresets: (presets: HSVWColorPresets) => void\n}\n\nexport const TEMPERATURE_UNITS = [\"fahrenheit\", \"celsius\"] as const\nexport type TemperatureUnit = (typeof TEMPERATURE_UNITS)[number]\n\nexport const SPEED_UNITS = [\"km/h\", \"m/s\", \"mph\", \"kt\"] as const\nexport type SpeedUnit = (typeof SPEED_UNITS)[number]\n\nexport function parseUnionValue<T extends string>(valid: readonly T[], value: string, fallback: T): T {\n return (valid as readonly string[]).includes(value) ? (value as T) : fallback\n}\n\nexport function parseEnumValue<T extends number>(\n enumObj: Record<string, number | string>,\n value: number,\n fallback: T\n): T {\n const validValues = Object.values(enumObj).filter((v): v is number => typeof v === \"number\")\n return validValues.includes(value) ? (value as T) : fallback\n}\n\nexport enum VolumeUnit {\n CUBIC_METERS = 0,\n LITRES = 1,\n GALLONS_IMPERIAL = 2,\n GALLONS_US = 3,\n}\n\nexport enum PowerUnit {\n WATTS = 0,\n AMPS = 1,\n MIXED = 2, // AC in Watts, DC in Ampers\n}\n\nlet store: AppStore\n\nexport class AppStore implements AppProvider {\n page: string = VIEWS.METRICS\n locked: boolean = false\n // figure out whether we are connecting to VRM provided MQTT broker\n // see https://github.com/victronenergy/dbus-flashmq?tab=readme-ov-file#determining-the-broker-url-for-a-given-installation\n remote: boolean =\n typeof window !== \"undefined\" &&\n window?.location.protocol === \"https:\" &&\n window?.location.hostname.endsWith(\"victronenergy.com\") &&\n (window?.location.hostname.startsWith(\"mqtt\") || window?.location.hostname.startsWith(\"webmqtt\"))\n language?: string\n mqtt: MqttStore\n firmwareVersion: string\n units: IUnit\n guiVersion: number\n electricalPowerIndicator: PowerUnit\n\n rgbColorPresets: HSVWColorPresets\n rgbwColorPresets: HSVWColorPresets\n cctColorPresets: HSVWColorPresets\n\n constructor(mqttStore: MqttStore) {\n makeAutoObservable(this, { mqtt: false })\n this.mqtt = mqttStore\n this.firmwareVersion = \"-\"\n this.units = {\n temperature: \"celsius\",\n speed: \"km/h\",\n volume: VolumeUnit.CUBIC_METERS,\n }\n this.guiVersion = 2\n this.electricalPowerIndicator = PowerUnit.AMPS\n this.rgbColorPresets = emptyHSVWColorPresets\n this.rgbwColorPresets = emptyHSVWColorPresets\n this.cctColorPresets = emptyHSVWColorPresets\n }\n\n get humanReadableFirmwareVersion() {\n return versionToHumanReadable(+this.firmwareVersion) || \"-\"\n }\n\n get temperatureUnitToHumanReadable() {\n if (this.units.temperature === \"celsius\") {\n return \"°C\"\n }\n\n return \"°F\"\n }\n\n get temperatureUnit() {\n return this.units.temperature\n }\n\n get speedUnitToHumanReadable() {\n return this.units.speed\n }\n\n get speedUnit() {\n return this.units.speed\n }\n\n get volumeUnitToHumanReadable() {\n switch (this.units.volume) {\n case VolumeUnit.CUBIC_METERS:\n return \"m³\"\n case VolumeUnit.LITRES:\n return \"l\"\n case VolumeUnit.GALLONS_IMPERIAL:\n return \"gal\"\n case VolumeUnit.GALLONS_US:\n return \"gal\"\n }\n }\n\n get volumeUnit() {\n return this.units.volume\n }\n\n setPage = (page: string) => (this.page = page)\n setLockedWithoutPersistence = (locked: boolean) => (this.locked = locked)\n setRemote = (remote: boolean) => {\n this.remote = remote\n\n // @ts-expect-error Missing TS declaration for venusNativeApp\n if (window?.venusNativeApp) {\n if (remote) {\n // @ts-expect-error Missing TS declaration for venusNativeApp\n window.venusNativeApp.switchToRemote()\n } else {\n // @ts-expect-error Missing TS declaration for venusNativeApp\n window.venusNativeApp.switchToLocal()\n }\n }\n }\n toggleRemote = () => this.setRemote(!this.remote)\n toggleLocked = () => {\n this.mqtt.publish(`N/${this.mqtt.portalId}/settings/0/Settings/VenusApp/LockState`, +!this.locked)\n this.locked = !this.locked\n }\n setLanguage = (language: string) => (this.language = language)\n setFirmwareVersion = (firmwareVersion: string) => (this.firmwareVersion = firmwareVersion)\n setUnit = <K extends keyof IUnit>(unit: K, value: IUnit[K]) => {\n this.units = {\n ...this.units,\n [unit]: value,\n }\n }\n setGuiVersion = (guiVersion: number) => (this.guiVersion = guiVersion)\n setElectricalPowerIndicator = (electricalPowerIndicator: PowerUnit) =>\n (this.electricalPowerIndicator = electricalPowerIndicator)\n\n setRGBColorPresets = (presets: HSVWColorPresets) => (this.rgbColorPresets = presets)\n setRGBWColorPresets = (presets: HSVWColorPresets) => (this.rgbwColorPresets = presets)\n setCCTColorPresets = (presets: HSVWColorPresets) => (this.cctColorPresets = presets)\n\n updateRGBColorPresets = (presets: HSVWColorPresets) => {\n this.mqtt.publish(\n `W/${this.mqtt.portalId}/settings/0/Settings/Gui2/Switchpane/Preset/RGB`,\n hwvwPresetsToString(presets)\n )\n }\n updateRGBWColorPresets = (presets: HSVWColorPresets) => {\n this.mqtt.publish(\n `W/${this.mqtt.portalId}/settings/0/Settings/Gui2/Switchpane/Preset/RGBW`,\n hwvwPresetsToString(presets)\n )\n }\n updateCCTColorPresets = (presets: HSVWColorPresets) => {\n this.mqtt.publish(\n `W/${this.mqtt.portalId}/settings/0/Settings/Gui2/Switchpane/Preset/CCT`,\n hwvwPresetsToString(presets)\n )\n }\n}\n\nfunction initializeStore(mqttStore: MqttStore) {\n const _store = store ?? new AppStore(mqttStore)\n // For SSG and SSR always create a new store\n if (typeof window === \"undefined\") return _store\n // Create the store once in the client\n if (!store) store = _store\n\n return _store\n}\n\nexport function useAppStore(): AppStore {\n const mqtt = useMqtt()\n return useMemo(() => initializeStore(mqtt), [])\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@victronenergy/mfd-modules",
|
|
3
|
-
"version": "10.
|
|
3
|
+
"version": "10.4.2",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@eslint/js": "^9.37.0",
|
|
33
33
|
"@semantic-release/git": "^10.0.1",
|
|
34
|
-
"@semantic-release/npm": "^
|
|
34
|
+
"@semantic-release/npm": "^13.1.5",
|
|
35
35
|
"@types/js-cookie": "^3.0.6",
|
|
36
36
|
"@types/lodash-es": "^4.17.12",
|
|
37
37
|
"@types/react": "^18.3.11",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"eslint-config-prettier": "^10.1.8",
|
|
40
40
|
"eslint-plugin-prettier": "^5.5.4",
|
|
41
41
|
"prettier": "^3.6.2",
|
|
42
|
-
"semantic-release": "^
|
|
42
|
+
"semantic-release": "^25.0.3",
|
|
43
43
|
"typescript": "^5.9.3",
|
|
44
44
|
"typescript-eslint": "^8.46.0"
|
|
45
45
|
},
|