@enyo-energy/energy-app-sdk 0.0.161 → 0.0.163

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.
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EnergyAppModelFeatureEnum = void 0;
4
+ /**
5
+ * Important capabilities a specific device model can support.
6
+ *
7
+ * Declared per model inside an Energy App package's compatibility section
8
+ * (see {@link EnergyAppPackageCompatibilityModel}) so the enyo Store and
9
+ * onboarding flows can surface accurate, model-level feature information to
10
+ * users. Values are grouped by device category for readability.
11
+ */
12
+ var EnergyAppModelFeatureEnum;
13
+ (function (EnergyAppModelFeatureEnum) {
14
+ // Battery / Storage
15
+ /** The battery can be charged from the grid (not only from PV surplus) */
16
+ EnergyAppModelFeatureEnum["BatteryChargingFromGrid"] = "battery-charging-from-grid";
17
+ /** The maximum charge power or target state of charge can be limited */
18
+ EnergyAppModelFeatureEnum["BatteryChargeLimitation"] = "battery-charge-limitation";
19
+ /** The maximum discharge power or minimum state of charge can be limited */
20
+ EnergyAppModelFeatureEnum["BatteryDischargeLimitation"] = "battery-discharge-limitation";
21
+ // Inverter / PV
22
+ /** The PV feed-in power into the grid can be limited (curtailment) */
23
+ EnergyAppModelFeatureEnum["PvFeedInLimitation"] = "pv-feed-in-limitation";
24
+ /** The inverter active power output can be limited */
25
+ EnergyAppModelFeatureEnum["InverterPowerLimitation"] = "inverter-power-limitation";
26
+ // Wallbox / Charging
27
+ /** Charging can be started and stopped remotely */
28
+ EnergyAppModelFeatureEnum["ChargingStartStop"] = "charging-start-stop";
29
+ /** The charging power (in Ampere or Watt) can be limited */
30
+ EnergyAppModelFeatureEnum["ChargingPowerLimitation"] = "charging-power-limitation";
31
+ /** The model supports switching between single- and three-phase charging */
32
+ EnergyAppModelFeatureEnum["ChargingPhaseSwitching"] = "charging-phase-switching";
33
+ /** The model supports charging from PV surplus */
34
+ EnergyAppModelFeatureEnum["PvSurplusCharging"] = "pv-surplus-charging";
35
+ // Heat Pump
36
+ /** Domestic hot water heating can be forced on demand (DHW boost) */
37
+ EnergyAppModelFeatureEnum["HeatpumpDhwBoost"] = "heatpump-dhw-boost";
38
+ /** The target temperature setpoint can be controlled */
39
+ EnergyAppModelFeatureEnum["HeatpumpTemperatureSetpoint"] = "heatpump-temperature-setpoint";
40
+ /** The heat pump output power can be modulated */
41
+ EnergyAppModelFeatureEnum["HeatpumpPowerModulation"] = "heatpump-power-modulation";
42
+ /** The model supports the SG Ready interface for smart-grid signalling */
43
+ EnergyAppModelFeatureEnum["HeatpumpSgReady"] = "heatpump-sg-ready";
44
+ // Climate Control / Air Conditioning
45
+ /** The target temperature setpoint can be controlled */
46
+ EnergyAppModelFeatureEnum["ClimateTemperatureSetpoint"] = "climate-temperature-setpoint";
47
+ /** The operating mode (heat / cool / fan / off) can be controlled */
48
+ EnergyAppModelFeatureEnum["ClimateModeControl"] = "climate-mode-control";
49
+ // Meter
50
+ /** The grid power (import / export) can be read out */
51
+ EnergyAppModelFeatureEnum["GridPowerReadout"] = "grid-power-readout";
52
+ /** The accumulated energy consumption can be read out */
53
+ EnergyAppModelFeatureEnum["EnergyConsumptionReadout"] = "energy-consumption-readout";
54
+ // Smart Plug
55
+ /** The plug can be switched on and off */
56
+ EnergyAppModelFeatureEnum["SwitchOnOff"] = "switch-on-off";
57
+ /** The plug can measure the connected load's power */
58
+ EnergyAppModelFeatureEnum["PowerMeasurement"] = "power-measurement";
59
+ })(EnergyAppModelFeatureEnum || (exports.EnergyAppModelFeatureEnum = EnergyAppModelFeatureEnum = {}));
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Important capabilities a specific device model can support.
3
+ *
4
+ * Declared per model inside an Energy App package's compatibility section
5
+ * (see {@link EnergyAppPackageCompatibilityModel}) so the enyo Store and
6
+ * onboarding flows can surface accurate, model-level feature information to
7
+ * users. Values are grouped by device category for readability.
8
+ */
9
+ export declare enum EnergyAppModelFeatureEnum {
10
+ /** The battery can be charged from the grid (not only from PV surplus) */
11
+ BatteryChargingFromGrid = "battery-charging-from-grid",
12
+ /** The maximum charge power or target state of charge can be limited */
13
+ BatteryChargeLimitation = "battery-charge-limitation",
14
+ /** The maximum discharge power or minimum state of charge can be limited */
15
+ BatteryDischargeLimitation = "battery-discharge-limitation",
16
+ /** The PV feed-in power into the grid can be limited (curtailment) */
17
+ PvFeedInLimitation = "pv-feed-in-limitation",
18
+ /** The inverter active power output can be limited */
19
+ InverterPowerLimitation = "inverter-power-limitation",
20
+ /** Charging can be started and stopped remotely */
21
+ ChargingStartStop = "charging-start-stop",
22
+ /** The charging power (in Ampere or Watt) can be limited */
23
+ ChargingPowerLimitation = "charging-power-limitation",
24
+ /** The model supports switching between single- and three-phase charging */
25
+ ChargingPhaseSwitching = "charging-phase-switching",
26
+ /** The model supports charging from PV surplus */
27
+ PvSurplusCharging = "pv-surplus-charging",
28
+ /** Domestic hot water heating can be forced on demand (DHW boost) */
29
+ HeatpumpDhwBoost = "heatpump-dhw-boost",
30
+ /** The target temperature setpoint can be controlled */
31
+ HeatpumpTemperatureSetpoint = "heatpump-temperature-setpoint",
32
+ /** The heat pump output power can be modulated */
33
+ HeatpumpPowerModulation = "heatpump-power-modulation",
34
+ /** The model supports the SG Ready interface for smart-grid signalling */
35
+ HeatpumpSgReady = "heatpump-sg-ready",
36
+ /** The target temperature setpoint can be controlled */
37
+ ClimateTemperatureSetpoint = "climate-temperature-setpoint",
38
+ /** The operating mode (heat / cool / fan / off) can be controlled */
39
+ ClimateModeControl = "climate-mode-control",
40
+ /** The grid power (import / export) can be read out */
41
+ GridPowerReadout = "grid-power-readout",
42
+ /** The accumulated energy consumption can be read out */
43
+ EnergyConsumptionReadout = "energy-consumption-readout",
44
+ /** The plug can be switched on and off */
45
+ SwitchOnOff = "switch-on-off",
46
+ /** The plug can measure the connected load's power */
47
+ PowerMeasurement = "power-measurement"
48
+ }
@@ -1,4 +1,5 @@
1
1
  import { EnergyAppPermissionType } from "./energy-app-permission.type.cjs";
2
+ import { EnergyAppModelFeatureEnum } from "./energy-app-model-feature.enum.cjs";
2
3
  export type EnergyAppPackageLanguage = 'de' | 'en';
3
4
  export declare enum EnergyAppPackageCategory {
4
5
  Inverter = "inverter",
@@ -144,7 +145,6 @@ export interface EnergyAppPackagePermission {
144
145
  }
145
146
  /**
146
147
  * A specific device model supported by an Energy App package.
147
- * Used inside {@link EnergyAppPackageCompatibilityVendor.models} to enumerate
148
148
  * the concrete models the package has been verified to work with.
149
149
  */
150
150
  export interface EnergyAppPackageCompatibilityModel {
@@ -162,6 +162,13 @@ export interface EnergyAppPackageCompatibilityModel {
162
162
  minimumFirmwareVersion?: string;
163
163
  /** Optional internal note explaining model-specific caveats or limitations */
164
164
  internalComment?: string;
165
+ /**
166
+ * Important capabilities this specific model supports (e.g. charging the
167
+ * battery from grid, limiting the charge, or forcing a heat pump DHW boost).
168
+ * Lets the enyo Store and onboarding flows surface accurate, model-level
169
+ * feature information.
170
+ */
171
+ features: EnergyAppModelFeatureEnum[];
165
172
  }
166
173
  /**
167
174
  * A vendor and the list of its models supported by an Energy App package.
@@ -171,11 +178,6 @@ export interface EnergyAppPackageCompatibilityModel {
171
178
  export interface EnergyAppPackageCompatibilityVendor {
172
179
  /** Human-readable vendor name (e.g. "SolarEdge", "Fronius") */
173
180
  vendorName: string;
174
- /**
175
- * Optional vendor logo path, mirroring the package-level `logo` field.
176
- * Useful when the host wants to render a vendor list in the store.
177
- */
178
- logo?: string;
179
181
  /** Models from this vendor that the package supports */
180
182
  models: EnergyAppPackageCompatibilityModel[];
181
183
  }
@@ -206,13 +208,13 @@ export interface EnergyAppPackageDefinition {
206
208
  /** If the energy app should be visible in the enyo store. Default is true*/
207
209
  showInStore?: boolean;
208
210
  /**
209
- * Optional declaration of vendors and models this package is compatible with.
211
+ * declaration of vendors and models this package is compatible with.
210
212
  * Each entry pairs a vendor with the concrete models the package supports,
211
213
  * allowing the enyo Store and onboarding flows to surface accurate
212
214
  * compatibility information to users. Omit when the package targets a
213
215
  * single vendor implicitly or has no fixed compatibility surface.
214
216
  */
215
- compatibility?: EnergyAppPackageCompatibilityVendor[];
217
+ compatibility: EnergyAppPackageCompatibilityVendor[];
216
218
  }
217
219
  /**
218
220
  * Defines an Energy App package with automatic SDK version injection.
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./energy-app.cjs"), exports);
18
18
  __exportStar(require("./energy-app-appliance-type.enum.cjs"), exports);
19
19
  __exportStar(require("./energy-app-package-definition.cjs"), exports);
20
+ __exportStar(require("./energy-app-model-feature.enum.cjs"), exports);
20
21
  __exportStar(require("./version.cjs"), exports);
21
22
  __exportStar(require("./implementations/ocpp/ocpp16.cjs"), exports);
22
23
  __exportStar(require("./implementations/ocpp/ocpp201.cjs"), exports);
@@ -1,6 +1,7 @@
1
1
  export * from './energy-app.cjs';
2
2
  export * from './energy-app-appliance-type.enum.cjs';
3
3
  export * from './energy-app-package-definition.cjs';
4
+ export * from './energy-app-model-feature.enum.cjs';
4
5
  export * from './version.cjs';
5
6
  export * from './implementations/ocpp/ocpp16.cjs';
6
7
  export * from './implementations/ocpp/ocpp201.cjs';
@@ -9,7 +9,7 @@ exports.getSdkVersion = getSdkVersion;
9
9
  /**
10
10
  * Current version of the enyo Energy App SDK.
11
11
  */
12
- exports.SDK_VERSION = '0.0.161';
12
+ exports.SDK_VERSION = '0.0.163';
13
13
  /**
14
14
  * Gets the current SDK version.
15
15
  * @returns The semantic version string of the SDK
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * Current version of the enyo Energy App SDK.
7
7
  */
8
- export declare const SDK_VERSION = "0.0.161";
8
+ export declare const SDK_VERSION = "0.0.163";
9
9
  /**
10
10
  * Gets the current SDK version.
11
11
  * @returns The semantic version string of the SDK
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Important capabilities a specific device model can support.
3
+ *
4
+ * Declared per model inside an Energy App package's compatibility section
5
+ * (see {@link EnergyAppPackageCompatibilityModel}) so the enyo Store and
6
+ * onboarding flows can surface accurate, model-level feature information to
7
+ * users. Values are grouped by device category for readability.
8
+ */
9
+ export declare enum EnergyAppModelFeatureEnum {
10
+ /** The battery can be charged from the grid (not only from PV surplus) */
11
+ BatteryChargingFromGrid = "battery-charging-from-grid",
12
+ /** The maximum charge power or target state of charge can be limited */
13
+ BatteryChargeLimitation = "battery-charge-limitation",
14
+ /** The maximum discharge power or minimum state of charge can be limited */
15
+ BatteryDischargeLimitation = "battery-discharge-limitation",
16
+ /** The PV feed-in power into the grid can be limited (curtailment) */
17
+ PvFeedInLimitation = "pv-feed-in-limitation",
18
+ /** The inverter active power output can be limited */
19
+ InverterPowerLimitation = "inverter-power-limitation",
20
+ /** Charging can be started and stopped remotely */
21
+ ChargingStartStop = "charging-start-stop",
22
+ /** The charging power (in Ampere or Watt) can be limited */
23
+ ChargingPowerLimitation = "charging-power-limitation",
24
+ /** The model supports switching between single- and three-phase charging */
25
+ ChargingPhaseSwitching = "charging-phase-switching",
26
+ /** The model supports charging from PV surplus */
27
+ PvSurplusCharging = "pv-surplus-charging",
28
+ /** Domestic hot water heating can be forced on demand (DHW boost) */
29
+ HeatpumpDhwBoost = "heatpump-dhw-boost",
30
+ /** The target temperature setpoint can be controlled */
31
+ HeatpumpTemperatureSetpoint = "heatpump-temperature-setpoint",
32
+ /** The heat pump output power can be modulated */
33
+ HeatpumpPowerModulation = "heatpump-power-modulation",
34
+ /** The model supports the SG Ready interface for smart-grid signalling */
35
+ HeatpumpSgReady = "heatpump-sg-ready",
36
+ /** The target temperature setpoint can be controlled */
37
+ ClimateTemperatureSetpoint = "climate-temperature-setpoint",
38
+ /** The operating mode (heat / cool / fan / off) can be controlled */
39
+ ClimateModeControl = "climate-mode-control",
40
+ /** The grid power (import / export) can be read out */
41
+ GridPowerReadout = "grid-power-readout",
42
+ /** The accumulated energy consumption can be read out */
43
+ EnergyConsumptionReadout = "energy-consumption-readout",
44
+ /** The plug can be switched on and off */
45
+ SwitchOnOff = "switch-on-off",
46
+ /** The plug can measure the connected load's power */
47
+ PowerMeasurement = "power-measurement"
48
+ }
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Important capabilities a specific device model can support.
3
+ *
4
+ * Declared per model inside an Energy App package's compatibility section
5
+ * (see {@link EnergyAppPackageCompatibilityModel}) so the enyo Store and
6
+ * onboarding flows can surface accurate, model-level feature information to
7
+ * users. Values are grouped by device category for readability.
8
+ */
9
+ export var EnergyAppModelFeatureEnum;
10
+ (function (EnergyAppModelFeatureEnum) {
11
+ // Battery / Storage
12
+ /** The battery can be charged from the grid (not only from PV surplus) */
13
+ EnergyAppModelFeatureEnum["BatteryChargingFromGrid"] = "battery-charging-from-grid";
14
+ /** The maximum charge power or target state of charge can be limited */
15
+ EnergyAppModelFeatureEnum["BatteryChargeLimitation"] = "battery-charge-limitation";
16
+ /** The maximum discharge power or minimum state of charge can be limited */
17
+ EnergyAppModelFeatureEnum["BatteryDischargeLimitation"] = "battery-discharge-limitation";
18
+ // Inverter / PV
19
+ /** The PV feed-in power into the grid can be limited (curtailment) */
20
+ EnergyAppModelFeatureEnum["PvFeedInLimitation"] = "pv-feed-in-limitation";
21
+ /** The inverter active power output can be limited */
22
+ EnergyAppModelFeatureEnum["InverterPowerLimitation"] = "inverter-power-limitation";
23
+ // Wallbox / Charging
24
+ /** Charging can be started and stopped remotely */
25
+ EnergyAppModelFeatureEnum["ChargingStartStop"] = "charging-start-stop";
26
+ /** The charging power (in Ampere or Watt) can be limited */
27
+ EnergyAppModelFeatureEnum["ChargingPowerLimitation"] = "charging-power-limitation";
28
+ /** The model supports switching between single- and three-phase charging */
29
+ EnergyAppModelFeatureEnum["ChargingPhaseSwitching"] = "charging-phase-switching";
30
+ /** The model supports charging from PV surplus */
31
+ EnergyAppModelFeatureEnum["PvSurplusCharging"] = "pv-surplus-charging";
32
+ // Heat Pump
33
+ /** Domestic hot water heating can be forced on demand (DHW boost) */
34
+ EnergyAppModelFeatureEnum["HeatpumpDhwBoost"] = "heatpump-dhw-boost";
35
+ /** The target temperature setpoint can be controlled */
36
+ EnergyAppModelFeatureEnum["HeatpumpTemperatureSetpoint"] = "heatpump-temperature-setpoint";
37
+ /** The heat pump output power can be modulated */
38
+ EnergyAppModelFeatureEnum["HeatpumpPowerModulation"] = "heatpump-power-modulation";
39
+ /** The model supports the SG Ready interface for smart-grid signalling */
40
+ EnergyAppModelFeatureEnum["HeatpumpSgReady"] = "heatpump-sg-ready";
41
+ // Climate Control / Air Conditioning
42
+ /** The target temperature setpoint can be controlled */
43
+ EnergyAppModelFeatureEnum["ClimateTemperatureSetpoint"] = "climate-temperature-setpoint";
44
+ /** The operating mode (heat / cool / fan / off) can be controlled */
45
+ EnergyAppModelFeatureEnum["ClimateModeControl"] = "climate-mode-control";
46
+ // Meter
47
+ /** The grid power (import / export) can be read out */
48
+ EnergyAppModelFeatureEnum["GridPowerReadout"] = "grid-power-readout";
49
+ /** The accumulated energy consumption can be read out */
50
+ EnergyAppModelFeatureEnum["EnergyConsumptionReadout"] = "energy-consumption-readout";
51
+ // Smart Plug
52
+ /** The plug can be switched on and off */
53
+ EnergyAppModelFeatureEnum["SwitchOnOff"] = "switch-on-off";
54
+ /** The plug can measure the connected load's power */
55
+ EnergyAppModelFeatureEnum["PowerMeasurement"] = "power-measurement";
56
+ })(EnergyAppModelFeatureEnum || (EnergyAppModelFeatureEnum = {}));
@@ -1,4 +1,5 @@
1
1
  import { EnergyAppPermissionType } from "./energy-app-permission.type.js";
2
+ import { EnergyAppModelFeatureEnum } from "./energy-app-model-feature.enum.js";
2
3
  export type EnergyAppPackageLanguage = 'de' | 'en';
3
4
  export declare enum EnergyAppPackageCategory {
4
5
  Inverter = "inverter",
@@ -144,7 +145,6 @@ export interface EnergyAppPackagePermission {
144
145
  }
145
146
  /**
146
147
  * A specific device model supported by an Energy App package.
147
- * Used inside {@link EnergyAppPackageCompatibilityVendor.models} to enumerate
148
148
  * the concrete models the package has been verified to work with.
149
149
  */
150
150
  export interface EnergyAppPackageCompatibilityModel {
@@ -162,6 +162,13 @@ export interface EnergyAppPackageCompatibilityModel {
162
162
  minimumFirmwareVersion?: string;
163
163
  /** Optional internal note explaining model-specific caveats or limitations */
164
164
  internalComment?: string;
165
+ /**
166
+ * Important capabilities this specific model supports (e.g. charging the
167
+ * battery from grid, limiting the charge, or forcing a heat pump DHW boost).
168
+ * Lets the enyo Store and onboarding flows surface accurate, model-level
169
+ * feature information.
170
+ */
171
+ features: EnergyAppModelFeatureEnum[];
165
172
  }
166
173
  /**
167
174
  * A vendor and the list of its models supported by an Energy App package.
@@ -171,11 +178,6 @@ export interface EnergyAppPackageCompatibilityModel {
171
178
  export interface EnergyAppPackageCompatibilityVendor {
172
179
  /** Human-readable vendor name (e.g. "SolarEdge", "Fronius") */
173
180
  vendorName: string;
174
- /**
175
- * Optional vendor logo path, mirroring the package-level `logo` field.
176
- * Useful when the host wants to render a vendor list in the store.
177
- */
178
- logo?: string;
179
181
  /** Models from this vendor that the package supports */
180
182
  models: EnergyAppPackageCompatibilityModel[];
181
183
  }
@@ -206,13 +208,13 @@ export interface EnergyAppPackageDefinition {
206
208
  /** If the energy app should be visible in the enyo store. Default is true*/
207
209
  showInStore?: boolean;
208
210
  /**
209
- * Optional declaration of vendors and models this package is compatible with.
211
+ * declaration of vendors and models this package is compatible with.
210
212
  * Each entry pairs a vendor with the concrete models the package supports,
211
213
  * allowing the enyo Store and onboarding flows to surface accurate
212
214
  * compatibility information to users. Omit when the package targets a
213
215
  * single vendor implicitly or has no fixed compatibility surface.
214
216
  */
215
- compatibility?: EnergyAppPackageCompatibilityVendor[];
217
+ compatibility: EnergyAppPackageCompatibilityVendor[];
216
218
  }
217
219
  /**
218
220
  * Defines an Energy App package with automatic SDK version injection.
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './energy-app.js';
2
2
  export * from './energy-app-appliance-type.enum.js';
3
3
  export * from './energy-app-package-definition.js';
4
+ export * from './energy-app-model-feature.enum.js';
4
5
  export * from './version.js';
5
6
  export * from './implementations/ocpp/ocpp16.js';
6
7
  export * from './implementations/ocpp/ocpp201.js';
package/dist/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './energy-app.js';
2
2
  export * from './energy-app-appliance-type.enum.js';
3
3
  export * from './energy-app-package-definition.js';
4
+ export * from './energy-app-model-feature.enum.js';
4
5
  export * from './version.js';
5
6
  export * from './implementations/ocpp/ocpp16.js';
6
7
  export * from './implementations/ocpp/ocpp201.js';
package/dist/version.d.ts CHANGED
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * Current version of the enyo Energy App SDK.
7
7
  */
8
- export declare const SDK_VERSION = "0.0.161";
8
+ export declare const SDK_VERSION = "0.0.163";
9
9
  /**
10
10
  * Gets the current SDK version.
11
11
  * @returns The semantic version string of the SDK
package/dist/version.js CHANGED
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * Current version of the enyo Energy App SDK.
7
7
  */
8
- export const SDK_VERSION = '0.0.161';
8
+ export const SDK_VERSION = '0.0.163';
9
9
  /**
10
10
  * Gets the current SDK version.
11
11
  * @returns The semantic version string of the SDK
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enyo-energy/energy-app-sdk",
3
- "version": "0.0.161",
3
+ "version": "0.0.163",
4
4
  "description": "enyo Energy App SDK",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",