From 9e2caa19f2d1a69633ca776afee95d970e923dfd Mon Sep 17 00:00:00 2001 From: rleidner Date: Sat, 23 Nov 2024 14:42:41 +0100 Subject: [PATCH 01/76] soc_bmwbc: add new captcha for initial login, store token file in data/bmwbc folder --- packages/modules/vehicles/bmwbc/api.py | 27 ++++++++++++++++++----- packages/modules/vehicles/bmwbc/config.py | 2 ++ packages/modules/vehicles/bmwbc/soc.py | 11 +++++++-- requirements.txt | 2 +- 4 files changed, 33 insertions(+), 9 deletions(-) diff --git a/packages/modules/vehicles/bmwbc/api.py b/packages/modules/vehicles/bmwbc/api.py index 0159102e82..61a40bbd0b 100755 --- a/packages/modules/vehicles/bmwbc/api.py +++ b/packages/modules/vehicles/bmwbc/api.py @@ -20,6 +20,9 @@ from modules.common.component_state import CarState from modules.common.store import RAMDISK_PATH +from pathlib import Path + +dataPath = "/var/www/html/openWB/data/bmwbc" log = logging.getLogger(__name__) @@ -36,6 +39,14 @@ def init_store(): # load store from file, if no store file exists initialize store structure def load_store(): + global storeFile + try: + Path(dataPath).mkdir(parents=True, exist_ok=True) + except Exception as e: + log.error("init: dataPath creation failed, dataPath: " + + dataPath + ", error=" + str(e)) + store = init_store() + return store try: with open(storeFile, 'r', encoding='utf-8') as tf: store = json.load(tf) @@ -54,6 +65,7 @@ def load_store(): # write store file def write_store(store: dict): + global storeFile with open(storeFile, 'w', encoding='utf-8') as tf: json.dump(store, tf, indent=4) @@ -66,9 +78,9 @@ def dump_json(data: dict, fout: str): # ---------------fetch Function called by core ------------------------------------ -async def _fetch_soc(user_id: str, password: str, vin: str, vnum: int) -> Union[int, float]: +async def _fetch_soc(user_id: str, password: str, vin: str, captcha_token: str, vnum: int) -> Union[int, float]: global storeFile - storeFile = str(RAMDISK_PATH) + '/soc_bmwbc_vh_' + str(vnum) + '.json' + storeFile = str(dataPath) + '/soc_bmwbc_vh_' + str(vnum) + '.json' try: # set loggin in httpx to WARNING to prevent unwanted messages @@ -85,12 +97,15 @@ async def _fetch_soc(user_id: str, password: str, vin: str, vnum: int) -> Union[ expires_at=expires_at) else: # no token, authenticate via user_id and password only - auth = MyBMWAuthentication(user_id, password, Regions.REST_OF_WORLD) + auth = MyBMWAuthentication(user_id, + password, + Regions.REST_OF_WORLD, + hcaptcha_token=captcha_token) clconf = MyBMWClientConfiguration(auth) # account = MyBMWAccount(user_id, password, Regions.REST_OF_WORLD, config=clconf) # user, password and region already set in BMWAuthentication/ClientConfiguration! - account = MyBMWAccount(None, None, None, config=clconf) + account = MyBMWAccount(None, None, None, config=clconf, hcaptcha_token=captcha_token) # get vehicle list - needs to be called async await account.get_vehicles() @@ -130,13 +145,13 @@ async def _fetch_soc(user_id: str, password: str, vin: str, vnum: int) -> Union[ # main entry - _fetch needs to be run async -def fetch_soc(user_id: str, password: str, vin: str, vnum: int) -> CarState: +def fetch_soc(user_id: str, password: str, vin: str, captcha_token: str, vnum: int) -> CarState: # prepare and call async method loop = asyncio.new_event_loop() asyncio.set_event_loop(loop) # get soc, range from server - soc, range = loop.run_until_complete(_fetch_soc(user_id, password, vin, vnum)) + soc, range = loop.run_until_complete(_fetch_soc(user_id, password, vin, captcha_token, vnum)) return CarState(soc, range) diff --git a/packages/modules/vehicles/bmwbc/config.py b/packages/modules/vehicles/bmwbc/config.py index ce178d7fd4..20a8143da9 100755 --- a/packages/modules/vehicles/bmwbc/config.py +++ b/packages/modules/vehicles/bmwbc/config.py @@ -6,10 +6,12 @@ def __init__(self, user_id: Optional[str] = None, password: Optional[str] = None, vin: Optional[str] = None, + captcha_token: Optional[str] = None, calculate_soc: bool = False): self.user_id = user_id self.password = password self.vin = vin + self.captcha_token = captcha_token self.calculate_soc = calculate_soc diff --git a/packages/modules/vehicles/bmwbc/soc.py b/packages/modules/vehicles/bmwbc/soc.py index 4cd9dafd3c..796582f471 100755 --- a/packages/modules/vehicles/bmwbc/soc.py +++ b/packages/modules/vehicles/bmwbc/soc.py @@ -21,6 +21,7 @@ def updater(vehicle_update_data: VehicleUpdateData) -> CarState: vehicle_config.configuration.user_id, vehicle_config.configuration.password, vehicle_config.configuration.vin, + vehicle_config.configuration.captcha_token, vehicle) return ConfigurableVehicle(vehicle_config=vehicle_config, component_updater=updater, @@ -28,13 +29,19 @@ def updater(vehicle_update_data: VehicleUpdateData) -> CarState: calc_while_charging=vehicle_config.configuration.calculate_soc) -def bmwbc_update(user_id: str, password: str, vin: str, charge_point: int): +def bmwbc_update(user_id: str, password: str, vin: str, captcha_token: str, charge_point: int): log.debug("bmwbc: user_id="+user_id+"vin="+vin+"charge_point="+str(charge_point)) - vehicle_config = BMWbc(configuration=BMWbcConfiguration(charge_point, user_id, password, vin)) + log.debug("bmwbc: captcha_token="+captcha_token) + vehicle_config = BMWbc(configuration=BMWbcConfiguration(charge_point, + user_id, + password, + vin, + captcha_token)) store.get_car_value_store(charge_point).store.set(api.fetch_soc( vehicle_config.configuration.user_id, vehicle_config.configuration.password, vehicle_config.configuration.vin, + vehicle_config.configuration.captcha_token, charge_point)) diff --git a/requirements.txt b/requirements.txt index 9c69a5933d..a90a40c749 100644 --- a/requirements.txt +++ b/requirements.txt @@ -20,6 +20,6 @@ pysmb==1.2.9.1 pytz==2023.3.post1 grpcio==1.60.1 protobuf==4.25.3 -bimmer_connected==0.16.1 +bimmer_connected==0.17.0 ocpp==1.0.0 websockets==12.0 From cf3528d76c551c983b0779ea689c4766b82c4632 Mon Sep 17 00:00:00 2001 From: rleidner Date: Sat, 23 Nov 2024 20:32:48 +0100 Subject: [PATCH 02/76] replace absolute by relative path --- packages/modules/vehicles/bmwbc/api.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/packages/modules/vehicles/bmwbc/api.py b/packages/modules/vehicles/bmwbc/api.py index 61a40bbd0b..d0224d0de9 100755 --- a/packages/modules/vehicles/bmwbc/api.py +++ b/packages/modules/vehicles/bmwbc/api.py @@ -22,7 +22,7 @@ from modules.common.store import RAMDISK_PATH from pathlib import Path -dataPath = "/var/www/html/openWB/data/bmwbc" +DATA_PATH = "data/bmwbc" log = logging.getLogger(__name__) @@ -40,13 +40,6 @@ def init_store(): # load store from file, if no store file exists initialize store structure def load_store(): global storeFile - try: - Path(dataPath).mkdir(parents=True, exist_ok=True) - except Exception as e: - log.error("init: dataPath creation failed, dataPath: " + - dataPath + ", error=" + str(e)) - store = init_store() - return store try: with open(storeFile, 'r', encoding='utf-8') as tf: store = json.load(tf) @@ -80,6 +73,16 @@ def dump_json(data: dict, fout: str): # ---------------fetch Function called by core ------------------------------------ async def _fetch_soc(user_id: str, password: str, vin: str, captcha_token: str, vnum: int) -> Union[int, float]: global storeFile + try: + openwbpath = str(Path(__file__).resolve().parents[4]) + dataPath = openwbpath + '/' + DATA_PATH + log.debug("dataPath=" + dataPath) + Path(dataPath).mkdir(parents=True, exist_ok=True) + except Exception as e: + log.error("init: dataPath creation failed, dataPath: " + + dataPath + ", error=" + str(e)) + store = init_store() + return store storeFile = str(dataPath) + '/soc_bmwbc_vh_' + str(vnum) + '.json' try: From 2e78295fab7a055a29b0a5da41438216cb9a2eb8 Mon Sep 17 00:00:00 2001 From: rleidner Date: Sun, 1 Dec 2024 13:43:59 +0100 Subject: [PATCH 03/76] soc_ovms: fix missing confDict issue on 1st connect --- packages/modules/vehicles/ovms/api.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/modules/vehicles/ovms/api.py b/packages/modules/vehicles/ovms/api.py index a212544193..d8139a6f85 100755 --- a/packages/modules/vehicles/ovms/api.py +++ b/packages/modules/vehicles/ovms/api.py @@ -136,8 +136,17 @@ async def _fetch_soc(self, self.vehicle = vehicle self.ovms_appl_value = OVMS_APPL_VALUE + str(self.vehicle) self.config = deepcopy(conf) + self.confDict = self.config.__dict__ + self.confDict["configuration"] = self.config.configuration.__dict__ + log.debug("self.confDict2=" + dumps(self.confDict, indent=4)) - tokenstr = self.config.configuration.token + if 'token' in self.confDict['configuration']: + tokenstr = self.confDict['configuration']['token'] + log.debug("read tokenstr (" + str(tokenstr) + ") from configuration") + else: + tokenstr = "" + log.debug("init tokenstr to (" + str(tokenstr) + ")") + log.debug("tokenstr=" + str(tokenstr)) if tokenstr is None or tokenstr == "": self.token = self.create_token() @@ -152,9 +161,6 @@ async def _fetch_soc(self, else: log.debug("_fetch_soc using token=" + self.token) - self.confDict = self.config.__dict__ - self.confDict["configuration"] = self.config.configuration.__dict__ - self.cleanup_token() status_code, statusDict = self.get_status() From 236dc68e0cc0372d58eecc57855c8f6768755699 Mon Sep 17 00:00:00 2001 From: rleidner Date: Mon, 2 Dec 2024 12:41:53 +0100 Subject: [PATCH 04/76] use Path Object --- packages/modules/vehicles/bmwbc/api.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/packages/modules/vehicles/bmwbc/api.py b/packages/modules/vehicles/bmwbc/api.py index d0224d0de9..4d232f0390 100755 --- a/packages/modules/vehicles/bmwbc/api.py +++ b/packages/modules/vehicles/bmwbc/api.py @@ -22,7 +22,7 @@ from modules.common.store import RAMDISK_PATH from pathlib import Path -DATA_PATH = "data/bmwbc" +DATA_PATH = Path(__file__).resolve().parents[4] / "data" / "bmwbc" log = logging.getLogger(__name__) @@ -74,16 +74,14 @@ def dump_json(data: dict, fout: str): async def _fetch_soc(user_id: str, password: str, vin: str, captcha_token: str, vnum: int) -> Union[int, float]: global storeFile try: - openwbpath = str(Path(__file__).resolve().parents[4]) - dataPath = openwbpath + '/' + DATA_PATH - log.debug("dataPath=" + dataPath) - Path(dataPath).mkdir(parents=True, exist_ok=True) + log.debug("dataPath=" + str(DATA_PATH)) + DATA_PATH.mkdir(parents=True, exist_ok=True) except Exception as e: log.error("init: dataPath creation failed, dataPath: " + - dataPath + ", error=" + str(e)) + str(DATA_PATH) + ", error=" + str(e)) store = init_store() return store - storeFile = str(dataPath) + '/soc_bmwbc_vh_' + str(vnum) + '.json' + storeFile = str(DATA_PATH) + '/soc_bmwbc_vh_' + str(vnum) + '.json' try: # set loggin in httpx to WARNING to prevent unwanted messages From 82b8df2e01d9e896c0389ceafbca4b05071939e5 Mon Sep 17 00:00:00 2001 From: rleidner Date: Thu, 5 Dec 2024 10:31:29 +0100 Subject: [PATCH 05/76] requirements.txt: update to latest version 0.17.2 of bimmer_connected --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index a90a40c749..bb8711ba1f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -20,6 +20,6 @@ pysmb==1.2.9.1 pytz==2023.3.post1 grpcio==1.60.1 protobuf==4.25.3 -bimmer_connected==0.17.0 +bimmer_connected==0.17.2 ocpp==1.0.0 websockets==12.0 From 50a3d268b6fbb463159b88d40e42c3dc0cb5282c Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Thu, 12 Dec 2024 15:44:47 +0100 Subject: [PATCH 06/76] build-ui --- web/settings/assets/ChargeLog-67edf557.js | 3 +++ web/settings/assets/ChargePointInstallation-a0c18822.js | 1 + web/settings/assets/Chart-698f43ef.js | 1 + web/settings/assets/CloudConfig-0179d1fa.js | 1 + web/settings/assets/DataManagement-c0d34f05.js | 1 + web/settings/assets/DebugConfig-cfbd3f0e.js | 2 ++ web/settings/assets/GeneralChargeConfig-f0122900.js | 1 + web/settings/assets/GeneralConfig-58412dab.js | 1 + web/settings/assets/HardwareInstallation-775406e1.js | 1 + web/settings/assets/InstallAssistant-15ca0748.js | 1 + web/settings/assets/InstallAssistantStep0-8baf4b8a.js | 1 + web/settings/assets/InstallAssistantStep1-b3ac46ff.js | 1 + web/settings/assets/InstallAssistantStep10-74375f63.js | 1 + web/settings/assets/InstallAssistantStep2-f28bebc5.js | 1 + web/settings/assets/InstallAssistantStep3-4b7ef23e.js | 1 + web/settings/assets/InstallAssistantStep4-74f02770.js | 1 + web/settings/assets/InstallAssistantStep5-ded79122.js | 1 + web/settings/assets/InstallAssistantStep6-61c38c1e.js | 1 + web/settings/assets/InstallAssistantStep7-56d97b79.js | 1 + web/settings/assets/InstallAssistantStep8-fe75a2f1.js | 1 + web/settings/assets/InstallAssistantStep9-309aaea7.js | 1 + web/settings/assets/InstallAssistantStepTemplate-b4433531.js | 1 + web/settings/assets/InstantChargeConfig-3d737f28.js | 1 + web/settings/assets/LegalSettings-e785d18b.js | 1 + web/settings/assets/LoadManagementConfig-ae3a8b6c.js | 1 + web/settings/assets/MqttBridgeConfig-8e19a90f.js | 1 + web/settings/assets/OpenwbSortableList-dbb3f422.js | 1 + web/settings/assets/OptionalComponents-795ca136.js | 2 ++ web/settings/assets/PVChargeConfig-a702e029.js | 1 + web/settings/assets/ScheduledChargeConfig-305ec289.js | 1 + web/settings/assets/Status-a010f0c2.js | 1 + web/settings/assets/Support-0d2ea797.js | 3 +++ web/settings/assets/System-b84edc7f.js | 1 + web/settings/assets/TestingStore-db84111b.js | 1 + web/settings/assets/TimeChargeConfig-b8348c00.js | 1 + web/settings/assets/VehicleConfig-37a300a0.js | 1 + web/settings/assets/backup_cloud-16c908ba.js | 1 + web/settings/assets/backup_cloud-830d78ba.js | 1 + web/settings/assets/backup_cloud-b6077718.js | 1 + web/settings/assets/backup_cloud-c3793477.js | 1 + web/settings/assets/bat-13a196e8.js | 1 + web/settings/assets/bat-1cdb6279.js | 1 + web/settings/assets/bat-223eeaaa.js | 1 + web/settings/assets/bat-3f89602e.js | 1 + web/settings/assets/bat-4fcc1b0f.js | 1 + web/settings/assets/bat-548da92a.js | 1 + web/settings/assets/bat-5d3c3021.js | 1 + web/settings/assets/bat-80c102dd.js | 1 + web/settings/assets/bat-870c9071.js | 1 + web/settings/assets/bat-942f38fa.js | 1 + web/settings/assets/bat-95be4844.js | 1 + web/settings/assets/bat-97b3e513.js | 1 + web/settings/assets/bat-a540cbe7.js | 1 + web/settings/assets/bat-ab9b0c54.js | 1 + web/settings/assets/bat-c25e7ed7.js | 1 + web/settings/assets/bat-cf1b9ed4.js | 1 + web/settings/assets/bat-e4d22267.js | 1 + web/settings/assets/bat-e7e1291b.js | 1 + web/settings/assets/bat-f25e046a.js | 1 + web/settings/assets/bat-fa95bd0d.js | 1 + web/settings/assets/bat_smart_energy-24b782da.js | 1 + web/settings/assets/chargePoint-05b4e7ae.js | 1 + web/settings/assets/chargePoint-1aa86906.js | 1 + web/settings/assets/chargePoint-49cec1b9.js | 1 + web/settings/assets/chargePoint-a137dfd4.js | 1 + web/settings/assets/chargePoint-c6047ea4.js | 1 + web/settings/assets/chargePoint-d4002da3.js | 1 + web/settings/assets/chargePoint-d949b41f.js | 1 + web/settings/assets/commands-b151f1d7.js | 1 + web/settings/assets/consumption_counter-243210f8.js | 1 + web/settings/assets/counter-00ded250.js | 1 + web/settings/assets/counter-04d44a2a.js | 1 + web/settings/assets/counter-071db92b.js | 1 + web/settings/assets/counter-0a4f8168.js | 1 + web/settings/assets/counter-13b5dd50.js | 1 + web/settings/assets/counter-164996b5.js | 1 + web/settings/assets/counter-1c7d13ea.js | 1 + web/settings/assets/counter-1d0ae197.js | 1 + web/settings/assets/counter-20351565.js | 1 + web/settings/assets/counter-24f79ace.js | 1 + web/settings/assets/counter-2fbd500e.js | 1 + web/settings/assets/counter-3f1d575b.js | 1 + web/settings/assets/counter-4db8b27f.js | 1 + web/settings/assets/counter-4e56c7f7.js | 1 + web/settings/assets/counter-4fb1767e.js | 1 + web/settings/assets/counter-51b45e76.js | 1 + web/settings/assets/counter-5e8a02df.js | 1 + web/settings/assets/counter-5ed295f8.js | 1 + web/settings/assets/counter-7247e287.js | 1 + web/settings/assets/counter-7449b66a.js | 1 + web/settings/assets/counter-74820587.js | 1 + web/settings/assets/counter-76b0320f.js | 1 + web/settings/assets/counter-a5db85df.js | 1 + web/settings/assets/counter-be3ab298.js | 1 + web/settings/assets/counter-bf1f6045.js | 1 + web/settings/assets/counter-c3f9c146.js | 1 + web/settings/assets/counter-c577a2f2.js | 1 + web/settings/assets/counter-e5120d9a.js | 1 + web/settings/assets/counter-ebb39c58.js | 1 + web/settings/assets/counter-ee99dcfc.js | 1 + web/settings/assets/counter-f130bb29.js | 1 + web/settings/assets/counter-f13f10a1.js | 1 + web/settings/assets/counter_sm-33d0208f.js | 1 + web/settings/assets/device-0030c6d0.js | 1 + web/settings/assets/device-07487eef.js | 1 + web/settings/assets/device-0c76d118.js | 1 + web/settings/assets/device-0caf2ca7.js | 1 + web/settings/assets/device-0ff15197.js | 1 + web/settings/assets/device-114f55c5.js | 1 + web/settings/assets/device-15200209.js | 1 + web/settings/assets/device-15d1e8a4.js | 1 + web/settings/assets/device-172cdb34.js | 1 + web/settings/assets/device-17b568a4.js | 1 + web/settings/assets/device-19be8009.js | 1 + web/settings/assets/device-1bc4846b.js | 1 + web/settings/assets/device-288b048d.js | 1 + web/settings/assets/device-2a66c054.js | 1 + web/settings/assets/device-2d1936f7.js | 1 + web/settings/assets/device-2e356304.js | 1 + web/settings/assets/device-34727394.js | 1 + web/settings/assets/device-3c89ec9b.js | 1 + web/settings/assets/device-48b233fa.js | 1 + web/settings/assets/device-61d30aae.js | 1 + web/settings/assets/device-64073da7.js | 1 + web/settings/assets/device-6c4bc3a2.js | 1 + web/settings/assets/device-6e81103e.js | 1 + web/settings/assets/device-6fdb7208.js | 1 + web/settings/assets/device-70884df8.js | 1 + web/settings/assets/device-74af41f9.js | 1 + web/settings/assets/device-76c2a64a.js | 1 + web/settings/assets/device-7ebf1222.js | 1 + web/settings/assets/device-7fc9a4c5.js | 1 + web/settings/assets/device-82678599.js | 1 + web/settings/assets/device-856db98a.js | 1 + web/settings/assets/device-85821cd0.js | 1 + web/settings/assets/device-8c20d3d7.js | 1 + web/settings/assets/device-8fd0cfd3.js | 1 + web/settings/assets/device-9571fc19.js | 1 + web/settings/assets/device-97849187.js | 1 + web/settings/assets/device-9bc9bf37.js | 1 + web/settings/assets/device-9d6e08b7.js | 1 + web/settings/assets/device-9de767a2.js | 1 + web/settings/assets/device-9e5e0b35.js | 1 + web/settings/assets/device-a1acba70.js | 1 + web/settings/assets/device-a866f0a5.js | 1 + web/settings/assets/device-a9050752.js | 1 + web/settings/assets/device-a90d36a5.js | 1 + web/settings/assets/device-abf68242.js | 1 + web/settings/assets/device-ac8fcd8e.js | 1 + web/settings/assets/device-b0639a26.js | 1 + web/settings/assets/device-b1969620.js | 1 + web/settings/assets/device-b24172e8.js | 1 + web/settings/assets/device-b3827712.js | 1 + web/settings/assets/device-baa09f51.js | 1 + web/settings/assets/device-bd5cdb53.js | 1 + web/settings/assets/device-bfbda65d.js | 1 + web/settings/assets/device-c391800c.js | 1 + web/settings/assets/device-d43185f2.js | 1 + web/settings/assets/device-d65b5a77.js | 1 + web/settings/assets/device-e20e0d18.js | 1 + web/settings/assets/device-e95d24c3.js | 1 + web/settings/assets/device-eae80546.js | 1 + web/settings/assets/device-ebb040e8.js | 1 + web/settings/assets/device-f06c661b.js | 1 + web/settings/assets/device-f1b7bd09.js | 1 + web/settings/assets/device-f758f462.js | 1 + web/settings/assets/displayTheme-539928b9.js | 1 + web/settings/assets/electricity_tariff-03647be7.js | 1 + web/settings/assets/electricity_tariff-23e4686c.js | 1 + web/settings/assets/electricity_tariff-29ddb8c1.js | 1 + web/settings/assets/electricity_tariff-68a76ca0.js | 1 + web/settings/assets/electricity_tariff-d7a471dd.js | 1 + web/settings/assets/external_inverter-253f52e7.js | 1 + web/settings/assets/index-beac009d.js | 1 + web/settings/assets/inverter-0b21264e.js | 1 + web/settings/assets/inverter-1869ed40.js | 1 + web/settings/assets/inverter-1976d65e.js | 1 + web/settings/assets/inverter-28b3115f.js | 1 + web/settings/assets/inverter-2bb2e6d2.js | 1 + web/settings/assets/inverter-48093851.js | 1 + web/settings/assets/inverter-54331cae.js | 1 + web/settings/assets/inverter-572d72b8.js | 1 + web/settings/assets/inverter-59227078.js | 1 + web/settings/assets/inverter-5a60dd29.js | 1 + web/settings/assets/inverter-5eb731c0.js | 1 + web/settings/assets/inverter-67b94bcc.js | 1 + web/settings/assets/inverter-6fcce756.js | 1 + web/settings/assets/inverter-7cf8493f.js | 1 + web/settings/assets/inverter-8660cadd.js | 1 + web/settings/assets/inverter-86f1d614.js | 1 + web/settings/assets/inverter-945da1b4.js | 1 + web/settings/assets/inverter-9fab6b51.js | 1 + web/settings/assets/inverter-ac0cd8b2.js | 1 + web/settings/assets/inverter-b7df71a8.js | 1 + web/settings/assets/inverter-b81ebeaa.js | 1 + web/settings/assets/inverter-bd9ab223.js | 1 + web/settings/assets/inverter-be36808f.js | 1 + web/settings/assets/inverter-c408a546.js | 1 + web/settings/assets/inverter-d3107610.js | 1 + web/settings/assets/inverter-ebe90299.js | 1 + web/settings/assets/inverter-f770832e.js | 1 + web/settings/assets/inverter-ffd19b83.js | 1 + web/settings/assets/inverter_secondary-da829b18.js | 1 + web/settings/assets/ripple_control_receiver-1a152476.js | 1 + web/settings/assets/ripple_control_receiver-d28e8e3f.js | 1 + web/settings/assets/vehicle-0290d9e7.js | 1 + web/settings/assets/vehicle-090faaf2.js | 1 + web/settings/assets/vehicle-1a3ca9c8.js | 1 + web/settings/assets/vehicle-275590b2.js | 1 + web/settings/assets/vehicle-2a15ca13.js | 1 + web/settings/assets/vehicle-32887c99.js | 1 + web/settings/assets/vehicle-3d582767.js | 1 + web/settings/assets/vehicle-4bbaa506.js | 1 + web/settings/assets/vehicle-57cd091a.js | 1 + web/settings/assets/vehicle-5b402ad7.js | 1 + web/settings/assets/vehicle-742a327c.js | 1 + web/settings/assets/vehicle-88398611.js | 1 + web/settings/assets/vehicle-938e3571.js | 1 + web/settings/assets/vehicle-9fb740cb.js | 1 + web/settings/assets/vehicle-b40ddfab.js | 1 + web/settings/assets/vehicle-ba4fa598.js | 1 + web/settings/assets/vehicle-c6776f5b.js | 1 + web/settings/assets/vehicle-eff0eaa8.js | 1 + web/settings/index.html | 2 +- 224 files changed, 230 insertions(+), 1 deletion(-) create mode 100644 web/settings/assets/ChargeLog-67edf557.js create mode 100644 web/settings/assets/ChargePointInstallation-a0c18822.js create mode 100644 web/settings/assets/Chart-698f43ef.js create mode 100644 web/settings/assets/CloudConfig-0179d1fa.js create mode 100644 web/settings/assets/DataManagement-c0d34f05.js create mode 100644 web/settings/assets/DebugConfig-cfbd3f0e.js create mode 100644 web/settings/assets/GeneralChargeConfig-f0122900.js create mode 100644 web/settings/assets/GeneralConfig-58412dab.js create mode 100644 web/settings/assets/HardwareInstallation-775406e1.js create mode 100644 web/settings/assets/InstallAssistant-15ca0748.js create mode 100644 web/settings/assets/InstallAssistantStep0-8baf4b8a.js create mode 100644 web/settings/assets/InstallAssistantStep1-b3ac46ff.js create mode 100644 web/settings/assets/InstallAssistantStep10-74375f63.js create mode 100644 web/settings/assets/InstallAssistantStep2-f28bebc5.js create mode 100644 web/settings/assets/InstallAssistantStep3-4b7ef23e.js create mode 100644 web/settings/assets/InstallAssistantStep4-74f02770.js create mode 100644 web/settings/assets/InstallAssistantStep5-ded79122.js create mode 100644 web/settings/assets/InstallAssistantStep6-61c38c1e.js create mode 100644 web/settings/assets/InstallAssistantStep7-56d97b79.js create mode 100644 web/settings/assets/InstallAssistantStep8-fe75a2f1.js create mode 100644 web/settings/assets/InstallAssistantStep9-309aaea7.js create mode 100644 web/settings/assets/InstallAssistantStepTemplate-b4433531.js create mode 100644 web/settings/assets/InstantChargeConfig-3d737f28.js create mode 100644 web/settings/assets/LegalSettings-e785d18b.js create mode 100644 web/settings/assets/LoadManagementConfig-ae3a8b6c.js create mode 100644 web/settings/assets/MqttBridgeConfig-8e19a90f.js create mode 100644 web/settings/assets/OpenwbSortableList-dbb3f422.js create mode 100644 web/settings/assets/OptionalComponents-795ca136.js create mode 100644 web/settings/assets/PVChargeConfig-a702e029.js create mode 100644 web/settings/assets/ScheduledChargeConfig-305ec289.js create mode 100644 web/settings/assets/Status-a010f0c2.js create mode 100644 web/settings/assets/Support-0d2ea797.js create mode 100644 web/settings/assets/System-b84edc7f.js create mode 100644 web/settings/assets/TestingStore-db84111b.js create mode 100644 web/settings/assets/TimeChargeConfig-b8348c00.js create mode 100644 web/settings/assets/VehicleConfig-37a300a0.js create mode 100644 web/settings/assets/backup_cloud-16c908ba.js create mode 100644 web/settings/assets/backup_cloud-830d78ba.js create mode 100644 web/settings/assets/backup_cloud-b6077718.js create mode 100644 web/settings/assets/backup_cloud-c3793477.js create mode 100644 web/settings/assets/bat-13a196e8.js create mode 100644 web/settings/assets/bat-1cdb6279.js create mode 100644 web/settings/assets/bat-223eeaaa.js create mode 100644 web/settings/assets/bat-3f89602e.js create mode 100644 web/settings/assets/bat-4fcc1b0f.js create mode 100644 web/settings/assets/bat-548da92a.js create mode 100644 web/settings/assets/bat-5d3c3021.js create mode 100644 web/settings/assets/bat-80c102dd.js create mode 100644 web/settings/assets/bat-870c9071.js create mode 100644 web/settings/assets/bat-942f38fa.js create mode 100644 web/settings/assets/bat-95be4844.js create mode 100644 web/settings/assets/bat-97b3e513.js create mode 100644 web/settings/assets/bat-a540cbe7.js create mode 100644 web/settings/assets/bat-ab9b0c54.js create mode 100644 web/settings/assets/bat-c25e7ed7.js create mode 100644 web/settings/assets/bat-cf1b9ed4.js create mode 100644 web/settings/assets/bat-e4d22267.js create mode 100644 web/settings/assets/bat-e7e1291b.js create mode 100644 web/settings/assets/bat-f25e046a.js create mode 100644 web/settings/assets/bat-fa95bd0d.js create mode 100644 web/settings/assets/bat_smart_energy-24b782da.js create mode 100644 web/settings/assets/chargePoint-05b4e7ae.js create mode 100644 web/settings/assets/chargePoint-1aa86906.js create mode 100644 web/settings/assets/chargePoint-49cec1b9.js create mode 100644 web/settings/assets/chargePoint-a137dfd4.js create mode 100644 web/settings/assets/chargePoint-c6047ea4.js create mode 100644 web/settings/assets/chargePoint-d4002da3.js create mode 100644 web/settings/assets/chargePoint-d949b41f.js create mode 100644 web/settings/assets/commands-b151f1d7.js create mode 100644 web/settings/assets/consumption_counter-243210f8.js create mode 100644 web/settings/assets/counter-00ded250.js create mode 100644 web/settings/assets/counter-04d44a2a.js create mode 100644 web/settings/assets/counter-071db92b.js create mode 100644 web/settings/assets/counter-0a4f8168.js create mode 100644 web/settings/assets/counter-13b5dd50.js create mode 100644 web/settings/assets/counter-164996b5.js create mode 100644 web/settings/assets/counter-1c7d13ea.js create mode 100644 web/settings/assets/counter-1d0ae197.js create mode 100644 web/settings/assets/counter-20351565.js create mode 100644 web/settings/assets/counter-24f79ace.js create mode 100644 web/settings/assets/counter-2fbd500e.js create mode 100644 web/settings/assets/counter-3f1d575b.js create mode 100644 web/settings/assets/counter-4db8b27f.js create mode 100644 web/settings/assets/counter-4e56c7f7.js create mode 100644 web/settings/assets/counter-4fb1767e.js create mode 100644 web/settings/assets/counter-51b45e76.js create mode 100644 web/settings/assets/counter-5e8a02df.js create mode 100644 web/settings/assets/counter-5ed295f8.js create mode 100644 web/settings/assets/counter-7247e287.js create mode 100644 web/settings/assets/counter-7449b66a.js create mode 100644 web/settings/assets/counter-74820587.js create mode 100644 web/settings/assets/counter-76b0320f.js create mode 100644 web/settings/assets/counter-a5db85df.js create mode 100644 web/settings/assets/counter-be3ab298.js create mode 100644 web/settings/assets/counter-bf1f6045.js create mode 100644 web/settings/assets/counter-c3f9c146.js create mode 100644 web/settings/assets/counter-c577a2f2.js create mode 100644 web/settings/assets/counter-e5120d9a.js create mode 100644 web/settings/assets/counter-ebb39c58.js create mode 100644 web/settings/assets/counter-ee99dcfc.js create mode 100644 web/settings/assets/counter-f130bb29.js create mode 100644 web/settings/assets/counter-f13f10a1.js create mode 100644 web/settings/assets/counter_sm-33d0208f.js create mode 100644 web/settings/assets/device-0030c6d0.js create mode 100644 web/settings/assets/device-07487eef.js create mode 100644 web/settings/assets/device-0c76d118.js create mode 100644 web/settings/assets/device-0caf2ca7.js create mode 100644 web/settings/assets/device-0ff15197.js create mode 100644 web/settings/assets/device-114f55c5.js create mode 100644 web/settings/assets/device-15200209.js create mode 100644 web/settings/assets/device-15d1e8a4.js create mode 100644 web/settings/assets/device-172cdb34.js create mode 100644 web/settings/assets/device-17b568a4.js create mode 100644 web/settings/assets/device-19be8009.js create mode 100644 web/settings/assets/device-1bc4846b.js create mode 100644 web/settings/assets/device-288b048d.js create mode 100644 web/settings/assets/device-2a66c054.js create mode 100644 web/settings/assets/device-2d1936f7.js create mode 100644 web/settings/assets/device-2e356304.js create mode 100644 web/settings/assets/device-34727394.js create mode 100644 web/settings/assets/device-3c89ec9b.js create mode 100644 web/settings/assets/device-48b233fa.js create mode 100644 web/settings/assets/device-61d30aae.js create mode 100644 web/settings/assets/device-64073da7.js create mode 100644 web/settings/assets/device-6c4bc3a2.js create mode 100644 web/settings/assets/device-6e81103e.js create mode 100644 web/settings/assets/device-6fdb7208.js create mode 100644 web/settings/assets/device-70884df8.js create mode 100644 web/settings/assets/device-74af41f9.js create mode 100644 web/settings/assets/device-76c2a64a.js create mode 100644 web/settings/assets/device-7ebf1222.js create mode 100644 web/settings/assets/device-7fc9a4c5.js create mode 100644 web/settings/assets/device-82678599.js create mode 100644 web/settings/assets/device-856db98a.js create mode 100644 web/settings/assets/device-85821cd0.js create mode 100644 web/settings/assets/device-8c20d3d7.js create mode 100644 web/settings/assets/device-8fd0cfd3.js create mode 100644 web/settings/assets/device-9571fc19.js create mode 100644 web/settings/assets/device-97849187.js create mode 100644 web/settings/assets/device-9bc9bf37.js create mode 100644 web/settings/assets/device-9d6e08b7.js create mode 100644 web/settings/assets/device-9de767a2.js create mode 100644 web/settings/assets/device-9e5e0b35.js create mode 100644 web/settings/assets/device-a1acba70.js create mode 100644 web/settings/assets/device-a866f0a5.js create mode 100644 web/settings/assets/device-a9050752.js create mode 100644 web/settings/assets/device-a90d36a5.js create mode 100644 web/settings/assets/device-abf68242.js create mode 100644 web/settings/assets/device-ac8fcd8e.js create mode 100644 web/settings/assets/device-b0639a26.js create mode 100644 web/settings/assets/device-b1969620.js create mode 100644 web/settings/assets/device-b24172e8.js create mode 100644 web/settings/assets/device-b3827712.js create mode 100644 web/settings/assets/device-baa09f51.js create mode 100644 web/settings/assets/device-bd5cdb53.js create mode 100644 web/settings/assets/device-bfbda65d.js create mode 100644 web/settings/assets/device-c391800c.js create mode 100644 web/settings/assets/device-d43185f2.js create mode 100644 web/settings/assets/device-d65b5a77.js create mode 100644 web/settings/assets/device-e20e0d18.js create mode 100644 web/settings/assets/device-e95d24c3.js create mode 100644 web/settings/assets/device-eae80546.js create mode 100644 web/settings/assets/device-ebb040e8.js create mode 100644 web/settings/assets/device-f06c661b.js create mode 100644 web/settings/assets/device-f1b7bd09.js create mode 100644 web/settings/assets/device-f758f462.js create mode 100644 web/settings/assets/displayTheme-539928b9.js create mode 100644 web/settings/assets/electricity_tariff-03647be7.js create mode 100644 web/settings/assets/electricity_tariff-23e4686c.js create mode 100644 web/settings/assets/electricity_tariff-29ddb8c1.js create mode 100644 web/settings/assets/electricity_tariff-68a76ca0.js create mode 100644 web/settings/assets/electricity_tariff-d7a471dd.js create mode 100644 web/settings/assets/external_inverter-253f52e7.js create mode 100644 web/settings/assets/index-beac009d.js create mode 100644 web/settings/assets/inverter-0b21264e.js create mode 100644 web/settings/assets/inverter-1869ed40.js create mode 100644 web/settings/assets/inverter-1976d65e.js create mode 100644 web/settings/assets/inverter-28b3115f.js create mode 100644 web/settings/assets/inverter-2bb2e6d2.js create mode 100644 web/settings/assets/inverter-48093851.js create mode 100644 web/settings/assets/inverter-54331cae.js create mode 100644 web/settings/assets/inverter-572d72b8.js create mode 100644 web/settings/assets/inverter-59227078.js create mode 100644 web/settings/assets/inverter-5a60dd29.js create mode 100644 web/settings/assets/inverter-5eb731c0.js create mode 100644 web/settings/assets/inverter-67b94bcc.js create mode 100644 web/settings/assets/inverter-6fcce756.js create mode 100644 web/settings/assets/inverter-7cf8493f.js create mode 100644 web/settings/assets/inverter-8660cadd.js create mode 100644 web/settings/assets/inverter-86f1d614.js create mode 100644 web/settings/assets/inverter-945da1b4.js create mode 100644 web/settings/assets/inverter-9fab6b51.js create mode 100644 web/settings/assets/inverter-ac0cd8b2.js create mode 100644 web/settings/assets/inverter-b7df71a8.js create mode 100644 web/settings/assets/inverter-b81ebeaa.js create mode 100644 web/settings/assets/inverter-bd9ab223.js create mode 100644 web/settings/assets/inverter-be36808f.js create mode 100644 web/settings/assets/inverter-c408a546.js create mode 100644 web/settings/assets/inverter-d3107610.js create mode 100644 web/settings/assets/inverter-ebe90299.js create mode 100644 web/settings/assets/inverter-f770832e.js create mode 100644 web/settings/assets/inverter-ffd19b83.js create mode 100644 web/settings/assets/inverter_secondary-da829b18.js create mode 100644 web/settings/assets/ripple_control_receiver-1a152476.js create mode 100644 web/settings/assets/ripple_control_receiver-d28e8e3f.js create mode 100644 web/settings/assets/vehicle-0290d9e7.js create mode 100644 web/settings/assets/vehicle-090faaf2.js create mode 100644 web/settings/assets/vehicle-1a3ca9c8.js create mode 100644 web/settings/assets/vehicle-275590b2.js create mode 100644 web/settings/assets/vehicle-2a15ca13.js create mode 100644 web/settings/assets/vehicle-32887c99.js create mode 100644 web/settings/assets/vehicle-3d582767.js create mode 100644 web/settings/assets/vehicle-4bbaa506.js create mode 100644 web/settings/assets/vehicle-57cd091a.js create mode 100644 web/settings/assets/vehicle-5b402ad7.js create mode 100644 web/settings/assets/vehicle-742a327c.js create mode 100644 web/settings/assets/vehicle-88398611.js create mode 100644 web/settings/assets/vehicle-938e3571.js create mode 100644 web/settings/assets/vehicle-9fb740cb.js create mode 100644 web/settings/assets/vehicle-b40ddfab.js create mode 100644 web/settings/assets/vehicle-ba4fa598.js create mode 100644 web/settings/assets/vehicle-c6776f5b.js create mode 100644 web/settings/assets/vehicle-eff0eaa8.js diff --git a/web/settings/assets/ChargeLog-67edf557.js b/web/settings/assets/ChargeLog-67edf557.js new file mode 100644 index 0000000000..9e285e4909 --- /dev/null +++ b/web/settings/assets/ChargeLog-67edf557.js @@ -0,0 +1,3 @@ +import{l as R,T as k,U as x,F as E}from"./vendor-fortawesome-3d19d475.js";import{_ as B,a0 as S,u as g,k as h,l as u,x as i,G as d,E as s,z as V,B as I,y as c,F as n,P as _,q as w}from"./vendor-06e11d0e.js";import{C as F}from"./index-beac009d.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";R.add(k,x);const W={name:"OpenwbChargeLogView",components:{Vue3TableLite:S,FontAwesomeIcon:E},mixins:[F],emits:["sendCommand"],data(){return{dateTimeFormat:new Intl.DateTimeFormat("de-DE",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}),mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/charge_log_data_config","openWB/chargepoint/+/config","openWB/vehicle/+/name"],currentMonth:"",chargeLogRequestData:{month:"",year:"",filter:{chargepoint:{id:[]},vehicle:{id:[],tag:[],chargemode:[],prio:void 0}}},downloadFile:null,table:{messages:{pagingInfo:"Einträge {0}-{1} von {2}",pageSizeChangeLabel:"Einträge:",gotoPageLabel:" Gehe zu:",noDataAvailable:"Keine Einträge gefunden."},pageOptions:[{value:5,text:"5"},{value:10,text:"10"},{value:25,text:"25"},{value:50,text:"50"},{value:100,text:"100"}],columns:[{label:"Beginn",field:"time_begin",sortable:!0},{label:"Ende",field:"time_end",sortable:!0},{label:"Dauer",field:"time_time_charged",sortable:!0},{label:"Kosten",field:"data_costs",sortable:!0},{label:"Energieaufteilung",field:"data_power_source",sortable:!1},{label:"Fahrzeug",field:"vehicle_name",sortable:!0},{label:"Lademodus",field:"vehicle_chargemode",sortable:!0},{label:"Priorität",field:"vehicle_prio",sortable:!0},{label:"ID-Tag",field:"vehicle_rfid",sortable:!0},{label:"SoC Beginn",field:"vehicle_soc_at_start",sortable:!0},{label:"SoC Ende",field:"vehicle_soc_at_end",sortable:!0},{label:"Ladepunkt",field:"chargepoint_name",sortable:!0},{label:"Seriennummer",field:"chargepoint_serial_number",sortable:!0},{label:"Energie",field:"data_imported_since_mode_switch",sortable:!0},{label:"Zähler Beginn",field:"chargepoint_imported_at_start",sortable:!0},{label:"Zähler Ende",field:"chargepoint_imported_at_end",sortable:!0}],sortable:{order:"timestamp_begin",sort:"asc"}},totals:{columns:[{label:"Dauer",field:"time_charged",sortable:!1},{label:"Energie",field:"imported_since_mode_switch",sortable:!1},{label:"Reichweite",field:"range_charged",sortable:!1},{label:"Kosten",field:"costs",sortable:!1}]}}},computed:{mqttClientId(){return this.$root.mqttClientId},downloadUrl(){const t=parseInt(location.port)||(location.protocol=="https:"?443:80);return`${location.protocol}//${location.hostname}:${t}/openWB/web/settings/downloadChargeLog.php`+`?year=${this.chargeLogRequestData.year}&month=${this.chargeLogRequestData.month}`},chargeLogDate:{get(){return this.chargeLogRequestData.year+"-"+this.chargeLogRequestData.month},set(t){let e=t.split("-");this.chargeLogRequestData.year=e[0],this.chargeLogRequestData.month=e[1]}},chargeLogTotals(){return this.$store.state.mqtt["openWB/log/"+this.mqttClientId+"/data"]?[this.$store.state.mqtt["openWB/log/"+this.mqttClientId+"/data"].totals]:[]},chargeLogColumns(){return this.table.columns.map(t=>({...t,headerClasses:this.addClasses(t.field),columnClasses:this.addClasses(t.field)}))},chargeLogDataset:{get(){if(this.$store.state.mqtt["openWB/log/"+this.mqttClientId+"/data"]==null)return[];try{return this.$store.state.mqtt["openWB/log/"+this.mqttClientId+"/data"].entries.map(t=>{var e=Date.parse(t.time.begin),o=Date.parse(t.time.end);return{chargepoint_id:t.chargepoint.id,chargepoint_name:t.chargepoint.name,chargepoint_imported_at_start:t.chargepoint.imported_at_start,chargepoint_imported_at_end:t.chargepoint.imported_at_end,chargepoint_serial_number:t.chargepoint.serial_number,vehicle_id:t.vehicle.id,vehicle_name:t.vehicle.name,vehicle_chargemode:this.translateChargeMode(t.vehicle.chargemode),vehicle_rfid:t.vehicle.rfid,vehicle_prio:t.vehicle.prio,vehicle_soc_at_start:t.vehicle.soc_at_start,vehicle_soc_at_end:t.vehicle.soc_at_end,vehicle_range_at_start:t.vehicle.range_at_start,vehicle_range_at_end:t.vehicle.range_at_end,timestamp_begin:e/1e3,time_begin:isNaN(e)?null:this.dateTimeFormat.format(new Date(e)),timestamp_end:o/1e3,time_end:isNaN(o)?null:this.dateTimeFormat.format(new Date(o)),time_time_charged:t.time.time_charged,data_power_source:t.data.power_source?{pv:t.data.power_source.pv*100,grid:t.data.power_source.grid*100,bat:t.data.power_source.bat*100,cp:t.data.power_source.cp*100}:void 0,data_range_charged:t.data.range_charged,data_costs:t.data.costs,data_imported_since_plugged:t.data.imported_since_plugged,data_imported_since_mode_switch:t.data.imported_since_mode_switch}})}catch(t){return console.error(t),[]}}},chargeLogCsv:{get(){return[['"Beginn"','"Ende"','"Zeitstempel Beginn"','"Zeitstempel Ende"','"Dauer"','"Kosten"','"Energieanteil Netz"','"Energieanteil Ladepunkte"','"Energieanteil Speicher"','"Energieanteil PV"','"Fahrzeug"','"Fahrzeug-ID"','"Lademodus"','"Priorität"','"ID-Tag"','"SoC Beginn"','"SoC Ende"','"Reichweite Beginn"','"Reichweite Ende"','"Ladepunkt"','"Ladepunkt-ID"','"Zähler Seriennummer"','"Energie"','"Reichweite"','"Zählerstand Beginn"','"Zählerstand Ende"','"Energie seit Anstecken"'],...this.chargeLogDataset.map(e=>[e.time_begin==null?"":'"'+e.time_begin+'"',e.time_end==null?"":'"'+e.time_end+'"',e.timestamp_begin==null||isNaN(e.timestamp_begin)?"":e.timestamp_begin,e.timestamp_end==null||isNaN(e.timestamp_end)?"":e.timestamp_end,'"'+e.time_time_charged+'"',this.formatCosts(e.data_costs,!1),e.data_power_source==null?"":this.formatNumber(e.data_power_source.grid,2),e.data_power_source==null?"":this.formatNumber(e.data_power_source.cp,2),e.data_power_source==null?"":this.formatNumber(e.data_power_source.bat,2),e.data_power_source==null?"":this.formatNumber(e.data_power_source.pv,2),'"'+e.vehicle_name+'"',e.vehicle_id,'"'+e.vehicle_chargemode+'"','"'+this.formatBool(e.vehicle_prio)+'"',e.vehicle_rfid==null?"":'"'+e.vehicle_rfid+'"',e.vehicle_soc_at_start==null?"":this.formatNumber(e.vehicle_soc_at_start,0),e.vehicle_soc_at_end==null?"":this.formatNumber(e.vehicle_soc_at_end,0),e.vehicle_range_at_start==null?"":this.formatNumber(e.vehicle_range_at_start,0),e.vehicle_range_at_end==null?"":this.formatNumber(e.vehicle_range_at_end,0),'"'+e.chargepoint_name+'"',e.chargepoint_id,e.chargepoint_serial_number==null?"":'"'+e.chargepoint_serial_number+'"',this.formatNumber(e.data_imported_since_mode_switch/1e3,2),this.formatNumber(e.data_range_charged,0),this.formatNumber(e.chargepoint_imported_at_start/1e3,2),this.formatNumber(e.chargepoint_imported_at_end/1e3,2),this.formatNumber(e.data_imported_since_plugged/1e3,2)])].map(e=>e.join(";")).join(` +`)+` +`}},chargeLogRead:{get(){return this.chargeLogDataset!=null}},chargeLogHasEntries:{get(){return this.chargeLogDataset==null?!1:this.chargeLogDataset.length>0}},totalRecordCount(){return this.chargeLogDataset.length},chargeModeList(){let t=this.chargeModes.map(e=>({value:e,text:this.translateChargeMode(e)}));return t.unshift({value:void 0,text:"Alle"}),t},chargePointList(){let t=this.getWildcardTopics("openWB/chargepoint/+/config");var e=[{value:void 0,text:"Alle"}];for(const[,o]of Object.entries(t))e.push({value:o.id,text:o.name});return e},vehicleList(){let t=this.getWildcardTopics("openWB/vehicle/+/name");var e=[{value:void 0,text:"Alle"}];for(const[o,p]of Object.entries(t)){let l=parseInt(o.match(/\/([0-9]+)\/name$/)[1]);e.push({value:l,text:p})}return e}},beforeMount(){this.mqttTopicsToSubscribe.push("openWB/log/"+this.mqttClientId+"/data")},mounted(){const t=new Date;this.currentMonth=this.chargeLogDate=t.getFullYear()+"-"+String(t.getMonth()+1).padStart(2,"0"),this.requestChargeLog()},methods:{cleanRequestData(){"id"in this.chargeLogRequestData.filter.chargepoint&&(this.chargeLogRequestData.filter.chargepoint.id=this.chargeLogRequestData.filter.chargepoint.id.filter(t=>t!=null)),"chargemode"in this.chargeLogRequestData.filter.vehicle&&(this.chargeLogRequestData.filter.vehicle.chargemode=this.chargeLogRequestData.filter.vehicle.chargemode.filter(t=>t!=null)),"id"in this.chargeLogRequestData.filter.vehicle&&(this.chargeLogRequestData.filter.vehicle.id=this.chargeLogRequestData.filter.vehicle.id.filter(t=>t!=null))},requestChargeLog(){if(document.forms.chargeLogForm.reportValidity())this.cleanRequestData(),this.$emit("sendCommand",{command:"getChargeLog",data:this.chargeLogRequestData});else{console.warn("form invalid");return}},makeTextFile(t){var e=new Blob([t],{type:"text/csv"});return this.downloadFile!==null&&window.URL.revokeObjectURL(this.downloadFile),this.downloadFile=window.URL.createObjectURL(e),this.downloadFile},downloadChargeLog(){this.$refs.downloadChargeLogLink.setAttribute("download","Ladeprotokoll-"+this.chargeLogDate+".csv"),this.$refs.downloadChargeLogLink.href=this.makeTextFile(this.chargeLogCsv),this.$refs.downloadChargeLogLink.dispatchEvent(new MouseEvent("click"))},addClasses(t){return this.$store.state.mqtt["openWB/general/charge_log_data_config"]!==void 0&&Object.hasOwn(this.$store.state.mqtt["openWB/general/charge_log_data_config"],t)?this.$store.state.mqtt["openWB/general/charge_log_data_config"][t]?[]:["d-none"]:[]},getProgressTitle(t){return`Netz: ${this.formatNumber(t.grid,0,0)}%, Ladepunkte: ${this.formatNumber(t.cp,0,0)}%, Speicher: ${this.formatNumber(t.bat,0,0)}%, PV: ${this.formatNumber(t.pv,0,0)}%`},formatBool(t){return t?"Ja":"Nein"},formatW(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t/1e3,2));return e?o+"kW":o},formatWh(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t/1e3,2));return e?o+"kWh":o},formatRange(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t,0));return e?o+"km":o},formatSoc(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t,0));return e?o+"%":o},formatCosts(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t,2));return e?o+"€":o},dashIfNotSet(t){return t==null||t==""||t==null?"-":t},getChargeModeClass(t){switch(t){case"Sofort":return"bg-danger";case"PV":return"bg-success";case"Zielladen":return"bg-primary";case"Zeitladen":return"bg-warning";case"Standby":return"bg-secondary";case"Stop":return"bg-dark";default:return console.warn("unknown charge mode:",t),"bg-light"}}}},T={class:"chargeLog"},U={name:"chargeLogForm"},y=["href"],M={key:1},P={class:"td-end"},z={class:"td-end"},O=["title"],Z=["aria-valuenow"],A=["aria-valuenow"],j=["aria-valuenow"],K=["aria-valuenow"],G={key:1,class:"td-center"},J={class:"td-end"},H={class:"no-wrap"},Y={class:"no-wrap"},Q={class:"td-end"},X={class:"no-wrap"},$={class:"no-wrap"},ee={class:"td-end"},te={class:"no-wrap"},ae={class:"no-wrap"},re={class:"td-end"},ie={class:"td-end"},se={key:0},oe={class:"row justify-content-center"},ne={ref:"downloadChargeLogLink",class:"hide"},le={class:"td-end"},de={class:"td-end"},ce={class:"td-end"},ge={class:"td-end"};function he(t,e,o,p,l,r){const C=g("openwb-base-text-input"),f=g("font-awesome-icon"),D=g("openwb-base-button-group-input"),m=g("openwb-base-select-input"),q=g("openwb-base-array-input"),v=g("openwb-base-card"),b=g("openwb-base-alert"),L=g("vue3-table-lite"),N=g("openwb-base-click-button");return h(),u("div",T,[i("form",U,[d(v,{title:"Filter"},{default:s(()=>[d(C,{modelValue:r.chargeLogDate,"onUpdate:modelValue":[e[0]||(e[0]=a=>r.chargeLogDate=a),e[1]||(e[1]=a=>r.requestChargeLog())],title:"Zeitraum",subtype:"month",min:"2018-01","show-quick-buttons":!0,max:l.currentMonth},null,8,["modelValue","max"]),d(v,{title:"Erweiterte Optionen",collapsible:!0,collapsed:!0},{header:s(()=>[d(f,{"fixed-width":"",icon:["fas","filter"]}),e[13]||(e[13]=c(" Erweiterte Optionen "))]),default:s(()=>[d(D,{modelValue:l.chargeLogRequestData.filter.vehicle.prio,"onUpdate:modelValue":[e[2]||(e[2]=a=>l.chargeLogRequestData.filter.vehicle.prio=a),e[3]||(e[3]=a=>r.requestChargeLog())],title:"Priorität",buttons:[{buttonValue:void 0,text:"Alle"},{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}]},null,8,["modelValue"]),d(m,{modelValue:l.chargeLogRequestData.filter.vehicle.chargemode,"onUpdate:modelValue":[e[4]||(e[4]=a=>l.chargeLogRequestData.filter.vehicle.chargemode=a),e[5]||(e[5]=a=>r.requestChargeLog())],title:"Lademodus",multiple:"",options:r.chargeModeList},{help:s(()=>e[14]||(e[14]=[c(" Es können mehrere Elemente ausgewählt werden. ")])),_:1},8,["modelValue","options"]),d(m,{modelValue:l.chargeLogRequestData.filter.chargepoint.id,"onUpdate:modelValue":[e[6]||(e[6]=a=>l.chargeLogRequestData.filter.chargepoint.id=a),e[7]||(e[7]=a=>r.requestChargeLog())],title:"Ladepunkt",multiple:"",options:r.chargePointList},{help:s(()=>e[15]||(e[15]=[c(" Es können mehrere Elemente ausgewählt werden. ")])),_:1},8,["modelValue","options"]),d(m,{modelValue:l.chargeLogRequestData.filter.vehicle.id,"onUpdate:modelValue":[e[8]||(e[8]=a=>l.chargeLogRequestData.filter.vehicle.id=a),e[9]||(e[9]=a=>r.requestChargeLog())],title:"Fahrzeug",multiple:"",options:r.vehicleList},{help:s(()=>e[16]||(e[16]=[c(" Es können mehrere Elemente ausgewählt werden. ")])),_:1},8,["modelValue","options"]),d(q,{modelValue:l.chargeLogRequestData.filter.vehicle.tag,"onUpdate:modelValue":[e[10]||(e[10]=a=>l.chargeLogRequestData.filter.vehicle.tag=a),e[11]||(e[11]=a=>r.requestChargeLog())],title:"ID-Tags"},{help:s(()=>e[17]||(e[17]=[c(" Es können mehrere Tags als Filter verwendet werden. ")])),_:1},8,["modelValue"])]),_:1})]),_:1}),d(b,{subtype:"info"},{default:s(()=>[e[18]||(e[18]=c(" Das komplette Ladeprotokoll kann automatisiert über folgende URL abgerufen werden: ")),i("a",{href:r.downloadUrl},n(r.downloadUrl),9,y)]),_:1}),r.chargeLogRead?(h(),u("div",M,[d(L,{class:"charge-log-table","is-static-mode":!0,columns:r.chargeLogColumns,rows:r.chargeLogDataset,total:r.totalRecordCount,sortable:l.table.sortable,messages:l.table.messages,"page-options":l.table.pageOptions,limit:25,"is-slot-mode":!0},{time_begin:s(a=>[c(n(r.dashIfNotSet(a.value.time_begin)),1)]),time_end:s(a=>[c(n(r.dashIfNotSet(a.value.time_end)),1)]),time_time_charged:s(a=>[i("div",P,n(a.value.time_time_charged),1)]),data_costs:s(a=>[i("div",z,n(r.formatCosts(a.value.data_costs)),1)]),data_power_source:s(a=>[a.value.data_power_source?(h(),u("div",{key:0,class:"progress td-center",title:r.getProgressTitle(a.value.data_power_source)},[i("div",{class:"progress-bar bg-danger",role:"progressbar",style:_({width:a.value.data_power_source.grid+"%"}),"aria-valuenow":a.value.data_power_source.grid,"aria-valuemin":"0","aria-valuemax":"100"},null,12,Z),i("div",{class:"progress-bar bg-primary",role:"progressbar",style:_({width:a.value.data_power_source.cp+"%"}),"aria-valuenow":a.value.data_power_source.cp,"aria-valuemin":"0","aria-valuemax":"100"},null,12,A),i("div",{class:"progress-bar bg-warning",role:"progressbar",style:_({width:a.value.data_power_source.bat+"%"}),"aria-valuenow":a.value.data_power_source.bat,"aria-valuemin":"0","aria-valuemax":"100"},null,12,j),i("div",{class:"progress-bar bg-success",role:"progressbar",style:_({width:a.value.data_power_source.pv+"%"}),"aria-valuenow":a.value.data_power_source.pv,"aria-valuemin":"0","aria-valuemax":"100"},null,12,K)],8,O)):(h(),u("div",G," - "))]),vehicle_chargemode:s(a=>[i("div",{class:w(["td-center tag",r.getChargeModeClass(a.value.vehicle_chargemode)])},n(a.value.vehicle_chargemode),3)]),vehicle_prio:s(a=>[i("div",{class:w(["td-center tag",a.value.vehicle_prio?"bg-success":"bg-danger"])},n(r.formatBool(a.value.vehicle_prio)),3)]),vehicle_rfid:s(a=>[c(n(r.dashIfNotSet(a.value.vehicle_rfid)),1)]),vehicle_soc_at_start:s(a=>[i("div",J,[i("span",H,n(r.formatSoc(a.value.vehicle_soc_at_start)),1),i("span",Y," ("+n(r.formatRange(a.value.vehicle_range_at_start))+") ",1)])]),vehicle_soc_at_end:s(a=>[i("div",Q,[i("span",X,n(r.formatSoc(a.value.vehicle_soc_at_end)),1),i("span",$," ("+n(r.formatRange(a.value.vehicle_range_at_end))+") ",1)])]),chargepoint_name:s(a=>[c(n(r.dashIfNotSet(a.value.chargepoint_name)),1)]),chargepoint_serial_number:s(a=>[c(n(r.dashIfNotSet(a.value.chargepoint_serial_number)),1)]),data_imported_since_mode_switch:s(a=>[i("div",ee,[i("span",te,n(r.formatWh(a.value.data_imported_since_mode_switch)),1),i("span",ae," ("+n(r.formatRange(a.value.data_range_charged))+") ",1)])]),chargepoint_imported_at_start:s(a=>[i("div",re,n(r.formatWh(a.value.chargepoint_imported_at_start)),1)]),chargepoint_imported_at_end:s(a=>[i("div",ie,n(r.formatWh(a.value.chargepoint_imported_at_end)),1)]),_:1},8,["columns","rows","total","sortable","messages","page-options"]),r.totalRecordCount>0?(h(),u("div",se,[i("div",oe,[d(N,{class:"col-4 btn-success",onButtonClicked:e[12]||(e[12]=a=>r.downloadChargeLog())},{default:s(()=>[e[20]||(e[20]=c(" Als CSV exportieren ")),d(f,{"fixed-width":"",icon:["fas","download"]})]),_:1}),i("a",ne,null,512)]),e[21]||(e[21]=i("div",{class:"row"},[i("div",{class:"col"},[i("h2",null,"Summe")])],-1)),d(L,{class:"charge-log-totals","is-static-mode":!0,"is-hide-paging":!0,columns:l.totals.columns,rows:r.chargeLogTotals,total:1,"is-slot-mode":!0},{time_charged:s(a=>[i("div",le,n(a.value.time_charged),1)]),imported_since_mode_switch:s(a=>[i("div",de,n(r.formatWh(a.value.imported_since_mode_switch)),1)]),range_charged:s(a=>[i("div",ce,n(r.formatRange(a.value.range_charged)),1)]),costs:s(a=>[i("div",ge,n(r.formatCosts(a.value.costs)),1)]),_:1},8,["columns","rows"])])):I("",!0)])):(h(),V(b,{key:0,subtype:"info"},{default:s(()=>e[19]||(e[19]=[c(" Es wurden noch keine Daten abgerufen. ")])),_:1}))])])}const Le=B(W,[["render",he],["__scopeId","data-v-8607e7e7"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/ChargeLog.vue"]]);export{Le as default}; diff --git a/web/settings/assets/ChargePointInstallation-a0c18822.js b/web/settings/assets/ChargePointInstallation-a0c18822.js new file mode 100644 index 0000000000..d3252c3537 --- /dev/null +++ b/web/settings/assets/ChargePointInstallation-a0c18822.js @@ -0,0 +1 @@ +import{l as Z,d as J,a0 as H,A as G,a9 as Q,aa as X,K as Y,ab as K,F as ee,I as te}from"./vendor-fortawesome-3d19d475.js";import{_ as V,C as ne}from"./index-beac009d.js";import{_ as z}from"./dynamic-import-helper-be004503.js";import{_ as S,u as h,k as l,l as p,z as f,E as o,y as r,F as w,G as a,x as d,a1 as D,a2 as E,N as A,M as x,B as g,D as M,q as ae,A as oe}from"./vendor-06e11d0e.js";const le={props:{chargePoint:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},ie=S(le,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/ChargePointConfigMixin.vue"]]),re={name:"ChargePointConfigFallback",mixins:[ie]},se={class:"charge-point-config-fallback"},ue={key:1};function de(t,e,m,P,c,u){const k=h("openwb-base-alert"),_=h("openwb-base-textarea");return l(),p("div",se,[Object.keys(t.chargePoint.configuration).length==0?(l(),f(k,{key:0,subtype:"info"},{default:o(()=>[r(' Der Ladepunkt-Typ "'+w(t.chargePoint.type)+'" bietet keine Einstellungen. ',1)]),_:1})):(l(),p("div",ue,[a(k,{subtype:"warning"},{default:o(()=>[r(' Es wurde keine Konfigurationsseite für den Ladepunkt-Typ "'+w(t.chargePoint.type)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),a(_,{title:"Konfiguration",subtype:"json","model-value":t.chargePoint.configuration,"onUpdate:modelValue":e[0]||(e[0]=L=>t.updateConfiguration(L,"configuration"))},{help:o(()=>e[1]||(e[1]=[r(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),a(k,{subtype:"info"},{default:o(()=>[d("pre",null,w(JSON.stringify(t.chargePoint.configuration,void 0,2)),1)]),_:1})]))])}const pe=S(re,[["render",de],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/OpenwbChargePointConfigFallback.vue"]]),me={props:{chargePoint:{type:Object,required:!0}}},ge=S(me,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/ChargePointCommandsMixin.vue"]]),he={name:"ChargePointCommandsFallback",mixins:[ge]},ce={class:"charge-point-commands-fallback"};function be(t,e,m,P,c,u){const k=h("openwb-base-alert");return l(),p("div",ce,[a(k,{subtype:"secondary"},{default:o(()=>[r(' Der Ladepunkt-Typ "'+w(t.chargePoint.type)+'" bietet keine Befehle an. ',1)]),_:1})])}const fe=S(he,[["render",be],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/OpenwbChargePointCommandsFallback.vue"]]),_e={name:"OpenwbChargePointProxy",props:{chargePoint:{required:!0,type:Object}},emits:["update:configuration"],computed:{myChargePointSettingsComponent(){return console.debug(`loading charge point settings: ${this.chargePoint.type}`),D({loader:()=>z(Object.assign({"./external_openwb/chargePoint.vue":()=>V(()=>import("./chargePoint-d4002da3.js"),["assets/chargePoint-d4002da3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./internal_openwb/chargePoint.vue":()=>V(()=>import("./chargePoint-c6047ea4.js"),["assets/chargePoint-c6047ea4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mqtt/chargePoint.vue":()=>V(()=>import("./chargePoint-1aa86906.js"),["assets/chargePoint-1aa86906.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb_dc_adapter/chargePoint.vue":()=>V(()=>import("./chargePoint-05b4e7ae.js"),["assets/chargePoint-05b4e7ae.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb_pro/chargePoint.vue":()=>V(()=>import("./chargePoint-d949b41f.js"),["assets/chargePoint-d949b41f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb_series2_satellit/chargePoint.vue":()=>V(()=>import("./chargePoint-49cec1b9.js"),["assets/chargePoint-49cec1b9.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smartwb/chargePoint.vue":()=>V(()=>import("./chargePoint-a137dfd4.js"),["assets/chargePoint-a137dfd4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.chargePoint.type}/chargePoint.vue`),errorComponent:pe})},myChargePointCommandsComponent(){return console.debug(`loading charge point commands: ${this.chargePoint.type}`),D({loader:()=>z(Object.assign({"./openwb_pro/commands.vue":()=>V(()=>import("./commands-b151f1d7.js"),["assets/commands-b151f1d7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.chargePoint.type}/commands.vue`),errorComponent:fe})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function ve(t,e,m,P,c,u){const k=h("openwb-base-heading");return l(),p(A,null,[a(k,null,{default:o(()=>[r(' Einstellungen für Ladepunkt Typ "'+w(m.chargePoint.type)+'" ',1)]),_:1}),(l(),f(E(u.myChargePointSettingsComponent),{"charge-point":m.chargePoint,"onUpdate:configuration":e[0]||(e[0]=_=>u.updateConfiguration(_))},null,40,["charge-point"])),e[1]||(e[1]=d("hr",null,null,-1)),a(k,null,{default:o(()=>[r(' Befehle für Ladepunkt Typ "'+w(m.chargePoint.type)+'" ',1)]),_:1}),(l(),f(E(u.myChargePointCommandsComponent),{"charge-point":m.chargePoint},null,8,["charge-point"]))],64)}const we=S(_e,[["render",ve],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/OpenwbChargePointProxy.vue"]]);Z.add(J,H,G,Q,X,Y,K);const ke={name:"OpenwbChargePointInstallationView",components:{FontAwesomeIcon:ee,FontAwesomeLayers:te,OpenwbChargePointProxy:we},mixins:[ne],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/optional/dc_charging","openWB/optional/ocpp/config","openWB/optional/rfid/active","openWB/chargepoint/+/config","openWB/chargepoint/template/+","openWB/chargepoint/template/+/autolock/+","openWB/system/configurable/chargepoints","openWB/system/configurable/chargepoints_internal"],chargePointToAdd:void 0,showChargePointModal:!1,modalChargePointIndex:void 0,showChargePointTemplateModal:!1,modalChargePointTemplateIndex:void 0,showChargePointTemplateAutolockPlanModal:!1,modalChargePointTemplateAutolockPlanIndex:void 0}},computed:{dcChargingEnabled:{get(){return this.$store.state.mqtt["openWB/optional/dc_charging"]}},installedChargePoints:{get(){let t=this.getWildcardTopics("openWB/chargepoint/+/config"),e={};for(const[m,P]of Object.entries(t))(P.type==="internal_openwb"||this.$store.state.mqtt["openWB/general/extern"]===!1)&&(e[m]=P);return e}},chargePointTemplates:{get(){return this.getWildcardTopics("openWB/chargepoint/template/+")}},chargePointTemplateList:{get(){let t=[];return Object.keys(this.chargePointTemplates).forEach(e=>{let m=parseInt(e.match(/([0-9]+)/g)[0]),P=this.$store.state.mqtt["openWB/chargepoint/template/"+m].name;t.push({value:m,text:P})}),t}}},methods:{addChargePoint(){this.$emit("sendCommand",{command:"addChargepoint",data:{type:this.chargePointToAdd}})},removeChargePointModal(t,e){e.stopPropagation(),this.modalChargePointIndex=parseInt(t.match(/(?:\/)(\d+)(?=\/)/)[1]),this.showChargePointModal=!0},removeChargePoint(t,e){this.showChargePointModal=!1,e=="confirm"&&(console.debug("request removal of charge point '"+t+"'"),this.$emit("sendCommand",{command:"removeChargepoint",data:{id:t}}))},getChargePointList(){return this.$store.state.mqtt["openWB/general/extern"]===!1?this.$store.state.mqtt["openWB/system/configurable/chargepoints"]:this.$store.state.mqtt["openWB/system/configurable/chargepoints_internal"]},getChargePointName(t){return this.$store.state.mqtt["openWB/chargepoint/"+t+"/config"]?this.$store.state.mqtt["openWB/chargepoint/"+t+"/config"].name:"Ladepunkt "+t},getChargePointTemplateName(t){return this.$store.state.mqtt["openWB/chargepoint/template/"+t]?this.$store.state.mqtt["openWB/chargepoint/template/"+t].name:"Profil "+t},addChargePointTemplate(t){t.stopPropagation(),this.$emit("sendCommand",{command:"addChargepointTemplate",data:{}})},getChargePointTemplateIndex(t){return parseInt(t.match(/([^/]+)$/)[0])},removeChargePointTemplateModal(t,e){e.stopPropagation(),this.modalChargePointTemplateIndex=this.getChargePointTemplateIndex(t),this.showChargePointTemplateModal=!0},removeChargePointTemplate(t,e){this.showChargePointTemplateModal=!1,e=="confirm"&&(console.debug("request removal of chargePoint template '"+t+"'"),this.$emit("sendCommand",{command:"removeChargepointTemplate",data:{id:t}}))},addChargePointTemplateAutolockPlan(t,e){e.stopPropagation(),console.info("requesting new charge point template autolock plan...");let m=this.getChargePointTemplateIndex(t);this.$emit("sendCommand",{command:"addAutolockPlan",data:{template:m}})},removeChargePointTemplateAutolockPlanModal(t,e,m){m.stopPropagation(),this.modalChargePointTemplateIndex=this.getChargePointTemplateIndex(t),this.modalChargePointTemplateAutolockPlanIndex=parseInt(e.match(/([^/]+)$/)[0]),this.showChargePointTemplateAutolockPlanModal=!0},removeChargePointTemplateAutolockPlan(t,e,m){this.showChargePointTemplateAutolockPlanModal=!1,m=="confirm"&&(console.debug("request removal of chargePoint template '"+t+"' autolock plan '"+e+"'"),this.$emit("sendCommand",{command:"removeAutolockPlan",data:{template:t,plan:e}}))},getChargePointTemplateAutolockPlanName(t,e){return this.$store.state.mqtt["openWB/chargepoint/template/"+t+"/autolock/"+e]?this.$store.state.mqtt["openWB/chargepoint/template/"+t+"/autolock/"+e].name:"Autolock Zeitplan "+t+"/"+e},getChargePointTemplateAutolockPlans(t){let e=this.getChargePointTemplateIndex(t);return this.getWildcardTopics("openWB/chargepoint/template/"+e+"/autolock/+")},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)}}},Ce={class:"chargePointInstallation"},ye={name:"chargePointInstallationForm"},Pe={key:0},Ve={key:2},Le={key:0},Be={key:0},We={key:1},Ae={key:1},Se={key:0},Ue={key:2},xe={key:4},Ie=["onClick"],Te={key:0},qe={key:1},ze={key:2},De={key:2};function Ee(t,e,m,P,c,u){const k=h("openwb-base-modal-dialog"),_=h("font-awesome-icon"),L=h("openwb-base-avatar"),y=h("openwb-base-text-input"),I=h("openwb-base-select-input"),O=h("openwb-charge-point-proxy"),B=h("openwb-base-heading"),C=h("openwb-base-button-group-input"),U=h("openwb-base-card"),F=h("font-awesome-layers"),T=h("openwb-base-alert"),N=h("openwb-base-array-input"),q=h("openwb-base-range-input"),$=h("openwb-base-number-input"),j=h("openwb-base-submit-buttons");return l(),p(A,null,[a(k,{show:c.showChargePointModal,title:"Ladepunkt löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[0]||(e[0]=i=>u.removeChargePoint(c.modalChargePointIndex,i))},{default:o(()=>[r(' Wollen Sie den Ladepunkt "'+w(u.getChargePointName(c.modalChargePointIndex))+'" (ID: '+w(c.modalChargePointIndex)+") wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ",1)]),_:1},8,["show"]),a(k,{show:c.showChargePointTemplateModal,title:"Ladepunkt-Profil löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[1]||(e[1]=i=>u.removeChargePointTemplate(c.modalChargePointTemplateIndex,i))},{default:o(()=>[r(' Wollen Sie das Ladepunkt-Profil "'+w(u.getChargePointTemplateName(c.modalChargePointTemplateIndex))+'" (ID: '+w(c.modalChargePointTemplateIndex)+") wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ",1)]),_:1},8,["show"]),a(k,{show:c.showChargePointTemplateAutolockPlanModal,title:"Autolock Zeitplan löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[2]||(e[2]=i=>u.removeChargePointTemplateAutolockPlan(c.modalChargePointTemplateIndex,c.modalChargePointTemplateAutolockPlanIndex,i))},{default:o(()=>[r(' Wollen Sie den Autolock Zeitplan "'+w(u.getChargePointTemplateAutolockPlanName(c.modalChargePointTemplateIndex,c.modalChargePointTemplateAutolockPlanIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),d("div",Ce,[d("form",ye,[a(U,{title:"Ladepunkte",subtype:"primary",collapsible:!0,collapsed:!m.installAssistantActive},{header:o(()=>[a(_,{"fixed-width":"",icon:["fas","charging-station"]}),e[7]||(e[7]=r(" Ladepunkte "))]),default:o(()=>[(l(!0),p(A,null,x(u.installedChargePoints,(i,s)=>(l(),f(U,{key:s,title:i.name+" (ID: "+i.id+")",collapsible:!0,collapsed:!0,subtype:"primary"},{actions:o(n=>[n.collapsed?g("",!0):(l(),f(L,{key:0,class:"bg-danger clickable",onClick:v=>u.removeChargePointModal(s,v)},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),default:o(()=>[a(y,{title:"Bezeichnung",subtype:"text","model-value":i.name,"onUpdate:modelValue":n=>t.updateState(s,n,"name")},null,8,["model-value","onUpdate:modelValue"]),a(y,{title:"Modul",subtype:"text",disabled:"",readonly:"","model-value":t.$store.state.mqtt[s].type},null,8,["model-value"]),i.type!=="internal_openwb"||t.$store.state.mqtt["openWB/general/extern"]===!1?(l(),p("span",Pe,[a(I,{title:"Ladepunkt-Profil",options:u.chargePointTemplateList,"model-value":t.$store.state.mqtt[s].template,"onUpdate:modelValue":n=>t.updateState(s,n,"template")},null,8,["options","model-value","onUpdate:modelValue"])])):g("",!0),t.$store.state.mqtt["openWB/optional/ocpp/config"].active===!0?(l(),f(y,{key:1,title:"OCPP-Chargebox ID","model-value":i.ocpp_chargebox_id,"onUpdate:modelValue":n=>t.updateState(s,n,"ocpp_chargebox_id")},{help:o(()=>[...e[8]||(e[8]=[r(" Bitte geben Sie hier die Chargebox ID ein, die im OCPP-Backend für diesen Ladepunkt verwendet wird. Sollen die Daten dieses Ladepunktes nicht an ein OCPP-Backend übertragen werden, lasse dieses Feld leer. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):g("",!0),e[14]||(e[14]=d("hr",null,null,-1)),a(O,{"charge-point":i,"onUpdate:configuration":n=>u.updateConfiguration(s,n)},null,8,["charge-point","onUpdate:configuration"]),(i.type!=="internal_openwb"||t.$store.state.mqtt["openWB/general/extern"]===!1)&&i.charging_type!=="DC"?(l(),p("div",Ve,[e[13]||(e[13]=d("hr",null,null,-1)),a(B,null,{default:o(()=>[...e[9]||(e[9]=[r(" Hardware-Optionen ")])]),_:1}),a(C,{title:"automatische Phasenumschaltung vorhanden",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":i.auto_phase_switch_hw,"onUpdate:modelValue":n=>t.updateState(s,n,"auto_phase_switch_hw")},null,8,["model-value","onUpdate:modelValue"]),a(C,{title:"Control-Pilot-Unterbrechung vorhanden",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":i.control_pilot_interruption_hw,"onUpdate:modelValue":n=>t.updateState(s,n,"control_pilot_interruption_hw")},{help:o(()=>[...e[10]||(e[10]=[r(' Die Control-Pilot-Leitung ist im Ladekabel integriert und dient der Steuerung der Fahrzeugladung (An/Aus/Stromvorgaben). Bei einigen Fahrzeugen können durch die Regelung erzwungene, längere Ladestopps (z.B. beim PV-Laden) zu unerwünschten "Einschlaf"-Effekten des Fahrzeuges führen. Mit diesem Feature, welches hardwareseitig verbaut sein muss, kann ein Abstecken des Ladesteckers simuliert werden, um ein Aufwecken des Fahrzeuges zu ermöglichen. Die Funktion hängt immer auch vom Fahrzeugtyp ab. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(B,null,{default:o(()=>[...e[11]||(e[11]=[r(" Elektrischer Anschluss ")])]),_:1}),a(C,{title:"Anzahl angeschlossener Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:2,text:"2"},{buttonValue:3,text:"3"}],"model-value":i.connected_phases,"onUpdate:modelValue":n=>t.updateState(s,n,"connected_phases")},null,8,["model-value","onUpdate:modelValue"]),a(C,{title:"Phase 1 des Ladekabels",buttons:[{buttonValue:1,text:"EVU L1"},{buttonValue:2,text:"EVU L2"},{buttonValue:3,text:"EVU L3"}],"model-value":i.phase_1,"onUpdate:modelValue":n=>t.updateState(s,n,"phase_1")},{help:o(()=>[...e[12]||(e[12]=[r(" Hier ist anzugeben, an welcher Phase des Hausanschlusses (EVU-Punkt) die Phase 1 dieses Ladepunktes angeschlossen ist. Diese Information wird für das Lastmanagement benötigt, um bei einer Schieflast gezielt einzelne Ladepunkte zu drosseln."),d("br",null,null,-1),r(' Bei mehreren Ladepunkten macht es Sinn, die Phasen der LP rotierend anzuschließen, damit mehrere "nicht-dreiphasig" ladende Fahrzeuge mit optimaler Leistung laden können, bevor das Lastmanagement eingreift.'),d("br",null,null,-1),r(" Es wird vorausgesetzt, dass das Drehfeld innerhalb der Installation gleich bleibt. Wenn z.B. L1 des Ladepunktes auf EVU-L2 liegt, muss L2 des Ladepunktes auf EVU-L3 aufgelegt sein (und L3 des Ladepunktes auf EVU-L1)."),d("br",null,null,-1),r(" Eine Möglichkeit, die zur Ladepunktphase L1 zugehörige EVU-Phase zu ermitteln, ist eine einphasige Ladung zu starten und die Phasenströme am EVU-Zähler zu beobachten. Mit einem zweiphasig ladenden Fahrzeug kann danach auch der Anschluss von L2 ermittelt und so das Drehfeld kontrolliert werden."),d("br",null,null,-1),r(" Im Zweifel bitte das Drehfeld von einer Fachkraft prüfen und korrigieren lassen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])])):g("",!0)]),_:2},1032,["title"]))),128)),Object.keys(u.installedChargePoints).length>0?(l(),p("hr",Le)):g("",!0),a(I,{title:"Verfügbare Ladepunkte","not-selected":"Bitte auswählen",options:u.getChargePointList(),"model-value":c.chargePointToAdd,"add-button":!0,"onUpdate:modelValue":e[3]||(e[3]=i=>c.chargePointToAdd=i),"onInput:add":u.addChargePoint},{help:o(()=>e[15]||(e[15]=[r(" Bitte einen Ladepunkt auswählen, der der openWB-Regelung hinzugefügt werden soll."),d("br",null,null,-1),d("ul",null,[d("li",null," Interne openWB - wenn diese openWB über einen verbauten Ladepunkt mit Regelcontroller verfügt (z.B. Standard(+), Custom, Duo, Buchse, NICHT Standalone); ansonsten immer anlegen, egal ob diese openWB steuert = primary oder ferngesteuert wird = secondary "),d("li",null," Externe openWB - wenn diese openWB (primary) die Fernsteuerung von externen openWB (secondary) übernimmt "),d("li",null,"MQTT-Ladepunkt - nur zur Nutzung des openWB-Simulators zugelassen"),d("li",null,"openWB Pro - wenn diese openWB (primary) die Fernsteuerung einer openWB Pro (secondary) übernimmt"),d("li",null," openWB series2 Satellit/Satellit Duo - wenn diese openWB (primary) die Fernsteuerung einer openWB series2 Satellit/Satellit Duo (secondary) übernimmt "),d("li",null," smartWB/EVSE-Wifi - wenn diese openWB (primary) die Fernsteuerung einer smartWB/EVSE-Wifi übernimmt ")],-1)])),_:1},8,["options","model-value","onInput:add"])]),_:1},8,["collapsed"]),e[38]||(e[38]=d("hr",{class:"border-secondary"},null,-1)),a(U,{title:"Ladepunkt-Profile",collapsible:!0,collapsed:!0},{header:o(()=>[a(F,{"fixed-width":"",class:"fa-lg"},{default:o(()=>[a(_,{"fixed-width":"",icon:["far","file"]}),a(_,{"fixed-width":"",icon:["fas","charging-station"],transform:"shrink-8"})]),_:1}),e[16]||(e[16]=r(" Ladepunkt-Profile "))]),actions:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(l(),f(L,{key:0,class:"bg-success clickable",onClick:u.addChargePointTemplate},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):g("",!0)]),default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),p("div",Be,[a(T,{subtype:"info"},{default:o(()=>e[17]||(e[17]=[r(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(l(),p("div",We,[(l(!0),p(A,null,x(u.chargePointTemplates,(i,s)=>(l(),f(U,{key:s,title:i.name+" (ID: "+u.getChargePointTemplateIndex(s)+")",collapsible:!0,collapsed:!0},M({default:o(()=>[a(y,{title:"Bezeichnung",subtype:"text","model-value":i.name,disabled:s.endsWith("/0"),"onUpdate:modelValue":n=>t.updateState(s,n,"name")},M({_:2},[s.endsWith("/0")?{name:"help",fn:o(()=>[e[18]||(e[18]=r(" Das Standard-Profil kann nicht umbenannt werden. "))]),key:"0"}:void 0]),1032,["model-value","disabled","onUpdate:modelValue"]),u.dcChargingEnabled===!0?(l(),f(C,{key:0,title:"Typ des Ladeprofils",buttons:[{buttonValue:"AC",text:"AC"},{buttonValue:"DC",text:"DC"}],"model-value":i.charging_type,"onUpdate:modelValue":n=>t.updateState(s,n,"charging_type")},null,8,["model-value","onUpdate:modelValue"])):g("",!0),e[35]||(e[35]=d("hr",null,null,-1)),a(B,null,{default:o(()=>[...e[19]||(e[19]=[r(" Zugangskontrolle ")])]),_:1}),a(C,{title:"Sperre nach Abstecken",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":i.disable_after_unplug,"onUpdate:modelValue":n=>t.updateState(s,n,"disable_after_unplug")},{help:o(()=>[...e[20]||(e[20]=[r(" Sperrt den Ladepunkt nach Abstecken eines Fahrzeuges. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),t.$store.state.mqtt["openWB/optional/rfid/active"]===!0&&!m.installAssistantActive?(l(),p("div",Ae,[i.disable_after_unplug?(l(),f(N,{key:0,title:"Zugeordnete ID-Tags","no-elements-message":"Keine ID-Tags zugeordnet.","model-value":i.valid_tags,"onUpdate:modelValue":n=>t.updateState(s,n,"valid_tags")},{help:o(()=>[...e[21]||(e[21]=[r(" Die hier eingetragenen ID-Tags dienen ausschließlich zum Entsperren des Ladepunktes. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):g("",!0)])):g("",!0),e[36]||(e[36]=d("hr",null,null,-1)),a(B,null,{default:o(()=>[...e[22]||(e[22]=[r(" Angaben zum konfigurierten Ladestrom der openWB ")])]),_:1}),a(T,{subtype:"info"},{default:o(()=>[e[23]||(e[23]=r(" Hier werden die maximalen Ladeströme entsprechend der in dem zugeordneten Ladepunkt genutzten Phasen eingestellt.")),e[24]||(e[24]=d("br",null,null,-1)),e[25]||(e[25]=r(" Generell gilt, dass diese Werte in Übereinstimmung mit der Ausführung des Ladepunktes und des elektrischen Anschlusses bzw. der Absicherung zu wählen sind. ")),i.charging_type==="AC"?(l(),p("span",Se," Bei einer openWB mit 22kW Maximalleistung sind hier jeweils 32A einzustellen. Ist die openWB beispielsweise auf 11kW begrenzt (KfW-Förderung oder die Zuleitung ist mit 16A abgesichert), dann sind hier jeweils 16A einzustellen. ")):g("",!0),e[26]||(e[26]=d("br",null,null,-1)),e[27]||(e[27]=r(" Komplexere Installationen mit mehreren Ladepunkten werden im ")),e[28]||(e[28]=d("a",{href:"https://github.com/openWB/core/wiki/Lastmanagement-und-kaskadierte-Z%C3%A4hler",target:"_blank",rel:"noopener noreferrer"},"Wiki zum Lastmanagement",-1)),e[29]||(e[29]=r(" beschrieben. "))]),_:2},1024),i.charging_type==="AC"||u.dcChargingEnabled!==!0?(l(),p("div",Ue,[a(q,{title:"Maximalstrom bei einer Phase",min:6,max:32,step:1,unit:"A","model-value":i.max_current_single_phase,"onUpdate:modelValue":n=>t.updateState(s,n,"max_current_single_phase")},null,8,["model-value","onUpdate:modelValue"]),a(q,{title:"Maximalstrom mehrere Phasen",min:6,max:32,step:1,unit:"A","model-value":i.max_current_multi_phases,"onUpdate:modelValue":n=>t.updateState(s,n,"max_current_multi_phases")},null,8,["model-value","onUpdate:modelValue"])])):(l(),f($,{key:3,title:"Maximalleistung",min:75,max:300,step:75,unit:"kW",precision:5,"model-value":t.ac_current2dc_power(i.dc_max_current),"onUpdate:modelValue":n=>t.updateState(s,t.dc_power2ac_current(n),"dc_max_current")},null,8,["model-value","onUpdate:modelValue"])),e[37]||(e[37]=d("hr",null,null,-1)),m.installAssistantActive?g("",!0):(l(),p("div",xe,[e[34]||(e[34]=d("hr",null,null,-1)),a(B,null,{default:o(()=>[...e[30]||(e[30]=[r(" Automatische Sperre ")])]),_:1}),a(C,{title:"Automatische Sperre aktiv",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":i.autolock.active,"onUpdate:modelValue":n=>t.updateState(s,n,"autolock.active")},{help:o(()=>[...e[31]||(e[31]=[r(" Wird die automatische Sperre aktiviert, können Fahrzeugladungen mittels Zeitplan auf gewünschte Zeitbereiche eingeschränkt werden. Dies kann z.B. bei Zugänglichkeiten zu Ladepunkten in öffentlichen oder halb-öffentlichen Bereichen sinnvoll sein. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(C,{title:"Erst nach Ladeende sperren",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":i.autolock.wait_for_charging_end,"onUpdate:modelValue":n=>t.updateState(s,n,"autolock.wait_for_charging_end")},{help:o(()=>[...e[32]||(e[32]=[r(' Wenn ein Zeitplan die automatische Sperre aktiviert, werden alle Ladepunkte direkt gesperrt und laufende Ladevorgänge beendet. Wird hier "Ja" ausgewählt, dann werden laufende Ladevorgänge NICHT beendet und diese Ladepunkte erst nach abgeschlossener Ladung gesperrt. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(B,null,{actions:o(()=>[a(L,{class:"bg-success clickable",onClick:n=>u.addChargePointTemplateAutolockPlan(s,n)},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","plus"]})]),_:2},1032,["onClick"])]),default:o(()=>[e[33]||(e[33]=r(" Zeitpläne für die automatische Sperre "))]),_:2},1024)])),(l(!0),p(A,null,x(u.getChargePointTemplateAutolockPlans(s),(n,v)=>(l(),f(U,{key:v,title:n.name,collapsible:!0,collapsed:!0},{actions:o(b=>[b.collapsed==!0?(l(),p("span",{key:0,class:ae(["subheader pill clickable",n.active?"bg-success":"bg-danger"]),onClick:oe(W=>t.updateState(v,!n.active,"active"),["stop"])},[a(_,{"fixed-width":"",icon:["fas","clock"]}),r(" "+w(n.time[0])+" - "+w(n.time[1])+" ",1),n.frequency.selected=="once"?(l(),p("span",Te,[a(_,{"fixed-width":"",icon:["fas","calendar-day"]}),r(" "+w(t.formatDate(n.frequency.once[0])==t.formatDate(n.frequency.once[1])?t.formatDate(n.frequency.once[0]):t.formatDate(n.frequency.once[0])+" - "+t.formatDate(n.frequency.once[1])),1)])):g("",!0),n.frequency.selected=="daily"?(l(),p("span",qe,[a(_,{"fixed-width":"",icon:["fas","calendar-week"]})])):g("",!0),n.frequency.selected=="weekly"?(l(),p("span",ze,[a(_,{"fixed-width":"",icon:["fas","calendar-alt"]})])):g("",!0)],10,Ie)):g("",!0),b.collapsed==!1?(l(),f(L,{key:1,class:"bg-danger clickable",onClick:W=>u.removeChargePointTemplateAutolockPlanModal(s,v,W)},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])):g("",!0)]),default:o(()=>[a(y,{title:"Bezeichnung","model-value":n.name,"onUpdate:modelValue":b=>t.updateState(v,b,"name")},null,8,["model-value","onUpdate:modelValue"]),a(C,{title:"Zeitplan aktiv",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.active,"onUpdate:modelValue":b=>t.updateState(v,b,"active")},null,8,["model-value","onUpdate:modelValue"]),a(y,{title:"Sperren um",subtype:"time","model-value":n.time[0],"onUpdate:modelValue":b=>t.updateState(v,b,"time.0")},null,8,["model-value","onUpdate:modelValue"]),a(y,{title:"Freigeben um",subtype:"time","model-value":n.time[1],"onUpdate:modelValue":b=>t.updateState(v,b,"time.1")},null,8,["model-value","onUpdate:modelValue"]),a(C,{title:"Wiederholungen",buttons:[{buttonValue:"once",text:"Einmalig",class:"btn-outline-info"},{buttonValue:"daily",text:"Täglich",class:"btn-outline-info"},{buttonValue:"weekly",text:"Wöchentlich",class:"btn-outline-info"}],"model-value":n.frequency.selected,"onUpdate:modelValue":b=>t.updateState(v,b,"frequency.selected")},null,8,["model-value","onUpdate:modelValue"]),n.frequency.selected=="once"?(l(),f(y,{key:0,title:"Sperren ab ...",subtype:"date","model-value":n.frequency.once[0],"onUpdate:modelValue":b=>t.updateState(v,b,"frequency.once.0")},null,8,["model-value","onUpdate:modelValue"])):g("",!0),n.frequency.selected=="once"?(l(),f(y,{key:1,title:"... bis",subtype:"date",min:n.frequency.once[0],"model-value":n.frequency.once[1],"onUpdate:modelValue":b=>t.updateState(v,b,"frequency.once.1")},null,8,["min","model-value","onUpdate:modelValue"])):g("",!0),n.frequency.selected=="weekly"?(l(),p("div",De,[(l(!0),p(A,null,x(t.weekdays,(b,W)=>(l(),f(C,{key:W,title:b,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":n.frequency.weekly[W],"onUpdate:modelValue":R=>t.updateState(v,R,"frequency.weekly."+W)},null,8,["title","model-value","onUpdate:modelValue"]))),128))])):g("",!0)]),_:2},1032,["title"]))),128))]),_:2},[s.endsWith("/0")?void 0:{name:"actions",fn:o(n=>[n.collapsed?g("",!0):(l(),f(L,{key:0,class:"bg-danger clickable",onClick:v=>u.removeChargePointTemplateModal(s,v)},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),key:"0"}]),1032,["title"]))),128))]))]),_:1}),a(j,{"form-name":"chargePointInstallationForm",onSave:e[4]||(e[4]=i=>t.$emit("save")),onReset:e[5]||(e[5]=i=>t.$emit("reset")),onDefaults:e[6]||(e[6]=i=>t.$emit("defaults"))})])])],64)}const Me=S(ke,[["render",Ee],["__scopeId","data-v-75fe5743"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/ChargePointInstallation.vue"]]),je=Object.freeze(Object.defineProperty({__proto__:null,default:Me},Symbol.toStringTag,{value:"Module"}));export{ie as C,ge as a,Me as b,je as c}; diff --git a/web/settings/assets/Chart-698f43ef.js b/web/settings/assets/Chart-698f43ef.js new file mode 100644 index 0000000000..2f91f9ae7e --- /dev/null +++ b/web/settings/assets/Chart-698f43ef.js @@ -0,0 +1 @@ +import{l as L,K as T,P as H,O,N as q,V as j,W as M,F as V}from"./vendor-fortawesome-3d19d475.js";import{C as z}from"./index-beac009d.js";import{C as P,p as E,a as B,L as N,b as K,B as F,f as J,P as $,c as X,T as Z,i as G,d as U,e as Y,g as Q}from"./vendor-chartjs-888a84c2.js";import{_ as ee,u as p,k as o,l as s,x as A,G as c,E as d,z as m,y as f,N as k,M as x,F as C,B as _}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-luxon-8ddd27a0.js";L.add(T,H,O,q,j,M);P.register(E,B,N,K,F,J,$,X,Z,G,U);const te={name:"OpenwbChartView",components:{ChartjsLine:Y,FontAwesomeIcon:V},mixins:[z],props:{initialChartRange:{type:String,required:!1,validator:function(e){return["day","month","year"].indexOf(e)!==-1},default:"day"},initialDate:{type:String,required:!1,validator:function(e){return e.match(/^(([0-9]{4})(-[0-9]{2}(-[0-9]{2})?)?)?$/g)},default:""}},emits:["sendCommand"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/log/daily/#","openWB/log/monthly/#","openWB/log/yearly/#","openWB/system/device/+/component/+/config","openWB/chargepoint/+/config","openWB/vehicle/+/name"],currentDate:"",chartRange:"day",blockChartInit:!1,chartRequestDate:{day:"",month:"",year:""},datasetTemplates:{"counter-power_average":{label:"Zähler",unit:"kW",jsonKey:null,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(255, 10, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"counter-energy_imported":{label:"Zähler",unit:"kWh",jsonKey:null,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(255, 10, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"counter-energy_exported":{label:"Zähler",unit:"kWh",jsonKey:null,borderColor:"rgba(0, 255, 105, 0.7)",backgroundColor:"rgba(0, 255, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"pv-power_exported":{label:"PV",unit:"kW",jsonKey:null,borderColor:"rgba(40, 167, 69, 0.7)",backgroundColor:"rgba(10, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y",stack:"inverter-power",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"pv-energy_exported":{label:"PV",unit:"kWh",jsonKey:null,borderColor:"rgba(40, 167, 69, 0.7)",backgroundColor:"rgba(10, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",stack:"inverter-exported",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"bat-power_average":{label:"Speicher",unit:"kW",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(200, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y",stack:"battery-power",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"bat-energy_imported":{label:"Speicher",unit:"kWh",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(200, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",stack:"battery-imported",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"bat-energy_exported":{label:"Speicher",unit:"kWh",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(200, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",stack:"battery-exported",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"bat-soc":{label:"Speicher SoC",unit:"%",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(200, 255, 13, 0.3)",borderDash:[10,5],hidden:!0,fill:!1,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",borderWidth:2,data:null,yAxisID:"y3",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-power_average":{label:"Ladepunkt",unit:"kW",jsonKey:null,borderColor:"rgba(0, 0, 255, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y",stack:"charge-point-power",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-energy_imported":{label:"Ladepunkt",unit:"kWh",jsonKey:null,borderColor:"rgba(0, 0, 255, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",stack:"charge-point-imported",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-energy_imported_grid":{label:"Ladepunkt (Netzanteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"charge-point-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-energy_imported_pv":{label:"Ladepunkt (PV-Anteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(40, 167, 69, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"charge-point-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-energy_imported_bat":{label:"Ladepunkt (PV-Anteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"charge-point-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"ev-soc":{label:"Fahrzeug SoC",unit:"%",jsonKey:null,borderColor:"rgba(0, 0, 255, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",borderDash:[10,5],hidden:!0,fill:!1,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",borderWidth:2,data:null,yAxisID:"y3",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"sh-power_average":{label:"SmartHome",unit:"kW",jsonKey:null,borderColor:"rgba(232, 62, 140, 0.7)",backgroundColor:"rgba(232, 72, 150, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"sh-energy_imported":{label:"SmartHome",unit:"kWh",jsonKey:null,borderColor:"rgba(232, 62, 140, 0.7)",backgroundColor:"rgba(232, 72, 150, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"sh-energy_exported":{label:"SmartHome",unit:"kWh",jsonKey:null,borderColor:"rgba(232, 62, 140, 0.7)",backgroundColor:"rgba(232, 72, 150, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-power_imported":{label:"Hausverbrauch",unit:"kW",jsonKey:null,borderColor:"rgba(120, 122, 124, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-energy_imported":{label:"Hausverbrauch",unit:"kWh",jsonKey:null,borderColor:"rgba(120, 122, 124, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-energy_imported_grid":{label:"Hausverbrauch (Netzanteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"hc-energy-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-energy_imported_pv":{label:"Hausverbrauch (PV-Anteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(40, 167, 69, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"hc-energy-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-energy_imported_bat":{label:"Hausverbrauch (PV-Anteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"hc-energy-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}}},chartOptions:{plugins:{title:{display:!1},tooltip:{enabled:!0,callbacks:{label:e=>`${e.dataset.label}: ${e.formattedValue} ${e.dataset.unit}`}},legend:{display:!0},zoom:{pan:{enabled:!0,mode:"x",threshold:5},zoom:{wheel:{enabled:!0},pinch:{enabled:!0},mode:"x"}}},elements:{point:{radius:2}},responsive:!0,maintainAspectRatio:!1,interaction:{mode:"index",intersect:!1},scales:{x:{type:"time",time:{unit:"",tooltipFormat:""},display:!0,title:{display:!0,text:""},ticks:{source:"timestamp",font:{size:12},maxTicksLimit:0},grid:{}},y:{position:"left",type:"linear",display:"auto",suggestedMin:0,suggestedMax:0,title:{font:{size:12},display:!0,text:"Leistung [kW]"},grid:{},ticks:{font:{size:12},stepSize:.2,maxTicksLimit:11}},y2:{position:"left",type:"linear",display:"auto",suggestedMin:0,suggestedMax:0,title:{font:{size:12},display:!0,text:"Energie [kWh]"},grid:{},ticks:{font:{size:12},stepSize:.2,maxTicksLimit:11}},y3:{position:"right",type:"linear",display:"auto",suggestedMin:0,suggestedMax:100,title:{font:{size:12},display:!0,text:"SoC [%]"},grid:{display:!1},ticks:{font:{size:12},stepSize:10,maxTicksLimit:11}}}},chartDatasets:{datasets:[]}}},computed:{dateInput(){var e={title:"Datum",type:"date",min:"2018-01-01"};switch(this.chartRange){case"month":e={title:"Monat",type:"month",min:"2018-01"};break;case"year":e={title:"Jahr",type:"year",min:"2018"};break}return e},chartDate:{get(){var e=this.chartRequestDate.year;return this.chartRange!="year"&&(e=e+"-"+this.chartRequestDate.month),this.chartRange=="day"&&(e=e+"-"+this.chartRequestDate.day),e},set(e){let t=e.split("-");this.chartRequestDate.year=t[0],t.length>1?this.chartRequestDate.month=t[1]:this.chartRequestDate.month="",t.length>2?this.chartRequestDate.day=t[2]:this.chartRequestDate.day=""}},chartScaleX(){var e={unit:"minute",tooltipFormat:"DD T",text:"Zeit",maxTicksLimit:24};switch(this.chartRange){case"month":e={unit:"day",tooltipFormat:"DD",text:"Tag",maxTicksLimit:31};break;case"year":e={unit:"month",tooltipFormat:"LLLL yyyy",text:"Monat",maxTicksLimit:12};break}return e},commandData(){var e={date:this.chartRequestDate.year+this.chartRequestDate.month+this.chartRequestDate.day,day:this.chartRequestDate.year+this.chartRequestDate.month+this.chartRequestDate.day};switch(this.chartRange){case"month":e={date:this.chartRequestDate.year+this.chartRequestDate.month,month:this.chartRequestDate.year+this.chartRequestDate.month};break;case"year":e={date:this.chartRequestDate.year,year:this.chartRequestDate.year};break}return e},baseTopic(){var e="openWB/log/";switch(this.chartRange){case"day":e=e+"daily/";break;case"month":e=e+"monthly/";break;case"year":e=e+"yearly/";break}return e},chartDataRead(){return this.chartDataObject!=null},chartDataHasEntries(){return this.chartDataObject?this.chartDataObject.length>0:!1},chartTotals(){if(this.$store.state.mqtt[this.baseTopic+this.commandData.date]&&Object.prototype.hasOwnProperty.call(this.$store.state.mqtt[this.baseTopic+this.commandData.date],"totals")){var e=JSON.parse(JSON.stringify(this.$store.state.mqtt[this.baseTopic+this.commandData.date].totals));return delete e.energy_source,Object.keys(e.counter).forEach(t=>{Object.prototype.hasOwnProperty.call(e.counter[t],"grid")&&delete e.counter[t].grid}),Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(e[t],"all")&&(Object.keys(e[t]).length<=2&&["bat","pv"].includes(t)?delete e[t].all:e[t]={all:e[t].all,...e[t]})}),e}},chartDataObject(){if(this.$store.state.mqtt[this.baseTopic+this.commandData.date]){var e=this.$store.state.mqtt[this.baseTopic+this.commandData.date];Object.prototype.hasOwnProperty.call(e,"entries")&&(e=e.entries);var t=JSON.parse(JSON.stringify(e)).map(r=>(r.timestamp=r.timestamp*1e3,r));return t}},chartData(){if(this.chartDataObject){var e=["pv","counter","bat","cp","sh","ev","hc"];const t=this.chartDataObject[this.chartDataObject.length-1];return t&&e.forEach(r=>{Object.prototype.hasOwnProperty.call(t,r)&&(Object.prototype.hasOwnProperty.call(t[r],"all")&&(["bat","pv"].includes(r)&&Object.keys(t[r]).length<=2?delete t[r].all:t[r]={all:t[r].all,...t[r]}),Object.entries(t[r]).forEach(([n,i])=>{Object.keys(i).forEach(a=>{this.initDataset(r,n,a)})}))}),this.chartDatasets}}},watch:{chartRange(){this.init()}},mounted(){this.init()},methods:{handleChartClick(e){if(this.chartRange=="day")return;const t=this.$refs.myChart.chart;if(!t)return;const r=Q(t,e);if(!r.length)return;const{datasetIndex:n,index:i}=r[0],a=this.chartData.datasets[n].data[i].date;var y="",h="";switch(this.chartRange){case"month":y=a.substring(0,4)+"-"+a.substring(4,6)+"-"+a.substring(6),h="day";break;case"year":y=a.substring(0,4)+"-"+a.substring(4,6),h="month";break}this.blockChartInit=!0,this.chartDate=y,this.chartRange=h},getCardSubtype(e){switch(e){case"bat":return"warning";case"counter":return"danger";case"cp":return"primary";case"pv":return"success";case"sh":return"pink";default:return"secondary"}},getCardIcon(e){switch(e){case"bat":return["fas","car-battery"];case"counter":return["fas","gauge-high"];case"cp":return["fas","charging-station"];case"pv":return["fas","solar-panel"];case"sh":return["fas","house-signal"];case"hc":return["fas","house"];default:return}},hideDataset(e,t,r){return!!(["bat","pv","cp"].includes(e)&&Object.prototype.hasOwnProperty.call(this.chartTotals[e],"all")&&t!="all"||["grid","bat","pv","cp"].includes(r.split("_").pop()))},getTotalsLabel(e,t=void 0,r=void 0){var n="*test*";if(!t&&!r){switch(e){case"bat":return"Speicher";case"counter":return"Zähler";case"pv":return"Wechselrichter";case"cp":return"Ladepunkte";case"sh":return"SmartHome-Geräte";case"hc":return"Hausverbrauch";default:console.warn("unknown group key:",e)}return"*"+e+"*"}if(t&&!r){if(t=="all")return"Summe";if(Object.prototype.hasOwnProperty.call(this.$store.state.mqtt[this.baseTopic+this.commandData.date],"names"))return this.$store.state.mqtt[this.baseTopic+this.commandData.date].names[t]}if(t&&r){switch(e){case"bat":case"cp":switch(r){case"imported":case"energy_imported":return"Ladung";case"exported":case"energy_exported":return"Entladung";case"energy_imported_grid":return"Ladung (Netz-Anteil)";case"energy_imported_pv":return"Ladung (PV-Anteil)";case"energy_imported_bat":return"Ladung (Speicher-Anteil)";case"energy_imported_cp":return"Ladung (Ladepunkt-Anteil)";default:console.warn("unknown measurement key:",e,r)}break;case"counter":switch(r){case"imported":case"energy_imported":return"Bezug/Verbrauch";case"exported":case"energy_exported":return"Einspeisung/Erzeugung";default:console.warn("unknown measurement key:",e,r)}break;case"pv":switch(r){case"exported":case"energy_exported":return"Erzeugung";default:console.warn("unknown measurement key:",e,r)}break;case"sh":switch(r){case"imported":case"energy_imported":return"Verbrauch";case"exported":case"energy_exported":return"Erzeugung";default:console.warn("unknown measurement key:",e,r)}break;case"hc":switch(r){case"imported":case"energy_imported":return"Verbrauch";case"energy_imported_grid":return"Verbrauch (Netz-Anteil)";case"energy_imported_pv":return"Verbrauch (PV-Anteil)";case"energy_imported_bat":return"Verbrauch (Speicher-Anteil)";case"energy_imported_cp":return"Verbrauch (Ladepunkt-Anteil)";default:console.warn("unknown measurement key:",e,r)}break;default:console.warn("unknown group key:",e)}return"*"+e+"+"+t+"+"+r+"*"}return n},getDatasetLabel(e,t,r,n){var i=["*"+n],a=[];if(t=="all")switch(e!=="hc"&&a.push("Summe"),e){case"pv":i=["PV"];break;case"bat":switch(i=["Speicher"],r){case"soc":i.push("SoC");break}break;case"cp":i=["Ladepunkte"];break;case"hc":i=["Hausverbrauch"]}else Object.prototype.hasOwnProperty.call(this.$store.state.mqtt[this.baseTopic+this.commandData.date],"names")&&Object.prototype.hasOwnProperty.call(this.$store.state.mqtt[this.baseTopic+this.commandData.date].names,t)&&(i=[this.$store.state.mqtt[this.baseTopic+this.commandData.date].names[t]]);switch(e){case"bat":case"ev":case"cp":switch(r){case"soc":a.push("SoC");break;case"energy_imported":a.push("Ladung");break;case"energy_exported":a.push("Entladung");break;case"energy_imported_grid":a.push("Netz-Anteil");break;case"energy_imported_pv":a.push("PV-Anteil");break;case"energy_imported_bat":a.push("Speicher-Anteil");break;case"energy_imported_cp":a.push("Ladepunkt-Anteil");break}break;case"counter":switch(r){case"energy_imported":a.push("Bezug/Verbrauch");break;case"energy_exported":a.push("Einspeisung/Erzeugung");break}break;case"sh":switch(r){case"energy_imported":a.push("Verbrauch");break;case"energy_exported":a.push("Erzeugung");break}break;case"hc":switch(r){case"energy_imported_grid":a.push("Netz-Anteil");break;case"energy_imported_pv":a.push("PV-Anteil");break;case"energy_imported_bat":a.push("Speicher-Anteil");break;case"energy_imported_cp":a.push("Ladepunkt-Anteil");break}break}return`${i.join(" ")}${a.length?" ("+a.join(", ")+")":""}`},getDatasetIndex(e){let t=this.chartDatasets.datasets.findIndex(r=>r.jsonKey==e);if(t!=-1)return t},addDataset(e,t,r,n){if(!(Object.prototype.hasOwnProperty.call(this.chartTotals,e)&&!Object.prototype.hasOwnProperty.call(this.chartTotals[e],t))){var i=e+"-"+r;if(this.datasetTemplates[i]){var a=JSON.parse(JSON.stringify(this.datasetTemplates[i]));return a.parsing.yAxisKey=n,a.jsonKey=n,a.data=this.chartDataObject,a.label=this.getDatasetLabel(e,t,r,n),a.labelSuffix!=null&&(a.label=a.label+a.labelSuffix),a.hidden=this.hideDataset(e,t,r),t=="all"&&(["grid","pv","bat","cp"].includes(r.split("_").slice(-1)[0])||delete a.stack),this.chartDatasets.datasets.push(a)-1}else console.warn("no matching template found for: "+n+" with template: "+i)}},initDataset(e,t,r){var n=[];this.chartRange=="day"?n={counter:["power_average"],pv:["power_exported"],bat:["power_average","soc"],cp:["power_average"],sh:["power_average"],ev:["soc"],hc:["power_imported"]}:n={counter:["energy_imported","energy_exported"],pv:["energy_exported"],bat:["energy_imported","energy_exported"],cp:["energy_imported","energy_imported_grid","energy_imported_pv","energy_imported_bat"],sh:["energy_imported","energy_exported"],ev:[],hc:["energy_imported","energy_imported_grid","energy_imported_pv","energy_imported_bat"]};const i=e+"."+t+"."+r;if(n[e].includes(r)){var a=this.getDatasetIndex(i);a==null&&(a=this.addDataset(e,t,r,i))}else console.debug("skipping dataset:",i)},setupScaleX(){this.chartOptions.scales.x.time.unit=this.chartScaleX.unit,this.chartOptions.scales.x.time.tooltipFormat=this.chartScaleX.tooltipFormat,this.chartOptions.scales.x.title.text=this.chartScaleX.text,this.chartOptions.scales.x.ticks.maxTicksLimit=this.chartScaleX.maxTicksLimit},requestChart(){if(document.forms.chartForm.reportValidity()){this.setupScaleX(),this.chartDatasets.datasets=[];var t="";switch(this.chartRange){case"day":t="getDailyLog";break;case"month":t="getMonthlyLog";break;case"year":t="getYearlyLog";break}this.$emit("sendCommand",{command:t,data:this.commandData})}else{console.warn("form invalid");return}},clearChartData(){this.getWildcardIndexList(this.baseTopic+"+").forEach(e=>{this.$store.commit("removeTopic",`${this.baseTopic}${e}`)})},updateChart(){this.clearChartData(),this.requestChart()},init(){const e=new Date;this.currentDate=String(e.getFullYear()),this.chartRange!="year"&&(this.currentDate=this.currentDate+"-"+String(e.getMonth()+1).padStart(2,"0")),this.chartRange=="day"&&(this.currentDate=this.currentDate+"-"+String(e.getDate()).padStart(2,"0")),this.blockChartInit?this.blockChartInit=!1:this.initialDate==null||this.initialDate==""?this.chartDate=this.currentDate:this.chartDate=this.initialDate,this.updateChart()}}},ae={class:"chart"},re={name:"chartForm"},ie={key:1},ne={key:1},oe={class:"openwb-chart"},se={key:1};function le(e,t,r,n,i,a){const y=p("openwb-base-select-input"),h=p("openwb-base-text-input"),b=p("openwb-base-card"),v=p("openwb-base-alert"),R=p("chartjs-line"),w=p("font-awesome-icon"),S=p("openwb-base-heading");return o(),s("div",ae,[A("form",re,[c(b,{title:"Filter",collapsible:!0,collapsed:!1},{default:d(()=>[c(y,{modelValue:i.chartRange,"onUpdate:modelValue":t[0]||(t[0]=u=>i.chartRange=u),title:"Zeitraum",options:[{value:"day",text:"Tag"},{value:"month",text:"Monat"},{value:"year",text:"Jahr"}]},null,8,["modelValue"]),c(h,{modelValue:a.chartDate,"onUpdate:modelValue":[t[1]||(t[1]=u=>a.chartDate=u),t[2]||(t[2]=u=>a.updateChart())],title:a.dateInput.title,subtype:a.dateInput.type,min:a.dateInput.min,max:i.currentDate,"show-quick-buttons":!0},null,8,["modelValue","title","subtype","min","max"])]),_:1}),a.chartDataRead?(o(),s("div",ie,[a.chartDataHasEntries?(o(),s("div",ne,[c(b,{title:"Diagramm",collapsible:!0,collapsed:!1},{default:d(()=>[A("div",oe,[c(R,{ref:"myChart",data:a.chartData,options:i.chartOptions,onClick:a.handleChartClick},null,8,["data","options","onClick"])])]),_:1}),c(b,{title:"Summen",collapsible:!0,collapsed:!0},{default:d(()=>[(o(!0),s(k,null,x(a.chartTotals,(u,l)=>(o(),s("div",{key:l},[Object.keys(u).length>0?(o(),m(b,{key:0,collapsible:!0,collapsed:!0,subtype:a.getCardSubtype(l)},{header:d(()=>[c(w,{"fixed-width":"",icon:a.getCardIcon(l)},null,8,["icon"]),f(" "+C(a.getTotalsLabel(l)),1)]),default:d(()=>[(o(!0),s(k,null,x(u,(I,g)=>(o(),s("div",{key:g},[l!=="hc"?(o(),m(S,{key:0},{default:d(()=>[f(C(a.getTotalsLabel(l,g)),1)]),_:2},1024)):_("",!0),(o(!0),s(k,null,x(I,(W,D)=>(o(),s("div",{key:D},[c(h,{title:a.getTotalsLabel(l,g,D),readonly:"",class:"text-right",unit:"kWh","model-value":e.formatNumber(W/1e3,3)},null,8,["title","model-value"])]))),128)),g=="all"&&l!="hc"?(o(),s("hr",se)):_("",!0)]))),128))]),_:2},1032,["subtype"])):_("",!0)]))),128))]),_:1})])):(o(),m(v,{key:0,subtype:"info"},{default:d(()=>t[4]||(t[4]=[f(" Es konnten keine Daten für diesen Zeitraum gefunden werden. ")])),_:1}))])):(o(),m(v,{key:0,subtype:"info"},{default:d(()=>t[3]||(t[3]=[f(" Es wurden noch keine Daten abgerufen. ")])),_:1}))])])}const fe=ee(te,[["render",le],["__scopeId","data-v-e00a7cd5"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/Chart.vue"]]);export{fe as default}; diff --git a/web/settings/assets/CloudConfig-0179d1fa.js b/web/settings/assets/CloudConfig-0179d1fa.js new file mode 100644 index 0000000000..71e94df0bb --- /dev/null +++ b/web/settings/assets/CloudConfig-0179d1fa.js @@ -0,0 +1 @@ +import{l as P,$ as z,F as S}from"./vendor-fortawesome-3d19d475.js";import{C as Z}from"./index-beac009d.js";import{_ as I,u as d,k as l,l as w,G as r,E as t,x as m,z as p,B as i,D,N as x,y as u,q as V}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";P.add(z);const M={name:"OpenwbCloudConfigView",components:{FontAwesomeIcon:S},mixins:[Z],emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/system/dataprotection_acknowledged","openWB/system/mqtt/bridge/+","openWB/system/mqtt/valid_partner_ids"],enableNewCloudButton:!0,newCloudData:{email:"",username:"",partner:!1},enableCloudConnectButton:!0,connectCloudData:{username:"",password:"",partner:!1},enableRemoveCloudButton:!0,showCloudRemoveModal:!1}},computed:{cloudBridge:{get(){let o=this.getWildcardTopics("openWB/system/mqtt/bridge/+");for(const[e,k]of Object.entries(o))k.remote.is_openwb_cloud||delete o[e];return o}},cloudBridgeKey:{get(){for(const[o,e]of Object.entries(this.cloudBridge))if(e.remote.is_openwb_cloud)return o}},cloudSettings:{get(){return{username:this.cloudBridge[this.cloudBridgeKey].remote.username,password:this.cloudBridge[this.cloudBridgeKey].remote.password,partner:this.cloudBridge[this.cloudBridgeKey].access?this.cloudBridge[this.cloudBridgeKey].access.partner:!1}}}},methods:{getMqttBridgeIndex(o){return parseInt(o.match(/(?:\/)(\d+)$/)[1])},createCloud(){document.forms.cloudConfigCreateForm.reportValidity()&&(this.$emit("save"),this.$emit("sendCommand",{command:"initCloud",data:this.newCloudData}),this.enableNewCloudButton=!1)},connectCloud(){document.forms.cloudConfigConnectForm.reportValidity()&&(this.$emit("save"),this.$emit("sendCommand",{command:"connectCloud",data:this.connectCloudData}),this.enableCloudConnectButton=!1)},removeCloudModal(o){o.stopPropagation(),this.showCloudRemoveModal=!0},removeCloud(o){this.showCloudRemoveModal=!1,o=="confirm"&&(console.info("request removal of cloud"),this.updateState("openWB/system/mqtt/valid_partner_ids",[]),this.$emit("sendCommand",{command:"removeMqttBridge",data:{bridge:this.getMqttBridgeIndex(this.cloudBridgeKey)}}),this.enableCloudConnectButton=!0)}}},h={class:"cloud-config"},K={key:1},U={key:1,name:"cloudConfigCreateForm"},N={class:"row justify-content-center"},R={key:2,name:"cloudConfigConnectForm"},A={class:"row justify-content-center"},F={key:3,name:"cloudConfigured"},j={class:"row justify-content-center"};function G(o,e,k,T,s,a){const W=d("openwb-base-modal-dialog"),c=d("router-link"),g=d("openwb-base-alert"),b=d("openwb-base-text-input"),C=d("openwb-base-button-group-input"),f=d("font-awesome-icon"),B=d("openwb-base-array-input"),y=d("openwb-base-click-button"),v=d("openwb-base-card"),_=d("openwb-base-heading"),q=d("openwb-base-submit-buttons");return l(),w(x,null,[r(W,{show:s.showCloudRemoveModal,title:"Cloud Zugang löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[0]||(e[0]=n=>a.removeCloud(n))},{default:t(()=>e[17]||(e[17]=[u(" Willst Du den vorhandenen Cloud Zugang wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ")])),_:1},8,["show"]),m("div",h,[o.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]!==!0?(l(),p(g,{key:0,subtype:"danger"},{default:t(()=>[e[19]||(e[19]=u(" Du musst der ")),r(c,{to:"/System/LegalSettings"},{default:t(()=>e[18]||(e[18]=[u(" Datenschutzerklärung ")])),_:1}),e[20]||(e[20]=u(" zustimmen, um die openWB Cloud nutzen zu können. "))]),_:1})):(l(),w("div",K,[r(g,{subtype:"success"},{default:t(()=>[e[22]||(e[22]=u(" Du hast der ")),r(c,{to:"/System/LegalSettings"},{default:t(()=>e[21]||(e[21]=[u(" Datenschutzerklärung ")])),_:1}),e[23]||(e[23]=u(" zugestimmt und kannst die openWB Cloud nutzen. "))]),_:1}),s.enableRemoveCloudButton?i("",!0):(l(),p(g,{key:0,subtype:"warning"},{default:t(()=>e[24]||(e[24]=[u(" Der Zugang wurde entfernt. Bitte starte die openWB neu, um die Änderungen anzuwenden! ")])),_:1})),a.cloudBridgeKey?i("",!0):(l(),w("form",U,[r(v,{title:"Neuen Zugang erstellen"},D({default:t(()=>[r(g,{subtype:"warning"},{default:t(()=>e[25]||(e[25]=[u(" Derzeit können keine neuen Zugänge für die openWB Cloud angelegt werden. Bitte nutze die in/an der openWB notierten Zugangsdaten im unteren Bereich dieser Seite. Wenn bei einer gekauften openWB keine Zugangsdaten vorhanden sind, schreibe bitte eine Mail unter Angabe der Bestell- und/oder Seriennummer an "),m("a",{href:"mailto:support@openwb.de",subject:"Cloud Zugangsdaten"}," support@openwb.de ",-1),u(" . ")])),_:1}),r(b,{modelValue:s.newCloudData.username,"onUpdate:modelValue":e[1]||(e[1]=n=>s.newCloudData.username=n),title:"Benutzername",required:"",subtype:"user",pattern:"[a-zA-Z]+",disabled:""},null,8,["modelValue"]),r(b,{modelValue:s.newCloudData.email,"onUpdate:modelValue":e[2]||(e[2]=n=>s.newCloudData.email=n),title:"E-Mail",required:"",subtype:"email",disabled:""},null,8,["modelValue"]),r(C,{modelValue:s.newCloudData.partner,"onUpdate:modelValue":e[3]||(e[3]=n=>s.newCloudData.partner=n),disabled:"",title:"Zugang für Partner",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}]},{help:t(()=>e[26]||(e[26]=[u(" Wenn diese openWB über einen Partner erworben wurde, kann hier ein Support-Zugang für diesen freigegeben werden. ")])),_:1},8,["modelValue"]),s.newCloudData.partner?(l(),p(B,{key:0,title:"Gültige Partner-IDs","no-elements-message":"Keine Partner-ID zugeordnet.","model-value":o.$store.state.mqtt["openWB/system/mqtt/valid_partner_ids"],"onUpdate:modelValue":e[4]||(e[4]=n=>o.updateState("openWB/system/mqtt/valid_partner_ids",n))},{"input-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),"element-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),help:t(()=>e[27]||(e[27]=[u(" Die Partner-ID erhältst Du von Deinem Installateur. Ist hier keine Partner-ID eingetragen, dann kann auch niemand - trotz aktiviertem Zugang für Partner - über das Partner-Portal auf diese openWB zugreifen! ")])),_:1},8,["model-value"])):i("",!0)]),_:2},[o.$store.state.mqtt["openWB/general/extern"]===!1&&o.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]===!0?{name:"footer",fn:t(()=>[m("div",N,[r(y,{class:"col-4 btn-outline-success",disabled:""},{default:t(()=>e[28]||(e[28]=[u(" Zugang erstellen ")])),_:1})])]),key:"0"}:void 0]),1024),s.enableNewCloudButton?i("",!0):(l(),p(g,{key:0,subtype:"info",class:"mb-2"},{default:t(()=>e[29]||(e[29]=[u(" Der neue Zugang wird eingerichtet. Dieser Vorgang kann bis zu einer Minute dauern. Bitte warten. ")])),_:1}))])),a.cloudBridgeKey?i("",!0):(l(),w("form",R,[r(v,{title:"Vorhandenen Zugang einrichten"},D({default:t(()=>[r(b,{modelValue:s.connectCloudData.username,"onUpdate:modelValue":e[5]||(e[5]=n=>s.connectCloudData.username=n),title:"Benutzername",required:"",subtype:"user"},null,8,["modelValue"]),r(b,{modelValue:s.connectCloudData.password,"onUpdate:modelValue":e[6]||(e[6]=n=>s.connectCloudData.password=n),title:"Passwort",required:"",subtype:"password"},null,8,["modelValue"]),r(C,{modelValue:s.connectCloudData.partner,"onUpdate:modelValue":e[7]||(e[7]=n=>s.connectCloudData.partner=n),title:"Zugang für Partner",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}]},{help:t(()=>e[30]||(e[30]=[u(" Wenn diese openWB über einen Partner erworben wurde, kann hier ein Support-Zugang für diesen freigegeben werden. ")])),_:1},8,["modelValue"]),s.connectCloudData.partner?(l(),p(B,{key:0,title:"Gültige Partner-IDs","no-elements-message":"Keine Partner-ID zugeordnet.","model-value":o.$store.state.mqtt["openWB/system/mqtt/valid_partner_ids"],"onUpdate:modelValue":e[8]||(e[8]=n=>o.updateState("openWB/system/mqtt/valid_partner_ids",n))},{"input-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),"element-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),help:t(()=>e[31]||(e[31]=[u(" Die Partner-ID erhältst Du von Deinem Installateur. Ist hier keine Partner-ID eingetragen, dann kann auch niemand - trotz aktiviertem Zugang für Partner - über das Partner-Portal auf diese openWB zugreifen! ")])),_:1},8,["model-value"])):i("",!0)]),_:2},[o.$store.state.mqtt["openWB/general/extern"]===!1&&o.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]===!0?{name:"footer",fn:t(()=>[m("div",A,[r(y,{class:V(["col-4",s.enableCloudConnectButton?"btn-success":"btn-outline-success"]),disabled:!s.enableCloudConnectButton,onButtonClicked:a.connectCloud},{default:t(()=>e[32]||(e[32]=[u(" Mit Cloud verbinden ")])),_:1},8,["class","disabled","onButtonClicked"])])]),key:"0"}:void 0]),1024)])),a.cloudBridgeKey?(l(),w("form",F,[!s.enableCloudConnectButton||!s.enableNewCloudButton?(l(),p(g,{key:0,subtype:"warning"},{default:t(()=>e[33]||(e[33]=[u(" Der Zugang wurde eingerichtet. Bitte starte die die openWB neu, um die Änderungen anzuwenden! ")])),_:1})):i("",!0),r(v,{title:"Vorhandener Cloud Zugang"},{footer:t(()=>[m("div",j,[r(y,{class:V(["col-4",s.enableRemoveCloudButton?"btn-danger":"btn-outline-danger"]),disabled:!s.enableRemoveCloudButton,onButtonClicked:e[13]||(e[13]=n=>a.removeCloudModal(n))},{default:t(()=>e[37]||(e[37]=[u(" Zugang löschen ")])),_:1},8,["class","disabled"])])]),default:t(()=>[r(_,null,{default:t(()=>e[34]||(e[34]=[m("span",null,[u(" Mit diesen Zugangsdaten kannst Du dich in der "),m("a",{href:"https://remote.openwb.de/",target:"_blank",rel:"noopener noreferrer"}," openWB Cloud "),u(" anmelden. ")],-1)])),_:1}),r(b,{modelValue:a.cloudSettings.username,"onUpdate:modelValue":e[9]||(e[9]=n=>a.cloudSettings.username=n),title:"Benutzername",required:"",subtype:"user",disabled:""},null,8,["modelValue"]),r(b,{modelValue:a.cloudSettings.password,"onUpdate:modelValue":e[10]||(e[10]=n=>a.cloudSettings.password=n),title:"Passwort",required:"",subtype:"password",disabled:""},null,8,["modelValue"]),e[38]||(e[38]=m("hr",null,null,-1)),r(C,{title:"Zugang für Partner",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":a.cloudSettings.partner,"onUpdate:modelValue":e[11]||(e[11]=n=>o.updateState(a.cloudBridgeKey,n,"access.partner"))},{help:t(()=>e[35]||(e[35]=[u(" Wenn diese openWB über einen Partner erworben wurde, kann hier ein Support-Zugang für diesen freigegeben werden. ")])),_:1},8,["model-value"]),a.cloudSettings.partner?(l(),p(B,{key:0,title:"Gültige Partner-IDs","no-elements-message":"Keine Partner-ID zugeordnet.","model-value":o.$store.state.mqtt["openWB/system/mqtt/valid_partner_ids"],"onUpdate:modelValue":e[12]||(e[12]=n=>o.updateState("openWB/system/mqtt/valid_partner_ids",n))},{"input-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),"element-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),help:t(()=>e[36]||(e[36]=[u(" Die Partner-ID erhältst Du von Deinem Installateur. Ist hier keine Partner-ID eingetragen, dann kann auch niemand - trotz aktiviertem Zugang für Partner - über das Partner-Portal auf diese openWB zugreifen! ")])),_:1},8,["model-value"])):i("",!0)]),_:1})])):i("",!0),a.cloudBridgeKey?(l(),p(q,{key:4,"form-name":"cloudConfigured",onSave:e[14]||(e[14]=n=>o.$emit("save")),onReset:e[15]||(e[15]=n=>o.$emit("reset")),onDefaults:e[16]||(e[16]=n=>o.$emit("defaults"))})):i("",!0)]))])],64)}const Y=I(M,[["render",G],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/CloudConfig.vue"]]);export{Y as default}; diff --git a/web/settings/assets/DataManagement-c0d34f05.js b/web/settings/assets/DataManagement-c0d34f05.js new file mode 100644 index 0000000000..6cc7c62113 --- /dev/null +++ b/web/settings/assets/DataManagement-c0d34f05.js @@ -0,0 +1 @@ +import{l as L,af as z,ag as V,ah as j,ai as R,aj as E,F as H}from"./vendor-fortawesome-3d19d475.js";import{_ as B,C as P}from"./index-beac009d.js";import{_ as U}from"./dynamic-import-helper-be004503.js";import{_ as S,u as m,k as r,l as g,z as w,E as l,y as i,F as y,G as o,x as n,a1 as N,a2 as q,N as W,B as _,q as D,M as F,D as I}from"./vendor-06e11d0e.js";const G={props:{backupCloud:{type:Object,required:!0}},emits:["update:configuration","sendCommand"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})},sendSystemCommand(t,e={}){this.$emit("sendCommand",{command:t,data:e})}}},J=S(G,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/BackupCloudConfigMixin.vue"]]),Z={name:"BackupCloudConfigFallback",mixins:[J]},$={class:"backup-cloud-fallback"},K={key:1};function Q(t,e,u,f,s,a){const b=m("openwb-base-alert"),c=m("openwb-base-textarea");return r(),g("div",$,[Object.keys(t.backupCloud.configuration).length==0?(r(),w(b,{key:0,subtype:"info"},{default:l(()=>[i(' Die Backup-Cloud "'+y(t.backupCloud.name)+'" bietet keine Einstellungen. ',1)]),_:1})):(r(),g("div",K,[o(b,{subtype:"warning"},{default:l(()=>[i(' Es wurde keine Konfigurationsseite für die Backup-Cloud "'+y(t.backupCloud.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),o(c,{title:"Konfiguration",subtype:"json","model-value":t.backupCloud.configuration,"onUpdate:modelValue":e[0]||(e[0]=v=>t.updateConfiguration(v,"configuration"))},{help:l(()=>e[1]||(e[1]=[i(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),o(b,{subtype:"info"},{default:l(()=>[n("pre",null,y(JSON.stringify(t.backupCloud.configuration,void 0,2)),1)]),_:1})]))])}const X=S(Z,[["render",Q],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/OpenwbBackupCloudConfigFallback.vue"]]),Y={name:"OpenwbBackupCloudProxy",props:{backupCloud:{type:Object,required:!0}},emits:["update:configuration","sendCommand"],computed:{myComponent(){return console.debug(`loading backup cloud: ${this.backupCloud.type}`),N({loader:()=>U(Object.assign({"./nextcloud/backup_cloud.vue":()=>B(()=>import("./backup_cloud-b6077718.js"),["assets/backup_cloud-b6077718.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./nfs/backup_cloud.vue":()=>B(()=>import("./backup_cloud-16c908ba.js"),["assets/backup_cloud-16c908ba.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./onedrive/backup_cloud.vue":()=>B(()=>import("./backup_cloud-c3793477.js"),["assets/backup_cloud-c3793477.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./samba/backup_cloud.vue":()=>B(()=>import("./backup_cloud-830d78ba.js"),["assets/backup_cloud-830d78ba.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.backupCloud.type}/backup_cloud.vue`),errorComponent:X})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)},sendCommand(t){this.$emit("sendCommand",t)}}};function ee(t,e,u,f,s,a){const b=m("openwb-base-heading");return r(),g(W,null,[o(b,null,{default:l(()=>[i(' Einstellungen für Backup-Cloud Modul "'+y(u.backupCloud.name)+'" ',1)]),_:1}),(r(),w(q(a.myComponent),{"backup-cloud":u.backupCloud,"onUpdate:configuration":e[0]||(e[0]=c=>a.updateConfiguration(c)),onSendCommand:e[1]||(e[1]=c=>a.sendCommand(c))},null,40,["backup-cloud"]))],64)}const te=S(Y,[["render",ee],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/OpenwbBackupCloudProxy.vue"]]);L.add(z,V,j,R,E);const ne={name:"OpenwbDataManagementView",components:{FontAwesomeIcon:H,OpenwbBackupCloudProxy:te},mixins:[P],props:{installAssistantActive:{type:Boolean,required:!1,default:!1},showBackupCloudSection:{type:Boolean,required:!1,default:!0}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/system/configurable/backup_clouds","openWB/system/backup_cloud/config","openWB/system/backup_cloud/backup_before_update","openWB/system/device/+/component/+/config","openWB/chargepoint/+/config","openWB/vehicle/+/name","openWB/LegacySmartHome/config/get/Devices/+/device_configured","openWB/LegacySmartHome/config/get/Devices/+/device_name"],warningAcknowledged:!1,showRestoreSection:!this.installAssistantActive,selectedRestoreFile:void 0,restoreUploadDone:!1,selectedDataMigrationFile:void 0,dataMigrationUploadDone:!1,dataMigrationConfig:[{sectionName:"Ladepunkte",sectionComponents:[{key:"cp1",label:"Ladepunkt 1",validTypes:["chargePoint"]},{key:"cp2",label:"Ladepunkt 2",validTypes:["chargePoint"]},{key:"cp3",label:"Ladepunkt 3",validTypes:["chargePoint"]},{key:"cp4",label:"Ladepunkt 4",validTypes:["chargePoint"]},{key:"cp5",label:"Ladepunkt 5",validTypes:["chargePoint"]},{key:"cp6",label:"Ladepunkt 6",validTypes:["chargePoint"]},{key:"cp7",label:"Ladepunkt 7",validTypes:["chargePoint"]},{key:"cp8",label:"Ladepunkt 8",validTypes:["chargePoint"]}]},{sectionName:"Zähler",sectionComponents:[{key:"evu",label:"EVU",validTypes:["counter"]},{key:"consumer1",label:"Verbraucher 1",validTypes:["counter"]},{key:"consumer2",label:"Verbraucher 2",validTypes:["counter"]},{key:"consumer3",label:"Verbraucher 3",validTypes:["counter"]}]},{sectionName:"Wechselrichter",sectionComponents:[{key:"pvAll",label:"Wechselrichter (Summe)",validTypes:["inverter"],help:"Die 1.9er Version von openWB speichert lediglich die Summen-Leistung aller Wechselrichter."}]},{sectionName:"Batteriespeicher",sectionComponents:[{key:"bat",label:"Speicher 1",validTypes:["battery"]}]},{sectionName:"Fahrzeuge",sectionComponents:[{key:"ev1",label:"Fahrzeug von Ladepunkt 1",validTypes:["vehicle"]},{key:"ev2",label:"Fahrzeug von Ladepunkt 2",validTypes:["vehicle"]}]},{sectionName:"SmartHome 2.0",sectionComponents:[{key:"sh1",label:"Gerät 1",validTypes:["smartHome"]},{key:"sh2",label:"Gerät 2",validTypes:["smartHome"]},{key:"sh3",label:"Gerät 3",validTypes:["smartHome"]},{key:"sh4",label:"Gerät 4",validTypes:["smartHome"]},{key:"sh5",label:"Gerät 5",validTypes:["smartHome"]},{key:"sh6",label:"Gerät 6",validTypes:["smartHome"]},{key:"sh7",label:"Gerät 7",validTypes:["smartHome"]},{key:"sh8",label:"Gerät 8",validTypes:["smartHome"]},{key:"sh9",label:"Gerät 9",validTypes:["smartHome"]}]}],dataMigrationMapping:{cp1:void 0,cp2:void 0,cp3:void 0,cp4:void 0,cp5:void 0,cp6:void 0,cp7:void 0,cp8:void 0,evu:void 0,pvAll:void 0,bat:void 0,consumer1:void 0,consumer2:void 0,consumer3:void 0,sh1:void 0,sh2:void 0,sh3:void 0,sh4:void 0,sh5:void 0,sh6:void 0,sh7:void 0,sh8:void 0,sh9:void 0,ev1:void 0,ev2:void 0}}},computed:{backupCloudList(){return this.$store.state.mqtt["openWB/system/configurable/backup_clouds"]},componentConfigurations(){return this.getWildcardTopics("openWB/system/device/+/component/+/config")},chargePointOptions(){let t=this.getWildcardTopics("openWB/chargepoint/+/config");var e=[];for(const u of Object.values(t))e.push({value:u.id,text:u.name});return e},counterOptions(){var t=[];for(const e of Object.values(this.componentConfigurations))this.isComponentType(e.type,"counter")&&t.push({value:e.id,text:e.name});return t},inverterOptions(){var t=[];for(const e of Object.values(this.componentConfigurations))this.isComponentType(e.type,"inverter")&&t.push({value:e.id,text:e.name});return t},batteryOptions(){var t=[];for(const e of Object.values(this.componentConfigurations))this.isComponentType(e.type,"bat")&&t.push({value:e.id,text:e.name});return t},vehicleOptions(){let t=this.getWildcardTopics("openWB/vehicle/+/name");var e=[];for(const[u,f]of Object.entries(t)){let s=parseInt(u.match(/\/(\d\d?)\//)[1]);e.push({value:s,text:f})}return e},smartHomeOptions(){let t=this.getWildcardTopics("openWB/LegacySmartHome/config/get/Devices/+/device_configured");var e=[];for(const[u,f]of Object.entries(t))if(f==1){let s=parseInt(u.match(/\/(\d\d?)\//)[1]);e.push({value:s,text:this.$store.state.mqtt[`openWB/LegacySmartHome/config/get/Devices/${s}/device_name`]})}return e}},methods:{isComponentType(t,e){return t.split("_").includes(e)},getBackupCloudDefaultConfiguration(t){const e=this.backupCloudList.find(u=>u.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...JSON.parse(JSON.stringify(e.defaults))}:(console.warn("no default configuration found for backup cloud type!",t),{})},sendSystemCommand(t,e={}){this.$emit("sendCommand",{command:t,data:e})},getMigrationOptions(t){var e=[{value:void 0,text:"-- nicht übernehmen --"}];return t.includes("chargePoint")&&e.push(...this.chargePointOptions),t.includes("counter")&&e.push(...this.counterOptions),t.includes("inverter")&&e.push(...this.inverterOptions),t.includes("battery")&&e.push(...this.batteryOptions),t.includes("vehicle")&&e.push(...this.vehicleOptions),t.includes("smartHome")&&e.push(...this.smartHomeOptions),e},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)},updateSelectedBackupCloud(t){this.updateState("openWB/system/backup_cloud/config",t,"type"),this.updateState("openWB/system/backup_cloud/config",this.getBackupCloudDefaultConfiguration(t))},updateSelectedRestoreFile(t){this.selectedRestoreFile=t.target.files[0]},updateSelectedDataMigrationFile(t){this.selectedDataMigrationFile=t.target.files[0]},uploadFile(t,e,u){return new Promise(f=>{if(e!==void 0){this.$root.postClientMessage("Hochladen der Datei gestartet.","info");let s=new FormData;s.append("file",e),s.append("target",t),this.axios.post(location.protocol+"//"+location.host+"/openWB/web/settings/uploadFile.php",s,{headers:{"Content-Type":"multipart/form-data"}}).then(()=>{this.$root.postClientMessage(u,"success"),f(!0)}).catch(a=>{if(a.response){console.error(a.response.status,a.response.data);var b="Hochladen der Datei fehlgeschlagen!
"+a.response.status+": "+a.response.data}else a.request?(console.error(a.request),b+="Es wurde keine Antwort vom Server empfangen."):(console.error("Error",a.message),b+="Es ist ein unbekannter Fehler aufgetreten.");this.$root.postClientMessage(b,"danger"),f(!1)})}else console.error("no file selected for upload"),f(!1)})},async uploadRestoreFile(){const t="Die Sicherungsdatei wurde erfolgreich hochgeladen. Sie können die Wiederherstellung jetzt starten.";this.restoreUploadDone=await this.uploadFile("restore",this.selectedRestoreFile,t)},async uploadDataMigrationFile(){const t="Die Sicherungsdatei wurde erfolgreich hochgeladen. Sie können den Import jetzt starten.";this.dataMigrationUploadDone=await this.uploadFile("migrate",this.selectedDataMigrationFile,t)},restoreBackup(){this.sendSystemCommand("restoreBackup"),this.$store.commit("storeLocal",{name:"reloadRequired",value:!0})},dataMigration(){this.sendSystemCommand("dataMigration",this.dataMigrationMapping)},factoryReset(){this.sendSystemCommand("factoryReset",{}),this.$store.commit("storeLocal",{name:"reloadRequired",value:!0})}}},oe={class:"system"},ie={key:1},se={name:"backupForm"},ae={class:"row justify-content-center"},le={class:"col-md-4 d-flex py-1 justify-content-center"},ue={key:0,name:"restoreForm"},de={class:"input-group"},re={class:"input-group-prepend"},ce={class:"input-group-text"},pe={class:"custom-file"},me={id:"input-file-label",class:"custom-file-label",for:"input-file","data-browse":"Suchen"},be={class:"input-group-append"},ge=["disabled"],fe={class:"row justify-content-center"},he={class:"col-md-4 d-flex py-1 justify-content-center"},ke={key:1,name:"cloudBackupForm"},ye={key:0},ve={name:"dataMigrationForm"},_e={class:"input-group"},we={class:"input-group-prepend"},Ce={class:"input-group-text"},Be={class:"custom-file"},De={id:"data-migration-file-label",class:"custom-file-label",for:"data-migration-file","data-browse":"Suchen"},Se={class:"input-group-append"},Oe=["disabled"],We={class:"row justify-content-center"},Me={class:"col-md-4 d-flex py-1 justify-content-center"},Fe={key:1,name:"resetForm"},xe={class:"row justify-content-center"},Ae={class:"col-md-4 d-flex py-1 justify-content-center"};function Te(t,e,u,f,s,a){const b=m("openwb-base-button-group-input"),c=m("openwb-base-alert"),v=m("openwb-base-heading"),k=m("font-awesome-icon"),C=m("openwb-base-click-button"),M=m("openwb-base-select-input"),x=m("openwb-base-button-input"),A=m("openwb-backup-cloud-proxy"),T=m("openwb-base-submit-buttons"),O=m("openwb-base-card");return r(),g("div",oe,[u.installAssistantActive?_("",!0):(r(),w(c,{key:0,subtype:"danger"},{default:l(()=>[e[17]||(e[17]=n("h2",null,"Achtung!",-1)),e[18]||(e[18]=n("p",null," Vor allen Aktionen auf dieser Seite ist sicherzustellen, dass kein Ladevorgang aktiv ist! Zur Sicherheit bitte zusätzlich alle Fahrzeuge von der Ladestation / den Ladestationen abstecken! ",-1)),o(b,{modelValue:s.warningAcknowledged,"onUpdate:modelValue":e[0]||(e[0]=p=>s.warningAcknowledged=p),title:"Ich habe die Warnung verstanden",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}]},null,8,["modelValue"])]),_:1})),s.warningAcknowledged||u.installAssistantActive?(r(),g("div",ie,[o(O,{title:"Sicherung / Wiederherstellung",subtype:"success",collapsible:!0,collapsed:!u.installAssistantActive},{default:l(()=>{var p,h;return[n("form",se,[o(v,null,{default:l(()=>e[19]||(e[19]=[i("Sicherung")])),_:1}),o(c,{subtype:"danger"},{default:l(()=>e[20]||(e[20]=[i(' Aktuell können nur Sicherungen wiederhergestellt werden, die in den Entwicklungszweigen "master", "Beta" oder "Release" erstellt wurden! ')])),_:1}),o(c,{subtype:"info"},{default:l(()=>e[21]||(e[21]=[i(" Nachdem die Sicherung abgeschlossen ist, kann die erstellte Datei über den Link in der Benachrichtigung oder "),n("a",{href:"/openWB/data/backup/",target:"_blank"},"hier",-1),i(" heruntergeladen werden. Beim Herunterladen bitte darauf achten, dass die Datei mit der Endung .tar.gz gespeichert wird. Ggf. das automatische Entpacken des Browsers deaktivieren. ")])),_:1}),n("div",ae,[n("div",le,[o(C,{class:"btn-success clickable",onButtonClicked:e[1]||(e[1]=d=>a.sendSystemCommand("createBackup",{use_extended_filename:!0}))},{default:l(()=>[e[22]||(e[22]=i(" Sicherung erstellen ")),o(k,{"fixed-width":"",icon:["fas","archive"]})]),_:1})])])]),s.showRestoreSection?(r(),g("form",ue,[e[27]||(e[27]=n("hr",null,null,-1)),o(v,null,{default:l(()=>e[23]||(e[23]=[i("Wiederherstellung")])),_:1}),o(c,{subtype:"danger"},{default:l(()=>e[24]||(e[24]=[i(" Für die Wiederherstellung wird eine aktive Internetverbindung benötigt."),n("br",null,null,-1),i(' Aktuell können nur Sicherungen wiederhergestellt werden, die in den Entwicklungszweigen "master", "Beta" oder "Release" erstellt wurden! ')])),_:1}),n("div",de,[n("div",re,[n("div",ce,[o(k,{"fixed-width":"",icon:["fas","file-archive"]})])]),n("div",pe,[n("input",{id:"input-file",type:"file",class:"custom-file-input",accept:".tar.gz,application/gzip,application/tar+gzip",onChange:e[2]||(e[2]=d=>a.updateSelectedRestoreFile(d))},null,32),n("label",me,y(s.selectedRestoreFile?s.selectedRestoreFile.name:"Bitte eine Datei auswählen"),1)]),n("div",be,[n("button",{class:D(["btn",s.selectedRestoreFile?"btn-success clickable":"btn-outline-success"]),disabled:!s.selectedRestoreFile,type:"button",onClick:e[3]||(e[3]=d=>a.uploadRestoreFile())},[e[25]||(e[25]=i(" Hochladen ")),o(k,{"fixed-width":"",icon:["fas","upload"]})],10,ge)])]),n("div",fe,[n("div",he,[o(C,{class:D(s.restoreUploadDone?"btn-success clickable":"btn-outline-success"),disabled:!s.restoreUploadDone,onButtonClicked:e[4]||(e[4]=d=>a.restoreBackup())},{default:l(()=>[e[26]||(e[26]=i(" Wiederherstellung starten ")),o(k,{"fixed-width":"",icon:["fas","box-open"]})]),_:1},8,["class","disabled"])])])])):_("",!0),u.showBackupCloudSection?(r(),g("form",ke,[e[31]||(e[31]=n("hr",null,null,-1)),o(v,null,{default:l(()=>e[28]||(e[28]=[i(" Automatische Sicherung in einen Cloud-Dienst ")])),_:1}),o(c,{subtype:"info"},{default:l(()=>e[29]||(e[29]=[i(" Ist die openWB als primary konfiguriert, wird zwischen Mitternacht und 5:00 Uhr automatisch eine Sicherung erstellt und in den angegebenen Cloud-Dienst (nicht openWB Cloud!) hochgeladen. Ist kein Cloud-Dienst konfiguriert, wird keine automatische Sicherung erstellt. Die automatische Sicherung kann unabhängig von der openWB Cloud genutzt werden."),n("br",null,null,-1),i(" Die manuelle Cloud-Sicherung und -falls aktiviert- die Sicherung vor einem Update werden sowohl von einer primary als auch von einer secondary durchgeführt."),n("br",null,null,-1),i(" Die Anleitung zur Konfiguration des Cloud-Dienstes findest Du "),n("a",{href:"https://github.com/openWB/core/wiki/Cloud-Sicherung",target:"_blank",rel:"noopener noreferrer"}," hier ",-1),i(" . ")])),_:1}),o(M,{class:"mb-2",title:"Backup-Cloud",options:a.backupCloudList,"model-value":(p=t.$store.state.mqtt["openWB/system/backup_cloud/config"])==null?void 0:p.type,"onUpdate:modelValue":e[5]||(e[5]=d=>a.updateSelectedBackupCloud(d))},null,8,["options","model-value"]),(h=t.$store.state.mqtt["openWB/system/backup_cloud/config"])!=null&&h.type?(r(),g("div",ye,[o(b,{title:"Sicherung vor System-Update",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/system/backup_cloud/backup_before_update"],"onUpdate:modelValue":e[6]||(e[6]=d=>t.updateState("openWB/system/backup_cloud/backup_before_update",d))},{help:l(()=>e[30]||(e[30]=[i(" Ist diese Option aktiviert, dann wird vor jedem System-Update automatisch eine Sicherung erstellt und diese in die Backup-Cloud hochgeladen. ")])),_:1},8,["model-value"]),o(x,{title:"Manuelle Cloud-Sicherung","button-text":"Sicherung erstellen und hochladen",subtype:"success",onButtonClicked:e[7]||(e[7]=d=>a.sendSystemCommand("createCloudBackup",{}))}),o(A,{"backup-cloud":t.$store.state.mqtt["openWB/system/backup_cloud/config"],"onUpdate:configuration":e[8]||(e[8]=d=>a.updateConfiguration("openWB/system/backup_cloud/config",d)),onSendCommand:e[9]||(e[9]=d=>a.sendSystemCommand(d.command,d.args))},null,8,["backup-cloud"])])):_("",!0),o(T,{"form-name":"cloudBackupForm","hide-reset":!0,"hide-defaults":!0,onSave:e[10]||(e[10]=d=>t.$emit("save")),onReset:e[11]||(e[11]=d=>t.$emit("reset")),onDefaults:e[12]||(e[12]=d=>t.$emit("defaults"))})])):_("",!0)]}),_:1},8,["collapsed"]),u.installAssistantActive?_("",!0):(r(),w(O,{key:0,title:"Datenübernahme",subtype:"success",collapsible:!0,collapsed:!0},{default:l(()=>[n("form",ve,[o(c,{subtype:"info"},{default:l(()=>e[32]||(e[32]=[i(" Hier kann die Sicherung einer älteren 1.9er Version hochgeladen werden, um vorhandene historische Daten (Diagramme und Ladeprotokolle) sowie Cloud-Daten und Seriennummer in diese Installation zu importieren. Die Zuordnung zwischen den alten und neuen Komponenten muss manuell durchgeführt werden. ")])),_:1}),o(c,{subtype:"danger"},{default:l(()=>e[33]||(e[33]=[i(" Die Portierung kann bei vielen historischen Daten von mehreren Jahren durchaus bis zu 30 Minuten dauern. Die openWB in dieser Zeit bitte nicht herunterfahren! Du erhältst eine Meldung, wenn die Datenübernahme abgeschlossen ist."),n("br",null,null,-1),i(" Vor der Datenübernahme unbedingt eine Sicherung erstellen."),n("br",null,null,-1),i(" Die Datenübernahme kann nur durch Einspielen einer Sicherung rückgängig gemacht werden! ")])),_:1}),n("div",_e,[n("div",we,[n("div",Ce,[o(k,{"fixed-width":"",icon:["fas","file-archive"]})])]),n("div",Be,[n("input",{id:"data-migration-file",type:"file",class:"custom-file-input",accept:".tar.gz,application/gzip,application/tar+gzip",onChange:e[13]||(e[13]=p=>a.updateSelectedDataMigrationFile(p))},null,32),n("label",De,y(s.selectedDataMigrationFile?s.selectedDataMigrationFile.name:"Bitte eine Datei auswählen"),1)]),n("div",Se,[n("button",{class:D(["btn",s.selectedDataMigrationFile?"btn-success clickable":"btn-outline-success"]),disabled:!s.selectedDataMigrationFile,type:"button",onClick:e[14]||(e[14]=p=>a.uploadDataMigrationFile())},[e[34]||(e[34]=i(" Hochladen ")),o(k,{"fixed-width":"",icon:["fas","upload"]})],10,Oe)])]),o(v,null,{default:l(()=>e[35]||(e[35]=[i(" Zuordnung der Komponenten ")])),_:1}),(r(!0),g(W,null,F(s.dataMigrationConfig,p=>(r(),g("div",{key:p.sectionName},[o(v,null,{default:l(()=>[i(y(p.sectionName),1)]),_:2},1024),(r(!0),g(W,null,F(p.sectionComponents,h=>(r(),w(M,{key:h.key,modelValue:s.dataMigrationMapping[h.key],"onUpdate:modelValue":d=>s.dataMigrationMapping[h.key]=d,title:h.label,options:a.getMigrationOptions(h.validTypes)},I({_:2},[h.help?{name:"help",fn:l(()=>[i(y(h.help),1)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","title","options"]))),128))]))),128)),n("div",We,[n("div",Me,[o(C,{class:D(s.dataMigrationUploadDone?"btn-success clickable":"btn-outline-success"),disabled:!s.dataMigrationUploadDone,onButtonClicked:e[15]||(e[15]=p=>a.dataMigration())},{default:l(()=>[e[36]||(e[36]=i(" Datenübernahme starten ")),o(k,{"fixed-width":"",icon:["fas","box-open"]})]),_:1},8,["class","disabled"])])])])]),_:1})),u.installAssistantActive?_("",!0):(r(),g("form",Fe,[o(O,{title:"Zurücksetzen",subtype:"danger",collapsible:!0,collapsed:!0},{footer:l(()=>[n("div",xe,[n("div",Ae,[o(C,{class:"btn-danger clickable",onButtonClicked:e[16]||(e[16]=p=>a.factoryReset())},{default:l(()=>[o(k,{"fixed-width":"",icon:["fas","skull-crossbones"]}),e[38]||(e[38]=i(" Zurücksetzen ")),o(k,{"fixed-width":"",icon:["fas","skull-crossbones"]})]),_:1})])])]),default:l(()=>[o(c,{subtype:"danger"},{default:l(()=>e[37]||(e[37]=[i(" Alle Einstellungen, angelegte Geräte/Komponenten, Ladepunkte und Fahrzeuge, etc., Tages-, Monats- und Jahresauswertungen sowie das Ladeprotokoll werden unwiederbringlich gelöscht. Auch die Vorkonfiguration im Auslieferungszustand wird gelöscht. Die openWB muss danach komplett neu eingerichtet werden. Die openWB wird hierfür automatisch neu gestartet. Bitte erstelle vor dem Zurücksetzen eine Sicherung! ")])),_:1})]),_:1})]))])):_("",!0)])}const Le=S(ne,[["render",Te],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/DataManagement.vue"]]),Ee=Object.freeze(Object.defineProperty({__proto__:null,default:Le},Symbol.toStringTag,{value:"Module"}));export{J as B,Le as D,Ee as a}; diff --git a/web/settings/assets/DebugConfig-cfbd3f0e.js b/web/settings/assets/DebugConfig-cfbd3f0e.js new file mode 100644 index 0000000000..e182fff8ff --- /dev/null +++ b/web/settings/assets/DebugConfig-cfbd3f0e.js @@ -0,0 +1,2 @@ +import{C as k}from"./index-beac009d.js";import{l as B,a1 as D,a2 as L,F as W}from"./vendor-fortawesome-3d19d475.js";import{_,u as s,k as d,z as w,E as l,G as i,q as C,A as F,x as v,F as x,l as b,N as y,M as N,y as f}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";B.add(D,L);const $={name:"OpenwbLogCard",components:{FontAwesomeIcon:W},props:{title:{type:String,required:!0},logFile:{type:String,required:!0}},data(){return{logData:"-- noch nicht geladen --",loading:!1}},methods:{async getFilePromise(n,e=!1){return this.axios.get(location.protocol+"//"+location.host+n).then(t=>t.data).catch(t=>t.response?t.response.status==404&&e?"":`A 404 is expected if running node.js dev server! +`+t.response.status+" "+t.response.statusText+": "+t.response.request.responseURL:t.request?t.request:t.message)},async loadLog(n){this.logData="wird aktualisiert...",this.loading=!0;var e="";for(let r=4;r>=1;r--){const a=await this.getFilePromise(n+"."+r,!0);e+=a}const t=await this.getFilePromise(n);e+=t,this.logData=e,this.loading=!1}}},S={class:"log-data mb-0"};function P(n,e,t,r,a,g){const u=s("font-awesome-icon"),m=s("openwb-base-avatar"),p=s("openwb-base-card");return d(),w(p,{title:t.title,class:"log-card mt-3",collapsible:!0,collapsed:!0},{actions:l(()=>[i(m,{class:"bg-success clickable",onClick:e[0]||(e[0]=F(c=>g.loadLog(t.logFile),["stop"]))},{default:l(()=>[i(u,{"fixed-width":"",class:C(a.loading?"fa-spin-pulse":""),icon:a.loading?["fas","spinner"]:["fas","file-download"]},null,8,["class","icon"])]),_:1})]),default:l(()=>[v("pre",S,x(a.logData),1)]),_:1},8,["title"])}const I=_($,[["render",P],["__scopeId","data-v-a320c3d6"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/debug_config/LogCard.vue"]]),q={name:"OpenwbDebuggingView",components:{OpenwbLogCard:I},mixins:[k],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/system/debug_level"],logFiles:[{title:"Main-Log",fileName:"/openWB/ramdisk/main.log"},{title:"Log des internen Ladepunktes",fileName:"/openWB/ramdisk/internal_chargepoint.log"},{title:"MQTT-Log",fileName:"/openWB/ramdisk/mqtt.log"},{title:"SoC-Log",fileName:"/openWB/ramdisk/soc.log"},{title:"Protokoll des letzten Updates",fileName:"/openWB/data/log/update.log"},{title:"Protokoll des Remote-Dienstes",fileName:"/openWB/ramdisk/remote_support.log"},{title:"Protokoll des SmartHome Dienstes",fileName:"/openWB/ramdisk/smarthome.log"},{title:"Protokoll der Datenmigration",fileName:"/openWB/data/log/data_migration.log"}]}}},z={class:"debugging"},V={name:"debugConfigForm"};function T(n,e,t,r,a,g){const u=s("openwb-base-button-group-input"),m=s("openwb-base-alert"),p=s("openwb-base-card"),c=s("openwb-base-submit-buttons"),h=s("openwb-log-card");return d(),b("div",z,[v("form",V,[i(p,{title:"Protokollierung"},{default:l(()=>[i(u,{title:"Debug Level",buttons:[{buttonValue:30,text:"Warnungen und Fehler"},{buttonValue:20,text:"Info"},{buttonValue:10,text:"Details"}],"model-value":n.$store.state.mqtt["openWB/system/debug_level"],"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateState("openWB/system/debug_level",o))},{help:l(()=>e[4]||(e[4]=[f(' Wenn der Debug Level auf "Info" oder "Details" gesetzt wird, werden mehr Informationen in die Logdateien geschrieben. Im normalen Betrieb sollte immer "Warnungen und Fehler" gewählt werden, um die Schreibvorgänge auf der SD-Karte zu reduzieren. ')])),_:1},8,["model-value"]),i(m,{subtype:"warning"},{default:l(()=>e[5]||(e[5]=[f(' Achtung! In den Einstellungen "Info" und "Details" können in den Logdateien sensible Daten wie Benutzernamen und Passwörter enthalten sein. Diese sollten vor dem Veröffentlichen z.B. im Forum unkenntlich gemacht werden. Private IP-Adressen (z.B. 192.168.x.x) müssen nicht maskiert werden, da diese nicht über das Internet erreichbar sind. ')])),_:1})]),_:1}),i(c,{"form-name":"debugConfigForm",onSave:e[1]||(e[1]=o=>n.$emit("save")),onReset:e[2]||(e[2]=o=>n.$emit("reset")),onDefaults:e[3]||(e[3]=o=>n.$emit("defaults"))})]),(d(!0),b(y,null,N(a.logFiles,o=>(d(),w(h,{key:o.fileName,title:o.title,"log-file":o.fileName},null,8,["title","log-file"]))),128))])}const G=_(q,[["render",T],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/DebugConfig.vue"]]);export{G as default}; diff --git a/web/settings/assets/GeneralChargeConfig-f0122900.js b/web/settings/assets/GeneralChargeConfig-f0122900.js new file mode 100644 index 0000000000..29326c89eb --- /dev/null +++ b/web/settings/assets/GeneralChargeConfig-f0122900.js @@ -0,0 +1 @@ +import{_ as b,C as L}from"./index-beac009d.js";import{_ as M}from"./dynamic-import-helper-be004503.js";import{_ as h,u as s,k as a,l as u,G as n,E as o,y as i,F as B,x as l,a1 as O,z as W,a2 as q,N as F,B as y}from"./vendor-06e11d0e.js";const U={props:{electricityTariff:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},A=h(U,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/ElectricityTariffConfigMixin.vue"]]),D={name:"ElectricityTariffConfigFallback",mixins:[A]},N={class:"backup-cloud-fallback"};function I(t,e,m,k,z,g){const d=s("openwb-base-alert"),p=s("openwb-base-textarea");return a(),u("div",N,[n(d,{subtype:"warning"},{default:o(()=>[i(' Es wurde keine Konfigurationsseite für den Anbieter "'+B(t.electricityTariff.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),n(p,{title:"Konfiguration",subtype:"json","model-value":t.electricityTariff.configuration,"onUpdate:modelValue":e[0]||(e[0]=c=>t.updateConfiguration(c,"configuration"))},{help:o(()=>e[1]||(e[1]=[i(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),n(d,{subtype:"info"},{default:o(()=>[l("pre",null,B(JSON.stringify(t.electricityTariff.configuration,void 0,2)),1)]),_:1})])}const Z=h(D,[["render",I],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/OpenwbElectricityTariffConfigFallback.vue"]]),j={name:"OpenwbElectricityTariffProxy",props:{electricityTariff:{type:Object,required:!0}},emits:["update:configuration"],computed:{myComponent(){return console.debug(`loading electricity tariff cloud: ${this.electricityTariff.type}`),O({loader:()=>M(Object.assign({"./awattar/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-d7a471dd.js"),["assets/electricity_tariff-d7a471dd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-beac009d.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./energycharts/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-03647be7.js"),["assets/electricity_tariff-03647be7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-beac009d.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./rabot/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-23e4686c.js"),["assets/electricity_tariff-23e4686c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-beac009d.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tibber/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-29ddb8c1.js"),["assets/electricity_tariff-29ddb8c1.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-beac009d.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./voltego/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-68a76ca0.js"),["assets/electricity_tariff-68a76ca0.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-beac009d.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.electricityTariff.type}/electricity_tariff.vue`),errorComponent:Z})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function R(t,e,m,k,z,g){const d=s("openwb-base-heading");return a(),u(F,null,[n(d,null,{default:o(()=>[i(' Einstellungen für Modul "'+B(m.electricityTariff.name)+'" ',1)]),_:1}),(a(),W(q(g.myComponent),{"electricity-tariff":m.electricityTariff,"onUpdate:configuration":e[0]||(e[0]=p=>g.updateConfiguration(p))},null,40,["electricity-tariff"]))],64)}const H=h(j,[["render",R],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/OpenwbElectricityTariffProxy.vue"]]),G={name:"OpenwbGeneralChargeConfigView",components:{OpenwbElectricityTariffProxy:H},mixins:[L],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/bat/config/power_limit_mode","openWB/bat/get/power_limit_controllable","openWB/general/extern","openWB/general/chargemode_config/phase_switch_delay","openWB/general/chargemode_config/retry_failed_phase_switches","openWB/general/chargemode_config/unbalanced_load","openWB/general/chargemode_config/unbalanced_load_limit","openWB/general/prices/bat","openWB/general/prices/grid","openWB/general/prices/pv","openWB/optional/et/provider","openWB/optional/ocpp/config","openWB/system/configurable/electricity_tariffs"]}},computed:{electricityTariffList(){return this.$store.state.mqtt["openWB/system/configurable/electricity_tariffs"]}},methods:{getElectricityTariffDefaultConfiguration(t){const e=this.electricityTariffList.find(m=>m.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...e.defaults}:(console.warn("no default configuration found for electricity tariff type!",t),{})},updateSelectedElectricityTariff(t){this.updateState("openWB/optional/et/provider",t,"type"),this.updateState("openWB/optional/et/provider",this.getElectricityTariffDefaultConfiguration(t))},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)}}},x={class:"generalChargeConfig"},J={name:"generalChargeConfigForm"},K={key:0},Q={key:1},X={key:2},Y={key:0},ee={key:1},te={key:0},ne={key:2},ie={key:3},re={key:0};function oe(t,e,m,k,z,g){const d=s("openwb-base-alert"),p=s("openwb-base-button-group-input"),c=s("openwb-base-range-input"),v=s("openwb-base-heading"),_=s("openwb-base-number-input"),w=s("openwb-base-card"),S=s("openwb-base-select-input"),$=s("openwb-electricity-tariff-proxy"),V=s("openwb-base-text-input"),T=s("openwb-base-submit-buttons");return a(),u("div",x,[l("form",J,[n(w,{title:"Allgemein"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(a(),u("div",K,[n(d,{subtype:"info"},{default:o(()=>e[16]||(e[16]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(a(),u("div",Q,[n(p,{title:"Begrenzung der Schieflast",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/unbalanced_load"],"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateState("openWB/general/chargemode_config/unbalanced_load",r))},{help:o(()=>e[17]||(e[17]=[i(" Wenn diese Option aktiviert ist, werden nicht-dreiphasige Ladevorgänge so geregelt, dass am Netzanschlusspunkt (EVU-Zähler) die eingestellte Grenze für die Schieflast nicht überschritten wird. Hierfür muss der EVU-Zähler einzelne Phasenströme bereitstellen!"),l("br",null,null,-1),i(' Weiterhin müssen bei den Ladepunkten sowie Fahrzeugen sämtliche Angaben zur Anzahl angeschlossener/unterstützter Phasen und der Phasenrotation hinterlegt werden, damit der Regelung bekannt ist, welcher Ladevorgang welche Phase am Netzanschluss beeinflusst. siehe "Konfiguration - Ladepunkte -> elektrischer Anschluss - Phase 1" und "Konfiguration - Fahrzeuge -> Fahrzeug-Profile" ')])),_:1},8,["model-value"]),t.$store.state.mqtt["openWB/general/chargemode_config/unbalanced_load"]?(a(),W(c,{key:0,title:"Erlaubte Schieflast",min:10,max:32,step:1,unit:"A","model-value":t.$store.state.mqtt["openWB/general/chargemode_config/unbalanced_load_limit"],"onUpdate:modelValue":e[1]||(e[1]=r=>t.updateState("openWB/general/chargemode_config/unbalanced_load_limit",r))},{help:o(()=>e[18]||(e[18]=[i(" Hiermit wird festgelegt, welche Schieflast am Netzanschlusspunkt erlaubt ist. Bei Überschreitung werden gezielt einzelne Ladevorgänge in der Leistung begrenzt. ")])),_:1},8,["model-value"])):y("",!0),n(p,{title:"Phasenumschaltung wiederholt anstoßen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/retry_failed_phase_switches"],"onUpdate:modelValue":e[2]||(e[2]=r=>t.updateState("openWB/general/chargemode_config/retry_failed_phase_switches",r))},{help:o(()=>e[19]||(e[19]=[i(" Wenn diese Option aktiviert ist, werden bis zu drei Umschaltversuche vorgenommen, wenn die vorgegebene und genutzte Phasenzahl nicht übereinstimmen. Wird die Option deaktiviert, wird nur eine Umschaltung durchgeführt."),l("br",null,null,-1),i(" Die gezählten Fehlversuche werden mit dem Abstecken zurückgesetzt. ")])),_:1},8,["model-value"]),n(c,{title:"Verzögerung automat. Phasenumschaltung",min:0,max:14,step:1,labels:[{label:"1⇑ 15⇓ Min.",value:1},{label:"2⇑ 14⇓ Min.",value:2},{label:"3⇑ 13⇓ Min.",value:3},{label:"4⇑ 12⇓ Min.",value:4},{label:"5⇑ 11⇓ Min.",value:5},{label:"6⇑ 10⇓ Min.",value:6},{label:"7⇑ 9⇓ Min.",value:7},{label:"8⇑ 8⇓ Min.",value:8},{label:"9⇑ 7⇓ Min.",value:9},{label:"10⇑ 6⇓ Min.",value:10},{label:"11⇑ 5⇓ Min.",value:11},{label:"12⇑ 4⇓ Min.",value:12},{label:"13⇑ 3⇓ Min.",value:13},{label:"14⇑ 2⇓ Min.",value:14},{label:"15⇑ 1⇓ Min.",value:15}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/phase_switch_delay"],"onUpdate:modelValue":e[3]||(e[3]=r=>t.updateState("openWB/general/chargemode_config/phase_switch_delay",r))},{help:o(()=>e[20]||(e[20]=[i(" Um zu viele Umschaltungen zu vermeiden, wird Anhand dieses Wertes definiert, wann die Umschaltung erfolgen soll. Ist für durchgehend x Minuten die Maximalstromstärke erreicht, wird auf mehrphasige Ladung ⇑ umgestellt. Ist die Ladung nur für ein Intervall unterhalb der Maximalstromstärke, beginnt das Intervall für die Umschaltung erneut. Ist die Ladung im mehrphasigen Modus für 16 - x Minuten auf der Minimalstromstärke, wird wieder auf einphasige Ladung ⇓ gewechselt."),l("br",null,null,-1),i(" Ist ausreichend Überschuss vorhanden, wird beim Ladestart die Umschaltverzögerung nicht abgewartet, sondern direkt mit mehrphasiger Ladung begonnen. ")])),_:1},8,["model-value"]),e[24]||(e[24]=l("hr",null,null,-1)),n(v,null,{help:o(()=>e[21]||(e[21]=[i(" Zur Berechnung der Ladekosten im Lade-Protokoll werden stundenweise die Anteile der Stromquellen (Speicher, Netz, PV) berechnet und mit den hier angegebenen Preisen multipliziert."),l("br",null,null,-1),i(" Ist die Abrechnung über das Ladeprotokoll, z.B. mit dem Arbeitgeber, vereinbart, ist bei allen drei Feldern der vereinbarte Preis einzutragen. ")])),default:o(()=>[e[22]||(e[22]=i(" Berechnung der Ladekosten "))]),_:1}),t.$store.state.mqtt["openWB/optional/et/provider"]&&t.$store.state.mqtt["openWB/optional/et/provider"].type?(a(),W(d,{key:1,subtype:"info"},{default:o(()=>e[23]||(e[23]=[i(" Für den Netzbezug wird der dynamische Strompreis des Anbieters für variable Stromtarife verwendet. ")])),_:1})):(a(),u("div",X,[n(_,{title:"Preis für Netzbezug",step:.001,precision:3,unit:"ct/kWh",required:"","model-value":t.$store.state.mqtt["openWB/general/prices/grid"]*1e5,"onUpdate:modelValue":e[4]||(e[4]=r=>t.updateState("openWB/general/prices/grid",parseFloat((r/1e5).toFixed(7))))},null,8,["model-value"])])),n(_,{title:"Preis für Speicherentladung",step:.001,precision:3,unit:"ct/kWh",required:"","model-value":t.$store.state.mqtt["openWB/general/prices/bat"]*1e5,"onUpdate:modelValue":e[5]||(e[5]=r=>t.updateState("openWB/general/prices/bat",parseFloat((r/1e5).toFixed(7))))},null,8,["model-value"]),n(_,{title:"Preis für PV-Strom",step:.001,precision:3,unit:"ct/kWh",required:"","model-value":t.$store.state.mqtt["openWB/general/prices/pv"]*1e5,"onUpdate:modelValue":e[6]||(e[6]=r=>t.updateState("openWB/general/prices/pv",parseFloat((r/1e5).toFixed(7))))},null,8,["model-value"])]))]),_:1}),n(w,{title:"Optional"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(a(),u("div",Y,[n(d,{subtype:"info"},{default:o(()=>e[25]||(e[25]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(a(),u("div",ee,[n(v,null,{default:o(()=>e[26]||(e[26]=[i(" Variable Stromtarife ")])),_:1}),n(d,{subtype:"info"},{default:o(()=>e[27]||(e[27]=[i(" Bei Sofort- und Zeitladen wird nur geladen, wenn der Strompreis unter dem angegebenen maximalen Strompreis liegt. Für Zielladen wird die Ladedauer ermittelt und dann zu den günstigsten Stunden geladen."),l("br",null,null,-1),i(" Wenn keine Preise abgefragt werden können, wird bei Sofort- und Zeitladen immer geladen und bei Zielladen zunächst mit PV-Überschuss und zum Erreichen des Zieltermins mit Netzstrom. ")])),_:1}),n(S,{class:"mb-2",title:"Anbieter",options:g.electricityTariffList,"model-value":t.$store.state.mqtt["openWB/optional/et/provider"]?t.$store.state.mqtt["openWB/optional/et/provider"].type:"","onUpdate:modelValue":e[7]||(e[7]=r=>g.updateSelectedElectricityTariff(r))},null,8,["options","model-value"]),t.$store.state.mqtt["openWB/optional/et/provider"]&&t.$store.state.mqtt["openWB/optional/et/provider"].type?(a(),u("div",te,[n($,{"electricity-tariff":t.$store.state.mqtt["openWB/optional/et/provider"],"onUpdate:configuration":e[8]||(e[8]=r=>g.updateConfiguration("openWB/optional/et/provider",r))},null,8,["electricity-tariff"])])):y("",!0)])),e[31]||(e[31]=l("hr",null,null,-1)),n(v,null,{default:o(()=>e[28]||(e[28]=[i(" Speicher-Entladung ins Fahrzeug steuern ")])),_:1}),t.$store.state.mqtt["openWB/bat/get/power_limit_controllable"]===!0?(a(),u("div",ne,[n(p,{title:"Speicher-Entladung",buttons:[{buttonValue:"no_limit",text:"immer"},{buttonValue:"limit_stop",text:"gesperrt, wenn Fahrzeug lädt"},{buttonValue:"limit_to_home_consumption",text:"für Hausverbrauch"}],"model-value":t.$store.state.mqtt["openWB/bat/config/power_limit_mode"],"onUpdate:modelValue":e[9]||(e[9]=r=>t.updateState("openWB/bat/config/power_limit_mode",r))},{help:o(()=>e[29]||(e[29]=[i(" Wenn das Entladen des Speichers immer erlaubt ist, wird das Fahrzeug aus dem Speicher geladen anstatt Strom aus dem Netz zu beziehen. "),l("br",null,null,-1),i(' Im Modus "gesperrt, wenn Fahrzeug lädt", wird die Entladung nur zugelassen, wenn alle Fahrzeuge im Modus PV-Laden ohne Mindeststrom oder Zielladen mit PV-Überschuss laden.'),l("br",null,null,-1),i(' Wenn das Entladen des Speichers auf den Hausverbrauch begrenzt ist und mindestens Fahrzeuge nicht im Modus PV-Laden ohne Mindeststrom oder Zielladen lädt, wird die Entladung des Speichers in Höhe des Hausverbrauchs zugelassen. Kann die Entladung am Speicher nur komplett gesperrt werden, verhält sich diese Einstellung wie "gesperrt, wenn Fahrzeug lädt".'),l("br",null,null,-1),i(" Diese Einstellung übersteuert ggf die Einstellungen zur Speicher-Beachtung im Modus PV-Laden. ")])),_:1},8,["model-value"])])):(a(),u("div",ie,[n(d,{subtype:"info"},{default:o(()=>e[30]||(e[30]=[i(" Die Speicher-Entladung ins Fahrzeug kann nicht gesteuert werden, da die Entladeleistung nicht an den/die konfigurierten Speicher übergeben werden kann. ")])),_:1})]))]),_:1}),n(w,{title:"OCPP Anbindung"},{default:o(()=>{var r,P,E,C;return[n(p,{title:"OCPP aktivieren",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(r=t.$store.state.mqtt["openWB/optional/ocpp/config"])==null?void 0:r.active,"onUpdate:modelValue":e[10]||(e[10]=f=>t.updateState("openWB/optional/ocpp/config",f,"active"))},null,8,["model-value"]),((P=t.$store.state.mqtt["openWB/optional/ocpp/config"])==null?void 0:P.active)===!0?(a(),u("div",re,[n(d,{subtype:"info"},{default:o(()=>e[32]||(e[32]=[i(" Die Ladepunkte übermitteln den ID-Tag, Heartbeat und den Zählerstand zum Zeitpunkt des Ansteckens, Absteckens und alle 5 Minuten. Eine Steuerung per OCPP ist nicht möglich."),l("br",null,null,-1),i(" Alle Ladepunkte, die ihre Daten an das OCPP-Backend übermitteln sollen, müssen zunächst im OCPP-Backend angelegt werden. Die dort eingetragene Chargebox ID muss in der openWB in den Einstellungen des Ladepunkts eingetragen werden. ")])),_:1}),n(V,{title:"URL des OCPP-Backends",subtype:"host","model-value":(E=t.$store.state.mqtt["openWB/optional/ocpp/config"])==null?void 0:E.url,"onUpdate:modelValue":e[11]||(e[11]=f=>t.updateState("openWB/optional/ocpp/config",f,"url"))},null,8,["model-value"]),n(S,{title:"Version","not-selected":"Bitte auswählen",options:[{value:"ocpp1.6",text:"OCPP 1.6"},{value:"ocpp2.0.1",text:"OCPP 2.0.1"}],"model-value":(C=t.$store.state.mqtt["openWB/optional/ocpp/config"])==null?void 0:C.version,"onUpdate:modelValue":e[12]||(e[12]=f=>t.updateState("openWB/optional/ocpp/config",f,"version"))},null,8,["model-value"])])):y("",!0)]}),_:1}),n(T,{"form-name":"generalChargeConfigForm",onSave:e[13]||(e[13]=r=>t.$emit("save")),onReset:e[14]||(e[14]=r=>t.$emit("reset")),onDefaults:e[15]||(e[15]=r=>t.$emit("defaults"))})])])}const ae=h(G,[["render",oe],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/GeneralChargeConfig.vue"]]),de=Object.freeze(Object.defineProperty({__proto__:null,default:ae},Symbol.toStringTag,{value:"Module"}));export{A as E,de as G}; diff --git a/web/settings/assets/GeneralConfig-58412dab.js b/web/settings/assets/GeneralConfig-58412dab.js new file mode 100644 index 0000000000..82243aed74 --- /dev/null +++ b/web/settings/assets/GeneralConfig-58412dab.js @@ -0,0 +1 @@ +import{l as J,X,Y as Q,F,R as Y,K as ee,z as te,a4 as ne,a5 as oe,a6 as ae}from"./vendor-fortawesome-3d19d475.js";import{_ as L,C as re}from"./index-beac009d.js";import{_ as j}from"./dynamic-import-helper-be004503.js";import{_ as h,u as b,k as l,l as d,z as v,E as o,y as a,F as c,G as n,x as s,a1 as M,a2 as I,N as G,B as _}from"./vendor-06e11d0e.js";const ie={props:{webTheme:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},le=h(ie,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/web_themes/WebThemeConfigMixin.vue"]]),se={name:"WebThemeFallback",mixins:[le]},ue={class:"web-theme-fallback"},de={key:1};function pe(t,e,p,B,y,m){const g=b("openwb-base-alert"),r=b("openwb-base-textarea");return l(),d("div",ue,[Object.keys(t.webTheme.configuration).length==0?(l(),v(g,{key:0,subtype:"info"},{default:o(()=>[a(' Das Web Theme "'+c(t.webTheme.name)+'" bietet keine Einstellungen. ',1)]),_:1})):(l(),d("div",de,[n(g,{subtype:"warning"},{default:o(()=>[a(' Es wurde keine Konfigurationsseite für das Web Theme "'+c(t.webTheme.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),n(r,{title:"Theme Konfiguration",subtype:"json","model-value":t.webTheme.configuration,"onUpdate:modelValue":e[0]||(e[0]=w=>t.updateConfiguration(w,"configuration"))},{help:o(()=>e[1]||(e[1]=[a(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),n(g,{subtype:"info"},{default:o(()=>[s("pre",null,c(JSON.stringify(t.webTheme.configuration,void 0,2)),1)]),_:1})]))])}const ge=h(se,[["render",pe],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/web_themes/OpenwbWebThemeFallback.vue"]]);J.add(X,Q);const me={name:"OpenwbWebThemeProxy",components:{FontAwesomeIcon:F},props:{webTheme:{type:Object,required:!0}},emits:["update:configuration"],computed:{myComponent(){return console.debug(`loading web theme: ${this.webTheme.name}`),M({loader:()=>j(Object.assign({}),`./${this.webTheme.type}/webTheme.vue`),errorComponent:ge})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function be(t,e,p,B,y,m){const g=b("font-awesome-icon"),r=b("openwb-base-alert"),w=b("openwb-base-heading");return l(),d(G,null,[p.webTheme.official?(l(),v(r,{key:0,subtype:"success"},{default:o(()=>[n(g,{"fixed-width":"",icon:["fas","certificate"]}),a(' Das ausgewählte Web Theme "'+c(p.webTheme.name)+'" wird von openWB gepflegt. ',1)]),_:1})):(l(),v(r,{key:1,subtype:"info"},{default:o(()=>[n(g,{"fixed-width":"",icon:["fas","people-group"]}),e[1]||(e[1]=a(" Das ausgewählte Theme wird in unserer Community gepflegt. Rückfragen oder Probleme bitte im Forum diskutieren. "))]),_:1})),n(w,null,{default:o(()=>[a(' Einstellungen für Web Theme "'+c(p.webTheme.name)+'" ',1)]),_:1}),(l(),v(I(m.myComponent),{"web-theme":p.webTheme,"onUpdate:configuration":e[0]||(e[0]=W=>m.updateConfiguration(W))},null,40,["web-theme"]))],64)}const fe=h(me,[["render",be],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/web_themes/OpenwbWebThemeProxy.vue"]]),ce={props:{rippleControlReceiver:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},_e=h(ce,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/RippleControlReceiverConfigMixin.vue"]]),ve={name:"RippleControlReceiverConfigFallback",mixins:[_e]},we={class:"ripple-control-receiver-fallback"},he={key:1};function We(t,e,p,B,y,m){const g=b("openwb-base-alert"),r=b("openwb-base-textarea");return l(),d("div",we,[Object.keys(t.rippleControlReceiver.configuration).length==0?(l(),v(g,{key:0,subtype:"info"},{default:o(()=>[a(' Das RSE-Modul "'+c(t.rippleControlReceiver.name)+'" bietet keine Einstellungen. ',1)]),_:1})):(l(),d("div",he,[n(g,{subtype:"warning"},{default:o(()=>[a(' Es wurde keine Konfigurationsseite für das RSE-Modul "'+c(t.rippleControlReceiver.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),n(r,{title:"Konfiguration",subtype:"json","model-value":t.rippleControlReceiver.configuration,"onUpdate:modelValue":e[0]||(e[0]=w=>t.updateConfiguration(w,"configuration"))},{help:o(()=>e[1]||(e[1]=[a(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),n(g,{subtype:"info"},{default:o(()=>[s("pre",null,c(JSON.stringify(t.rippleControlReceiver.configuration,void 0,2)),1)]),_:1})]))])}const Be=h(ve,[["render",We],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/OpenwbRippleControlReceiverConfigFallback.vue"]]),ye={name:"OpenwbRippleControlReceiverProxy",props:{rippleControlReceiver:{type:Object,required:!0}},emits:["update:configuration","sendCommand"],computed:{myComponent(){return console.debug(`loading backup cloud: ${this.rippleControlReceiver.type}`),M({loader:()=>j(Object.assign({"./dimm_kit/ripple_control_receiver.vue":()=>L(()=>import("./ripple_control_receiver-1a152476.js"),["assets/ripple_control_receiver-1a152476.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./gpio/ripple_control_receiver.vue":()=>L(()=>import("./ripple_control_receiver-d28e8e3f.js"),["assets/ripple_control_receiver-d28e8e3f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.rippleControlReceiver.type}/ripple_control_receiver.vue`),errorComponent:Be})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)},sendCommand(t){this.$emit("sendCommand",t)}}};function Se(t,e,p,B,y,m){const g=b("openwb-base-heading");return l(),d(G,null,[n(g,null,{default:o(()=>[a(' Einstellungen für RSE-Modul "'+c(p.rippleControlReceiver.name)+'" ',1)]),_:1}),(l(),v(I(m.myComponent),{"ripple-control-receiver":p.rippleControlReceiver,"onUpdate:configuration":e[0]||(e[0]=r=>m.updateConfiguration(r)),onSendCommand:e[1]||(e[1]=r=>m.sendCommand(r))},null,40,["ripple-control-receiver"]))],64)}const ke=h(ye,[["render",Se],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/OpenwbRippleControlReceiverProxy.vue"]]);J.add(Y,ee,te,ne,oe,ae);const Ve={name:"OpenwbGeneralConfigView",components:{OpenwbWebThemeProxy:fe,OpenwbRippleControlReceiverProxy:ke,FontAwesomeIcon:F},mixins:[re],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/charge_log_data_config","openWB/general/control_interval","openWB/general/extern","openWB/general/external_buttons_hw","openWB/general/grid_protection_configured","openWB/general/http_api","openWB/general/modbus_control","openWB/general/notifications/configuration","openWB/general/notifications/plug","openWB/general/notifications/selected","openWB/general/notifications/smart_home","openWB/general/notifications/start_charging","openWB/general/notifications/stop_charging","openWB/general/price_kwh","openWB/general/range_unit","openWB/general/ripple_control_receiver/module","openWB/general/web_theme","openWB/system/configurable/ripple_control_receivers","openWB/system/configurable/web_themes","openWB/system/ip_address"]}},computed:{webThemeList:{get(){return this.$store.state.mqtt["openWB/system/configurable/web_themes"]}},webThemeGroupList:{get(){let t=[{label:"openWB",options:[]},{label:"Community",options:[]}];return this.webThemeList.forEach(e=>{e.official===!0?t[0].options.push(e):t[1].options.push(e)}),t}},rippleControlReceiverList(){return this.$store.state.mqtt["openWB/system/configurable/ripple_control_receivers"]}},methods:{getIpAddress(){return this.$store.state.mqtt["openWB/system/ip_address"]},getWebThemeDefaults(t){const e=this.webThemeList.find(p=>p.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...JSON.parse(JSON.stringify(e.defaults))}:(console.warn("no default configuration found for web theme type!",t),{})},updateSelectedWebTheme(t){this.updateState("openWB/general/web_theme",this.getWebThemeDefaults(t))},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)},getRippleControlReceiverDefaultConfiguration(t){const e=this.rippleControlReceiverList.find(p=>p.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...e.defaults}:(console.warn("no default configuration found for electricity tariff type!",t),{})},updateSelectedRippleControlReceiverModule(t){this.updateState("openWB/general/ripple_control_receiver/module",t,"type"),this.updateState("openWB/general/ripple_control_receiver/module",this.getRippleControlReceiverDefaultConfiguration(t))}}},Ce={class:"generalConfig"},Re={name:"generalConfigForm"},$e={key:0},Te={key:1},qe={key:1},ze={class:"border border-info w-100 p-1"},Oe={class:"border border-info w-100 p-1"},De={key:0},Ee={key:1},Ne={key:0},Ae={key:2},Pe={key:0},xe={key:0},Ue={key:1},Le={key:0},Je={key:0},Fe={key:1};function je(t,e,p,B,y,m){const g=b("openwb-base-alert"),r=b("openwb-base-button-group-input"),w=b("openwb-base-copy-to-clipboard"),W=b("openwb-base-card"),S=b("openwb-base-heading"),k=b("openwb-base-select-input"),K=b("openwb-ripple-control-receiver-proxy"),H=b("openwb-web-theme-proxy"),f=b("font-awesome-icon"),Z=b("openwb-base-submit-buttons");return l(),d("div",Ce,[s("form",Re,[n(W,{title:"Steuerungsmodus"},{default:o(()=>[n(g,{subtype:"info"},{default:o(()=>e[29]||(e[29]=[s("p",null,' Wird für den Steuerungsmodus "primary" gewählt, übernimmt diese openWB die alleinige Regelung und steuert ggf. vorhandene weitere openWB (z.B. externe openWB im Steuerungsmodus secondary, openWB Pro, Satellit u.a.) fern. Sie werden in den Ladepunkt-Einstellungen der primary-openWB hinzugefügt. ',-1),s("p",null,[a(' Wird für den Steuerungsmodus "secondary" gewählt, übernimmt diese openWB keine Regelung und muss von einer anderen primary openWB ferngesteuert werden. Wichtig ist, dass in der secondary-openWB eine "interne openWB" mit der korrekten Bauart (= openWB-Hardwarevariante z.B. "Custom, Standard, Standard+, Duo, Buchse") konfiguriert ist. Bei einer Duo sind zwei "interne openWB" zu konfigurieren. Im "secondary"-Modus bleiben alle ausgeblendeten Einstellungen unbeachtet.'),s("br"),a(" Eine bebilderte Anleitung zur Konfiguration der Ladepunkte findest Du auf der "),s("a",{href:"https://openwb.de/main/?page_id=1025",target:"_blank",rel:"noopener noreferrer"}," Homepage "),a(". ")],-1)])),_:1}),n(r,{title:"Steuerungsmodus",buttons:[{buttonValue:!1,text:"primary",class:"btn-outline-danger"},{buttonValue:!0,text:"secondary",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/extern"],"onUpdate:modelValue":e[0]||(e[0]=u=>t.updateState("openWB/general/extern",u))},null,8,["model-value"]),p.installAssistantActive?_("",!0):(l(),d("div",$e,[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),v(r,{key:0,title:"Steuerung über Modbus als secondary",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/modbus_control"],"onUpdate:modelValue":e[1]||(e[1]=u=>t.updateState("openWB/general/modbus_control",u))},{help:o(()=>e[30]||(e[30]=[a(" Im secondary-Modus kann die openWB über die Modbus-Schnittstelle gesteuert werden. Die Register sind "),s("a",{href:"https://openwb.de/main/wp-content/uploads/2023/10/ModbusTCP-openWB-series2-Pro-1.pdf",target:"_blank",rel:"noopener noreferrer"}," hier ",-1),a(" dokumentiert. Bei aktivierter Modbus-Schnittstelle darf die openWB nicht von einer primary-openWB gesteuert werden. ")])),_:1},8,["model-value"])):_("",!0),t.$store.state.mqtt["openWB/general/extern"]===!0&&t.$store.state.mqtt["openWB/general/modbus_control"]!==!0?(l(),d("div",Te,[n(g,{subtype:"info",class:"mb-2"},{default:o(()=>e[31]||(e[31]=[a(' Wenn die Steuerung über Modbus auf "Aus" geändert wird, muss danach ein Neustart durchgeführt werden! ')])),_:1})])):_("",!0)])),p.installAssistantActive?_("",!0):(l(),d("div",qe,[n(r,{title:"HTTP-API",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/http_api"],"onUpdate:modelValue":e[2]||(e[2]=u=>t.updateState("openWB/general/http_api",u))},{help:o(()=>[e[38]||(e[38]=s("p",null," Mit der HTTP-API kann man den Wert eines MQTT-Topics per HTTPs (Port 8443) abfragen oder neu setzen. Topics können über GET oder POST abgefragt, neue Werte nur mit POST gesetzt werden. ",-1)),e[39]||(e[39]=s("p",null,"Beispiel 1: Abfrage des aktuellen Systemzeitstempels",-1)),s("ul",null,[s("li",null,[e[32]||(e[32]=a(" GET-Request:")),e[33]||(e[33]=s("br",null,null,-1)),n(w,{class:"text-info",tooltip:"URL kopieren"},{default:o(()=>[a(" https://"+c(m.getIpAddress())+":8443/v1/?topic=openWB/system/time ",1)]),_:1})]),s("li",null,[e[34]||(e[34]=a(" POST-Request über 'curl' mit privatem SSL-Zertifikat und Verarbeitung durch 'jq':")),e[35]||(e[35]=s("br",null,null,-1)),n(w,{class:"text-info",tooltip:"Befehl kopieren"},{default:o(()=>[a(` curl -k -s -X POST --data '{"topic":"openWB/system/time"}' https://`+c(m.getIpAddress())+":8443/v1/ | jq . ",1)]),_:1})])]),e[40]||(e[40]=s("p",null,"Die zurückgegebenen Daten sind im JSON-Format. Der Inhalt ist nach folgendem Schema aufgebaut:",-1)),s("pre",ze,c(JSON.stringify({status:"success",topic:"openWB/system/time",message:1721287000646975e-6},null,4)),1),e[41]||(e[41]=s("p",null,'Im Fehlerfall wird der Status auf "failed" gesetzt und eine Fehlermeldung zurückgegeben.',-1)),e[42]||(e[42]=s("p",null,"Beispiel 2: integriertes Display abschalten",-1)),s("ul",null,[s("li",null,[e[36]||(e[36]=a(" POST-Request über 'curl' mit privatem SSL-Zertifikat und Verarbeitung durch 'jq':")),e[37]||(e[37]=s("br",null,null,-1)),n(w,{class:"text-info",tooltip:"Befehl kopieren"},{default:o(()=>[a(` curl -k -s -X POST --data '{"topic": "openWB/set/optional/int_display/active", "message": false}' https://`+c(m.getIpAddress())+":8443/v1/ | jq . ",1)]),_:1})])]),e[43]||(e[43]=s("p",null,"Die zurückgegebenen Daten sind im JSON-Format. Der Inhalt ist nach folgendem Schema aufgebaut:",-1)),s("pre",Oe,c(JSON.stringify({status:"success",topic:"openWB/set/optional/int_display/active",message:!1},null,4)),1)]),_:1},8,["model-value"])]))]),_:1}),n(W,{title:"Hardware"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),d("div",De,[n(g,{subtype:"info"},{default:o(()=>e[44]||(e[44]=[a(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):_("",!0),p.installAssistantActive?_("",!0):(l(),d("div",Ee,[t.$store.state.mqtt["openWB/general/extern"]===!1?(l(),d("div",Ne,[n(r,{title:"Geschwindigkeit Regelintervall",buttons:[{buttonValue:10,text:"Normal",class:"btn-outline-success"},{buttonValue:20,text:"Langsam",class:"btn-outline-warning"},{buttonValue:60,text:"Sehr Langsam",class:"btn-outline-danger"}],"model-value":t.$store.state.mqtt["openWB/general/control_interval"],"onUpdate:modelValue":e[3]||(e[3]=u=>t.updateState("openWB/general/control_interval",u))},{help:o(()=>e[45]||(e[45]=[a(' Sollten Probleme oder Fehlermeldungen auftauchen, stelle bitte zunächst das Regelintervall auf "Normal". Werden Module genutzt, welche z.B. eine Online-API zur Abfrage nutzen (höhere Latenzzeiten) oder möchte man weniger Regeleingriffe, so kann man das Regelintervall auf "Langsam" (20 Sekunden) herabsetzen. Die Einstellung „Sehr Langsam“ führt zu einer Regelzeit von 60 Sekunden.'),s("br",null,null,-1),s("span",{class:"text-danger"},' Nicht nur die Regelung der PV geführten Ladung, sondern auch die Ladestromänderung, beispielsweise “Stop“ etc., werden dann nur noch in diesem Intervall ausgeführt. Die Regelung wird insgesamt träger. Solange es keinen triftigen Grund gibt, sollte "Normal" gewählt werden. ',-1)])),_:1},8,["model-value"]),n(r,{title:"Netzschutz",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/grid_protection_configured"],"onUpdate:modelValue":e[4]||(e[4]=u=>t.updateState("openWB/general/grid_protection_configured",u))},{help:o(()=>e[46]||(e[46]=[a(' Diese Option ist standardmäßig aktiviert und sollte so belassen werden. Bei Unterschreitung einer kritischen Frequenz des Stromnetzes wird die Ladung nach einer zufälligen Zeit zwischen 1 und 90 Sekunden pausiert. Der Lademodus wechselt auf "Stop". Sobald die Frequenz wieder in einem normalen Bereich ist wird automatisch der zuletzt gewählte Lademodus wieder aktiviert. Ebenso wird die Ladung bei Überschreiten von 51,8 Hz unterbrochen. Dies ist dann der Fall, wenn der Energieversorger Wartungsarbeiten am (Teil-)Netz durchführt und auf einen vorübergehenden Generator-Betrieb umschaltet. Die Erhöhung der Frequenz wird durchgeführt, um die PV Anlagen abzuschalten.'),s("br",null,null,-1),s("span",{class:"text-danger"}," Die Option ist nur aktiv, wenn der EVU-Zähler die Frequenz übermittelt. ",-1)])),_:1},8,["model-value"])])):_("",!0),e[47]||(e[47]=s("hr",null,null,-1))])),t.$store.state.mqtt["openWB/general/extern"]===!1?(l(),d("div",Ae,[n(S,{class:"mt-0"},{default:o(()=>e[48]||(e[48]=[a(" Steuerbare Verbrauchseinrichtung ")])),_:1}),n(g,{sub_type:"info"},{default:o(()=>e[49]||(e[49]=[a(' Aktuell unterstützt openWB die eingehende Steuerung als "Steuerbare Verbrauchseinrichtung" nur über potentialfreie Kontakte (Rundsteuerempfänger, RSE). Ebenfalls können derzeit bei Auslösung des RSE nur alle Ladevorgänge komplett beendet werden. Die Unterstützung von "Dimmung" im Sinne von §14a EnWG wird umgesetzt, sobald wir weitere Informationen von den Netzbetreibern erhalten, wie die Ansteuerung technisch umgesetzt wird. ')])),_:1}),n(k,{class:"mb-2",title:"Anbindung RSE-Kontakt",options:m.rippleControlReceiverList,"model-value":t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"]?t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"].type:"","onUpdate:modelValue":e[5]||(e[5]=u=>m.updateSelectedRippleControlReceiverModule(u))},null,8,["options","model-value"]),t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"]&&t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"].type?(l(),d("div",Pe,[n(K,{"ripple-control-receiver":t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"],"onUpdate:configuration":e[6]||(e[6]=u=>m.updateConfiguration("openWB/general/ripple_control_receiver/module",u))},null,8,["ripple-control-receiver"])])):_("",!0)])):_("",!0)]),_:1}),p.installAssistantActive?_("",!0):(l(),v(W,{key:0,title:"Darstellung"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),d("div",xe,[n(g,{subtype:"info"},{default:o(()=>e[50]||(e[50]=[a(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(l(),d("div",Ue,[n(S,{class:"mt-0"},{default:o(()=>e[51]||(e[51]=[a(" Hauptseite ")])),_:1}),t.$store.state.mqtt["openWB/general/web_theme"]!==void 0?(l(),d("div",Le,[n(k,{class:"mb-2",title:"Theme",groups:m.webThemeGroupList,"model-value":t.$store.state.mqtt["openWB/general/web_theme"].type,"onUpdate:modelValue":e[7]||(e[7]=u=>m.updateSelectedWebTheme(u))},null,8,["groups","model-value"]),t.$store.state.mqtt["openWB/general/web_theme"].type?(l(),v(H,{key:0,"web-theme":t.$store.state.mqtt["openWB/general/web_theme"],"onUpdate:configuration":e[8]||(e[8]=u=>m.updateConfiguration("openWB/general/web_theme",u))},null,8,["web-theme"])):_("",!0)])):_("",!0)]))]),_:1})),p.installAssistantActive?_("",!0):(l(),v(W,{key:1,title:"Lade-Protokoll"},{default:o(()=>{var u,V,C,R,$,T,q,z,O,D,E,N,A,P,x,U;return[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),d("div",Je,[n(g,{subtype:"info"},{default:o(()=>e[52]||(e[52]=[a(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(l(),d("div",Fe,[n(r,{title:"Einheit für Entfernungen","model-value":t.$store.state.mqtt["openWB/general/range_unit"],buttons:[{buttonValue:"km",text:"Kilometer"},{buttonValue:"mi",text:"Meilen"}],"onUpdate:modelValue":e[9]||(e[9]=i=>t.updateState("openWB/general/range_unit",i))},null,8,["model-value"]),n(S,null,{default:o(()=>e[53]||(e[53]=[a(" Auswahl der Datenfelder ")])),_:1}),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(u=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:u.time_begin,"onUpdate:modelValue":e[10]||(e[10]=i=>t.updateState("openWB/general/charge_log_data_config",i,"time_begin"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","calendar"]}),e[54]||(e[54]=a(" Beginn "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(V=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:V.time_end,"onUpdate:modelValue":e[11]||(e[11]=i=>t.updateState("openWB/general/charge_log_data_config",i,"time_end"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","calendar"]}),e[55]||(e[55]=a(" Ende "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(C=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:C.time_time_charged,"onUpdate:modelValue":e[12]||(e[12]=i=>t.updateState("openWB/general/charge_log_data_config",i,"time_time_charged"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","clock"]}),e[56]||(e[56]=a(" Dauer "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(R=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:R.data_costs,"onUpdate:modelValue":e[13]||(e[13]=i=>t.updateState("openWB/general/charge_log_data_config",i,"data_costs"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","coins"]}),e[57]||(e[57]=a(" Kosten "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":($=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:$.data_power_source,"onUpdate:modelValue":e[14]||(e[14]=i=>t.updateState("openWB/general/charge_log_data_config",i,"data_power_source"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","pie-chart"]}),e[58]||(e[58]=a(" Energieaufteilung "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(T=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:T.vehicle_name,"onUpdate:modelValue":e[15]||(e[15]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_name"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[59]||(e[59]=a(" Name "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(q=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:q.vehicle_chargemode,"onUpdate:modelValue":e[16]||(e[16]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_chargemode"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[60]||(e[60]=a(" Lademodus "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(z=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:z.vehicle_prio,"onUpdate:modelValue":e[17]||(e[17]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_prio"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[61]||(e[61]=a(" Priorität "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(O=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:O.vehicle_rfid,"onUpdate:modelValue":e[18]||(e[18]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_rfid"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[62]||(e[62]=a(" ID-Tag "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(D=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:D.vehicle_soc_at_start,"onUpdate:modelValue":e[19]||(e[19]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_soc_at_start"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[63]||(e[63]=a(" SoC bei Ladebeginn "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(E=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:E.vehicle_soc_at_end,"onUpdate:modelValue":e[20]||(e[20]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_soc_at_end"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[64]||(e[64]=a(" SoC bei Ladende "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(N=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:N.chargepoint_name,"onUpdate:modelValue":e[21]||(e[21]=i=>t.updateState("openWB/general/charge_log_data_config",i,"chargepoint_name"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[65]||(e[65]=a(" Name "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(A=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:A.chargepoint_serial_number,"onUpdate:modelValue":e[22]||(e[22]=i=>t.updateState("openWB/general/charge_log_data_config",i,"chargepoint_serial_number"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[66]||(e[66]=a(" Seriennummer "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(P=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:P.data_imported_since_mode_switch,"onUpdate:modelValue":e[23]||(e[23]=i=>t.updateState("openWB/general/charge_log_data_config",i,"data_imported_since_mode_switch"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[67]||(e[67]=a(" Geladene Energie "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(x=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:x.chargepoint_imported_at_start,"onUpdate:modelValue":e[24]||(e[24]=i=>t.updateState("openWB/general/charge_log_data_config",i,"chargepoint_imported_at_start"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[68]||(e[68]=a(" Zählerstand bei Ladebeginn "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(U=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:U.chargepoint_imported_at_end,"onUpdate:modelValue":e[25]||(e[25]=i=>t.updateState("openWB/general/charge_log_data_config",i,"chargepoint_imported_at_end"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[69]||(e[69]=a(" Zählerstand bei Ladeende "))]),_:1},8,["model-value"])]))]}),_:1})),n(Z,{"form-name":"generalConfigForm",onSave:e[26]||(e[26]=u=>t.$emit("save")),onReset:e[27]||(e[27]=u=>t.$emit("reset")),onDefaults:e[28]||(e[28]=u=>t.$emit("defaults"))})])])}const Me=h(Ve,[["render",je],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/GeneralConfig.vue"]]),Ze=Object.freeze(Object.defineProperty({__proto__:null,default:Me},Symbol.toStringTag,{value:"Module"}));export{Me as G,_e as R,Ze as a}; diff --git a/web/settings/assets/HardwareInstallation-775406e1.js b/web/settings/assets/HardwareInstallation-775406e1.js new file mode 100644 index 0000000000..34c186dc76 --- /dev/null +++ b/web/settings/assets/HardwareInstallation-775406e1.js @@ -0,0 +1 @@ +import{l as S,d as q,t as U,a7 as N,a0 as G,P as F,O as H,N as K,F as $}from"./vendor-fortawesome-3d19d475.js";import{_ as e,C as J}from"./index-beac009d.js";import{_ as x}from"./dynamic-import-helper-be004503.js";import{_ as I,u as p,k as s,l as g,z as E,E as r,y as d,F as V,G as u,x as c,a1 as z,a2 as Z,B as R,N as L,M as k,q as Q}from"./vendor-06e11d0e.js";const X={props:{device:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,o=void 0){this.$emit("update:configuration",{value:t,object:o})}}},B=I(X,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/DeviceConfigMixin.vue"]]),Y={name:"DeviceFallback",mixins:[B]},ee={class:"device-fallback"},oe={key:1};function te(t,o,i,m,v,n){const l=p("openwb-base-alert"),T=p("openwb-base-textarea");return s(),g("div",ee,[Object.keys(t.device.configuration).length==0?(s(),E(l,{key:0,subtype:"info"},{default:r(()=>[d(' Der Gerät-Typ "'+V(t.device.type)+'" bietet keine Einstellungen. ',1)]),_:1})):(s(),g("div",oe,[u(l,{subtype:"warning"},{default:r(()=>[d(' Es wurde keine Konfigurationsseite für den Geräte-Typ "'+V(t.device.type)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),u(T,{title:"Konfiguration",subtype:"json","model-value":t.device.configuration,"onUpdate:modelValue":o[0]||(o[0]=O=>t.updateConfiguration(O,"configuration"))},{help:r(()=>o[1]||(o[1]=[d(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),u(l,{subtype:"info"},{default:r(()=>[c("pre",null,V(JSON.stringify(t.device.configuration,void 0,2)),1)]),_:1})]))])}const _e=I(Y,[["render",te],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/OpenwbDeviceConfigFallback.vue"]]),ie={mixins:[B],props:{component:{type:Object,required:!0}}},re=I(ie,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/ComponentConfigMixin.vue"]]),ne={name:"ComponentFallback",mixins:[re]},ue={class:"component-fallback"},de={key:1};function se(t,o,i,m,v,n){const l=p("openwb-base-alert"),T=p("openwb-base-textarea");return s(),g("div",ue,[Object.keys(t.component.configuration).length==0?(s(),E(l,{key:0,subtype:"info"},{default:r(()=>[d(' Der Komponenten-Typ "'+V(t.component.type)+'" bietet keine Einstellungen. ',1)]),_:1})):(s(),g("div",de,[u(l,{subtype:"warning"},{default:r(()=>[d(' Es wurde keine Konfigurationsseite für den Komponenten-Typ "'+V(t.component.type)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),u(T,{title:"Konfiguration",subtype:"json","model-value":t.component.configuration,"onUpdate:modelValue":o[0]||(o[0]=O=>t.updateConfiguration(O,"configuration"))},{help:r(()=>o[1]||(o[1]=[d(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),u(l,{subtype:"info"},{default:r(()=>[c("pre",null,V(JSON.stringify(t.component.configuration,void 0,2)),1)]),_:1})]))])}const ve=I(ne,[["render",se],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/OpenwbComponentConfigFallback.vue"]]),ae={name:"OpenwbConfigProxy",props:{device:{type:Object,required:!0},component:{type:Object,required:!1,default:void 0}},emits:["update:configuration"],computed:{myComponent(){var t;return console.debug(`loading component: ${this.device.type} / ${(t=this.component)==null?void 0:t.type}`),this.component!==void 0?z({loader:()=>x(Object.assign({"./alpha_ess/alpha_ess/device.vue":()=>e(()=>import("./device-114f55c5.js"),["assets/device-114f55c5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./azzurro_zcs/azzurro_zcs/device.vue":()=>e(()=>import("./device-0ff15197.js"),["assets/device-0ff15197.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./batterx/batterx/device.vue":()=>e(()=>import("./device-a90d36a5.js"),["assets/device-a90d36a5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./benning/benning/device.vue":()=>e(()=>import("./device-2d1936f7.js"),["assets/device-2d1936f7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./byd/byd/device.vue":()=>e(()=>import("./device-8fd0cfd3.js"),["assets/device-8fd0cfd3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./carlo_gavazzi/carlo_gavazzi/counter.vue":()=>e(()=>import("./counter-c3f9c146.js"),["assets/counter-c3f9c146.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./carlo_gavazzi/carlo_gavazzi/device.vue":()=>e(()=>import("./device-ebb040e8.js"),["assets/device-ebb040e8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/bat.vue":()=>e(()=>import("./bat-ab9b0c54.js"),["assets/bat-ab9b0c54.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/counter.vue":()=>e(()=>import("./counter-00ded250.js"),["assets/counter-00ded250.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/device.vue":()=>e(()=>import("./device-288b048d.js"),["assets/device-288b048d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/inverter.vue":()=>e(()=>import("./inverter-9fab6b51.js"),["assets/inverter-9fab6b51.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./discovergy/discovergy/counter.vue":()=>e(()=>import("./counter-be3ab298.js"),["assets/counter-be3ab298.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./discovergy/discovergy/device.vue":()=>e(()=>import("./device-85821cd0.js"),["assets/device-85821cd0.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./discovergy/discovergy/inverter.vue":()=>e(()=>import("./inverter-54331cae.js"),["assets/inverter-54331cae.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./e3dc/e3dc/device.vue":()=>e(()=>import("./device-19be8009.js"),["assets/device-19be8009.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./enphase/enphase/counter.vue":()=>e(()=>import("./counter-3f1d575b.js"),["assets/counter-3f1d575b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./enphase/enphase/device.vue":()=>e(()=>import("./device-e95d24c3.js"),["assets/device-e95d24c3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./enphase/enphase/inverter.vue":()=>e(()=>import("./inverter-7cf8493f.js"),["assets/inverter-7cf8493f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fems/fems/bat.vue":()=>e(()=>import("./bat-870c9071.js"),["assets/bat-870c9071.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fems/fems/device.vue":()=>e(()=>import("./device-15200209.js"),["assets/device-15200209.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/bat.vue":()=>e(()=>import("./bat-97b3e513.js"),["assets/bat-97b3e513.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/counter.vue":()=>e(()=>import("./counter-e5120d9a.js"),["assets/counter-e5120d9a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/device.vue":()=>e(()=>import("./device-15d1e8a4.js"),["assets/device-15d1e8a4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/inverter.vue":()=>e(()=>import("./inverter-48093851.js"),["assets/inverter-48093851.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/bat.vue":()=>e(()=>import("./bat-4fcc1b0f.js"),["assets/bat-4fcc1b0f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/counter_sm.vue":()=>e(()=>import("./counter_sm-33d0208f.js"),["assets/counter_sm-33d0208f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/device.vue":()=>e(()=>import("./device-a866f0a5.js"),["assets/device-a866f0a5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/inverter_secondary.vue":()=>e(()=>import("./inverter_secondary-da829b18.js"),["assets/inverter_secondary-da829b18.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/bat.vue":()=>e(()=>import("./bat-1cdb6279.js"),["assets/bat-1cdb6279.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/counter.vue":()=>e(()=>import("./counter-4fb1767e.js"),["assets/counter-4fb1767e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/device.vue":()=>e(()=>import("./device-baa09f51.js"),["assets/device-baa09f51.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/inverter.vue":()=>e(()=>import("./inverter-be36808f.js"),["assets/inverter-be36808f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/bat.vue":()=>e(()=>import("./bat-e4d22267.js"),["assets/bat-e4d22267.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/counter.vue":()=>e(()=>import("./counter-ebb39c58.js"),["assets/counter-ebb39c58.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/device.vue":()=>e(()=>import("./device-82678599.js"),["assets/device-82678599.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/inverter.vue":()=>e(()=>import("./inverter-67b94bcc.js"),["assets/inverter-67b94bcc.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/bat.vue":()=>e(()=>import("./bat-e7e1291b.js"),["assets/bat-e7e1291b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/counter.vue":()=>e(()=>import("./counter-5e8a02df.js"),["assets/counter-5e8a02df.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/device.vue":()=>e(()=>import("./device-b1969620.js"),["assets/device-b1969620.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/inverter.vue":()=>e(()=>import("./inverter-ffd19b83.js"),["assets/inverter-ffd19b83.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/virtual/counter.vue":()=>e(()=>import("./counter-1c7d13ea.js"),["assets/counter-1c7d13ea.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./good_we/good_we/device.vue":()=>e(()=>import("./device-61d30aae.js"),["assets/device-61d30aae.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./growatt/growatt/device.vue":()=>e(()=>import("./device-0c76d118.js"),["assets/device-0c76d118.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei/device.vue":()=>e(()=>import("./device-bfbda65d.js"),["assets/device-bfbda65d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/bat.vue":()=>e(()=>import("./bat-80c102dd.js"),["assets/bat-80c102dd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/counter.vue":()=>e(()=>import("./counter-13b5dd50.js"),["assets/counter-13b5dd50.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/device.vue":()=>e(()=>import("./device-9bc9bf37.js"),["assets/device-9bc9bf37.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/inverter.vue":()=>e(()=>import("./inverter-2bb2e6d2.js"),["assets/inverter-2bb2e6d2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./janitza/janitza/counter.vue":()=>e(()=>import("./counter-04d44a2a.js"),["assets/counter-04d44a2a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./janitza/janitza/device.vue":()=>e(()=>import("./device-bd5cdb53.js"),["assets/device-bd5cdb53.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko/counter.vue":()=>e(()=>import("./counter-c577a2f2.js"),["assets/counter-c577a2f2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko/device.vue":()=>e(()=>import("./device-8c20d3d7.js"),["assets/device-8c20d3d7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko/inverter.vue":()=>e(()=>import("./inverter-1869ed40.js"),["assets/inverter-1869ed40.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko_old/device.vue":()=>e(()=>import("./device-7ebf1222.js"),["assets/device-7ebf1222.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_plenticore/counter.vue":()=>e(()=>import("./counter-7449b66a.js"),["assets/counter-7449b66a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_plenticore/device.vue":()=>e(()=>import("./device-6c4bc3a2.js"),["assets/device-6c4bc3a2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_sem/counter.vue":()=>e(()=>import("./counter-ee99dcfc.js"),["assets/counter-ee99dcfc.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_sem/device.vue":()=>e(()=>import("./device-9de767a2.js"),["assets/device-9de767a2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_steca/device.vue":()=>e(()=>import("./device-b24172e8.js"),["assets/device-b24172e8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_steca/inverter.vue":()=>e(()=>import("./inverter-28b3115f.js"),["assets/inverter-28b3115f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./lg/lg/device.vue":()=>e(()=>import("./device-07487eef.js"),["assets/device-07487eef.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/bat.vue":()=>e(()=>import("./bat-a540cbe7.js"),["assets/bat-a540cbe7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/counter.vue":()=>e(()=>import("./counter-24f79ace.js"),["assets/counter-24f79ace.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/device.vue":()=>e(()=>import("./device-172cdb34.js"),["assets/device-172cdb34.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/inverter.vue":()=>e(()=>import("./inverter-8660cadd.js"),["assets/inverter-8660cadd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./opendtu/opendtu/device.vue":()=>e(()=>import("./device-a9050752.js"),["assets/device-a9050752.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_bat_kit/bat.vue":()=>e(()=>import("./bat-fa95bd0d.js"),["assets/bat-fa95bd0d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_evu_kit/bat.vue":()=>e(()=>import("./bat-3f89602e.js"),["assets/bat-3f89602e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_evu_kit/counter.vue":()=>e(()=>import("./counter-76b0320f.js"),["assets/counter-76b0320f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_evu_kit/inverter.vue":()=>e(()=>import("./inverter-6fcce756.js"),["assets/inverter-6fcce756.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/bat.vue":()=>e(()=>import("./bat-c25e7ed7.js"),["assets/bat-c25e7ed7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/consumption_counter.vue":()=>e(()=>import("./consumption_counter-243210f8.js"),["assets/consumption_counter-243210f8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/counter.vue":()=>e(()=>import("./counter-0a4f8168.js"),["assets/counter-0a4f8168.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/device.vue":()=>e(()=>import("./device-7fc9a4c5.js"),["assets/device-7fc9a4c5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/inverter.vue":()=>e(()=>import("./inverter-59227078.js"),["assets/inverter-59227078.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_pv_kit/inverter.vue":()=>e(()=>import("./inverter-ac0cd8b2.js"),["assets/inverter-ac0cd8b2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerdog/powerdog/counter.vue":()=>e(()=>import("./counter-4db8b27f.js"),["assets/counter-4db8b27f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerdog/powerdog/device.vue":()=>e(()=>import("./device-97849187.js"),["assets/device-97849187.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerfox/powerfox/counter.vue":()=>e(()=>import("./counter-bf1f6045.js"),["assets/counter-bf1f6045.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerfox/powerfox/device.vue":()=>e(()=>import("./device-856db98a.js"),["assets/device-856db98a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerfox/powerfox/inverter.vue":()=>e(()=>import("./inverter-ebe90299.js"),["assets/inverter-ebe90299.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./qcells/qcells/device.vue":()=>e(()=>import("./device-d65b5a77.js"),["assets/device-d65b5a77.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./rct/rct/device.vue":()=>e(()=>import("./device-64073da7.js"),["assets/device-64073da7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./saxpower/saxpower/device.vue":()=>e(()=>import("./device-1bc4846b.js"),["assets/device-1bc4846b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./shelly/shelly/counter.vue":()=>e(()=>import("./counter-f130bb29.js"),["assets/counter-f130bb29.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./shelly/shelly/device.vue":()=>e(()=>import("./device-f1b7bd09.js"),["assets/device-f1b7bd09.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./siemens/siemens/device.vue":()=>e(()=>import("./device-34727394.js"),["assets/device-34727394.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./siemens/siemens_sentron/device.vue":()=>e(()=>import("./device-abf68242.js"),["assets/device-abf68242.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/bat.vue":()=>e(()=>import("./bat-223eeaaa.js"),["assets/bat-223eeaaa.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/counter.vue":()=>e(()=>import("./counter-2fbd500e.js"),["assets/counter-2fbd500e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/device.vue":()=>e(()=>import("./device-17b568a4.js"),["assets/device-17b568a4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/inverter.vue":()=>e(()=>import("./inverter-1976d65e.js"),["assets/inverter-1976d65e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_shm/counter.vue":()=>e(()=>import("./counter-164996b5.js"),["assets/counter-164996b5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_shm/inverter.vue":()=>e(()=>import("./inverter-0b21264e.js"),["assets/inverter-0b21264e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/bat.vue":()=>e(()=>import("./bat-548da92a.js"),["assets/bat-548da92a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/bat_smart_energy.vue":()=>e(()=>import("./bat_smart_energy-24b782da.js"),["assets/bat_smart_energy-24b782da.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/counter.vue":()=>e(()=>import("./counter-071db92b.js"),["assets/counter-071db92b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/device.vue":()=>e(()=>import("./device-3c89ec9b.js"),["assets/device-3c89ec9b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/inverter.vue":()=>e(()=>import("./inverter-f770832e.js"),["assets/inverter-f770832e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_island/bat.vue":()=>e(()=>import("./bat-cf1b9ed4.js"),["assets/bat-cf1b9ed4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_island/device.vue":()=>e(()=>import("./device-6e81103e.js"),["assets/device-6e81103e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_webbox/device.vue":()=>e(()=>import("./device-a1acba70.js"),["assets/device-a1acba70.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smart_me/smart_me/counter.vue":()=>e(()=>import("./counter-74820587.js"),["assets/counter-74820587.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smart_me/smart_me/device.vue":()=>e(()=>import("./device-76c2a64a.js"),["assets/device-76c2a64a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smart_me/smart_me/inverter.vue":()=>e(()=>import("./inverter-572d72b8.js"),["assets/inverter-572d72b8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smartfox/smartfox/device.vue":()=>e(()=>import("./device-eae80546.js"),["assets/device-eae80546.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sofar/sofar/device.vue":()=>e(()=>import("./device-6fdb7208.js"),["assets/device-6fdb7208.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_log/solar_log/counter.vue":()=>e(()=>import("./counter-a5db85df.js"),["assets/counter-a5db85df.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_log/solar_log/device.vue":()=>e(()=>import("./device-48b233fa.js"),["assets/device-48b233fa.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_view/solar_view/device.vue":()=>e(()=>import("./device-b3827712.js"),["assets/device-b3827712.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_view/solar_view/inverter.vue":()=>e(()=>import("./inverter-c408a546.js"),["assets/inverter-c408a546.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_watt/solar_watt/device.vue":()=>e(()=>import("./device-2e356304.js"),["assets/device-2e356304.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_world/solar_world/device.vue":()=>e(()=>import("./device-9571fc19.js"),["assets/device-9571fc19.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/bat.vue":()=>e(()=>import("./bat-f25e046a.js"),["assets/bat-f25e046a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/counter.vue":()=>e(()=>import("./counter-f13f10a1.js"),["assets/counter-f13f10a1.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/device.vue":()=>e(()=>import("./device-d43185f2.js"),["assets/device-d43185f2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/external_inverter.vue":()=>e(()=>import("./external_inverter-253f52e7.js"),["assets/external_inverter-253f52e7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/inverter.vue":()=>e(()=>import("./inverter-5a60dd29.js"),["assets/inverter-5a60dd29.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solarmax/solarmax/bat.vue":()=>e(()=>import("./bat-942f38fa.js"),["assets/bat-942f38fa.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solarmax/solarmax/device.vue":()=>e(()=>import("./device-b0639a26.js"),["assets/device-b0639a26.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solarmax/solarmax/inverter.vue":()=>e(()=>import("./inverter-86f1d614.js"),["assets/inverter-86f1d614.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solax/solax/device.vue":()=>e(()=>import("./device-9e5e0b35.js"),["assets/device-9e5e0b35.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/bat.vue":()=>e(()=>import("./bat-13a196e8.js"),["assets/bat-13a196e8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/counter.vue":()=>e(()=>import("./counter-4e56c7f7.js"),["assets/counter-4e56c7f7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/device.vue":()=>e(()=>import("./device-e20e0d18.js"),["assets/device-e20e0d18.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/inverter.vue":()=>e(()=>import("./inverter-bd9ab223.js"),["assets/inverter-bd9ab223.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sonnen/sonnenbatterie/counter.vue":()=>e(()=>import("./counter-5ed295f8.js"),["assets/counter-5ed295f8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sonnen/sonnenbatterie/device.vue":()=>e(()=>import("./device-0030c6d0.js"),["assets/device-0030c6d0.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./studer/studer/bat.vue":()=>e(()=>import("./bat-5d3c3021.js"),["assets/bat-5d3c3021.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./studer/studer/device.vue":()=>e(()=>import("./device-74af41f9.js"),["assets/device-74af41f9.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./studer/studer/inverter.vue":()=>e(()=>import("./inverter-d3107610.js"),["assets/inverter-d3107610.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sungrow/sungrow/counter.vue":()=>e(()=>import("./counter-51b45e76.js"),["assets/counter-51b45e76.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sungrow/sungrow/device.vue":()=>e(()=>import("./device-70884df8.js"),["assets/device-70884df8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sunways/sunways/device.vue":()=>e(()=>import("./device-c391800c.js"),["assets/device-c391800c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tasmota/tasmota/device.vue":()=>e(()=>import("./device-9d6e08b7.js"),["assets/device-9d6e08b7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tesla/tesla/counter.vue":()=>e(()=>import("./counter-7247e287.js"),["assets/counter-7247e287.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tesla/tesla/device.vue":()=>e(()=>import("./device-2a66c054.js"),["assets/device-2a66c054.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./varta/varta/device.vue":()=>e(()=>import("./device-0caf2ca7.js"),["assets/device-0caf2ca7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./varta/varta/inverter.vue":()=>e(()=>import("./inverter-b81ebeaa.js"),["assets/inverter-b81ebeaa.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/bat.vue":()=>e(()=>import("./bat-95be4844.js"),["assets/bat-95be4844.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/counter.vue":()=>e(()=>import("./counter-20351565.js"),["assets/counter-20351565.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/device.vue":()=>e(()=>import("./device-f758f462.js"),["assets/device-f758f462.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/inverter.vue":()=>e(()=>import("./inverter-5eb731c0.js"),["assets/inverter-5eb731c0.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vzlogger/vzlogger/counter.vue":()=>e(()=>import("./counter-1d0ae197.js"),["assets/counter-1d0ae197.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vzlogger/vzlogger/device.vue":()=>e(()=>import("./device-ac8fcd8e.js"),["assets/device-ac8fcd8e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vzlogger/vzlogger/inverter.vue":()=>e(()=>import("./inverter-b7df71a8.js"),["assets/inverter-b7df71a8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./youless/youless/device.vue":()=>e(()=>import("./device-f06c661b.js"),["assets/device-f06c661b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./youless/youless/inverter.vue":()=>e(()=>import("./inverter-945da1b4.js"),["assets/inverter-945da1b4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.device.vendor}/${this.device.type}/${this.component.type}.vue`),errorComponent:ve}):z({loader:()=>x(Object.assign({"./alpha_ess/alpha_ess/device.vue":()=>e(()=>import("./device-114f55c5.js"),["assets/device-114f55c5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./azzurro_zcs/azzurro_zcs/device.vue":()=>e(()=>import("./device-0ff15197.js"),["assets/device-0ff15197.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./batterx/batterx/device.vue":()=>e(()=>import("./device-a90d36a5.js"),["assets/device-a90d36a5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./benning/benning/device.vue":()=>e(()=>import("./device-2d1936f7.js"),["assets/device-2d1936f7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./byd/byd/device.vue":()=>e(()=>import("./device-8fd0cfd3.js"),["assets/device-8fd0cfd3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./carlo_gavazzi/carlo_gavazzi/device.vue":()=>e(()=>import("./device-ebb040e8.js"),["assets/device-ebb040e8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/device.vue":()=>e(()=>import("./device-288b048d.js"),["assets/device-288b048d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./discovergy/discovergy/device.vue":()=>e(()=>import("./device-85821cd0.js"),["assets/device-85821cd0.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./e3dc/e3dc/device.vue":()=>e(()=>import("./device-19be8009.js"),["assets/device-19be8009.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./enphase/enphase/device.vue":()=>e(()=>import("./device-e95d24c3.js"),["assets/device-e95d24c3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fems/fems/device.vue":()=>e(()=>import("./device-15200209.js"),["assets/device-15200209.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/device.vue":()=>e(()=>import("./device-15d1e8a4.js"),["assets/device-15d1e8a4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/device.vue":()=>e(()=>import("./device-a866f0a5.js"),["assets/device-a866f0a5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/device.vue":()=>e(()=>import("./device-baa09f51.js"),["assets/device-baa09f51.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/device.vue":()=>e(()=>import("./device-82678599.js"),["assets/device-82678599.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/device.vue":()=>e(()=>import("./device-b1969620.js"),["assets/device-b1969620.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./good_we/good_we/device.vue":()=>e(()=>import("./device-61d30aae.js"),["assets/device-61d30aae.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./growatt/growatt/device.vue":()=>e(()=>import("./device-0c76d118.js"),["assets/device-0c76d118.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei/device.vue":()=>e(()=>import("./device-bfbda65d.js"),["assets/device-bfbda65d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/device.vue":()=>e(()=>import("./device-9bc9bf37.js"),["assets/device-9bc9bf37.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./janitza/janitza/device.vue":()=>e(()=>import("./device-bd5cdb53.js"),["assets/device-bd5cdb53.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko/device.vue":()=>e(()=>import("./device-8c20d3d7.js"),["assets/device-8c20d3d7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko_old/device.vue":()=>e(()=>import("./device-7ebf1222.js"),["assets/device-7ebf1222.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_plenticore/device.vue":()=>e(()=>import("./device-6c4bc3a2.js"),["assets/device-6c4bc3a2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_sem/device.vue":()=>e(()=>import("./device-9de767a2.js"),["assets/device-9de767a2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_steca/device.vue":()=>e(()=>import("./device-b24172e8.js"),["assets/device-b24172e8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./lg/lg/device.vue":()=>e(()=>import("./device-07487eef.js"),["assets/device-07487eef.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/device.vue":()=>e(()=>import("./device-172cdb34.js"),["assets/device-172cdb34.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./opendtu/opendtu/device.vue":()=>e(()=>import("./device-a9050752.js"),["assets/device-a9050752.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/device.vue":()=>e(()=>import("./device-7fc9a4c5.js"),["assets/device-7fc9a4c5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerdog/powerdog/device.vue":()=>e(()=>import("./device-97849187.js"),["assets/device-97849187.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerfox/powerfox/device.vue":()=>e(()=>import("./device-856db98a.js"),["assets/device-856db98a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./qcells/qcells/device.vue":()=>e(()=>import("./device-d65b5a77.js"),["assets/device-d65b5a77.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./rct/rct/device.vue":()=>e(()=>import("./device-64073da7.js"),["assets/device-64073da7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./saxpower/saxpower/device.vue":()=>e(()=>import("./device-1bc4846b.js"),["assets/device-1bc4846b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./shelly/shelly/device.vue":()=>e(()=>import("./device-f1b7bd09.js"),["assets/device-f1b7bd09.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./siemens/siemens/device.vue":()=>e(()=>import("./device-34727394.js"),["assets/device-34727394.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./siemens/siemens_sentron/device.vue":()=>e(()=>import("./device-abf68242.js"),["assets/device-abf68242.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/device.vue":()=>e(()=>import("./device-17b568a4.js"),["assets/device-17b568a4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/device.vue":()=>e(()=>import("./device-3c89ec9b.js"),["assets/device-3c89ec9b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_island/device.vue":()=>e(()=>import("./device-6e81103e.js"),["assets/device-6e81103e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_webbox/device.vue":()=>e(()=>import("./device-a1acba70.js"),["assets/device-a1acba70.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smart_me/smart_me/device.vue":()=>e(()=>import("./device-76c2a64a.js"),["assets/device-76c2a64a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smartfox/smartfox/device.vue":()=>e(()=>import("./device-eae80546.js"),["assets/device-eae80546.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sofar/sofar/device.vue":()=>e(()=>import("./device-6fdb7208.js"),["assets/device-6fdb7208.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_log/solar_log/device.vue":()=>e(()=>import("./device-48b233fa.js"),["assets/device-48b233fa.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_view/solar_view/device.vue":()=>e(()=>import("./device-b3827712.js"),["assets/device-b3827712.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_watt/solar_watt/device.vue":()=>e(()=>import("./device-2e356304.js"),["assets/device-2e356304.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_world/solar_world/device.vue":()=>e(()=>import("./device-9571fc19.js"),["assets/device-9571fc19.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/device.vue":()=>e(()=>import("./device-d43185f2.js"),["assets/device-d43185f2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solarmax/solarmax/device.vue":()=>e(()=>import("./device-b0639a26.js"),["assets/device-b0639a26.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solax/solax/device.vue":()=>e(()=>import("./device-9e5e0b35.js"),["assets/device-9e5e0b35.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/device.vue":()=>e(()=>import("./device-e20e0d18.js"),["assets/device-e20e0d18.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sonnen/sonnenbatterie/device.vue":()=>e(()=>import("./device-0030c6d0.js"),["assets/device-0030c6d0.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./studer/studer/device.vue":()=>e(()=>import("./device-74af41f9.js"),["assets/device-74af41f9.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sungrow/sungrow/device.vue":()=>e(()=>import("./device-70884df8.js"),["assets/device-70884df8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sunways/sunways/device.vue":()=>e(()=>import("./device-c391800c.js"),["assets/device-c391800c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tasmota/tasmota/device.vue":()=>e(()=>import("./device-9d6e08b7.js"),["assets/device-9d6e08b7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tesla/tesla/device.vue":()=>e(()=>import("./device-2a66c054.js"),["assets/device-2a66c054.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./varta/varta/device.vue":()=>e(()=>import("./device-0caf2ca7.js"),["assets/device-0caf2ca7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/device.vue":()=>e(()=>import("./device-f758f462.js"),["assets/device-f758f462.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vzlogger/vzlogger/device.vue":()=>e(()=>import("./device-ac8fcd8e.js"),["assets/device-ac8fcd8e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./youless/youless/device.vue":()=>e(()=>import("./device-f06c661b.js"),["assets/device-f06c661b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.device.vendor}/${this.device.type}/device.vue`),errorComponent:_e})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function me(t,o,i,m,v,n){return s(),E(Z(n.myComponent),{device:i.device,component:i.component,configuration:i.component?i.component.configuration:i.device.configuration,"device-id":i.device.id,"device-type":i.device.type,"component-id":i.component?i.component.id:void 0,"component-type":i.component?i.component.type:void 0,"onUpdate:configuration":o[0]||(o[0]=l=>n.updateConfiguration(l))},null,40,["device","component","configuration","device-id","device-type","component-id","component-type"])}const pe=I(ae,[["render",me],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/OpenwbConfigProxy.vue"]]);S.add(q,U,N,G,F,H,K);const le={name:"OpenwbHardwareInstallationView",components:{FontAwesomeIcon:$,OpenwbConfigProxy:pe},mixins:[J],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/counter/get/hierarchy","openWB/system/device/+/config","openWB/system/device/+/component/+/config","openWB/system/configurable/devices_components"],selectedVendor:void 0,deviceToAdd:void 0,showDeviceRemoveModal:!1,modalDevice:void 0,modalDeviceName:"",componentToAdd:[],showComponentRemoveModal:!1,modalComponent:void 0,modalComponentName:""}},computed:{installedDevices:{get(){return this.getWildcardTopics("openWB/system/device/+/config")}},installedComponents:{get(){return this.getWildcardTopics("openWB/system/device/+/component/+/config")}},vendorList:{get(){return this.$store.state.mqtt["openWB/system/configurable/devices_components"]===void 0?[]:Object.entries(this.$store.state.mqtt["openWB/system/configurable/devices_components"]).map(([t,o])=>({label:o.group_name,options:Object.entries(o.vendors).map(([i,m])=>({value:[t,i],text:m.vendor_name})).sort((i,m)=>i.text.localeCompare(m.text))})).sort((t,o)=>-t.label.localeCompare(o.label))}},deviceList:{get(){if(this.selectedVendor===void 0)return[];let[t,o]=this.selectedVendor;return Object.entries(this.$store.state.mqtt["openWB/system/configurable/devices_components"][t].vendors[o].devices).map(([i,m])=>({value:[o,i],text:m.device_name})).sort((i,m)=>i.text.localeCompare(m.text))}}},methods:{getComponentTypeClass(t){return t.match(/^(.+_)?counter(_.+)?$/)?"danger":t.match(/^(.+_)?inverter(_.+)?$/)?"success":t.match(/^(.+_)?bat(_.+)?$/)?"warning":"dark"},getComponentTypeIcon(t){return t.match(/^(.+_)?counter(_.+)?$/)?["fas","fa-gauge-high"]:t.match(/^(.+_)?inverter(_.+)?$/)?["fas","fa-solar-panel"]:t.match(/^(.+_)?bat(_.+)?$/)?["fas","fa-car-battery"]:["fas","fa-microchip"]},getMyInstalledComponents(t){return this.getWildcardTopics("openWB/system/device/"+t+"/component/+/config")},deviceHasConfiguredComponents(t){return Object.keys(this.getMyInstalledComponents(t)).length>0},addDevice(){this.$emit("sendCommand",{command:"addDevice",data:{vendor:this.deviceToAdd[0],type:this.deviceToAdd[1]}})},removeDeviceModal(t,o,i){i.stopPropagation(),this.modalDevice=t,this.modalDeviceName=o,this.showDeviceRemoveModal=!0},removeDevice(t){this.showDeviceRemoveModal=!1,t=="confirm"&&(console.info("request removal of device '"+this.modalDevice+"'"),this.$emit("sendCommand",{command:"removeDevice",data:{id:this.modalDevice}}))},addComponent(t,o,i,m){this.$emit("sendCommand",{command:"addComponent",data:{deviceId:t,deviceType:i,deviceVendor:o,type:m}})},removeComponentModal(t,o,i,m,v){v.stopPropagation(),this.modalComponent={deviceId:t,id:o,type:i},this.modalComponentName=m,this.showComponentRemoveModal=!0},removeComponent(t){this.showComponentRemoveModal=!1,t=="confirm"&&(console.info("request removal of component '"+this.modalComponent.id+"' from device '"+this.modalComponent.deviceId+"' type '"+this.modalComponent.type+"'"),this.$emit("sendCommand",{command:"removeComponent",data:this.modalComponent}))},getComponentList(t,o){if(t===void 0||o===void 0)return[];console.debug("finding components for",t,o);let i=[];return Object.values(this.$store.state.mqtt["openWB/system/configurable/devices_components"]).every(m=>m.vendors[t]!==void 0?(m.vendors[t].devices[o]!==void 0&&(i=Object.entries(m.vendors[t].devices[o].components).map(([n,l])=>({value:n,text:l.component_name}))),!1):!0),i},updateConfiguration(t,o){console.debug("updateConfiguration",t,o),this.updateState(t,o.value,o.object)}}},ce={class:"hardwareInstallation"},Ee={name:"hardwareInstallationForm"},ge={key:0},fe={key:1},Ve={key:1},be={key:0};function Oe(t,o,i,m,v,n){const l=p("openwb-base-modal-dialog"),T=p("router-link"),O=p("openwb-base-alert"),A=p("font-awesome-icon"),D=p("openwb-base-avatar"),P=p("openwb-base-text-input"),C=p("openwb-config-proxy"),M=p("openwb-base-heading"),w=p("openwb-base-card"),y=p("openwb-base-select-input"),j=p("openwb-base-submit-buttons");return s(),g(L,null,[u(l,{show:v.showDeviceRemoveModal,title:"Gerät löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:n.removeDevice},{default:r(()=>[d(' Wollen Sie das Gerät "'+V(v.modalDeviceName)+'" inklusive aller Komponenten wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show","onModalResult"]),u(l,{show:v.showComponentRemoveModal,title:"Komponente löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:n.removeComponent},{default:r(()=>[d(' Wollen Sie die Komponente "'+V(v.modalComponentName)+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show","onModalResult"]),c("div",ce,[c("form",Ee,[i.installAssistantActive?R("",!0):(s(),E(O,{key:0,subtype:"info"},{default:r(()=>[o[7]||(o[7]=d(" Wenn neue Komponenten - insbesondere Zähler - konfiguriert wurden, ist auch das ")),u(T,{to:"/LoadManagementConfiguration"},{default:r(()=>o[6]||(o[6]=[d(" Lastmanagement ")])),_:1}),o[8]||(o[8]=d(" zu prüfen! "))]),_:1})),u(w,{title:"Geräte und Komponenten"},{default:r(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(s(),g("div",ge,[u(O,{subtype:"info"},{default:r(()=>o[9]||(o[9]=[d(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),g("div",fe,[(s(!0),g(L,null,k(n.installedDevices,(_,h)=>(s(),E(w,{key:h,collapsible:!0,collapsed:!0,subtype:"dark"},{header:r(()=>[u(A,{"fixed-width":"",icon:["fas","network-wired"]}),d(" "+V(_==null?void 0:_.name),1)]),actions:r(a=>[a.collapsed?(s(),g("div",Ve,[(s(!0),g(L,null,k(n.getMyInstalledComponents(_==null?void 0:_.id),f=>(s(),E(D,{key:f.id,class:Q("ml-1 bg-"+n.getComponentTypeClass(f.type))},{default:r(()=>[u(A,{"fixed-width":"",icon:n.getComponentTypeIcon(f.type)},null,8,["icon"])]),_:2},1032,["class"]))),128))])):(s(),E(D,{key:0,class:"bg-danger clickable",onClick:f=>n.removeDeviceModal(_==null?void 0:_.id,_==null?void 0:_.name,f)},{default:r(()=>[u(A,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),default:r(()=>[u(P,{title:"Bezeichnung",subtype:"text","model-value":_==null?void 0:_.name,"onUpdate:modelValue":a=>t.updateState(h,a,"name")},null,8,["model-value","onUpdate:modelValue"]),o[17]||(o[17]=c("hr",null,null,-1)),u(C,{device:_,"onUpdate:configuration":a=>n.updateConfiguration(h,a)},null,8,["device","onUpdate:configuration"]),o[18]||(o[18]=c("hr",null,null,-1)),u(M,null,{default:r(()=>[...o[10]||(o[10]=[d("Komponenten")])]),_:1}),n.deviceHasConfiguredComponents(_==null?void 0:_.id)?R("",!0):(s(),E(O,{key:0,subtype:"warning"},{default:r(()=>[...o[11]||(o[11]=[d(" Es wurden noch keine Komponenten zu diesem Gerät angelegt. ")])]),_:1})),(s(!0),g(L,null,k(n.getMyInstalledComponents(_.id),(a,f)=>(s(),E(w,{key:a.id,collapsible:!0,collapsed:!0,subtype:n.getComponentTypeClass(a.type)},{header:r(()=>[u(A,{"fixed-width":"",icon:n.getComponentTypeIcon(a.type)},null,8,["icon"]),d(" "+V(a.name),1)]),actions:r(b=>[b.collapsed?R("",!0):(s(),E(D,{key:0,class:"bg-danger clickable",onClick:W=>n.removeComponentModal(_.id,a.id,a.type,a.name,W)},{default:r(()=>[u(A,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),default:r(()=>[u(P,{title:"Bezeichnung",subtype:"text","model-value":a.name,"onUpdate:modelValue":b=>t.updateState(f,b,"name")},null,8,["model-value","onUpdate:modelValue"]),u(P,{title:"Hersteller",subtype:"text","model-value":a.info.manufacturer,"onUpdate:modelValue":b=>t.updateState(f,b,"info.manufacturer")},{help:r(()=>[...o[12]||(o[12]=[d(" Optional: zusätzliche Information für den Systembericht. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),u(P,{title:"Modell",subtype:"text","model-value":a.info.model,"onUpdate:modelValue":b=>t.updateState(f,b,"info.model")},{help:r(()=>[...o[13]||(o[13]=[d(" Optional: zusätzliche Information für den Systembericht. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o[14]||(o[14]=c("hr",null,null,-1)),u(C,{device:_,component:a,"onUpdate:configuration":b=>n.updateConfiguration(f,b)},null,8,["device","component","onUpdate:configuration"])]),_:2},1032,["subtype"]))),128)),o[19]||(o[19]=c("hr",null,null,-1)),n.getComponentList(_.vendor,_.type).length?(s(),E(y,{key:1,title:"Verfügbare Komponenten","not-selected":"Bitte auswählen",options:n.getComponentList(_.vendor,_.type),"model-value":v.componentToAdd[_.id],"add-button":!0,"onUpdate:modelValue":a=>v.componentToAdd[_.id]=a,"onInput:add":a=>n.addComponent(_.id,_.vendor,_.type,v.componentToAdd[_.id])},{help:r(()=>[...o[15]||(o[15]=[d(" Bitte eine Komponente auswählen, die hinzugefügt werden soll. Für jeden Datensatz, z.B. Wechselrichter- und Batteriedaten, muss eine Wechselrichter- und eine Batteriekomponente hinzugefügt werden. ")])]),_:2},1032,["options","model-value","onUpdate:modelValue","onInput:add"])):(s(),E(O,{key:2,subtype:"info"},{default:r(()=>[...o[16]||(o[16]=[d(" Dieses System bietet keine Komponenten zur Installation an. ")])]),_:1}))]),_:2},1024))),128)),Object.keys(n.installedDevices).length>0?(s(),g("hr",be)):R("",!0),u(y,{modelValue:v.selectedVendor,"onUpdate:modelValue":o[0]||(o[0]=_=>v.selectedVendor=_),title:"Hersteller","not-selected":"Bitte auswählen",groups:n.vendorList},null,8,["modelValue","groups"]),u(y,{modelValue:v.deviceToAdd,"onUpdate:modelValue":[o[1]||(o[1]=_=>v.deviceToAdd=_),o[2]||(o[2]=_=>v.deviceToAdd=_)],title:"Verfügbare Geräte","not-selected":"Bitte auswählen",disabled:v.selectedVendor===void 0,options:n.deviceList,"model-value":v.deviceToAdd,"add-button":!0,"onInput:add":n.addDevice},{help:r(()=>o[20]||(o[20]=[c("p",null,[d(' Die openWB-Regelung ist auf Werte von Messpunkten (Zähler, Energy Meter usw.) angewiesen. Hierfür werden "Geräte" und "Komponenten" verwendet.'),c("br"),d(' Ein "Gerät" wird hierbei durch seine Verbindungseinstellungen (z.B. IP-Adresse) spezifiziert (häufig durch manuelle Eingabe oder manchmal automatisch ermittelt) und kann über mehrere untergeordnete "Komponenten" verfügen, z.B. einen Messpunkt für PV-Erzeugung, einen Messpunkt für Netzeinspeisung/-bezug am EVU-Punkt usw.. Ein "Gerät" bedingt somit immer mindestens eine zugehörige "Komponente". ')],-1),c("p",null,[d(' Bsp: Werden die Werte von verschiedenen Messpunkten (z.B. PV und EVU) über die gleiche IP-Adresse abgefragt, wird dafür ein "Gerät" mit zwei "Komponenten" für PV- und EVU- Messpunkt angelegt.'),c("br"),d(' Verfügt dagegen jeder Messpunkt über eine eigene IP-Adresse, wird jeder Messpunkt als eigenes "Gerät" mit nur einer "Komponente" angelegt. ')],-1),c("p",null,' Das "Gerät" wird in der Dropdown-Liste ausgewählt und mit "+" der Regelung hinzugefügt. Im Anschluss erfolgt die Konfiguration des "Gerätes" innerhalb des schwarzen "Geräte"-Reiters. ',-1)])),_:1},8,["modelValue","disabled","options","model-value","onInput:add"])]))]),_:1}),u(j,{"form-name":"hardwareInstallationForm",onSave:o[3]||(o[3]=_=>t.$emit("save")),onReset:o[4]||(o[4]=_=>t.$emit("reset")),onDefaults:o[5]||(o[5]=_=>t.$emit("defaults"))})])])],64)}const Ie=I(le,[["render",Oe],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/HardwareInstallation.vue"]]),Le=Object.freeze(Object.defineProperty({__proto__:null,default:Ie},Symbol.toStringTag,{value:"Module"}));export{re as C,B as D,Ie as H,Le as a}; diff --git a/web/settings/assets/InstallAssistant-15ca0748.js b/web/settings/assets/InstallAssistant-15ca0748.js new file mode 100644 index 0000000000..e41164872d --- /dev/null +++ b/web/settings/assets/InstallAssistant-15ca0748.js @@ -0,0 +1 @@ +import{C as r,_ as t}from"./index-beac009d.js";import{_}from"./dynamic-import-helper-be004503.js";import{_ as m,a1 as p,u as d,k as i,l as u,G as A,E as v,z as E,a2 as I,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const P={name:"InstallAssistantView",mixins:[r],emits:["sendCommand","save","reset","defaults"],data(){return{currentPage:0,lastPage:10,showEndAssistantModal:!1}},computed:{myStepComponent(){return console.debug(`loading assistant page: ${this.currentPage}`),p({loader:()=>_(Object.assign({"../components/install_assistant/InstallAssistantStep0.vue":()=>t(()=>import("./InstallAssistantStep0-8baf4b8a.js"),["assets/InstallAssistantStep0-8baf4b8a.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css"]),"../components/install_assistant/InstallAssistantStep1.vue":()=>t(()=>import("./InstallAssistantStep1-b3ac46ff.js"),["assets/InstallAssistantStep1-b3ac46ff.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/DataManagement-c0d34f05.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStep10.vue":()=>t(()=>import("./InstallAssistantStep10-74375f63.js"),["assets/InstallAssistantStep10-74375f63.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css"]),"../components/install_assistant/InstallAssistantStep2.vue":()=>t(()=>import("./InstallAssistantStep2-f28bebc5.js"),["assets/InstallAssistantStep2-f28bebc5.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/System-b84edc7f.js","assets/System-0f1d217b.css"]),"../components/install_assistant/InstallAssistantStep3.vue":()=>t(()=>import("./InstallAssistantStep3-4b7ef23e.js"),["assets/InstallAssistantStep3-4b7ef23e.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/GeneralConfig-58412dab.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStep4.vue":()=>t(()=>import("./InstallAssistantStep4-74f02770.js"),["assets/InstallAssistantStep4-74f02770.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/ChargePointInstallation-a0c18822.js","assets/dynamic-import-helper-be004503.js","assets/ChargePointInstallation-7b9399a8.css"]),"../components/install_assistant/InstallAssistantStep5.vue":()=>t(()=>import("./InstallAssistantStep5-ded79122.js"),["assets/InstallAssistantStep5-ded79122.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/HardwareInstallation-775406e1.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStep6.vue":()=>t(()=>import("./InstallAssistantStep6-61c38c1e.js"),["assets/InstallAssistantStep6-61c38c1e.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/ChargePointInstallation-a0c18822.js","assets/dynamic-import-helper-be004503.js","assets/ChargePointInstallation-7b9399a8.css"]),"../components/install_assistant/InstallAssistantStep7.vue":()=>t(()=>import("./InstallAssistantStep7-56d97b79.js"),["assets/InstallAssistantStep7-56d97b79.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/LoadManagementConfig-ae3a8b6c.js","assets/OpenwbSortableList-dbb3f422.js","assets/OpenwbSortableList-7ba533e4.css"]),"../components/install_assistant/InstallAssistantStep8.vue":()=>t(()=>import("./InstallAssistantStep8-fe75a2f1.js"),["assets/InstallAssistantStep8-fe75a2f1.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/VehicleConfig-37a300a0.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStep9.vue":()=>t(()=>import("./InstallAssistantStep9-309aaea7.js"),["assets/InstallAssistantStep9-309aaea7.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-b4433531.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/DataManagement-c0d34f05.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStepTemplate.vue":()=>t(()=>import("./InstallAssistantStepTemplate-b4433531.js"),["assets/InstallAssistantStepTemplate-b4433531.js","assets/index-beac009d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-ff479f80.css"])}),`../components/install_assistant/InstallAssistantStep${this.currentPage}.vue`)})}},methods:{switchPage(s){s>=0&&s<=this.lastPage?this.currentPage=s:console.error(`invalid assistant page number: ${s}`)},endAssistantModal(){this.currentPage!=this.lastPage?this.showEndAssistantModal=!0:this.endAssistant("confirm")},endAssistant(s){this.showEndAssistantModal=!1,s=="confirm"&&(this.updateState("openWB/system/installAssistantDone",!0),this.$root.doPublish("openWB/set/system/installAssistantDone",!0),this.$router.push("/Status"))}}};function S(s,e,f,g,o,n){const l=d("openwb-base-modal-dialog");return i(),u("div",null,[A(l,{show:o.showEndAssistantModal,title:"Assistent beenden",subtype:"danger",buttons:[{text:"Beenden",event:"confirm",subtype:"danger"}],onModalResult:n.endAssistant},{default:v(()=>e[4]||(e[4]=[c(" Wollen Sie den Assistenten wirklich vorzeitig beenden? ")])),_:1},8,["show","onModalResult"]),(i(),E(I(n.myStepComponent),{onSendCommand:e[0]||(e[0]=a=>s.$emit("sendCommand",a)),onSave:e[1]||(e[1]=a=>s.$emit("save")),onReset:e[2]||(e[2]=a=>s.$emit("reset")),onDefaults:e[3]||(e[3]=a=>s.$emit("defaults")),onSwitchPage:n.switchPage,onEndAssistant:n.endAssistantModal},null,40,["onSwitchPage","onEndAssistant"]))])}const L=m(P,[["render",S],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/InstallAssistant.vue"]]);export{L as default}; diff --git a/web/settings/assets/InstallAssistantStep0-8baf4b8a.js b/web/settings/assets/InstallAssistantStep0-8baf4b8a.js new file mode 100644 index 0000000000..eb691d17aa --- /dev/null +++ b/web/settings/assets/InstallAssistantStep0-8baf4b8a.js @@ -0,0 +1 @@ +import{C as u}from"./index-beac009d.js";import d from"./InstallAssistantStepTemplate-b4433531.js";import{_ as p,u as i,k as m,z as g,E as a,G as h,y as f,x as t}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const c={name:"InstallAssistantStep0",components:{InstallAssistantStepTemplate:d},mixins:[u],emits:["switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[],showModalWarning:!1}),methods:{requestNextPage(){this.showModalWarning=!0},nextPage(s){this.showModalWarning=!1,s==="confirm"&&this.$emit("switchPage",1)},previousPage(){},endAssistant(){this.$emit("endAssistant")}}};function b(s,e,A,w,P,n){const o=i("openwb-base-modal-dialog"),r=i("InstallAssistantStepTemplate");return m(),g(r,{title:"Start","hide-previous":!0,onNextPage:n.requestNextPage,onPreviousPage:n.previousPage,onEndAssistant:n.endAssistant},{content:a(()=>[h(o,{show:s.showModalWarning,title:"Achtung!",subtype:"danger",buttons:[{text:"Ok",event:"confirm",subtype:"success"}],onModalResult:e[0]||(e[0]=l=>n.nextPage(l))},{default:a(()=>e[1]||(e[1]=[f(" Bevor der Assistent gestartet wird, ist sicherzustellen, dass kein Ladevorgang aktiv ist! Zur Sicherheit bitte zusätzlich alle Fahrzeuge von der Ladestation / den Ladestationen abstecken! ")])),_:1},8,["show"]),e[2]||(e[2]=t("h2",null,"Vielen Dank, dass Du Dich für openWB entschieden hast.",-1)),e[3]||(e[3]=t("p",null,"Dieser Assistent führt Dich durch die Konfiguration der einzelnen Module:",-1)),e[4]||(e[4]=t("ol",null,[t("li",null,"Datensicherung der bestehenden Konfiguration"),t("li",null,"Aktualisierung des openWB-Systems"),t("li",null,"Allgemeine Einstellungen: Auswahl des Betriebsmodus primary (steuernd) bzw. secondary (gesteuerte WB)")],-1)),e[5]||(e[5]=t("p",null," Wird diese openWB als secondary betrieben, so werden nur die lokalen Ladepunkte eingerichtet. Im Betriebsmodus primary werden die folgenden zusätzlichen Schritte durchlaufen: ",-1)),e[6]||(e[6]=t("ol",{start:"4"},[t("li",null,"Energiesystem - Geräte und Komponenten einrichten"),t("li",null,"Einrichten der Ladepunkte (openWB als primary)"),t("li",null,"Konfiguration des Lastmanagements"),t("li",null,"Einrichten der Fahrzeuge"),t("li",null,"Datensicherung der neuen Konfiguration")],-1)),e[7]||(e[7]=t("p",null,"Danach ist die Grundkonfiguration abgeschlossen.",-1))]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const D=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep0.vue"]]);export{D as default}; diff --git a/web/settings/assets/InstallAssistantStep1-b3ac46ff.js b/web/settings/assets/InstallAssistantStep1-b3ac46ff.js new file mode 100644 index 0000000000..881e7838f8 --- /dev/null +++ b/web/settings/assets/InstallAssistantStep1-b3ac46ff.js @@ -0,0 +1 @@ +import{C as m}from"./index-beac009d.js";import p from"./InstallAssistantStepTemplate-b4433531.js";import{D as l}from"./DataManagement-c0d34f05.js";import{_ as d,u as a,k as u,z as g,E as o,x as f,G as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const A={name:"InstallAssistantStep1",components:{InstallAssistantStepTemplate:p,DataManagement:l},mixins:[m],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",2)},previousPage(){this.$emit("switchPage",0)},endAssistant(){this.$emit("endAssistant")}}};function P(t,e,c,S,w,n){const i=a("DataManagement"),r=a("InstallAssistantStepTemplate");return u(),g(r,{title:"1. Datensicherung der bestehenden Konfiguration",onNextPage:n.nextPage,onPreviousPage:n.previousPage,onEndAssistant:n.endAssistant},{help:o(()=>e[4]||(e[4]=[f("p",null," Wir empfehlen an dieser Stelle eine Sicherung der openWB zu erstellen, auf welche später zurückgegriffen werden kann, insbesondere, wenn die openWB schon konfiguriert war und der Assistent nun erneut ausgeführt wird. ",-1)])),content:o(()=>[v(i,{"install-assistant-active":!0,"show-backup-cloud-section":!1,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const N=d(A,[["render",P],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep1.vue"]]);export{N as default}; diff --git a/web/settings/assets/InstallAssistantStep10-74375f63.js b/web/settings/assets/InstallAssistantStep10-74375f63.js new file mode 100644 index 0000000000..99a0ad5bbc --- /dev/null +++ b/web/settings/assets/InstallAssistantStep10-74375f63.js @@ -0,0 +1 @@ +import{C as a}from"./index-beac009d.js";import o from"./InstallAssistantStepTemplate-b4433531.js";import{_ as r,u as l,k as m,z as p,E as d,x as n}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const u={name:"InstallAssistantStep10",components:{InstallAssistantStepTemplate:o},mixins:[a],emits:["switchPage","endAssistant","sendCommand"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){},previousPage(){this.$emit("switchPage",9)},sendCommand(t){this.$emit("sendCommand",t)},endAssistant(){this.$emit("endAssistant")}}};function g(t,s,c,f,A,e){const i=l("InstallAssistantStepTemplate");return m(),p(i,{title:"Abgeschlossen","hide-next":!0,onNextPage:e.nextPage,onPreviousPage:e.previousPage,onEndAssistant:e.endAssistant},{content:d(()=>s[0]||(s[0]=[n("h2",null,"Die Grundkonfiguration ist abgeschlossen.",-1),n("p",null," Die grundlegende Konfiguration der openWB ist abgeschlossen. Du wirst mit Beendigung dieses Assistenten auf die Statusseite weitergeleitet. Bitte überprüfe die dargestellten Informationen und passe bei Unstimmigkeiten die Einstellungen in den jeweiligen Konfigurationsseiten an (openWB -> Einstellungen -> Konfiguration). ",-1)])),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const w=r(u,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep10.vue"]]);export{w as default}; diff --git a/web/settings/assets/InstallAssistantStep2-f28bebc5.js b/web/settings/assets/InstallAssistantStep2-f28bebc5.js new file mode 100644 index 0000000000..ef3e356de1 --- /dev/null +++ b/web/settings/assets/InstallAssistantStep2-f28bebc5.js @@ -0,0 +1 @@ +import{C as l}from"./index-beac009d.js";import u from"./InstallAssistantStepTemplate-b4433531.js";import d from"./System-b84edc7f.js";import{_ as p,u as a,k as f,z as g,E as o,x as s,G as S}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const c={name:"InstallAssistantStep2",components:{InstallAssistantStepTemplate:u,SystemView:d},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",3)},previousPage(){this.$emit("switchPage",1)},endAssistant(){this.$emit("endAssistant")}}};function A(t,e,w,k,v,i){const r=a("SystemView"),m=a("InstallAssistantStepTemplate");return f(),g(m,{title:"2. Aktualisierung des openWB-Systems",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:o(()=>e[4]||(e[4]=[s("p",null," Bitte ein System-Update durchführen, um die Software auf den neuesten Stand der Features und Funktionen zu bringen. ",-1),s("p",null," Hierzu Versions-Informationen / Aktualisierung auswählen, Informationen aktualisieren klicken und falls ein Update verfügbar ist, wird der Update-Button grün (zum Update bereit). ",-1),s("p",null," Bei openWB-Systemen mit integriertem Display muss nach Zurücksetzen auf Werkseinstellungen oder nach Ausführen eines Updates das Display wieder eingeschaltet werden. ",-1),s("p",null,' Ein Klick auf "Änderungen" zeigt die Modifikationen. Ein Klick auf "Update" startet die Aktualisierung, welche auch einen automatischen Reboot initiiert (bitte ca. 5 Minuten warten). Danach muss der Assistent neu gestartet werden. ',-1)])),content:o(()=>[S(r,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=n=>t.$emit("sendCommand",n)),onSave:e[1]||(e[1]=n=>t.$emit("save")),onReset:e[2]||(e[2]=n=>t.$emit("reset")),onDefaults:e[3]||(e[3]=n=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const z=p(c,[["render",A],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep2.vue"]]);export{z as default}; diff --git a/web/settings/assets/InstallAssistantStep3-4b7ef23e.js b/web/settings/assets/InstallAssistantStep3-4b7ef23e.js new file mode 100644 index 0000000000..62d671adfd --- /dev/null +++ b/web/settings/assets/InstallAssistantStep3-4b7ef23e.js @@ -0,0 +1 @@ +import{C as u}from"./index-beac009d.js";import d from"./InstallAssistantStepTemplate-b4433531.js";import{G as m}from"./GeneralConfig-58412dab.js";import{_ as p,u as a,k as g,z as f,E as i,x as n,G as w}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"InstallAssistantStep3",components:{InstallAssistantStepTemplate:d,GeneralConfigView:m},mixins:[u],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:["openWB/general/extern"]}),methods:{nextPage(){this.$emit("switchPage",this.$store.state.mqtt["openWB/general/extern"]?4:5)},previousPage(){this.$emit("switchPage",2)},endAssistant(){this.$emit("endAssistant")}}};function B(t,e,S,c,h,r){const o=a("GeneralConfigView"),l=a("InstallAssistantStepTemplate");return g(),f(l,{title:"3. Allgemeine Einstellungen: Auswahl des Betriebsmodus primary (steuernd) bzw. secondary (gesteuerte WB)",onNextPage:r.nextPage,onPreviousPage:r.previousPage,onEndAssistant:r.endAssistant},{help:i(()=>e[4]||(e[4]=[n("p",null," Hier wird abgefragt, ob Dein System mit mehreren openWBs oder nur mit einer openWB betrieben wird. Eine openWB kann andere openWBs steuern. ",-1),n("p",null,' Zuerst ist im Feld "Steuerungsmodus" festzulegen, ob die openWB als "steuernd" (primary) oder als ferngesteuert (secondary) arbeiten soll. Die Einstellung gilt für genau die WB, auf der aktuell konfiguriert wird (korrekte IP-Adresse beachten). ',-1),n("p",null," Eine openWB standalone hat keinen Ladepunkt und arbeitet nur als Steuerteil (primary). Eine openWB Standard(+), custom, Duo und Buchse können sowohl als steuernder primary oder als ferngesteuerte secondary betrieben werden (Duo mit 2 Ladepunkten). Eine openWB Pro und Satellit können nur als s.g. Ladepunkt genutzt werden und benötigen zwingend einen separaten primary als Steuerteil. ",-1),n("p",null,' Sofern openWB als Energiemanagementsystem für steuerbare Verbrauchseinrichtungen (SteuVE) gemäß §14a EnWG verwendet werden soll, so ist für die VNB-Signaleingänge die entsprechende Hardware auszuwählen. -> s. Beschreibung zu "Steuerbare Verbrauchseinrichtung". ',-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:i(()=>[w(o,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const x=p(b,[["render",B],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep3.vue"]]);export{x as default}; diff --git a/web/settings/assets/InstallAssistantStep4-74f02770.js b/web/settings/assets/InstallAssistantStep4-74f02770.js new file mode 100644 index 0000000000..b6d7ab87c7 --- /dev/null +++ b/web/settings/assets/InstallAssistantStep4-74f02770.js @@ -0,0 +1 @@ +import{C as l}from"./index-beac009d.js";import p from"./InstallAssistantStepTemplate-b4433531.js";import{b as u}from"./ChargePointInstallation-a0c18822.js";import{_ as m,u as a,k as g,z as f,E as o,x as n,G as w}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"InstallAssistantStep4",components:{InstallAssistantStepTemplate:p,ChargePointInstallationView:u},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",9)},previousPage(){this.$emit("switchPage",3)},endAssistant(){this.$emit("endAssistant")}}};function k(t,e,h,B,v,i){const r=a("ChargePointInstallationView"),d=a("InstallAssistantStepTemplate");return g(),f(d,{title:"4. Einrichten der Ladepunkte (openWB als secondary)",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:o(()=>e[4]||(e[4]=[n("p",null,' Diese hier vorzukonfigurierende openWB wurde als "secondary" eingestellt und wird von einer anderen openWB oder standalone ferngesteuert. ',-1),n("p",null," Bei vorkonfigurierten openWBs ist ab Werk bereits ein (zwei bei einer DUO) interner Ladepunkt eingetragen, es müssen keine weiteren Ladepunkte hinzugefügt werden. ",-1),n("p",null,' Tragen Sie unter Ladepunkte bei verfügbare Ladepunkte "Interne openWB" ein und wählen Sie die Bauart der openWB (z.B. openWB series 1/2 custom, Standard (+) oder Buchse) aus. ',-1),n("p",null," Wenn eine openWB Duo gewählt wird, so sind zwei Ladepunkte mit Ladepunkt-Nummer 1 und 2 zu konfigurieren. Bei der openWB Pro und Satellit sind keine Einstellungen notwendig. ",-1),n("p",null,"Weitere Einstellungen sind bei der Vorkonfiguration einer secondary nicht notwendig.",-1),n("p",null," Bitte lesen Sie auch die Hinweistexte, welche durch Klicken auf das Fragezeichensymbol erscheinen. Hier sind weiterführende Informationen zu den Eingabefeldern zu finden. ",-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:o(()=>[w(r,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const E=m(c,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep4.vue"]]);export{E as default}; diff --git a/web/settings/assets/InstallAssistantStep5-ded79122.js b/web/settings/assets/InstallAssistantStep5-ded79122.js new file mode 100644 index 0000000000..e60a17c9c0 --- /dev/null +++ b/web/settings/assets/InstallAssistantStep5-ded79122.js @@ -0,0 +1 @@ +import{C as l}from"./index-beac009d.js";import m from"./InstallAssistantStepTemplate-b4433531.js";import{H as u}from"./HardwareInstallation-775406e1.js";import{_ as p,u as r,k as g,z as f,E as a,x as n,G as w}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const h={name:"InstallAssistantStep5",components:{InstallAssistantStepTemplate:m,HardwareInstallationView:u},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",6)},previousPage(){this.$emit("switchPage",3)},endAssistant(){this.$emit("endAssistant")}}};function c(t,e,v,S,b,i){const o=r("HardwareInstallationView"),d=r("InstallAssistantStepTemplate");return g(),f(d,{title:"4. Energiesystem - Geräte und Komponenten einrichten",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:a(()=>e[4]||(e[4]=[n("p",null,' Diese openWB wurde als "primary" konfiguriert und übernimmt die Steuerung anderer openWBs, falls vorhanden, sowie die alleinige Regelung des Systems. Dazu müssen im Folgenden die Geräte und Komponenten eingerichtet werden. ',-1),n("p",null," Sofern das System nicht zurückgesetzt wurde, ist im Auslieferungszustand für erste Ladetests nach der WB-Montage ein virtueller Zähler vorkonfiguriert. Dieser muss zuerst gelöscht werden, wenn das im Gebäude installierte Energiesystem bestehend aus EVU-Zähler, PV-Anlage und ggf. Speicher in openWB konfiguriert wird. ",-1),n("p",null," Jedes verfügbare Gerät wird durch eine eigene IP-Adresse definiert. Dieses Gerät ist über den Herstellernamen des Energiesystems im Auswahlmenü der verfügbaren Geräte auszuwählen. Unterhalb des Gerätes werden die zugehörigen Komponenten EVU-Zähler, WR und Speicher konfiguriert. Es können je nach Bedarf beliebig viele Geräte und Komponenten miteinander kombiniert werden. ",-1),n("p",null," Bitte lesen Sie auch die Hinweistexte, welche durch Klicken auf das Fragezeichensymbol erscheinen. Hier sind weiterführende Informationen zu den Eingabefeldern zu finden. ",-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:a(()=>[w(o,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const x=p(h,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep5.vue"]]);export{x as default}; diff --git a/web/settings/assets/InstallAssistantStep6-61c38c1e.js b/web/settings/assets/InstallAssistantStep6-61c38c1e.js new file mode 100644 index 0000000000..9c8740a6fa --- /dev/null +++ b/web/settings/assets/InstallAssistantStep6-61c38c1e.js @@ -0,0 +1 @@ +import{C as d}from"./index-beac009d.js";import u from"./InstallAssistantStepTemplate-b4433531.js";import{b as p}from"./ChargePointInstallation-a0c18822.js";import{_ as m,u as a,k as g,z as h,E as r,x as n,G as w}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const P={name:"InstallAssistantStep6",components:{InstallAssistantStepTemplate:u,ChargePointInstallationView:p},mixins:[d],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",7)},previousPage(){this.$emit("switchPage",5)},endAssistant(){this.$emit("endAssistant")}}};function f(t,e,c,k,b,i){const o=a("ChargePointInstallationView"),l=a("InstallAssistantStepTemplate");return g(),h(l,{title:"5. Einrichten der Ladepunkte (openWB als primary)",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:r(()=>e[4]||(e[4]=[n("p",null,' Enthält die steuernde openWB (primary) Ladetechnik, wird bei "Verfügbare Ladepunkte" Interne openWB ausgewählt. Weitere LP werden im primary als Externe openWB (als secondary konfigurierte openWB) oder andere WB-Typen wie Pro, Satellit eingebunden. ',-1),n("p",null,"Bei openWBs ab Werk kann hier bereits ein Ladepunkt eingetragen sein.",-1),n("p",null," Nachfolgend werden die Eigenschaften des Ladepunktes wie IP-Adresse und elektrischer Anschluss definiert. Die meisten openWB werden 3-phasig angeschlossen! Bei mehreren Ladepunkten ist auf phasenrotierten Anschluss der openWB-Zuleitung zu achten! Abschließend wird die korrekte Zuordnung der Phase 1 des Ladekabels zur zugehörigen EVU-Zählerphase konfiguriert. Dies ist sehr wichtig, um optimales Lastmanagement sicherzustellen! ",-1),n("p",null," Tipp zur Zuordnung: Verwende ein nur 1-phasig ladendes Auto (z.B. Hybrid) oder stelle bei openWB mit 1p3p-Phasenumschaltung temporär unter Sofortladen (s. Einstellungen -> Ladeeinstellungen) auf einphasig, um eine 1-phasige Ladung zu erzwingen. Gehe unter Status und vergleiche die Leistungen bzw. Ströme der 3 Phasen am EVU-Zähler (rot) beim und nach dem Autoladen (Sofortladen mit 16A/ Stop). Diejenige EVU-Phase, die deutlich erhöhte Werte anzeigt, ist die auszuwählende EVU-Phase. ",-1),n("p",null," Im grauen Menü Ladepunkt-Profile können neben dem Standard-Ladepunkt-Profil auch weitere Ladepunkt-Profile, die andere WB-Typen abbilden, erstellt werden. Dort sind Eintragungen bzgl. des Ladepunkt-Maximalstroms bei einer Phase bzw. mehreren Phasen vorzunehmen. Die Profile werden abschließend im jeweiligen blauen Ladepunkt mittels Auswahlmenü zugeordnet. ",-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:r(()=>[w(o,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const $=m(P,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep6.vue"]]);export{$ as default}; diff --git a/web/settings/assets/InstallAssistantStep7-56d97b79.js b/web/settings/assets/InstallAssistantStep7-56d97b79.js new file mode 100644 index 0000000000..ba1af33a07 --- /dev/null +++ b/web/settings/assets/InstallAssistantStep7-56d97b79.js @@ -0,0 +1 @@ +import{C as l}from"./index-beac009d.js";import m from"./InstallAssistantStepTemplate-b4433531.js";import p from"./LoadManagementConfig-ae3a8b6c.js";import{_ as u,u as r,k as g,z as h,E as a,x as n,G as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./OpenwbSortableList-dbb3f422.js";const f={name:"InstallAssistantStep7",components:{InstallAssistantStepTemplate:m,LoadManagementConfigView:p},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",8)},previousPage(){this.$emit("switchPage",6)},endAssistant(){this.$emit("endAssistant")}}};function b(t,e,S,w,A,i){const o=r("LoadManagementConfigView"),d=r("InstallAssistantStepTemplate");return g(),h(d,{title:"6. Konfiguration des Lastmanagements",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:a(()=>e[4]||(e[4]=[n("p",null," Im Lastmanagement werden die maximale Leistung sowie die maximalen Ströme für jede Phase des Zählermoduls sowie bei Hybrid-Systemen (per DC-angebundener Speicher) die maximale Ausgangsleistung des Wechselrichters der PV-Anlage eingetragen, falls eine solche vorhanden ist. ",-1),n("p",null,' Der erste Zähler ist in der Regel der Zähler am EVU-Punkt (Position des PV/Speicher-Smartmeters direkt hinter dem VNB-Zähler). In openWB ist hierzu auf die unterhalb der "Vorhandene Zählermodule" liegende (rote) EVU-Zähler-Komponente zu klicken, in welche die maximale EVU-Leistung sowie die Phasenströme eingetragen werden, für die der Hausanschluss abgesichert ist (Elektriker fragen, typisch f. EFH: 24kW/3x35A, 43kW/3x63A). ',-1),n("p",null," Ist ein Wechselrichter mit DC-angebundenem Speicher unter Geräte hinzugefügt worden, dann ist unter der (grünen) WR-Komponente noch die maximale Ausgangsleistung des WR einzutragen. ",-1),n("p",null," Der EVU-Zähler (rot) schließt alle weiteren Komponenten wie WR und Speicher unter sich ein. Bei AC-eingebundenen Speichern befinden sich WR und Speicher in derselben Ebene, bei DC-eingebundenen Speichern (Hybrid) der Speicher unterhalb des WR. Die Ladepunkte (z.B. Externe openWB) befinden sich auf derselben Ebene wie der WR und unterhalb des EVU-Zählers. Anpassungen der Anordnungen sind über die Pfeil-Bereiche der Komponenten durch einfaches Verschieben mit der Maus oder am Smartphone möglich. ",-1),n("p",null,null,-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:a(()=>[c(o,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const I=u(f,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep7.vue"]]);export{I as default}; diff --git a/web/settings/assets/InstallAssistantStep8-fe75a2f1.js b/web/settings/assets/InstallAssistantStep8-fe75a2f1.js new file mode 100644 index 0000000000..e4036fc6fc --- /dev/null +++ b/web/settings/assets/InstallAssistantStep8-fe75a2f1.js @@ -0,0 +1 @@ +import{C as g}from"./index-beac009d.js";import p from"./InstallAssistantStepTemplate-b4433531.js";import{a as h}from"./VehicleConfig-37a300a0.js";import{F as f}from"./vendor-fortawesome-3d19d475.js";import{_ as z,u as r,k as w,z as P,E as a,x as n,y as o,G as d}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const F={name:"InstallAssistantStep8",components:{InstallAssistantStepTemplate:p,VehicleConfigView:h,FontAwesomeIcon:f},mixins:[g],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",9)},previousPage(){this.$emit("switchPage",7)},endAssistant(){this.$emit("endAssistant")}}},A={class:"font-weight-bold"};function v(t,e,c,S,V,i){const l=r("FontAwesomeIcon"),u=r("VehicleConfigView"),m=r("InstallAssistantStepTemplate");return w(),P(m,{title:"7. Einrichten der Fahrzeuge",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:a(()=>[e[6]||(e[6]=n("p",null,"Vor dem eigentlichen Fahrzeug werden zuerst die Fahrzeug- und Lade-Profile konfiguriert.",-1)),e[7]||(e[7]=n("p",null," Bei nur einem Fahrzeug reicht das Standard-Fahrzeug-Profil aus. Bei mehreren Fahrzeugtypen werden weitere Fahrzeug-Profile hinzugefügt. Im Anschluss werden die Fahrzeug-Profile mit den passenden Einstellungen des Fahrzeugtyps versehen (Mindeststromstärke, Maximalstromstärke bei einer/mehreren Phase/n sowie Angaben zur Batterie und Handhabung der Phasen entsprechend den Daten des Automobilherstellers. Im Zweifelsfall den Hersteller des Autos oder im openWB-Forum nachfragen). ",-1)),n("p",A,[e[4]||(e[4]=o(' Wichtig: Die "Angaben zur Handhabung von Phasen" des Fahrzeugs sind richtig einzutragen! Beachte die Hilfstexte, die Du durch Klick auf ')),d(l,{icon:["far","question-circle"]}),e[5]||(e[5]=o(" anzeigen kannst. "))]),e[8]||(e[8]=n("p",null," Bei nur einem Fahrzeug reicht das Standard-Lade-Profil aus. Bei mehreren Fahrzeugen können weitere Lade-Profile hinzugefügt werden. Dies erlaubt die Nutzung unterschiedlicher Lademodi je Fahrzeug (z.B. EV1 = Sofortladen, EV2 = PV-Laden). Im Anschluss werden die Voreinstellungen zu den verschiedenen Lademodi konfiguriert. ",-1)),e[9]||(e[9]=n("p",null," Nun wird das eigentliche Fahrzeug angelegt und mit dem gewünschten Fahrzeug-Profil / Lade-Profil versehen. Ist nur ein Fahrzeug vorhanden, reicht das Standard-Fahrzeug aus. ",-1)),e[10]||(e[10]=n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1))]),content:a(()=>[d(u,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const T=z(F,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep8.vue"]]);export{T as default}; diff --git a/web/settings/assets/InstallAssistantStep9-309aaea7.js b/web/settings/assets/InstallAssistantStep9-309aaea7.js new file mode 100644 index 0000000000..204a7a6dcd --- /dev/null +++ b/web/settings/assets/InstallAssistantStep9-309aaea7.js @@ -0,0 +1 @@ +import{C as l}from"./index-beac009d.js";import p from"./InstallAssistantStepTemplate-b4433531.js";import{D as u}from"./DataManagement-c0d34f05.js";import{_ as d,u as i,k as g,z as f,E as o,x as a,G as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"InstallAssistantStep9",components:{InstallAssistantStepTemplate:p,DataManagement:u},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:["openWB/general/extern"]}),computed:{stepNumber(){return this.$store.state.mqtt["openWB/general/extern"]?5:8}},methods:{nextPage(){this.$emit("switchPage",10)},previousPage(){this.$emit("switchPage",this.$store.state.mqtt["openWB/general/extern"]?4:8)},endAssistant(){this.$emit("endAssistant")}}};function h(t,e,P,S,$,n){const r=i("DataManagement"),m=i("InstallAssistantStepTemplate");return g(),f(m,{title:`${n.stepNumber}. Datensicherung der neuen Konfiguration`,onNextPage:n.nextPage,onPreviousPage:n.previousPage,onEndAssistant:n.endAssistant},{help:o(()=>e[4]||(e[4]=[a("p",null," Wir empfehlen an dieser Stelle eine manuell initiierte Sicherung der neu konfigurierten openWB zu erstellen. ",-1),a("p",null," Dieser Vorgang sollte im Betrieb regelmäßig wiederholt werden (mindestens vor Updates), um sowohl die individuellen Log-Daten als auch auf ältere Konfigurationen zurückgreifen zu können (Backups). ",-1),a("p",null,' Die Sicherung kann auch automatisiert auf einem Cloud-Dienst durchgeführt werden. Hierzu bitte im unteren Bereich "Backup-Cloud" die entsprechenden Einstellungen vornehmen. ',-1)])),content:o(()=>[v(r,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["title","onNextPage","onPreviousPage","onEndAssistant"])}const W=d(c,[["render",h],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep9.vue"]]);export{W as default}; diff --git a/web/settings/assets/InstallAssistantStepTemplate-b4433531.js b/web/settings/assets/InstallAssistantStepTemplate-b4433531.js new file mode 100644 index 0000000000..f31ee95bbe --- /dev/null +++ b/web/settings/assets/InstallAssistantStepTemplate-b4433531.js @@ -0,0 +1 @@ +import{C as g}from"./index-beac009d.js";import{l as v,ak as y,al as w,F as x}from"./vendor-fortawesome-3d19d475.js";import{_ as k,u as r,k as i,l as a,G as t,E as s,x as n,y as c,B as p,m as _}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const B="/openWB/web/settings/img/openWB_logo_light.png";v.add(y,w);const h={name:"InstallAssistantStepTemplate",components:{FontAwesomeIcon:x},mixins:[g],props:{title:{type:String,required:!0},hidePrevious:{type:Boolean,required:!1,default:!1},hideNext:{type:Boolean,required:!1,default:!1},hideEnd:{type:Boolean,required:!1,default:!1}},emits:["previousPage","nextPage","endAssistant"],methods:{nextPage(){window.scrollTo(0,0),this.$emit("nextPage")},previousPage(){window.scrollTo(0,0),this.$emit("previousPage")},endAssistant(){this.$emit("endAssistant")}}},A={class:"row justify-content-center mb-1"},C={key:0,class:"col-md-4 d-flex py-1 justify-content-center"},P={key:1,class:"col-md-4 d-flex py-1 justify-content-center"},S={key:2,class:"col-md-4 d-flex py-1 justify-content-center"},T={class:"row justify-content-center"},I={class:"page-help-text col-md-3 py-2"},N={class:"col py-2"};function $(u,e,o,j,W,l){const m=r("font-awesome-icon"),d=r("openwb-base-click-button"),b=r("openwb-base-card");return i(),a("div",null,[t(b,{title:o.title,class:"p-0 mx-3"},{footer:s(()=>[n("div",A,[o.hidePrevious?p("",!0):(i(),a("div",C,[t(d,{class:"btn-block btn-warning",onButtonClicked:e[0]||(e[0]=f=>l.previousPage())},{default:s(()=>[t(m,{"fixed-width":"",icon:["fas","caret-left"]}),e[3]||(e[3]=c(" Zurück "))]),_:1})])),o.hideNext?p("",!0):(i(),a("div",P,[t(d,{class:"btn-block btn-success",onButtonClicked:e[1]||(e[1]=f=>l.nextPage())},{default:s(()=>[e[4]||(e[4]=c(" Weiter ")),t(m,{"fixed-width":"",icon:["fas","caret-right"]})]),_:1})])),o.hideEnd?p("",!0):(i(),a("div",S,[t(d,{class:"btn-block btn-danger",onButtonClicked:e[2]||(e[2]=f=>l.endAssistant())},{default:s(()=>e[5]||(e[5]=[c(" Assistent beenden ")])),_:1})]))])]),default:s(()=>[n("div",T,[n("div",I,[_(u.$slots,"help",{},()=>[e[6]||(e[6]=n("img",{src:B,alt:"openWB Logo",class:"w-100"},null,-1))],!0)]),n("div",N,[_(u.$slots,"content",{},void 0,!0)])])]),_:3},8,["title"])])}const Z=k(h,[["render",$],["__scopeId","data-v-db9e78cb"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStepTemplate.vue"]]);export{Z as default}; diff --git a/web/settings/assets/InstantChargeConfig-3d737f28.js b/web/settings/assets/InstantChargeConfig-3d737f28.js new file mode 100644 index 0000000000..769af2383f --- /dev/null +++ b/web/settings/assets/InstantChargeConfig-3d737f28.js @@ -0,0 +1 @@ +import{C as l}from"./index-beac009d.js";import{_ as b,u as o,k as a,l as i,x as _,G as s,E as r,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const f={name:"OpenwbInstantChargeConfigView",mixins:[l],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/chargemode_config/instant_charging/phases_to_use"]}}},h={class:"instantChargeConfig"},c={name:"instantChargeConfigForm"},v={key:0},w={key:1};function C(t,e,$,B,k,V){const p=o("openwb-base-alert"),m=o("openwb-base-button-group-input"),g=o("openwb-base-card"),d=o("openwb-base-submit-buttons");return a(),i("div",h,[_("form",c,[s(g,{title:"Phasenumschaltung"},{default:r(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(a(),i("div",v,[s(p,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[u(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(a(),i("div",w,[s(m,{title:"Anzahl Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/instant_charging/phases_to_use"],"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateState("openWB/general/chargemode_config/instant_charging/phases_to_use",n))},{help:r(()=>e[5]||(e[5]=[u(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "Sofortladen" mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen 1- und 3-phasig (s.g. 1p3p). ')])),_:1},8,["model-value"])]))]),_:1}),s(d,{"form-name":"instantChargeConfigForm",onSave:e[1]||(e[1]=n=>t.$emit("save")),onReset:e[2]||(e[2]=n=>t.$emit("reset")),onDefaults:e[3]||(e[3]=n=>t.$emit("defaults"))})])])}const F=b(f,[["render",C],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/InstantChargeConfig.vue"]]);export{F as default}; diff --git a/web/settings/assets/LegalSettings-e785d18b.js b/web/settings/assets/LegalSettings-e785d18b.js new file mode 100644 index 0000000000..8ea13f9f45 --- /dev/null +++ b/web/settings/assets/LegalSettings-e785d18b.js @@ -0,0 +1 @@ +import{l as _,a3 as k,F as y}from"./vendor-fortawesome-3d19d475.js";import{C as v}from"./index-beac009d.js";import{_ as B,u as n,k as i,l as h,x as a,G as o,E as r,z as m,y as d,B as p}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";_.add(k);const z={name:"OpenwbDataProtectionView",components:{FontAwesomeIcon:y},mixins:[v],emits:["sendCommand","save"],data(){return{mqttTopicsToSubscribe:["openWB/system/dataprotection_acknowledged"]}},methods:{sendSystemCommand(t,e={}){this.$emit("sendCommand",{command:t,data:e})}}},S={class:"dataProtection"},$={name:"dataProtectionForm"},C={class:"row justify-content-center"},V={class:"col-md-4 d-flex justify-content-center"};function W(t,e,N,x,A,b){const u=n("openwb-base-button-group-input"),c=n("font-awesome-icon"),g=n("openwb-base-click-button"),l=n("openwb-base-alert"),w=n("openwb-base-submit-buttons"),f=n("openwb-base-card");return i(),h("div",S,[a("form",$,[o(f,{title:"Nutzungsbedingungen & Datenschutzerklärung"},{footer:r(()=>[o(w,{"form-name":"dataProtectionForm","hide-reset":!0,"hide-defaults":!0,onSave:e[3]||(e[3]=s=>t.$emit("save"))})]),default:r(()=>[e[7]||(e[7]=a("iframe",{src:"dataProtection-usageTerms.html",width:"100%",height:"400px",class:"bg-light"},null,-1)),e[8]||(e[8]=a("hr",null,null,-1)),o(u,{title:"Nutzungsbedingungen",buttons:[{buttonValue:!1,text:"Ablehnen",class:"btn-outline-danger"},{buttonValue:!0,text:"Akzeptieren",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/system/usage_terms_acknowledged"],"onUpdate:modelValue":e[0]||(e[0]=s=>t.updateState("openWB/system/usage_terms_acknowledged",s))},null,8,["model-value"]),t.$store.state.mqtt["openWB/system/usage_terms_acknowledged"]?p("",!0):(i(),m(l,{key:0,subtype:"danger",class:"mb-1"},{default:r(()=>[e[5]||(e[5]=d(" Sie müssen die Nutzungsbedingungen akzeptieren, bevor openWB eingesetzt werden kann. ")),a("div",C,[a("div",V,[o(g,{class:"btn-danger",onButtonClicked:e[1]||(e[1]=s=>b.sendSystemCommand("systemShutdown"))},{default:r(()=>[e[4]||(e[4]=d(" Nicht akzeptieren und ausschalten ")),o(c,{"fixed-width":"",icon:["fas","power-off"]})]),_:1})])])]),_:1})),o(u,{title:"Datenschutzerklärung",buttons:[{buttonValue:!1,text:"Ablehnen",class:"btn-outline-danger"},{buttonValue:!0,text:"Akzeptieren",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/system/dataprotection_acknowledged"],"onUpdate:modelValue":e[2]||(e[2]=s=>t.updateState("openWB/system/dataprotection_acknowledged",s))},null,8,["model-value"]),t.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]?p("",!0):(i(),m(l,{key:1,subtype:"warning"},{default:r(()=>e[6]||(e[6]=[d(" Wenn Du nicht einwilligst, wird eine ggf. konfigurierte Cloud-Anbindung gelöscht. Die openWB arbeitet autark wie gewohnt weiter. Fernzugriff und Remote-Support sind dann nicht mehr möglich! ")])),_:1}))]),_:1})])])}const L=B(z,[["render",W],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/LegalSettings.vue"]]);export{L as default}; diff --git a/web/settings/assets/LoadManagementConfig-ae3a8b6c.js b/web/settings/assets/LoadManagementConfig-ae3a8b6c.js new file mode 100644 index 0000000000..e0c2e54aa8 --- /dev/null +++ b/web/settings/assets/LoadManagementConfig-ae3a8b6c.js @@ -0,0 +1 @@ +import{l as y,O as C,N as L,F as x}from"./vendor-fortawesome-3d19d475.js";import{C as V}from"./index-beac009d.js";import{S as $}from"./OpenwbSortableList-dbb3f422.js";import{_ as q,u as l,k as u,l as m,x as d,G as s,E as o,y as i,N as w,M as v,z as W,F as _}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";y.add(C,L);const Z={name:"OpenwbLoadManagementConfigView",components:{SortableList:$,FontAwesomeIcon:x},mixins:[V],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/counter/config/home_consumption_source_id","openWB/counter/config/consider_less_charging","openWB/counter/get/hierarchy","openWB/system/device/+/component/+/config","openWB/counter/+/config/max_power_errorcase","openWB/counter/+/config/max_currents","openWB/counter/+/config/max_total_power","openWB/pv/+/config/max_ac_out","openWB/chargepoint/+/config"]}},computed:{componentConfigurations(){return this.getWildcardTopics("openWB/system/device/+/component/+/config")},counterConfigs:{get(){let t=this.getWildcardTopics("openWB/system/device/+/component/+/config");return Object.keys(t).filter(e=>{var n;return(n=t[e])==null?void 0:n.type.includes("counter")}).reduce((e,n)=>({...e,[n]:t[n]}),{})}},counterOptions(){var t=[];for(const e of Object.values(this.componentConfigurations))this.isComponentType(e==null?void 0:e.type,"counter")&&t.push({value:e.id,text:e.name});return t.sort((e,n)=>e.text==n.text?0:e.text>n.text?1:-1)},inverterConfigs:{get(){let t=this.getWildcardTopics("openWB/system/device/+/component/+/config");return Object.keys(t).filter(e=>{var n;return(n=t[e])==null?void 0:n.type.includes("inverter")}).reduce((e,n)=>({...e,[n]:t[n]}),{})}},hierarchyLabels:{get(){let t={};for(const e of Object.values(this.$store.state.mqtt["openWB/counter/get/hierarchy"]))t={...t,...this.getElementTreeNames(e)};return t}},getHcSourceIdOptions(){let t=[{value:null,text:"von openWB berechnen (in 99% der Fälle die richtige Einstellung)"}],e=[{label:"Eingerichtete Zähler-Komponenten",options:[...this.counterOptions]}];return{options:t,groups:e}}},methods:{getElementTreeNames(t){let e={};if(t.type=="cp"){let n=this.getChargePoint(t.id);n&&(e[t.id]=n.name)}else{let n=this.getComponent(t.id);n&&(e[t.id]=n.name)}return t.children.forEach(n=>{e={...e,...this.getElementTreeNames(n)}}),e},getComponent(t){let e;return Object.keys(this.$store.state.mqtt).forEach(n=>{n.match("^openWB/system/device/[0-9]+/component/"+t+"/config$")&&(e=this.$store.state.mqtt[n])}),e},getChargePoint(t){let e;return Object.keys(this.$store.state.mqtt).forEach(n=>{n.match("^openWB/chargepoint/"+t+"/config$")&&(e=this.$store.state.mqtt[n])}),e},isComponentType(t,e){return t==null?void 0:t.split("_").includes(e)}}},M={class:"loadManagementConfig"},U={name:"loadManagementConfigForm"},A={key:0},E={key:1},F={key:0},D={key:1};function O(t,e,n,P,H,g){const h=l("openwb-base-alert"),k=l("openwb-base-button-group-input"),B=l("openwb-base-select-input"),f=l("openwb-base-heading"),b=l("font-awesome-icon"),p=l("openwb-base-number-input"),c=l("openwb-base-card"),S=l("sortable-list"),z=l("openwb-base-submit-buttons");return u(),m("div",M,[d("form",U,[s(c,{title:"Einstellungen",collapsible:!0,collapsed:!1},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(u(),m("div",A,[s(h,{subtype:"info"},{default:o(()=>e[6]||(e[6]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(u(),m("div",E,[s(k,{title:"Fahrzeuge, die nicht mit Sollstrom laden",buttons:[{buttonValue:!1,text:"nicht berücksichtigen",class:"btn-outline-danger"},{buttonValue:!0,text:"berücksichtigen",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/counter/config/consider_less_charging"],"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateState("openWB/counter/config/consider_less_charging",r))},{help:o(()=>e[7]||(e[7]=[d("p",null," Wenn angesteckte Fahrzeuge, die nicht oder nicht mit der Sollstromstärke laden, im Lastmanagement berücksichtigt werden, wird für diese der Sollstrom reserviert. Dadurch können bei Eingreifen des Lastmanagements andere Fahrzeuge möglicherweise nur mit reduzierter Stromstärke laden und der reservierte Strom wird nicht genutzt. Wenn die Fahrzeuge wieder Leistung beziehen, z.B. um vorzuklimatisieren, nutzen sie den für sie reservierten Strom. ",-1),d("p",null," Wenn angesteckte Fahrzeuge, die nicht oder nicht mit der Sollstromstärke laden, nicht im Lastmanagement berücksichtigt werden, wird für diese auch kein Strom bei vorliegender Ladefreigabe reserviert bzw. es wird nur der tatsächlich genutzte Strom im Lastmanagement berücksichtigt. Andere Fahrzeuge können dadurch mit höherer Stromstärke laden. Wenn die maximalen Lastmanagement-Grenzen fast erreicht sind und die Fahrzeuge wieder Leistung beziehen, z.B. um vorzuklimatisieren, kann es zu einer kurzzeitigen Überschreitung der Lastmanagement-Grenzen kommen, bis im nächsten Zyklus die Stromstärken aller Ladepunkte an die neue Situation angepasst wurden. Das kurzzeitige Überschreiten der Maximal-Werte stellt für die Sicherungen in der Regel kein Problem dar. ",-1)])),_:1},8,["model-value"]),s(B,{title:"Hausverbrauch",options:g.getHcSourceIdOptions.options,groups:g.getHcSourceIdOptions.groups,"model-value":t.$store.state.mqtt["openWB/counter/config/home_consumption_source_id"],"onUpdate:modelValue":e[1]||(e[1]=r=>t.updateState("openWB/counter/config/home_consumption_source_id",r))},{help:o(()=>e[8]||(e[8]=[i(" Meist ist der Zähler am EVU-Punkt installiert, dann muss hier 'von openWB berechnen' ausgewählt werden. Wenn der Zähler im Hausverbrauchszweig installiert ist, die Struktur wie im "),d("a",{href:"https://github.com/openWB/core/wiki/Hausverbrauchs-Zähler",target:"_blank",rel:"noopener noreferrer"}," Wiki ",-1),i(" beschrieben anordnen und hier den Hausverbrauchszähler auswählen. Dann wird dieser Wert abzüglich der Ladeleistung als Hausverbrauch erfasst. ")])),_:1},8,["options","groups","model-value"]),s(f,null,{default:o(()=>e[9]||(e[9]=[i(" Vorhandene Zählermodule ")])),_:1}),s(h,{subtype:"info"},{default:o(()=>e[10]||(e[10]=[i(" Die maximale Leistung wird nur für den EVU-Zähler berücksichtigt. Bei Zwischenzählern begrenzt das Lastmanagement rein anhand der maximalen Phasenströme."),d("br",null,null,-1),i(" Wenn ein Zähler nicht auslesbar ist, wird weiterhin versucht, diesen auszulesen und nach 60s die angenommene Leistung im Fehlerfall verwendet, die unten für jeden Zähler eingestellt wird, um eine Überlast zu vermeiden. Die angenommene Leistung wird gleichmäßig auf die Phasen verteilt."),d("br",null,null,-1),i(" Überlicherweise sind Hausanschlüsse mit 24kW und 3*35A bzw. 43kW und 3*63A abgesichert. ")])),_:1}),(u(!0),m(w,null,v(g.counterConfigs,r=>(u(),W(c,{key:r.id,collapsible:!0,collapsed:!0,subtype:"danger"},{header:o(()=>[s(b,{"fixed-width":"",icon:["fas","gauge-high"]}),i(" "+_(r.name),1)]),default:o(()=>[s(p,{title:"Maximale Leistung",min:1,step:.1,required:"",unit:"kW","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_total_power"]/1e3,"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_total_power",a*1e3)},{help:o(()=>[...e[11]||(e[11]=[i(" Maximal zulässige Leistung für diesen (Zwischen-)Zähler. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),s(p,{title:"Maximaler Strom L1",min:16,step:1,unit:"A",required:"","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_currents"][0],"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_currents",a,"0")},{help:o(()=>[...e[12]||(e[12]=[i(" Maximal zulässiger Strom für die Phase 1 dieses (Zwischen-)Zählers. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),s(p,{title:"Maximaler Strom L2",min:16,step:1,unit:"A",required:"","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_currents"][1],"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_currents",a,"1")},{help:o(()=>[...e[13]||(e[13]=[i(" Maximal zulässiger Strom für die Phase 2 dieses (Zwischen-)Zählers. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),s(p,{title:"Maximaler Strom L3",min:16,step:1,unit:"A",required:"","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_currents"][2],"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_currents",a,"2")},{help:o(()=>[...e[14]||(e[14]=[i(" Maximal zulässiger Strom für die Phase 3 dieses (Zwischen-)Zählers. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),s(p,{title:"Maximale Leistung im Fehlerfall",min:0,step:.1,unit:"kW","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_power_errorcase"]/1e3,"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_power_errorcase",a*1e3)},{help:o(()=>[...e[15]||(e[15]=[i(" Angenommen Leistung für diesen (Zwischen-)Zähler, falls vom Zähler keine Werte abgefragt werden können. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])]),_:2},1024))),128)),s(f,null,{default:o(()=>e[16]||(e[16]=[i(" Vorhandene Wechselrichtermodule ")])),_:1}),(u(!0),m(w,null,v(g.inverterConfigs,r=>(u(),W(c,{key:r.id,collapsible:!0,collapsed:!0,subtype:"success"},{header:o(()=>[s(b,{"fixed-width":"",icon:["fas","solar-panel"]}),i(" "+_(r.name),1)]),default:o(()=>[s(p,{title:"Maximale Ausgangsleistung des Wechselrichters",min:0,step:.1,unit:"kW",required:"","model-value":t.$store.state.mqtt["openWB/pv/"+r.id+"/config/max_ac_out"]/1e3,"onUpdate:modelValue":a=>t.updateState("openWB/pv/"+r.id+"/config/max_ac_out",a*1e3)},{help:o(()=>[...e[17]||(e[17]=[i(" Relevant bei Hybrid-Systemen mit DC-Speicher. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])]),_:2},1024))),128))]))]),_:1}),s(c,{title:"Struktur",collapsible:!0,collapsed:!0},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(u(),m("div",F,[s(h,{subtype:"info"},{default:o(()=>e[18]||(e[18]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(u(),m("div",D,[s(S,{title:"Anordnung der Komponenten","model-value":t.$store.state.mqtt["openWB/counter/get/hierarchy"],labels:g.hierarchyLabels,"onUpdate:modelValue":e[2]||(e[2]=r=>t.updateState("openWB/counter/get/hierarchy",r))},{help:o(()=>e[19]||(e[19]=[i(" Durch die Anordnung der Komponenten werden Abhängigkeiten abgebildet."),d("br",null,null,-1),i(" An erster Stelle muss eine Zählerkomponente stehen, die den Netzanschlusspunkt erfasst. Dafür kann auch ein virtueller Zähler genutzt werden."),d("br",null,null,-1),i(" Die weiteren Komponenten müssen hierarchisch so angeordnet werden, wie sie auch physisch im Stromnetz angeschlossen werden."),d("br",null,null,-1),i(" Bei DC-gekoppelten Speichern sind diese hinter dem zugehörigen Wechselrichter zu platzieren, damit die Abhängigkeit in der Regelung berücksichtigt werden kann. ")])),_:1},8,["model-value","labels"])]))]),_:1}),s(z,{"form-name":"loadManagementConfigForm",onSave:e[3]||(e[3]=r=>t.$emit("save")),onReset:e[4]||(e[4]=r=>t.$emit("reset")),onDefaults:e[5]||(e[5]=r=>t.$emit("defaults"))})])])}const Q=q(Z,[["render",O],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/LoadManagementConfig.vue"]]);export{Q as default}; diff --git a/web/settings/assets/MqttBridgeConfig-8e19a90f.js b/web/settings/assets/MqttBridgeConfig-8e19a90f.js new file mode 100644 index 0000000000..47cc886a7c --- /dev/null +++ b/web/settings/assets/MqttBridgeConfig-8e19a90f.js @@ -0,0 +1 @@ +import{l as x,d as C,a0 as A,F as q}from"./vendor-fortawesome-3d19d475.js";import{C as z}from"./index-beac009d.js";import{_ as D,u,k as m,l as b,G as o,E as a,x as f,N as k,y as s,F as E,z as M,B as T,M as W}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";x.add(C,A);const y={name:"OpenwbMqttBridgeConfigurationView",components:{FontAwesomeIcon:q},mixins:[z],emits:["sendCommand","save","reset"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/system/mqtt/bridge/+"],showMqttBridgeModal:!1,modalMqttBridgeIndex:void 0}},computed:{configuredMqttBridges:{get(){let t=this.getWildcardTopics("openWB/system/mqtt/bridge/+");for(const[e,v]of Object.entries(t))v.remote.is_openwb_cloud&&delete t[e];return t}}},methods:{addMqttBridge(t){t.stopPropagation(),this.$emit("sendCommand",{command:"addMqttBridge",data:{}})},getMqttBridgeIndex(t){return parseInt(t.match(/(?:\/)(\d+)$/)[1])},removeMqttBridgeModal(t,e){e.stopPropagation(),this.modalMqttBridgeIndex=this.getMqttBridgeIndex(t),this.showMqttBridgeModal=!0},removeMqttBridge(t,e){this.showMqttBridgeModal=!1,e=="confirm"&&(console.info("request removal of mqtt bridge '"+t+"'"),this.$emit("sendCommand",{command:"removeMqttBridge",data:{bridge:t}}))},getMqttBridgeName(t){return this.$store.state.mqtt["openWB/system/mqtt/bridge/"+t]?this.$store.state.mqtt["openWB/system/mqtt/bridge/"+t].name:t}}},P={class:"mqttBridgeConfiguration"},Q={key:0},Z={key:1},I=["name"];function N(t,e,v,F,g,i){const U=u("openwb-base-modal-dialog"),c=u("openwb-base-alert"),h=u("font-awesome-icon"),w=u("openwb-base-avatar"),p=u("openwb-base-text-input"),d=u("openwb-base-button-group-input"),V=u("openwb-base-heading"),B=u("openwb-base-number-input"),S=u("openwb-base-submit-buttons"),_=u("openwb-base-card");return m(),b(k,null,[o(U,{show:g.showMqttBridgeModal,title:"MQTT-Brücke löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[0]||(e[0]=r=>i.removeMqttBridge(g.modalMqttBridgeIndex,r))},{default:a(()=>[s(' Wollen Sie die MQTT-Brücke "'+E(i.getMqttBridgeName(g.modalMqttBridgeIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),f("div",P,[o(c,{subtype:"danger"},{default:a(()=>e[1]||(e[1]=[s(" ACHTUNG: Die Konfiguration einer MQTT-Brücke erlaubt allen Nutzern mit Zugang zum entfernten MQTT-Server alle weitergeleiteten Daten dieser openWB einzusehen!"),f("br",null,null,-1),s(' Es wird dringend empfohlen, dies nur für nicht-öffentliche MQTT-Server unter Verwendung starker Transport-Verschlüsselung (TLS) mit persönlichem Login und strenger Zugriffskontrolle (zumindest für die MQTT-Themen unterhalb von "Entfernter Präfix") zu aktivieren! ')])),_:1}),o(_,{title:"Konfigurierte MQTT-Brücken"},{actions:a(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(m(),M(w,{key:0,class:"bg-success clickable",onClick:i.addMqttBridge},{default:a(()=>[o(h,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):T("",!0)]),default:a(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(m(),b("div",Q,[o(c,{subtype:"info"},{default:a(()=>e[2]||(e[2]=[s(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(m(),b("div",Z,[Object.keys(i.configuredMqttBridges).length===0?(m(),M(c,{key:0,subtype:"info"},{default:a(()=>e[3]||(e[3]=[s(" Es wurde noch keine MQTT-Brücke konfiguriert. ")])),_:1})):T("",!0),(m(!0),b(k,null,W(i.configuredMqttBridges,(r,l)=>(m(),b("form",{key:l,name:"mqttBridgeConfigurationForm"+i.getMqttBridgeIndex(l)},[o(_,{title:r.name,collapsible:!0,collapsed:!0,subtype:"primary"},{actions:a(()=>[o(w,{class:"bg-danger clickable",onClick:n=>i.removeMqttBridgeModal(l,n)},{default:a(()=>[o(h,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])]),footer:a(()=>[o(S,{"form-name":"mqttBridgeConfigurationForm"+i.getMqttBridgeIndex(l),"hide-defaults":!0,onSave:n=>t.$emit("save",[l]),onReset:n=>t.$emit("reset",[l])},null,8,["form-name","onSave","onReset"])]),default:a(()=>[o(p,{title:"Bezeichnung",subtype:"text",required:"",pattern:"[A-Za-z0-9]+","model-value":r.name,"onUpdate:modelValue":n=>t.updateState(l,n,"name")},{help:a(()=>[...e[4]||(e[4]=[s(" Die Bezeichnung darf nur aus Buchstaben ohne Umlaute und Zahlen bestehen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"Brücke aktivieren",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":r.active,"onUpdate:modelValue":n=>t.updateState(l,n,"active")},null,8,["model-value","onUpdate:modelValue"]),e[14]||(e[14]=f("hr",null,null,-1)),o(V,null,{default:a(()=>[...e[5]||(e[5]=[s(" Einstellungen zur Verbindung ")])]),_:1}),o(p,{title:"Entfernter Server",subtype:"host",required:"","model-value":r.remote.host,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.host")},null,8,["model-value","onUpdate:modelValue"]),o(B,{title:"Entfernter Port",required:"",min:1,max:65535,"model-value":r.remote.port,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.port")},null,8,["model-value","onUpdate:modelValue"]),o(p,{title:"Benutzername",subtype:"user",required:"",pattern:"[a-zA-Z0-9_\\-+.]+","model-value":r.remote.username,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.username")},null,8,["model-value","onUpdate:modelValue"]),o(p,{title:"Passwort",subtype:"password",required:"","model-value":r.remote.password,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.password")},null,8,["model-value","onUpdate:modelValue"]),o(p,{title:"Präfix",subtype:"text",pattern:"[A-Za-z0-9_\\-]+(\\/[A-Za-z0-9_\\-]+)?\\/","model-value":r.remote.prefix,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.prefix")},{help:a(()=>[...e[6]||(e[6]=[s(' Das Präfix darf nur aus Buchstaben ohne Umlaute, Zahlen, Binde- und Unterstrichen bestehen. Optional kann mit einem Schrägstrich "/" eine Topic-Struktur abgebildet werden. Am Ende des Präfixes muss ein Schrägstrich "/" stehen. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(p,{title:"Client ID",subtype:"text",required:"",pattern:"[A-Za-z0-9_\\-]+","model-value":r.remote.client_id,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.client_id")},{help:a(()=>[...e[7]||(e[7]=[s(" Die Client ID darf nur aus Buchstaben ohne Umlaute, Zahlen, Binde- und Unterstrichen bestehen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"MQTT Protokoll",required:"required",buttons:[{buttonValue:"mqttv31",text:"v3.1"},{buttonValue:"mqttv311",text:"v3.1.1"}],"model-value":r.remote.protocol,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.protocol")},null,8,["model-value","onUpdate:modelValue"]),o(d,{title:"TLS Version",buttons:[{buttonValue:"auto",text:"Automatisch",class:"btn-outline-success"},{buttonValue:"tlsv1.0",text:"v1.0",class:"btn-outline-warning"},{buttonValue:"tlsv1.1",text:"v1.1",class:"btn-outline-warning"},{buttonValue:"tlsv1.2",text:"v1.2"}],"model-value":r.remote.tls_version,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.tls_version")},{help:a(()=>[...e[8]||(e[8]=[s(' In der Einstellung "Automatisch" wird die Version zwischen Client und Server ausgehandelt. Wenn erforderlich, kann eine spezielle Version erzwungen werden. Versionen kleiner 1.2 gelten als veraltet und sollten nicht mehr verwendet werden. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"Brücke signalisieren",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":r.remote.try_private,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.try_private")},{help:a(()=>[...e[9]||(e[9]=[s(" Aktiviert eine proprietäre Protokoll-Erweiterung des Mosquitto Brokers, welche dem entfernten Broker signalisiert, dass es sich um eine MQTT Brücke handelt. Ergibt bessere Leistung mit Mosquitto-Brokern, ist jedoch inkompatibel mit vielen anderen MQTT-Brokern. Daher bitte nur aktivieren, wenn der Ziel-Broker sicher ein Mosquitto-Broker ist. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),e[15]||(e[15]=f("hr",null,null,-1)),o(V,null,{default:a(()=>[...e[10]||(e[10]=[s(" Datenübertragung ")])]),_:1}),o(d,{title:"Alle Statusdaten",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":r.data_transfer.status,"onUpdate:modelValue":n=>t.updateState(l,n,"data_transfer.status")},{help:a(()=>[...e[11]||(e[11]=[s(" ToDo... ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"Datenserien für Diagramme",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":r.data_transfer.graph,"onUpdate:modelValue":n=>t.updateState(l,n,"data_transfer.graph")},{help:a(()=>[...e[12]||(e[12]=[s(" ToDo... ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"Fernkonfiguration ermöglichen",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":r.data_transfer.configuration,"onUpdate:modelValue":n=>t.updateState(l,n,"data_transfer.configuration")},{help:a(()=>[...e[13]||(e[13]=[s(" ToDo... ")])]),_:2},1032,["model-value","onUpdate:modelValue"])]),_:2},1032,["title"])],8,I))),128))]))]),_:1})])],64)}const J=D(y,[["render",N],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/MqttBridgeConfig.vue"]]);export{J as default}; diff --git a/web/settings/assets/OpenwbSortableList-dbb3f422.js b/web/settings/assets/OpenwbSortableList-dbb3f422.js new file mode 100644 index 0000000000..592c7d677a --- /dev/null +++ b/web/settings/assets/OpenwbSortableList-dbb3f422.js @@ -0,0 +1 @@ +import{O as v}from"./index-beac009d.js";import{_ as m,a3 as V,u as l,k as o,z as i,E as d,x as p,q as k,G as f,B as O,y as _,F as g,D as S,m as b,l as L}from"./vendor-06e11d0e.js";import{l as B,a8 as N,K as E,P as x,O as C,N as q,F as A}from"./vendor-fortawesome-3d19d475.js";B.add(N,E,x,C,q);const $={name:"OpenwbNestedList",components:{draggable:V,FontAwesomeIcon:A},props:{list:{type:Object,required:!1,default:void 0},labels:{type:Object,required:!1,default:void 0}},methods:{classes(e){var t="";switch(e.type){case"bat":t+="battery";break;case"cp":t+="charge-point";break;default:t+=e.type;break}return t},getElementLabel(e){return this.labels&&e in this.labels?this.labels[e]:e},getElementIcon(e){switch(e.type){case"bat":return["fas","car-battery"];case"counter":return["fas","gauge-high"];case"cp":return["fas","charging-station"];case"inverter":return["fas","solar-panel"];default:return}}}};function j(e,t,n,h,w,a){const r=l("font-awesome-icon"),c=l("openwb-nested-list",!0),u=l("draggable");return o(),i(u,{class:"dragArea w-100 mb-0",tag:"ul",list:n.list,group:{name:"g1"},"item-key":"id",handle:".handle"},{item:d(({element:s})=>[p("li",null,[p("div",{class:k(["element-titel",a.classes(s)])},[p("span",null,[f(r,{class:"handle","fixed-width":"",icon:["fas","arrows-alt"]}),a.getElementIcon(s)?(o(),i(r,{key:0,"fixed-width":"",icon:a.getElementIcon(s)},null,8,["icon"])):O("",!0),_(" "+g(a.getElementLabel(s.id)),1)])],2),f(c,{modelValue:s.children,"onUpdate:modelValue":y=>s.children=y,labels:n.labels},null,8,["modelValue","onUpdate:modelValue","labels"])])]),_:1},8,["list"])}const D=m($,[["render",j],["__scopeId","data-v-82c9421a"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbNestedList.vue"]]),F={name:"OpenwbSortableList",components:{OpenwbBaseSettingElement:v,OpenwbNestedList:D},props:{id:{type:String,required:!1,default:void 0},title:{type:String,required:!1,default:""},modelValue:{type:Array,required:!1,default:void 0},labels:{type:Object,default:void 0}},emits:["update:modelValue"],computed:{value:{get(){return this.modelValue},set(e){console.debug("update in sortableList",e),this.$emit("update:modelValue",e)}}}},I={key:1};function U(e,t,n,h,w,a){const r=l("openwb-nested-list"),c=l("openwb-base-setting-element");return o(),i(c,null,S({title:d(()=>[b(e.$slots,"title",{},()=>[_(g(n.title),1)])]),default:d(()=>[a.value!==void 0?(o(),i(r,{key:0,modelValue:a.value,"onUpdate:modelValue":t[0]||(t[0]=u=>a.value=u),labels:n.labels},null,8,["modelValue","labels"])):(o(),L("div",I,"Warte auf Daten..."))]),_:2},[e.$slots.help?{name:"help",fn:d(()=>[b(e.$slots,"help")]),key:"0"}:void 0]),1024)}const P=m(F,[["render",U],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbSortableList.vue"]]);export{P as S}; diff --git a/web/settings/assets/OptionalComponents-795ca136.js b/web/settings/assets/OptionalComponents-795ca136.js new file mode 100644 index 0000000000..db5c852a98 --- /dev/null +++ b/web/settings/assets/OptionalComponents-795ca136.js @@ -0,0 +1,2 @@ +import{_ as $,C}from"./index-beac009d.js";import{_ as O}from"./dynamic-import-helper-be004503.js";import{l as S,X as z,Y as V,F as L}from"./vendor-fortawesome-3d19d475.js";import{_ as v,u as p,k as s,l as r,z as y,E as o,y as i,F as g,G as n,x as l,a1 as E,a2 as I,N as q,B as _}from"./vendor-06e11d0e.js";const F={props:{displayTheme:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},M=v(F,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/display_themes/DisplayThemeConfigMixin.vue"]]),N={name:"DisplayThemeFallback",mixins:[M]},j={class:"display-theme-fallback"},x={key:1};function A(t,e,u,c,w,b){const d=p("openwb-base-alert"),m=p("openwb-base-textarea");return s(),r("div",j,[Object.keys(t.displayTheme.configuration).length==0?(s(),y(d,{key:0,subtype:"info"},{default:o(()=>[i(' Das Display-Theme "'+g(t.displayTheme.name)+'" bietet keine Einstellungen. ',1)]),_:1})):(s(),r("div",x,[n(d,{subtype:"warning"},{default:o(()=>[i(' Es wurde keine Konfigurationsseite für das Display-Theme "'+g(t.displayTheme.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),n(m,{title:"Konfiguration",subtype:"json","model-value":t.displayTheme.configuration,"onUpdate:modelValue":e[0]||(e[0]=f=>t.updateConfiguration(f,"configuration"))},{help:o(()=>e[1]||(e[1]=[i(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),n(d,{subtype:"info"},{default:o(()=>[l("pre",null,g(JSON.stringify(t.displayTheme.configuration,void 0,2)),1)]),_:1})]))])}const P=v(N,[["render",A],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/display_themes/OpenwbDisplayThemeFallback.vue"]]);S.add(z,V);const U={name:"OpenwbDisplayThemeProxy",components:{FontAwesomeIcon:L},props:{displayTheme:{type:Object,required:!0}},emits:["update:configuration"],computed:{myComponent(){return console.debug(`loading display theme: ${this.displayTheme.type}`),E({loader:()=>O(Object.assign({"./cards/displayTheme.vue":()=>$(()=>import("./displayTheme-539928b9.js"),["assets/displayTheme-539928b9.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-beac009d.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.displayTheme.type}/displayTheme.vue`),errorComponent:P})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function H(t,e,u,c,w,b){const d=p("font-awesome-icon"),m=p("openwb-base-alert"),f=p("openwb-base-heading");return s(),r(q,null,[u.displayTheme.official?(s(),y(m,{key:0,subtype:"success"},{default:o(()=>[n(d,{"fixed-width":"",icon:["fas","certificate"]}),i(' Das ausgewählte Display Theme "'+g(u.displayTheme.name)+'" wird von openWB gepflegt. ',1)]),_:1})):(s(),y(m,{key:1,subtype:"info"},{default:o(()=>[n(d,{"fixed-width":"",icon:["fas","people-group"]}),i(' Das ausgewählte Display Theme "'+g(u.displayTheme.name)+'" wird in unserer Community gepflegt. Rückfragen oder Probleme bitte im Forum diskutieren. ',1)]),_:1})),n(f,null,{default:o(()=>[i(' Einstellungen für Display Theme "'+g(u.displayTheme.name)+'" ',1)]),_:1}),(s(),y(I(b.myComponent),{"display-theme":u.displayTheme,"onUpdate:configuration":e[0]||(e[0]=h=>b.updateConfiguration(h))},null,40,["display-theme"]))],64)}const R=v(U,[["render",H],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/display_themes/OpenwbDisplayThemeProxy.vue"]]),J={name:"OpenwbOptionalComponentsView",components:{OpenwbDisplayThemeProxy:R},mixins:[C],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/chargepoint/+/config","openWB/chargepoint/+/get/rfid","openWB/chargepoint/+/get/rfid_timestamp","openWB/chargepoint/+/set/rfid","openWB/optional/rfid/active","openWB/optional/led/active","ToDo/optional/led/instant_blocked","ToDo/optional/led/pv_blocked","ToDo/optional/led/scheduled_blocked","ToDo/optional/led/standby_blocked","ToDo/optional/led/stop_blocked","ToDo/optional/led/instant","ToDo/optional/led/pv","ToDo/optional/led/scheduled","ToDo/optional/led/standby","ToDo/optional/led/stop","openWB/optional/int_display/active","openWB/optional/int_display/standby","openWB/optional/int_display/rotation","openWB/optional/int_display/on_if_plugged_in","openWB/optional/int_display/pin_active","openWB/optional/int_display/pin_code","openWB/optional/int_display/theme","openWB/optional/int_display/only_local_charge_points","openWB/system/configurable/display_themes","openWB/optional/et/active","openWB/optional/et/config/provider","openWB/optional/et/config/max_price"],tempIdTagList:{}}},computed:{idTagList(){return Object.values(this.updateIdTagList())},displayThemeList(){return this.$store.state.mqtt["openWB/system/configurable/display_themes"]},displayThemeGroupList(){let t=[{label:"openWB",options:[]},{label:"Community",options:[]}];return this.displayThemeList.forEach(e=>{e.official===!0?t[0].options.push(e):t[1].options.push(e)}),t}},methods:{getIdFromTopic(t){return t.match(/(?:\/)([0-9]+)(?=\/)*/g)[0].replace(/[^0-9]+/g,"")},updateIdTagList(){return Object.entries(this.getWildcardTopics("^openWB/chargepoint/[^+/]+/[gs]et/rfid$",!0)).forEach(t=>{t[1]!==null&&(this.tempIdTagList[t[1]]=`${t[1]} (${t[0].includes("/set/")?"zugewiesen":"erfasst"} an ${this.getChargePointName(this.getIdFromTopic(t[0]))})`)}),this.tempIdTagList},getChargePointName(t){return this.$store.state.mqtt["openWB/chargepoint/"+t+"/config"]?this.$store.state.mqtt["openWB/chargepoint/"+t+"/config"].name:"Ladepunkt "+t},getDisplayThemeDefaults(t){const e=this.displayThemeList.find(u=>u.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...JSON.parse(JSON.stringify(e.defaults))}:(console.warn("no default configuration found for display theme type!",t),{})},updateSelectedDisplayTheme(t){this.updateState("openWB/optional/int_display/theme",this.getDisplayThemeDefaults(t))},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)}}},G={class:"optionalComponents"},K={name:"optionalComponentsForm"},Z={key:0},X={key:1},Y={key:0},Q=["innerHTML"],ee={key:0},te={key:1},ne={key:2},oe={key:0};function ie(t,e,u,c,w,b){const d=p("openwb-base-alert"),m=p("openwb-base-button-group-input"),f=p("openwb-base-textarea"),h=p("openwb-base-card"),T=p("openwb-base-heading"),B=p("openwb-base-range-input"),D=p("openwb-base-select-input"),W=p("openwb-display-theme-proxy"),k=p("openwb-base-submit-buttons");return s(),r("div",G,[l("form",K,[n(h,{title:"Identifikation"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(s(),r("div",Z,[n(d,{subtype:"info"},{default:o(()=>e[10]||(e[10]=[i(' Weitere Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),r("div",X,[n(m,{title:"Identifikation aktivieren","model-value":t.$store.state.mqtt["openWB/optional/rfid/active"],buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[0]||(e[0]=a=>t.updateState("openWB/optional/rfid/active",a))},{help:o(()=>e[11]||(e[11]=[i(" Die Identifikation kann zum Entsperren von Ladepunkten und/oder zur Zuordnung von Fahrzeugen genutzt werden und kann auf mehreren Wegen erfolgen: "),l("ul",null,[l("li",null," Über einen in der openWB verbauten RFID-Reader (optional, z.B. anhand des Lieferscheins prüfen). "),l("li",null," Durch die automatische Erkennung an einer openWB Pro (muss in den Einstellungen aktiviert werden). "),l("li",null,"Durch manuelle Eingabe einer ID am Display einer openWB.")],-1)])),_:1},8,["model-value"]),t.$store.state.mqtt["openWB/optional/rfid/active"]===!0?(s(),r("div",Y,[n(d,{subtype:"info",class:"mb-1"},{default:o(()=>[e[12]||(e[12]=i(" Die ID-Tags müssen in den Einstellungen der Fahrzeuge diesen zugeordnet werden.")),e[13]||(e[13]=l("br",null,null,-1)),e[14]||(e[14]=i(" Es kann zuerst das Fahrzeug angesteckt und dann der ID-Tag erfasst werden oder andersherum. Im letzten Fall muss innerhalb von 5 Minuten ein Fahrzeug angesteckt werden, sonst wird der ID-Tag verworfen.")),e[15]||(e[15]=l("br",null,null,-1)),l("span",{innerHTML:t.$store.state.text.rfidWiki},null,8,Q)]),_:1}),n(f,{title:"Erkannte ID-Tags",readonly:"",disabled:"","model-value":b.idTagList.join(` +`)},{help:o(()=>e[16]||(e[16]=[i(" Solange diese Seite geöffnet ist, werden alle erfassten ID-Tags in dieser Liste aufgeführt. ")])),_:1},8,["model-value"])])):_("",!0)]))]),_:1}),n(h,{title:"Display (intern oder extern)"},{default:o(()=>[n(m,{title:"Integriertes Display","model-value":t.$store.state.mqtt["openWB/optional/int_display/active"],buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"onUpdate:modelValue":e[1]||(e[1]=a=>t.updateState("openWB/optional/int_display/active",a))},{help:o(()=>e[17]||(e[17]=[i(' Je nach Bestellung kann die openWB mit oder ohne Display geliefert worden sein. Auch die Variante "Standalone" bietet beide Optionen. Bitte prüfe zuerst die Hardwareausstattung deiner openWB (z.B. Lieferschein). ')])),_:1},8,["model-value"]),t.$store.state.mqtt["openWB/optional/int_display/active"]==!0?(s(),r("div",ee,[n(m,{title:"Orientierung","model-value":t.$store.state.mqtt["openWB/optional/int_display/rotation"],buttons:[{buttonValue:0,text:"0°"},{buttonValue:90,text:"90°"},{buttonValue:180,text:"180°"},{buttonValue:270,text:"270°"}],"onUpdate:modelValue":e[2]||(e[2]=a=>t.updateState("openWB/optional/int_display/rotation",a))},{help:o(()=>e[18]||(e[18]=[i(" Mit dieser Einstellung kann das Display im Uhrzeigersinn gedreht werden, falls erforderlich. Nach einer Änderung ist ein Neustart erforderlich!"),l("br",null,null,-1),i(" Diese Einstellung erfordert ein Raspberry Pi Display. Für eine openWB series2 mit integriertem Display muss 0° ausgewählt werden, für eine Standalone mit Display 180°. Anzeigen, welche über HDMI angeschlossen sind, werden nicht unterstützt. ")])),_:1},8,["model-value"]),e[21]||(e[21]=l("hr",null,null,-1)),n(T,null,{default:o(()=>e[19]||(e[19]=[i(" Display Standby ")])),_:1}),n(B,{title:"Ausschaltzeit",min:0,max:12,step:1,"model-value":t.$store.state.mqtt["openWB/optional/int_display/standby"],unit:"Sek",labels:[{label:"Immer an",value:0},{label:5,value:5},{label:10,value:10},{label:15,value:15},{label:30,value:30},{label:45,value:45},{label:"1 Min",value:60},{label:"1,5 Min",value:90},{label:"2 Min",value:120},{label:"3 Min",value:180},{label:"4 Min",value:240},{label:"5 Min",value:300},{label:"10 Min",value:600}],"onUpdate:modelValue":e[3]||(e[3]=a=>t.updateState("openWB/optional/int_display/standby",a))},{help:o(()=>e[20]||(e[20]=[i(" Hier kann eine Zeitspanne angegeben werden, nach der das Display ausgeschaltet wird. ")])),_:1},8,["model-value"])])):_("",!0),t.$store.state.mqtt["openWB/general/extern"]===!0?(s(),r("div",te,[e[23]||(e[23]=l("hr",null,null,-1)),n(d,{subtype:"info"},{default:o(()=>e[22]||(e[22]=[i(' Weitere Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),r("div",ne,[e[26]||(e[26]=l("hr",null,null,-1)),n(m,{title:"Ladepunkte auf externen openWB","model-value":t.$store.state.mqtt["openWB/optional/int_display/only_local_charge_points"],buttons:[{buttonValue:!1,text:"Alle",class:"btn-outline-danger"},{buttonValue:!0,text:"Nur Lokale",class:"btn-outline-success"}],"onUpdate:modelValue":e[4]||(e[4]=a=>t.updateState("openWB/optional/int_display/only_local_charge_points",a))},{help:o(()=>e[24]||(e[24]=[i(" Hiermit kann festgelegt werden, ob an angebundenen externen openWB alle oder nur die jeweils lokalen Ladepunkte angezeigt werden sollen. ")])),_:1},8,["model-value"]),e[27]||(e[27]=l("hr",null,null,-1)),t.$store.state.mqtt["openWB/optional/int_display/theme"]!==void 0?(s(),r("div",oe,[n(D,{class:"mb-2",title:"Theme des Displays",groups:b.displayThemeGroupList,"model-value":t.$store.state.mqtt["openWB/optional/int_display/theme"].type,"onUpdate:modelValue":e[5]||(e[5]=a=>b.updateSelectedDisplayTheme(a))},{help:o(()=>e[25]||(e[25]=[i(" Hier können unterschiedliche Display-Anzeigen, s.g. Themes, ausgewählt werden. Die Anzahl der Themes wird sich mit zukünftigen Releases erhöhen. ")])),_:1},8,["groups","model-value"]),t.$store.state.mqtt["openWB/optional/int_display/theme"].type?(s(),y(W,{key:0,"display-theme":t.$store.state.mqtt["openWB/optional/int_display/theme"],"onUpdate:configuration":e[6]||(e[6]=a=>b.updateConfiguration("openWB/optional/int_display/theme",a))},null,8,["display-theme"])):_("",!0)])):_("",!0)]))]),_:1}),n(k,{"form-name":"optionalComponentsForm",onSave:e[7]||(e[7]=a=>t.$emit("save")),onReset:e[8]||(e[8]=a=>t.$emit("reset")),onDefaults:e[9]||(e[9]=a=>t.$emit("defaults"))})])])}const ae=v(J,[["render",ie],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/OptionalComponents.vue"]]),de=Object.freeze(Object.defineProperty({__proto__:null,default:ae},Symbol.toStringTag,{value:"Module"}));export{M as D,de as O}; diff --git a/web/settings/assets/PVChargeConfig-a702e029.js b/web/settings/assets/PVChargeConfig-a702e029.js new file mode 100644 index 0000000000..fdc6ba6886 --- /dev/null +++ b/web/settings/assets/PVChargeConfig-a702e029.js @@ -0,0 +1 @@ +import{C as B}from"./index-beac009d.js";import{l as S,P as V,Z as k,_ as z,F as y}from"./vendor-fortawesome-3d19d475.js";import{_ as E,u as g,k as s,l as u,x as o,G as i,E as a,y as t,z as _,B as f}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";S.add(V,k,z);const C={name:"OpenwbPVChargeConfigView",components:{FontAwesomeIcon:y},mixins:[B],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/chargemode_config/pv_charging/control_range","openWB/general/chargemode_config/pv_charging/feed_in_yield","openWB/general/chargemode_config/pv_charging/switch_on_threshold","openWB/general/chargemode_config/pv_charging/switch_on_delay","openWB/general/chargemode_config/pv_charging/switch_off_threshold","openWB/general/chargemode_config/pv_charging/switch_off_delay","openWB/general/chargemode_config/pv_charging/phases_to_use","openWB/general/chargemode_config/pv_charging/bat_mode","openWB/general/chargemode_config/pv_charging/bat_power_reserve","openWB/general/chargemode_config/pv_charging/bat_power_reserve_active","openWB/general/chargemode_config/pv_charging/bat_power_discharge","openWB/general/chargemode_config/pv_charging/bat_power_discharge_active","openWB/general/chargemode_config/pv_charging/min_bat_soc"],calculatedControlMode:void 0}},computed:{controlMode:{get(){if(this.calculatedControlMode!==void 0)return this.calculatedControlMode;const n="openWB/general/chargemode_config/pv_charging/control_range";let e=this.$store.state.mqtt[n];var p="individual";return typeof e<"u"&&(e[0]===-230&&e[1]===0?p="export":e[0]===0&&e[1]===230?p="import":e[0]===-115&&e[1]===115?p="balanced":p="individual"),p},set(n){const e="openWB/general/chargemode_config/pv_charging/control_range";switch(this.calculatedControlMode=n,n){case"export":this.updateState(e,[-230,0]);break;case"import":this.updateState(e,[0,230]);break;case"balanced":this.updateState(e,[-115,115]);break}}},batMode:{get(){return this.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_mode"]},set(n){this.updateState("openWB/general/chargemode_config/pv_charging/bat_mode",n)}}},watch:{controlMode(n){this.calculatedControlMode=n}}},M={class:"pvChargeConfig"},q={name:"pvChargeConfigForm"},L={key:0},P={key:1},U={key:0},$={key:1},A={key:0},R={key:1},F={key:0};function D(n,e,p,N,I,d){const b=g("openwb-base-alert"),m=g("openwb-base-button-group-input"),l=g("openwb-base-number-input"),c=g("openwb-base-card"),h=g("font-awesome-icon"),w=g("openwb-base-range-input"),v=g("openwb-base-heading"),W=g("openwb-base-submit-buttons");return s(),u("div",M,[o("form",q,[i(c,{title:"Regelparameter"},{default:a(()=>[n.$store.state.mqtt["openWB/general/extern"]===!0?(s(),u("div",L,[i(b,{subtype:"info"},{default:a(()=>e[18]||(e[18]=[t(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),u("div",P,[i(m,{modelValue:d.controlMode,"onUpdate:modelValue":e[0]||(e[0]=r=>d.controlMode=r),title:"Regelmodus",buttons:[{buttonValue:"export",text:"Einspeisung"},{buttonValue:"import",text:"Bezug"},{buttonValue:"balanced",text:"Ausgewogen"},{buttonValue:"individual",text:"Individuell"}]},{help:a(()=>e[19]||(e[19]=[t(" Die Ladeleistung kann nicht mit absoluter Genauigkeit eingestellt werden, sodass am EVU-Punkt nicht auf exakt 0W geregelt werden kann. Der Regelmodus legt fest, ob diese Differenz am EVU-Punkt (ca. 200-300W) zu geringem Netzbezug oder geringer Netzeinspeisung führen soll."),o("br",null,null,-1),t(" Bei Speichervorrang erzeugt die Regelung bei Bedarf unabhängig vom eingestellten Regelmodus Einspeisung, damit der Speicher seine Ladeleistung erhöht."),o("br",null,null,-1),t(" Achtung: bei unlogischen Einstellungen kann die Regelung gestört werden! Im Zweifel bitte unsere vordefinierten Modi verwenden. ")])),_:1},8,["modelValue"]),i(l,{disabled:d.controlMode!=="individual",readonly:d.controlMode!=="individual",title:"Minimum",step:.005,unit:"kW",required:"","model-value":Array.isArray(n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/control_range"])?n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/control_range"][0]/1e3:void 0,"onUpdate:modelValue":e[1]||(e[1]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/control_range",r*1e3,"0"))},{help:a(()=>e[20]||(e[20]=[t(" Untere Grenze des Regelbereichs. ")])),_:1},8,["disabled","readonly","model-value"]),i(l,{disabled:d.controlMode!=="individual",readonly:d.controlMode!=="individual",title:"Maximum",step:.005,unit:"kW",required:"","model-value":Array.isArray(n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/control_range"])?n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/control_range"][1]/1e3:void 0,"onUpdate:modelValue":e[2]||(e[2]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/control_range",r*1e3,"1"))},{help:a(()=>e[21]||(e[21]=[t(" Obere Grenze des Regelbereichs. ")])),_:1},8,["disabled","readonly","model-value"]),e[27]||(e[27]=o("hr",null,null,-1)),i(l,{title:"Einschaltschwelle",min:0,step:.05,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/switch_on_threshold"]/1e3,"onUpdate:modelValue":e[3]||(e[3]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/switch_on_threshold",r*1e3))},{help:a(()=>e[22]||(e[22]=[t(" Wird der Regelbereich in Richtung Einspeisung um diese Leistung überschritten, so wird der Ladevorgang gestartet."),o("br",null,null,-1),t(" Dieser Wert wird pro Phase genutzt und ist daher immer für eine Phase anzugeben. ")])),_:1},8,["model-value"]),i(l,{title:"Einschaltverzögerung",min:0,step:1,unit:"s",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/switch_on_delay"],"onUpdate:modelValue":e[4]||(e[4]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/switch_on_delay",r))},{help:a(()=>e[23]||(e[23]=[t(" Die Einschaltschwelle muss für die hier angegebene Zeit dauerhaft überschritten werden, bevor ein Ladevorgang gestartet wird."),o("br",null,null,-1),t(" Wenn ein Ladevorgang aktiv ist und auf PV-Laden umgeschaltet wird, wird weiter geladen, wenn die Abschaltschwelle nicht unterschritten wird. ")])),_:1},8,["model-value"]),e[28]||(e[28]=o("hr",null,null,-1)),i(l,{title:"Abschaltschwelle",step:.05,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/switch_off_threshold"]/1e3,"onUpdate:modelValue":e[5]||(e[5]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/switch_off_threshold",r*1e3))},{help:a(()=>e[24]||(e[24]=[t(" Wird der Regelbereich in Richtung Netzbezug um diese Leistung überschritten, so wird der Ladevorgang beendet. Wenn ein Speicher im System vorhanden ist, gilt die Abschaltschwelle auch für die Speicherentladung. Die Abschaltschwelle übersteuert den Mindest-SoC des Speichers (siehe Speicher-Beachtung unten)."),o("br",null,null,-1),t(" Dieser Wert ist unabhängig von der Anzahl genutzter Phasen. ")])),_:1},8,["model-value"]),i(l,{title:"Abschaltverzögerung",min:0,step:1,unit:"s",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/switch_off_delay"],"onUpdate:modelValue":e[6]||(e[6]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/switch_off_delay",r))},{help:a(()=>e[25]||(e[25]=[t(" Die Abschaltschwelle muss für die hier angegebene Zeit dauerhaft unterschritten werden, bevor ein Ladevorgang beendet wird."),o("br",null,null,-1),t(" Wenn ein Ladevorgang aktiv ist und auf PV-Laden umgeschaltet wird, wird die Ladung sofort beendet, wenn die Abschaltschwelle unterschritten wird. ")])),_:1},8,["model-value"]),e[29]||(e[29]=o("hr",null,null,-1)),i(l,{title:"Regelpunkt Einspeisegrenze",min:0,step:.05,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/feed_in_yield"]/1e3,"onUpdate:modelValue":e[7]||(e[7]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/feed_in_yield",r*1e3))},{help:a(()=>e[26]||(e[26]=[t(" Ein Wert größer 0kW bewirkt, dass weniger PV-Leistung zum Laden benutzt wird."),o("br",null,null,-1),t(" Die Nutzung dieser Option ergibt nur Sinn, wenn ein Wechselrichter mit separatem Smart-Meter am EVU-Punkt verbaut ist (nicht der originale Zähler des Versorgers!), welches eine dynamische Begrenzung der Einspeiseleistung am EVU-Punkt durch den PV-Wechselrichter bietet (bitte bei ev. Problemen immer vorab prüfen lassen)."),o("br",null,null,-1),t(' Ist eine Einspeiseleistungsreduzierung verbaut (in vielen älteren, privaten Einspeiseverträgen z.B. als 70% Regelung bekannt), wird mit Eingabe des Wertes "Regelpunkt Einspeisegrenze" ein eigenverbrauchsoptimiertes Fahrzeugladen mit PV-Überschussenergie möglich, die sonst abgeregelt werden würde (Nutzung der PV-Peaks).'),o("br",null,null,-1),t(' Wird in einem "Ladeprofil" die Option "Einspeisegrenze beachten" eingeschaltet, so wird der Regelpunkt auf diesen Wert verschoben und die Ladung startet erst, wenn der hinterlegte Wert "Regelpunkt Einspeisegrenze" überschritten wird.'),o("br",null,null,-1),t(" Zur optimalen Eigenverbrauchssteuerung sollte der Wert einige hundert Watt UNTER der im Wechselrichter hinterlegten EVU-Einspeiseleistungsgrenze liegen, damit openWB die Ladung freigibt, BEVOR der Wechselrichter begrenzt wird. ")])),_:1},8,["model-value"])]))]),_:1}),i(c,{title:"Phasenumschaltung"},{default:a(()=>[n.$store.state.mqtt["openWB/general/extern"]===!0?(s(),u("div",U,[i(b,{subtype:"info"},{default:a(()=>e[30]||(e[30]=[t(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),u("div",$,[i(m,{title:"Anzahl Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"},{buttonValue:0,text:"Automatik"}],"model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/phases_to_use"],"onUpdate:modelValue":e[8]||(e[8]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/phases_to_use",r))},{help:a(()=>e[31]||(e[31]=[t(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "PV-Laden" mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Im Modus "Automatik" entscheidet die Regelung, welche Einstellung genutzt wird, um den verfügbaren Überschuss in die Fahrzeuge zu laden. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen einer und mehreren Phasen (sog. 1p3p). ')])),_:1},8,["model-value"])]))]),_:1}),i(c,{title:"Speicher-Beachtung"},{default:a(()=>[n.$store.state.mqtt["openWB/general/extern"]===!0?(s(),u("div",A,[i(b,{subtype:"info"},{default:a(()=>e[32]||(e[32]=[t(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),u("div",R,[i(m,{modelValue:d.batMode,"onUpdate:modelValue":e[9]||(e[9]=r=>d.batMode=r),title:"Laden mit Überschuss",buttons:[{buttonValue:"ev_mode"},{buttonValue:"bat_mode"},{buttonValue:"min_soc_bat_mode"}]},{"label-ev_mode":a(()=>[i(h,{"fixed-width":"",icon:["fas","car-side"]}),e[33]||(e[33]=t(" Fahrzeuge "))]),"label-bat_mode":a(()=>[i(h,{"fixed-width":"",icon:["fas","fa-car-battery"]}),e[34]||(e[34]=t(" Speicher "))]),"label-min_soc_bat_mode":a(()=>[i(h,{"fixed-width":"",icon:["fas","fa-battery-half"]}),e[35]||(e[35]=t(" Mindest-SoC des Speichers "))]),help:a(()=>[e[42]||(e[42]=o("p",null,' Sofern ein Hausstromspeicher (im Folgenden "Speicher" genannt) im Energiesystem verbaut ist, kann dieser beim Fahrzeugladen mit berücksichtigt werden. Dies erfolgt passiv über die Berücksichtigung der Speicherleistungswerte und des Speicher-SoC. Eine aktive Speichersteuerung durch openWB ist aktuell mangels Speicherschnittstelle nicht möglich. ',-1)),o("p",null,[e[36]||(e[36]=t(' Bei Auswahl " ')),i(h,{"fixed-width":"",icon:["fas","car-side"]}),e[37]||(e[37]=t(' Fahrzeuge" wird der gesamte Überschuss in das EV geladen. Ist die maximale Ladeleistung der Fahrzeuge erreicht und es wird eingespeist, wird dieser Überschuss in den Speicher geladen. '))]),o("p",null,[e[38]||(e[38]=t(' Bei Auswahl " ')),i(h,{"fixed-width":"",icon:["fas","fa-car-battery"]}),e[39]||(e[39]=t(' Speicher" wird der gesamte Überschuss in den Speicher geladen. Ist die maximale Ladeleistung des Speichers erreicht und es wird eingespeist, wird dieser Überschuss unter Beachtung der Einschaltschwelle in die Fahrzeuge geladen. '))]),o("p",null,[e[40]||(e[40]=t(' Bei Auswahl " ')),i(h,{"fixed-width":"",icon:["fas","fa-battery-half"]}),e[41]||(e[41]=t(' Mindest-SoC des Speichers" wird der Überschuss bis zum Mindest-SoC in den Speicher geladen. Ist die maximale Ladeleistung des Speichers erreicht und es wird eingespeist, wird dieser Überschuss in die Fahrzeuge geladen. Wird der Mindest-SoC überschritten, wird der Überschuss ins Fahrzeug geladen. '))])]),_:1},8,["modelValue"]),d.batMode==="min_soc_bat_mode"?(s(),u("div",F,[i(w,{title:"Mindest-SoC des Speichers",min:0,max:100,step:1,unit:"%",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/min_bat_soc"],"onUpdate:modelValue":e[10]||(e[10]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/min_bat_soc",r))},null,8,["model-value"]),i(v,null,{default:a(()=>e[43]||(e[43]=[t(" Speicher-SoC unterhalb Mindest-SoC ")])),_:1}),i(m,{title:"Ladeleistung für Speicher reservieren",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_reserve_active"],"onUpdate:modelValue":e[11]||(e[11]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/bat_power_reserve_active",r))},{help:a(()=>e[44]||(e[44]=[t(" ACHTUNG: Der hier eingestellte Wert darf die maximale Ladeleistung des Speichers nicht überschreiten."),o("br",null,null,-1),t(" Wird der Mindest-SoC des Speichers nicht erreicht, wird der Speicher mit der hier eingestellten Leistung geladen. Mit dem verbleibenden Überschuss werden die Fahrzeuge geladen. ")])),_:1},8,["model-value"]),n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_reserve_active"]?(s(),_(l,{key:0,title:"Reserve Ladeleistung",min:.1,step:.1,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_reserve"]/1e3,"onUpdate:modelValue":e[12]||(e[12]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/bat_power_reserve",r*1e3))},null,8,["model-value"])):f("",!0),i(v,null,{default:a(()=>e[45]||(e[45]=[t(" Speicher-SoC oberhalb Mindest-SoC ")])),_:1}),i(m,{title:"Entladung des Speichers erlauben",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_discharge_active"],"onUpdate:modelValue":e[13]||(e[13]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/bat_power_discharge_active",r))},{help:a(()=>e[46]||(e[46]=[t(" Wird der Mindest-SoC überschritten, wird der Überschuss ins Fahrzeug geladen und der Speicher mit der hier eingestellten Leistung in die Fahrzeuge entladen. Die Entladeleistung des Speichers wird dem Überschuss zum Erreichen der Einschaltschwelle hinzugerechnet. ")])),_:1},8,["model-value"]),n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_discharge_active"]?(s(),_(l,{key:1,title:"Erlaubte Entladeleistung",min:.1,step:.1,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_discharge"]/1e3,"onUpdate:modelValue":e[14]||(e[14]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/bat_power_discharge",r*1e3))},null,8,["model-value"])):f("",!0)])):f("",!0)]))]),_:1}),i(W,{"form-name":"pvChargeConfigForm",onSave:e[15]||(e[15]=r=>n.$emit("save")),onReset:e[16]||(e[16]=r=>n.$emit("reset")),onDefaults:e[17]||(e[17]=r=>n.$emit("defaults"))})])])}const j=E(C,[["render",D],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/PVChargeConfig.vue"]]);export{j as default}; diff --git a/web/settings/assets/ScheduledChargeConfig-305ec289.js b/web/settings/assets/ScheduledChargeConfig-305ec289.js new file mode 100644 index 0000000000..5079e938d4 --- /dev/null +++ b/web/settings/assets/ScheduledChargeConfig-305ec289.js @@ -0,0 +1 @@ +import{C as p}from"./index-beac009d.js";import{_ as h,u as s,k as i,l as u,x as b,G as o,E as a,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const c={name:"OpenwbScheduledChargeConfigView",mixins:[p],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/chargemode_config/scheduled_charging/phases_to_use","openWB/general/chargemode_config/scheduled_charging/phases_to_use_pv"]}}},_={class:"scheduledChargeConfig"},f={name:"scheduledChargeConfigForm"},v={key:0},w={key:1};function k(t,e,C,V,B,$){const l=s("openwb-base-alert"),d=s("openwb-base-button-group-input"),g=s("openwb-base-card"),m=s("openwb-base-submit-buttons");return i(),u("div",_,[b("form",f,[o(g,{title:"Phasenumschaltung"},{default:a(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(i(),u("div",v,[o(l,{subtype:"info"},{default:a(()=>e[5]||(e[5]=[r(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(i(),u("div",w,[o(d,{title:"Anzahl Phasen Zielladen",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"},{buttonValue:0,text:"Automatik"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/scheduled_charging/phases_to_use"],"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateState("openWB/general/chargemode_config/scheduled_charging/phases_to_use",n))},{help:a(()=>e[6]||(e[6]=[r(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "Zielladen" mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Im Modus "Automatik" entscheidet die Regelung, welche Einstellung genutzt wird, um das Ziel zu erreichen. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen 1- und 3-phasig (sog. 1p3p). ')])),_:1},8,["model-value"]),o(d,{title:"Anzahl Phasen bei PV-Überschuss",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"},{buttonValue:0,text:"Automatik"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/scheduled_charging/phases_to_use_pv"],"onUpdate:modelValue":e[1]||(e[1]=n=>t.updateState("openWB/general/chargemode_config/scheduled_charging/phases_to_use_pv",n))},{help:a(()=>e[7]||(e[7]=[r(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "Zielladen" bei Laden mit PV-Überschuss mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Im Modus "Automatik" entscheidet die Regelung, welche Einstellung genutzt wird, um das Ziel zu erreichen. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen 1- und 3-phasig (sog. 1p3p). ')])),_:1},8,["model-value"])]))]),_:1}),o(m,{"form-name":"scheduledChargeConfigForm",onSave:e[2]||(e[2]=n=>t.$emit("save")),onReset:e[3]||(e[3]=n=>t.$emit("reset")),onDefaults:e[4]||(e[4]=n=>t.$emit("defaults"))})])])}const P=h(c,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/ScheduledChargeConfig.vue"]]);export{P as default}; diff --git a/web/settings/assets/Status-a010f0c2.js b/web/settings/assets/Status-a010f0c2.js new file mode 100644 index 0000000000..3ad1b22499 --- /dev/null +++ b/web/settings/assets/Status-a010f0c2.js @@ -0,0 +1 @@ +import{C as y}from"./index-beac009d.js";import{l as W,K as L,F as x,L as k,M as C,c as q,N as E,O as S,P as A,Q as z,R as M,S as V}from"./vendor-fortawesome-3d19d475.js";import{_ as w,u as o,k as r,z as l,E as p,G as n,y as c,F as b,x as g,B as T,l as I,N as P,M as $}from"./vendor-06e11d0e.js";import{C as H,p as Z,a as F,L as K,b as G,P as J,c as Q,T as U,i as X,d as Y,e as ee}from"./vendor-chartjs-888a84c2.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-luxon-8ddd27a0.js";W.add(L);const te={name:"ChargePointSumCard",components:{FontAwesomeIcon:x},mixins:[y]};function ne(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-text-input"),d=o("openwb-base-heading"),u=o("openwb-base-card");return r(),l(u,{subtype:"primary",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","charging-station"]}),t[0]||(t[0]=c(" Alle Ladepunkte "))]),default:p(()=>[n(m,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/chargepoint/get/power",3,3,.001)},null,8,["model-value"]),n(m,{title:"Zählerstand laden",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/get/imported",3,3,.001)},null,8,["model-value"]),n(m,{title:"Zählerstand entladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/get/exported",3,3,.001)},null,8,["model-value"]),n(d,null,{default:p(()=>t[1]||(t[1]=[c("Historie")])),_:1}),n(m,{title:"Heute geladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/get/daily_imported",3,3,.001)},null,8,["model-value"]),n(m,{title:"Heute entladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/get/daily_exported",3,3,.001)},null,8,["model-value"])]),_:1})}const oe=w(te,[["render",ne],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/ChargePointSumCard.vue"]]);W.add(k,C,q,L);const ae={name:"ChargePointCard",components:{FontAwesomeIcon:x},mixins:[y],props:{installedChargePointKey:{type:String,required:!0},installedChargePoint:{type:Object,required:!0}},data(){return{statusLevel:["success","warning","danger"]}},computed:{chargePointIndex:{get(){return parseInt(this.installedChargePointKey.match(/(?:\/)(\d+)(?=\/)/)[1])}}}},re={style:{"white-space":"pre-wrap"}},se={style:{"white-space":"pre-wrap"}};function le(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-checkbox-input"),u=o("openwb-base-text-input"),h=o("openwb-base-heading"),B=o("openwb-base-card");return r(),l(B,{subtype:"primary",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","charging-station"]}),c(" "+b(a.installedChargePoint.name)+" (ID: "+b(s.chargePointIndex)+") ",1)]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",re,b(e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/fault_str"]),1)]),_:1},8,["subtype"]),n(m,{subtype:"info"},{default:p(()=>[t[2]||(t[2]=c(" Statusmeldung:")),t[3]||(t[3]=g("br",null,null,-1)),g("span",se,b(e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/state_str"]),1)]),_:1}),n(d,{title:"Fahrzeug angesteckt",disabled:"","model-value":e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/plug_state"]==1},null,8,["model-value"]),n(d,{title:"Ladevorgang aktiv",disabled:"","model-value":e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/charge_state"]==1},null,8,["model-value"]),n(u,{title:"Zählerstand laden",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Zählerstand entladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/exported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Heute geladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/daily_imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Heute entladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/daily_exported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Wirkleistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/power",3,3,.001)},null,8,["model-value"]),n(u,{title:"Ladestromvorgabe",readonly:"",class:"text-right text-monospace",step:"0.01",unit:"A","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/set/current",2)},null,8,["model-value"]),n(u,{title:"Netzfrequenz",readonly:"",class:"text-right text-monospace",step:"0.01",unit:"Hz","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/frequency",2)},null,8,["model-value"]),n(h,null,{default:p(()=>t[4]||(t[4]=[c("Werte pro Phase")])),_:1}),n(u,{title:"Spannung",readonly:"",class:"text-right text-monospace",unit:"V","model-value":e.formatPhaseArrayNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/voltages",1)},null,8,["model-value"]),n(u,{title:"Strom",readonly:"",class:"text-right text-monospace",unit:"A","model-value":e.formatPhaseArrayNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/currents",2)},null,8,["model-value"]),n(u,{title:"Wirkleistung",readonly:"",class:"text-right text-monospace",unit:"kW","model-value":e.formatPhaseArrayNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/powers",3,3,.001)},null,8,["model-value"]),n(u,{title:"Leistungsfaktor",readonly:"",class:"text-right text-monospace","model-value":e.formatPhaseArrayNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/power_factors",2)},null,8,["model-value"]),n(h,null,{default:p(()=>t[5]||(t[5]=[c("Phasen")])),_:1}),e.$store.state.mqtt["openWB/general/extern"]===!0?(r(),l(u,{key:0,title:"Vorgabe",readonly:"",class:"text-right text-monospace","model-value":e.formatNumberTopic("openWB/internal_chargepoint/"+s.chargePointIndex+"/data/phases_to_use")},null,8,["model-value"])):(r(),l(u,{key:1,title:"Vorgabe",readonly:"",class:"text-right text-monospace","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/set/phases_to_use")},null,8,["model-value"])),n(u,{title:"Aktuell",readonly:"",class:"text-right text-monospace","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/phases_in_use")},null,8,["model-value"])]),_:1})}const ie=w(ae,[["render",le],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/ChargePointCard.vue"]]);W.add(k,C,q,E);const ue={name:"CounterCard",components:{FontAwesomeIcon:x},mixins:[y],props:{counter:{type:Object,required:!0}},data(){return{statusLevel:["success","warning","danger"]}}},pe={style:{"white-space":"pre-wrap"}},de={style:{"white-space":"pre-wrap"}};function ce(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-heading"),u=o("openwb-base-text-input"),h=o("openwb-base-card");return r(),l(h,{subtype:"danger",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","gauge-high"]}),c(" "+b(a.counter.name)+" (ID: "+b(a.counter.id)+") ",1)]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",pe,b(e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/fault_str"]),1)]),_:1},8,["subtype"]),e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/state_str"]!=null?(r(),l(m,{key:0,subtype:"info"},{default:p(()=>[t[2]||(t[2]=c(" Statusmeldung:")),t[3]||(t[3]=g("br",null,null,-1)),g("span",de,b(e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/state_str"]),1)]),_:1})):T("",!0),n(d,null,{default:p(()=>t[4]||(t[4]=[c("Zählerstände")])),_:1}),n(u,{title:"Export",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/counter/"+a.counter.id+"/get/exported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Import",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/counter/"+a.counter.id+"/get/imported",3,3,.001)},null,8,["model-value"]),n(d,null,{default:p(()=>t[5]||(t[5]=[c("Saldierte Werte")])),_:1}),n(u,{title:"Wirkleistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/counter/"+a.counter.id+"/get/power",3,3,.001)},null,8,["model-value"]),n(u,{title:"Netzfrequenz",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"Hz","model-value":e.formatNumberTopic("openWB/counter/"+a.counter.id+"/get/frequency",3)},null,8,["model-value"]),n(d,null,{default:p(()=>t[6]||(t[6]=[c("Werte pro Phase")])),_:1}),n(u,{title:"Spannung",readonly:"",class:"text-right text-monospace",unit:"V","model-value":e.formatPhaseArrayNumberTopic("openWB/counter/"+a.counter.id+"/get/voltages",1)},null,8,["model-value"]),n(u,{title:"Strom",readonly:"",class:"text-right text-monospace",unit:"A","model-value":e.formatPhaseArrayNumberTopic("openWB/counter/"+a.counter.id+"/get/currents",2)},null,8,["model-value"]),n(u,{title:"Wirkleistung",readonly:"",class:"text-right text-monospace",unit:"kW","model-value":e.formatPhaseArrayNumberTopic("openWB/counter/"+a.counter.id+"/get/powers",3,3,.001)},null,8,["model-value"]),n(u,{title:"Leistungsfaktor",readonly:"",class:"text-right text-monospace","model-value":e.formatPhaseArrayNumberTopic("openWB/counter/"+a.counter.id+"/get/power_factors",2)},null,8,["model-value"])]),_:1})}const me=w(ue,[["render",ce],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/CounterCard.vue"]]);W.add(k,C,q,S);const ge={name:"InverterSumCard",components:{FontAwesomeIcon:x},mixins:[y],data(){return{statusLevel:["success","warning","danger"]}}},fe={style:{"white-space":"pre-wrap"}};function be(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-text-input"),u=o("openwb-base-heading"),h=o("openwb-base-card");return r(),l(h,{subtype:"success",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","solar-panel"]}),t[0]||(t[0]=c(" Alle Wechselrichter "))]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/pv/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/pv/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/pv/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[1]||(t[1]=c(" Modulmeldung:")),t[2]||(t[2]=g("br",null,null,-1)),g("span",fe,b(e.$store.state.mqtt["openWB/pv/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,{title:"Zählerstand",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/get/exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/pv/get/power",3,3,.001)},null,8,["model-value"]),n(u,null,{default:p(()=>t[3]||(t[3]=[c("Erträge")])),_:1}),n(d,{title:"Heute",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/get/daily_exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Dieser Monat",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/get/monthly_exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Dieses Jahr",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/get/yearly_exported",3,3,.001)},null,8,["model-value"])]),_:1})}const _e=w(ge,[["render",be],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/InverterSumCard.vue"]]);W.add(k,C,q,S);const he={name:"InverterCard",components:{FontAwesomeIcon:x},mixins:[y],props:{inverter:{type:Object,required:!0}},data(){return{statusLevel:["success","warning","danger"]}}},ve={style:{"white-space":"pre-wrap"}};function ye(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-text-input"),u=o("openwb-base-heading"),h=o("openwb-base-card");return r(),l(h,{subtype:"success",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","solar-panel"]}),c(" "+b(a.inverter.name)+" (ID: "+b(a.inverter.id)+") ",1)]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/pv/"+a.inverter.id+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/pv/"+a.inverter.id+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/pv/"+a.inverter.id+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",ve,b(e.$store.state.mqtt["openWB/pv/"+a.inverter.id+"/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,{title:"Zählerstand",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/power",3,3,.001)},null,8,["model-value"]),n(u,null,{default:p(()=>t[2]||(t[2]=[c("Erträge")])),_:1}),n(d,{title:"Heute",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/daily_exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Dieser Monat",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/monthly_exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Dieses Jahr",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/yearly_exported",3,3,.001)},null,8,["model-value"])]),_:1})}const we=w(he,[["render",ye],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/InverterCard.vue"]]);W.add(k,C,q,A);const We={name:"BatterySumCard",components:{FontAwesomeIcon:x},mixins:[y],data(){return{statusLevel:["success","warning","danger"]}}},xe={style:{"white-space":"pre-wrap"}};function Be(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-heading"),u=o("openwb-base-text-input"),h=o("openwb-base-number-input"),B=o("openwb-base-card");return r(),l(B,{subtype:"warning",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","car-battery"]}),t[0]||(t[0]=c(" Alle Speicher "))]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/bat/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/bat/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/bat/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[1]||(t[1]=c(" Modulmeldung:")),t[2]||(t[2]=g("br",null,null,-1)),g("span",xe,b(e.$store.state.mqtt["openWB/bat/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,null,{default:p(()=>t[3]||(t[3]=[c("Zählerstände")])),_:1}),n(u,{title:"Ladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/get/imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Entladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/get/exported",3,3,.001)},null,8,["model-value"]),n(d,null,{default:p(()=>t[4]||(t[4]=[c("Tageswerte")])),_:1}),n(u,{title:"Ladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/get/daily_imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Entladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/get/daily_exported",3,3,.001)},null,8,["model-value"]),n(d,null,{default:p(()=>t[5]||(t[5]=[c("Saldierte Werte")])),_:1}),n(u,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/bat/get/power",3,3,.001)},null,8,["model-value"]),n(h,{title:"Ladestand",readonly:"",class:"text-right text-monospace",unit:"%","model-value":e.$store.state.mqtt["openWB/bat/get/soc"]},null,8,["model-value"])]),_:1})}const ke=w(We,[["render",Be],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/BatterySumCard.vue"]]);W.add(k,C,q,A);const Ce={name:"BatteryCard",components:{FontAwesomeIcon:x},mixins:[y],props:{battery:{type:Object,required:!0}},data(){return{statusLevel:["success","warning","danger"]}}},qe={style:{"white-space":"pre-wrap"}};function Te(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-heading"),u=o("openwb-base-text-input"),h=o("openwb-base-number-input"),B=o("openwb-base-card");return r(),l(B,{subtype:"warning",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","car-battery"]}),c(" "+b(a.battery.name)+" (ID: "+b(a.battery.id)+") ",1)]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",qe,b(e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,null,{default:p(()=>t[2]||(t[2]=[c("Aktuelle Werte")])),_:1}),n(u,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/bat/"+a.battery.id+"/get/power",3,3,.001)},null,8,["model-value"]),n(h,{title:"Ladestand",readonly:"",class:"text-right text-monospace",unit:"%","model-value":e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/soc"]},null,8,["model-value"]),n(d,null,{default:p(()=>t[3]||(t[3]=[c("Zählerstände")])),_:1}),n(u,{title:"Ladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/"+a.battery.id+"/get/imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Entladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/"+a.battery.id+"/get/exported",3,3,.001)},null,8,["model-value"])]),_:1})}const Ie=w(Ce,[["render",Te],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/BatteryCard.vue"]]);W.add(k,C,q,z);const Ne={name:"RippleControlReceiverCard",components:{FontAwesomeIcon:x},mixins:[y],data(){return{mqttTopicsToSubscribe:["openWB/general/ripple_control_receiver/get/fault_state","openWB/general/ripple_control_receiver/get/fault_str","openWB/general/ripple_control_receiver/get/override_value","openWB/general/ripple_control_receiver/module"],statusLevel:["success","warning","danger"]}}},Pe={style:{"white-space":"pre-wrap"}};function $e(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-text-input"),u=o("openwb-base-card");return e.$store.state.mqtt["openWB/general/ripple_control_receiver/module"]&&e.$store.state.mqtt["openWB/general/ripple_control_receiver/module"].type?(r(),l(u,{key:0,subtype:"secondary",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{icon:["fas","tower-broadcast"]}),t[0]||(t[0]=c(" Steuerbare Verbrauchseinrichtung (RSE) "))]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[1]||(t[1]=c(" Modulmeldung:")),t[2]||(t[2]=g("br",null,null,-1)),g("span",Pe,b(e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,{title:"Status",readonly:"","model-value":e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/override_value"]==0?"Laden gesperrt":"Laden erlaubt ("+e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/override_value"]+"%)"},null,8,["model-value"])]),_:1})):T("",!0)}const Le=w(Ne,[["render",$e],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/RippleControlReceiver.vue"]]);W.add(k,C,q,M);const Se={name:"VehicleCard",components:{FontAwesomeIcon:x},mixins:[y],props:{vehicle:{type:Object,required:!1,default:void 0},vehicleKey:{type:String,required:!0},vehicleName:{type:String,default:""}},data(){return{statusLevel:["success","warning","danger"]}},computed:{vehicleIndex:{get(){return parseInt(this.vehicleKey.match(/(?:\/)(\d+)(?=\/)/)[1])}},socTimestamp:{get(){return this.$store.state.mqtt["openWB/vehicle/"+this.vehicleIndex+"/get/soc_timestamp"]!==void 0?new Date(this.$store.state.mqtt["openWB/vehicle/"+this.vehicleIndex+"/get/soc_timestamp"]*1e3).toLocaleString():"-"}},socRange:{get(){return this.$store.state.mqtt["openWB/vehicle/"+this.vehicleIndex+"/get/range"]!==void 0?Math.round(this.$store.state.mqtt["openWB/vehicle/"+this.vehicleIndex+"/get/range"]):0}}}},Ae={style:{"white-space":"pre-wrap"}};function Oe(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-heading"),u=o("openwb-base-number-input"),h=o("openwb-base-text-input"),B=o("openwb-base-card");return r(),l(B,{subtype:"info",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","car"]}),c(" "+b(a.vehicleName)+" (ID: "+b(s.vehicleIndex)+") ",1)]),default:p(()=>[e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_state"]!==void 0?(r(),l(m,{key:0,subtype:f.statusLevel[e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",Ae,b(e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_str"]),1)]),_:1},8,["subtype"])):T("",!0),n(d,null,{default:p(()=>t[2]||(t[2]=[c("Fahrzeugdaten")])),_:1}),n(u,{title:"Ladestand",readonly:"",class:"text-right text-monospace",unit:"%","model-value":e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/soc"]},null,8,["model-value"]),n(u,{title:"Reichweite",readonly:"",class:"text-right text-monospace",unit:"km","model-value":s.socRange},null,8,["model-value"]),n(h,{title:"Letzter Zeitstempel",readonly:"",class:"text-right text-monospace","model-value":s.socTimestamp},null,8,["model-value"])]),_:1})}const je=w(Se,[["render",Oe],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/VehicleCard.vue"]]);W.add(k,C,q,V);H.register(Z,F,K,G,J,Q,U,X,Y);const De={name:"ElectricityTariffCard",components:{ChartjsLine:ee,FontAwesomeIcon:x},mixins:[y],data(){return{mqttTopicsToSubscribe:["openWB/optional/et/provider","openWB/optional/et/get/fault_state","openWB/optional/et/get/fault_str","openWB/optional/et/get/prices"],statusLevel:["success","warning","danger"],chartDatasets:{datasets:[{label:"Stromtarif",unit:"ct/kWh",type:"line",stepped:!0,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(255, 10, 13, 0.3)",fill:!1,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:void 0,yAxisID:"y",parsing:{xAxisKey:"timestamp",yAxisKey:"price"}}]},chartOptions:{plugins:{title:{display:!1},tooltip:{enabled:!0},legend:{display:!1}},elements:{point:{radius:2}},responsive:!0,maintainAspectRatio:!1,interaction:{mode:"index",intersect:!1},scales:{x:{type:"time",time:{unit:"hour",text:"Zeit",maxTicksLimit:24},display:!0,title:{display:!0,text:"Uhrzeit"},ticks:{font:{size:12},maxTicksLimit:0},grid:{}},y:{position:"left",type:"linear",display:"auto",title:{font:{size:12},display:!0,text:"Preis [ct/kWh]"},grid:{},ticks:{font:{size:12},stepSize:.01,maxTicksLimit:11}}}}}},computed:{electricityTariffConfigured(){const e=this.$store.state.mqtt["openWB/optional/et/provider"];return e!==void 0?e.type!==null:!1},chartDataRead(){return this.chartDataObject.datasets[0].data!=null},chartDataObject(){if(this.$store.state.mqtt["openWB/optional/et/get/prices"]){var e=this.$store.state.mqtt["openWB/optional/et/get/prices"],t=[];for(const[f,s]of Object.entries(e))t.push({timestamp:f*1e3,price:s*1e5});const _=t.slice(-1)[0];t.push({timestamp:_.timestamp+(60*60-1)*1e3,price:_.price})}const a=this.chartDatasets;return a.datasets[0].data=t,a}}},Re={style:{"white-space":"pre-wrap"}},Ee={class:"openwb-chart"};function ze(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-text-input"),u=o("chartjs-line"),h=o("openwb-base-card");return s.electricityTariffConfigured?(r(),l(h,{key:0,subtype:"secondary",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","ranking-star"]}),t[0]||(t[0]=c(" Variabler Stromtarif "))]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/optional/et/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/optional/et/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/optional/et/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[1]||(t[1]=c(" Modulmeldung:")),t[2]||(t[2]=g("br",null,null,-1)),g("span",Re,b(e.$store.state.mqtt["openWB/optional/et/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,{title:"Anbieter",readonly:"","model-value":e.$store.state.mqtt["openWB/optional/et/provider"].name},null,8,["model-value"]),g("div",Ee,[s.chartDataRead?(r(),l(u,{key:0,ref:"myChart",data:s.chartDataObject,options:f.chartOptions},null,8,["data","options"])):T("",!0)])]),_:1})):T("",!0)}const Me=w(De,[["render",ze],["__scopeId","data-v-f4769d2f"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/ElectricityTariffCard.vue"]]);const Ve={name:"OpenwbStatusView",components:{ChargePointSumCard:oe,ChargePointCard:ie,CounterCard:me,InverterSumCard:_e,InverterCard:we,BatterySumCard:ke,BatteryCard:Ie,RippleControlReceiverCard:Le,VehicleCard:je,ElectricityTariffCard:Me},mixins:[y],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/chargepoint/get/power","openWB/chargepoint/get/imported","openWB/chargepoint/get/exported","openWB/chargepoint/get/daily_imported","openWB/chargepoint/get/daily_exported","openWB/chargepoint/+/config","openWB/chargepoint/+/get/+","openWB/chargepoint/+/get/connected_vehicle/info","openWB/chargepoint/+/set/+","openWB/internal_chargepoint/+/data/phases_to_use","openWB/system/device/+/component/+/config","openWB/counter/+/get/+","openWB/pv/get/+","openWB/pv/+/get/+","openWB/bat/get/+","openWB/bat/+/get/+","openWB/vehicle/+/name","openWB/vehicle/+/get/+"]}},computed:{installedChargePoints:{get(){let e=this.getWildcardTopics("openWB/chargepoint/+/config"),t={};for(const[a,_]of Object.entries(e))(_.type==="internal_openwb"||this.$store.state.mqtt["openWB/general/extern"]===!1)&&(t[a]=_);return t}},numChargePointsInstalled:{get(){return Object.keys(this.installedChargePoints).length}},counterConfigs:{get(){return this.$store.state.mqtt["openWB/general/extern"]===!0?{}:this.filterComponentsByType(this.getWildcardTopics("openWB/system/device/+/component/+/config"),"counter")}},numInvertersInstalled:{get(){return Object.keys(this.inverterConfigs).length}},inverterConfigs:{get(){return this.$store.state.mqtt["openWB/general/extern"]===!0?{}:this.filterComponentsByType(this.getWildcardTopics("openWB/system/device/+/component/+/config"),"inverter")}},numBatteriesInstalled:{get(){return Object.keys(this.batteryConfigs).length}},batteryConfigs:{get(){return this.$store.state.mqtt["openWB/general/extern"]===!0?{}:this.filterComponentsByType(this.getWildcardTopics("openWB/system/device/+/component/+/config"),"bat")}},vehicleNames:{get(){return this.$store.state.mqtt["openWB/general/extern"]===!0?{}:this.getWildcardTopics("openWB/vehicle/+/name")}}},methods:{filterComponentsByType(e,t){return Object.keys(e).filter(a=>e[a].type.includes(t)).reduce((a,_)=>({...a,[_]:e[_]}),{})}}},He={class:"status"};function Ze(e,t,a,_,f,s){const i=o("charge-point-sum-card"),m=o("charge-point-card"),d=o("counter-card"),u=o("inverter-sum-card"),h=o("inverter-card"),B=o("battery-sum-card"),O=o("battery-card"),j=o("vehicle-card"),D=o("electricity-tariff-card"),R=o("ripple-control-receiver-card");return r(),I("div",He,[s.numChargePointsInstalled>1&&e.$store.state.mqtt["openWB/general/extern"]===!1?(r(),l(i,{key:0})):T("",!0),(r(!0),I(P,null,$(s.installedChargePoints,(v,N)=>(r(),l(m,{key:N,"installed-charge-point":v,"installed-charge-point-key":N},null,8,["installed-charge-point","installed-charge-point-key"]))),128)),(r(!0),I(P,null,$(s.counterConfigs,v=>(r(),l(d,{key:v.id,counter:v},null,8,["counter"]))),128)),s.numInvertersInstalled>1&&e.$store.state.mqtt["openWB/general/extern"]===!1?(r(),l(u,{key:1})):T("",!0),(r(!0),I(P,null,$(s.inverterConfigs,v=>(r(),l(h,{key:v.id,inverter:v},null,8,["inverter"]))),128)),s.numBatteriesInstalled>1&&e.$store.state.mqtt["openWB/general/extern"]===!1?(r(),l(B,{key:2})):T("",!0),(r(!0),I(P,null,$(s.batteryConfigs,v=>(r(),l(O,{key:v.id,battery:v},null,8,["battery"]))),128)),(r(!0),I(P,null,$(s.vehicleNames,(v,N)=>(r(),l(j,{key:N,"vehicle-key":N,"vehicle-name":v},null,8,["vehicle-key","vehicle-name"]))),128)),n(D),n(R)])}const tt=w(Ve,[["render",Ze],["__scopeId","data-v-051028a3"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/Status.vue"]]);export{tt as default}; diff --git a/web/settings/assets/Support-0d2ea797.js b/web/settings/assets/Support-0d2ea797.js new file mode 100644 index 0000000000..8765f5ac34 --- /dev/null +++ b/web/settings/assets/Support-0d2ea797.js @@ -0,0 +1,3 @@ +import{l as D,g as V,F as W}from"./vendor-fortawesome-3d19d475.js";import{C as z}from"./index-beac009d.js";import{_ as A,u,k as f,l as c,x as r,z as k,E as s,G as o,D as C,B as w,y as n,q as F}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";D.add(V);const x={name:"OpenwbSupportView",components:{FontAwesomeIcon:W},mixins:[z],emits:["sendCommand"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/system/dataprotection_acknowledged","openWB/system/serial_number","openWB/system/device/+/config","openWB/system/device/+/component/+/config","openWB/vehicle/+/name","openWB/vehicle/+/info"],email:void 0,components:void 0,vehicles:void 0,message:void 0,enableSendDebugButton:!0}},computed:{debugData(){return{email:this.email,serialNumber:this.$store.state.mqtt["openWB/system/serial_number"],installedComponents:this.installedComponents,vehicles:this.vehicleInfo,message:this.message}},installedComponents(){var b,m;if(this.components!==void 0)return this.components;let i="";const e=this.getWildcardTopics("openWB/system/device/+/component/+/config");for(const t of Object.values(e)){const a=t.id,d=((b=t.info)==null?void 0:b.manufacturer)||"N/A",p=((m=t.info)==null?void 0:m.model)||"N/A";i+=`(${a}) Hersteller: ${d}, Modell: ${p} +`}return i.trim()},vehicleInfo(){if(this.vehicles!==void 0)return this.vehicles;let i="";const e=this.getWildcardTopics("openWB/vehicle/+/info");for(const[b,m]of Object.entries(e)){const t=parseInt(b.split("/")[2]);if(t!==0){const a=m.manufacturer||"N/A",d=m.model||"N/A";i+=`(${t}) Hersteller: ${a}, Modell: ${d} +`}}return i.trim()}},methods:{sendDebugMessage(){if(document.forms.supportForm.reportValidity())this.$emit("sendCommand",{command:"sendDebug",data:this.debugData}),this.enableSendDebugButton=!1;else{console.warn("form invalid");return}}}},_={class:"support"},q={name:"supportForm"},I={key:1},N={key:0},T={class:"row justify-content-center"};function M(i,e,b,m,t,a){const d=u("router-link"),p=u("openwb-base-alert"),v=u("FontAwesomeIcon"),h=u("openwb-base-text-input"),g=u("openwb-base-textarea"),y=u("openwb-base-click-button"),B=u("openwb-base-card"),S=u("font-awesome-icon");return f(),c("div",_,[r("form",q,[i.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]!==!0?(f(),k(p,{key:0,subtype:"danger"},{default:s(()=>[e[6]||(e[6]=n(" Du musst der ")),o(d,{to:"/System/LegalSettings"},{default:s(()=>e[5]||(e[5]=[n(" Datenschutzerklärung ")])),_:1}),e[7]||(e[7]=n(" zustimmen, um einen Systembericht senden zu können. "))]),_:1})):(f(),c("div",I,[o(p,{subtype:"success"},{default:s(()=>[e[9]||(e[9]=n(" Du hast der ")),o(d,{to:"/System/LegalSettings"},{default:s(()=>e[8]||(e[8]=[n(" Datenschutzerklärung ")])),_:1}),e[10]||(e[10]=n(" zugestimmt und kannst Systemberichte senden. "))]),_:1}),o(B,{title:"Systembericht"},C({default:s(()=>[i.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]===!0?(f(),c("div",N,[o(p,{subtype:"info"},{default:s(()=>[r("ul",null,[r("li",null,[e[11]||(e[11]=n(" Lies bitte den Hilfetext, der durch Klick auf das ")),o(v,{icon:["far","question-circle"]}),e[12]||(e[12]=n(" angezeigt wird. Nimm das Wiki zur Hilfe. "))]),e[13]||(e[13]=r("li",null,'Vergewissere Dich , dass mindestens die aktuelle "Release" Version installiert ist.',-1)),e[14]||(e[14]=r("li",null," Stelle beim Absenden des Berichtes die Fehlerkonditionen her. Lädt ein Fahrzeug nicht, sollte es angeschlossen und nicht voll geladen sein. Ist PV laden betroffen, sollte die Sonne auch scheinen. Der Systembericht muss dann versendet werden, wenn der Fehler aktuell vorliegt. ",-1)),e[15]||(e[15]=r("li",null," Stelle sicher, dass der Lademodus gewählt ist und im Falle von nicht ladenden ladenden Fahrzeugen, dass der Ladepunkt auch entsperrt wurde. ",-1)),e[16]||(e[16]=r("li",null," Das Auslesen der Systemkonfiguration erfolgt direkt nach den Klick auf Absenden und kann einige Zeit in Anspruch nehmen. Du erhältst ca. 15 bis 30 Minuten nach Versand des Systemberichtes von uns automatisch eine E-Mail mit der Ticketnummer unter der die Anfrage bei uns registriert wurde. Wir melden uns bei Dir. Bitte kontrolliere daher immer auch den Spam Ordner auf eingehende Nachrichten. Erhältst Du trotzdem keine Ticketnummer, ist das Versenden des Systemberichtes vermutlich fehlgeschlagen. ",-1))])]),_:1}),o(h,{modelValue:t.email,"onUpdate:modelValue":e[0]||(e[0]=l=>t.email=l),title:"E-Mail",required:"",subtype:"email"},{help:s(()=>e[17]||(e[17]=[n(" Deine E-Mail-Adresse, an die der Support Dir antwortet. ")])),_:1},8,["modelValue"]),o(h,{title:"openWB Seriennummer",required:"","model-value":i.$store.state.mqtt["openWB/system/serial_number"],"onUpdate:modelValue":e[1]||(e[1]=l=>i.updateState("openWB/system/serial_number",l))},{help:s(()=>e[18]||(e[18]=[n(" Die Seriennummer der openWB findest Du außen am, bei älteren Installationen innen im Gehäuse. Du kannst uns aber auch eine Bestellnummer oder Rechnungsnummer übermitteln. Das Gehäuse muss nicht extra geöffnet werden!"),r("br",null,null,-1),n(" Bei einer gekauften openWB wird die Seriennummer automatisch ermittelt. ")])),_:1},8,["model-value"]),o(g,{title:"Verwendete Komponenten",required:"",minlength:"3",maxlength:"500","model-value":a.installedComponents,"onUpdate:modelValue":e[2]||(e[2]=l=>t.components=l)},{help:s(()=>[e[20]||(e[20]=n(" Gib hier möglichst detailliert an, welche Anlagenkomponenten (EVU, PV, Speicher) angebunden sind.")),e[21]||(e[21]=r("br",null,null,-1)),o(d,{to:"/HardwareInstallation"},{default:s(()=>e[19]||(e[19]=[n(" Die Angaben können auch direkt in der Konfiguration der Komponenten dauerhaft gespeichert werden. ")])),_:1})]),_:1},8,["model-value"]),o(g,{title:"Fahrzeuge",required:"",minlength:"3",maxlength:"500","model-value":a.vehicleInfo,"onUpdate:modelValue":e[3]||(e[3]=l=>t.vehicles=l)},{help:s(()=>[e[23]||(e[23]=n(" Gib hier an, welche Fahrzeuge geladen (Hersteller, Modell, Baujahr).")),e[24]||(e[24]=r("br",null,null,-1)),o(d,{to:"/VehicleConfiguration"},{default:s(()=>e[22]||(e[22]=[n(" Die Angaben können auch direkt in der Konfiguration der Fahrzeuge dauerhaft gespeichert werden. ")])),_:1})]),_:1},8,["model-value"]),o(g,{modelValue:t.message,"onUpdate:modelValue":e[4]||(e[4]=l=>t.message=l),title:"Problembeschreibung",required:"",minlength:"20",maxlength:"500"},null,8,["modelValue"])])):w("",!0)]),_:2},[i.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]===!0?{name:"footer",fn:s(()=>[r("div",T,[o(y,{class:F(["col-4",t.enableSendDebugButton?"btn-success":"btn-outline-success"]),disabled:!t.enableSendDebugButton,onButtonClicked:a.sendDebugMessage},{default:s(()=>e[25]||(e[25]=[n(" Absenden ")])),_:1},8,["class","disabled","onButtonClicked"])])]),key:"0"}:void 0]),1024),t.enableSendDebugButton?w("",!0):(f(),k(p,{key:0,subtype:"success"},{default:s(()=>[e[26]||(e[26]=n(" Die Daten für den Fehlerbericht werden im Hintergrund zusammengestellt. Du kannst diese Seite jetzt verlassen. ")),o(S,{"fixed-width":"",icon:["fas","check"]})]),_:1}))]))])])}const $=A(x,[["render",M],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/Support.vue"]]);export{$ as default}; diff --git a/web/settings/assets/System-b84edc7f.js b/web/settings/assets/System-b84edc7f.js new file mode 100644 index 0000000000..6161d367ce --- /dev/null +++ b/web/settings/assets/System-b84edc7f.js @@ -0,0 +1 @@ +import{l as W,ae as A,p as q,a3 as C,U as S,af as z,F as U}from"./vendor-fortawesome-3d19d475.js";import{C as x}from"./index-beac009d.js";import{_ as E,u as b,k as c,l as h,z as _,E as a,B as w,x as r,G as t,y as i,q as B,N as $,M as F,F as j}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";W.add(A,q,C,S,z);const T={name:"OpenwbSystemView",components:{FontAwesomeIcon:U},mixins:[x],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand"],data(){return{mqttTopicsToSubscribe:["openWB/system/optionBackup","openWB/system/current_commit","openWB/system/current_branch_commit","openWB/system/current_missing_commits","openWB/system/available_branches","openWB/system/current_branch","openWB/system/version"],warningAcknowledged:!1,selectedTag:"*HEAD*"}},computed:{updateAvailable(){return this.$store.state.mqtt["openWB/system/current_branch_commit"]&&this.$store.state.mqtt["openWB/system/current_branch_commit"]!=this.$store.state.mqtt["openWB/system/current_commit"]},releaseChangeValid(){return this.$store.state.mqtt["openWB/system/current_branch"]in this.$store.state.mqtt["openWB/system/available_branches"]&&"tags"in this.$store.state.mqtt["openWB/system/available_branches"][this.$store.state.mqtt["openWB/system/current_branch"]]&&this.selectedTag in this.$store.state.mqtt["openWB/system/available_branches"][this.$store.state.mqtt["openWB/system/current_branch"]].tags}},methods:{sendSystemCommand(n,e={}){this.$emit("sendCommand",{command:n,data:e})},getBranchGroups(){const n="Release",e="Beta",u="master",v=[n,e],p=(l,d)=>l.value==d.value?0:l.value==n?-1:d.value==n?1:l.value==e?-1:d.value==e?1:l.value==u?-1:d.value==u||l.value>d.value?1:l.value[e[12]||(e[12]=r("h2",null,"Achtung!",-1)),e[13]||(e[13]=r("p",null," Vor allen Aktionen auf dieser Seite ist sicherzustellen, dass kein Ladevorgang aktiv ist! Zur Sicherheit bitte zusätzlich alle Fahrzeuge von der Ladestation / den Ladestationen abstecken! ",-1)),t(f,{modelValue:p.warningAcknowledged,"onUpdate:modelValue":e[0]||(e[0]=s=>p.warningAcknowledged=s),title:"Ich habe die Warnung verstanden",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}]},null,8,["modelValue"])]),_:1})),p.warningAcknowledged||u.installAssistantActive?(c(),h("div",L,[r("form",N,[t(d,{title:"Versions-Informationen / Aktualisierung",subtype:"success",collapsible:!0,collapsed:!u.installAssistantActive},{footer:a(()=>[r("div",Z,[r("div",I,[t(y,{class:"btn-info",onButtonClicked:e[5]||(e[5]=s=>o.sendSystemCommand("systemFetchVersions"))},{default:a(()=>[e[16]||(e[16]=i(" Informationen aktualisieren ")),t(g,{"fixed-width":"",icon:["fas","download"]})]),_:1})]),r("div",O,[t(y,{class:B(o.updateAvailable?"btn-success clickable":"btn-outline-success"),disabled:!o.updateAvailable,onButtonClicked:e[6]||(e[6]=s=>o.systemUpdate())},{default:a(()=>[e[17]||(e[17]=i(" Update ")),t(g,{"fixed-width":"",icon:["fas","arrow-alt-circle-up"]})]),_:1},8,["class","disabled"])])])]),default:a(()=>[t(l,{modelValue:n.$store.state.mqtt["openWB/system/current_branch"],"onUpdate:modelValue":e[1]||(e[1]=s=>n.$store.state.mqtt["openWB/system/current_branch"]=s),title:"Entwicklungszweig",readonly:""},null,8,["modelValue"]),t(l,{modelValue:n.$store.state.mqtt["openWB/system/version"],"onUpdate:modelValue":e[2]||(e[2]=s=>n.$store.state.mqtt["openWB/system/version"]=s),title:"Bezeichnung",readonly:""},null,8,["modelValue"]),t(l,{modelValue:n.$store.state.mqtt["openWB/system/current_commit"],"onUpdate:modelValue":e[3]||(e[3]=s=>n.$store.state.mqtt["openWB/system/current_commit"]=s),title:"installierte Version",readonly:"",class:B(o.updateAvailable?"text-danger":"text-success")},null,8,["modelValue","class"]),t(l,{modelValue:n.$store.state.mqtt["openWB/system/current_branch_commit"],"onUpdate:modelValue":e[4]||(e[4]=s=>n.$store.state.mqtt["openWB/system/current_branch_commit"]=s),title:"aktuellste Version",readonly:""},null,8,["modelValue"]),o.updateAvailable?(c(),_(d,{key:0,title:"Änderungen",subtype:"info",collapsible:!0,collapsed:!0},{default:a(()=>[r("ul",R,[(c(!0),h($,null,F(n.$store.state.mqtt["openWB/system/current_missing_commits"],(s,V)=>(c(),h("li",{key:V},j(s),1))),128))])]),_:1})):w("",!0),t(m,{subtype:"danger"},{default:a(()=>e[14]||(e[14]=[i(" Nach einem Update wird die Ladestation direkt neu gestartet! Es werden alle eventuell vorhandenen lokalen Änderungen am Programmcode mit dem Update verworfen! ")])),_:1}),n.$store.state.mqtt["openWB/system/current_branch"]!="Release"?(c(),_(m,{key:1,subtype:"danger"},{default:a(()=>e[15]||(e[15]=[i(' Du bist nicht auf dem für den normalen Gebrauch empfohlenen Entwicklungszweig "Release". Wir empfehlen, auf diesen Zweig zu wechseln, sobald dort eine neue Version verfügbar ist.'),r("br",null,null,-1),i(" Bevor ein Update angestoßen wird, sollte immer eine Sicherung erstellt werden! Es kann zwar wieder auf eine ältere Version gewechselt werden, jedoch ist nicht sichergestellt, dass es dabei keine Probleme gibt. Gerade wenn das Datenformat in der neuen Version angepasst wurde, wird eine ältere damit Fehler produzieren. ")])),_:1})):w("",!0)]),_:1},8,["collapsed"])]),u.installAssistantActive?w("",!0):(c(),h("form",G,[t(d,{title:"Betrieb",collapsible:!0,collapsed:!0},{footer:a(()=>[r("div",P,[r("div",H,[t(y,{class:"btn-warning",onButtonClicked:e[7]||(e[7]=s=>o.sendSystemCommand("systemReboot"))},{default:a(()=>[e[19]||(e[19]=i(" Neustart ")),t(g,{"fixed-width":"",icon:["fas","undo"]})]),_:1})]),r("div",J,[t(y,{class:"btn-danger",onButtonClicked:e[8]||(e[8]=s=>o.sendSystemCommand("systemShutdown"))},{default:a(()=>[e[20]||(e[20]=i(" Ausschalten ")),t(g,{"fixed-width":"",icon:["fas","power-off"]})]),_:1})])])]),default:a(()=>[t(m,{subtype:"danger"},{default:a(()=>e[18]||(e[18]=[i(" Wenn die Ladestation ausgeschaltet wird, muss sie komplett spannungsfrei geschaltet werden. Erst beim erneuten Zuschalten der Spannung fährt das System wieder hoch. ")])),_:1})]),_:1})])),u.installAssistantActive?w("",!0):(c(),h("form",M,[t(d,{title:"Entwicklungszweig",subtype:"danger",collapsible:!0,collapsed:!0},{footer:a(()=>[r("div",K,[r("div",Q,[t(y,{class:B(o.releaseChangeValid?"btn-danger clickable":"btn-outline-danger"),disabled:!o.releaseChangeValid,onButtonClicked:e[11]||(e[11]=s=>o.switchBranch())},{default:a(()=>[t(g,{"fixed-width":"",icon:["fas","skull-crossbones"]}),e[23]||(e[23]=i(" Branch und Tag wechseln ")),t(g,{"fixed-width":"",icon:["fas","skull-crossbones"]})]),_:1},8,["class","disabled"])])])]),default:a(()=>[t(m,{subtype:"danger"},{default:a(()=>e[21]||(e[21]=[i(" Nach einem Wechsel wird die Ladestation direkt neu gestartet! Es werden alle lokalen Änderungen mit dem Wechsel verworfen! ")])),_:1}),t(m,{subtype:"warning"},{default:a(()=>e[22]||(e[22]=[i(" Bevor auf einen neuen Entwicklungszweig gewechselt wird sollte immer eine Sicherung erstellt werden! Es kann zwar wieder auf eine ältere Version gewechselt werden, jedoch ist nicht sichergestellt, dass es dabei keine Probleme gibt. Gerade wenn das Datenformat in der neuen Version angepasst wurde, wird eine ältere damit Fehler produzieren."),r("br",null,null,-1),i(' Für den normalen Betrieb wird der Zweig "Release" empfohlen. Der Softwarestand wurde ausgiebig getestet, sodass ein Fehlverhalten relativ unwahrscheinlich ist.'),r("br",null,null,-1),i(' Der "Beta" Zweig beinhaltet Vorabversionen, bei denen die Entwicklung soweit abgeschlossen ist. Die enthaltenen Anpassungen wurden rudimentär getestet, können aber durchaus noch Fehler enthalten.'),r("br",null,null,-1),i(' Die aktuelle Softwareentwicklung findet im Zweig "master" statt. Die enthaltenen Anpassungen sind teilweise noch nicht getestet und enthalten potentiell Fehler.'),r("br",null,null,-1),i(' Einträge, die mit "feature" beginnen, sind experimentelle Entwicklungszweige, die nicht für den allgemeinen Gebrauch gedacht sind. ')])),_:1}),t(k,{title:"Entwicklungszweig",groups:o.getBranchGroups(),"model-value":n.$store.state.mqtt["openWB/system/current_branch"],"onUpdate:modelValue":e[9]||(e[9]=s=>n.updateState("openWB/system/current_branch",s))},null,8,["groups","model-value"]),t(k,{modelValue:p.selectedTag,"onUpdate:modelValue":e[10]||(e[10]=s=>p.selectedTag=s),title:"Tag",options:o.getBranchTagOptions()},null,8,["modelValue","options"])]),_:1})]))])):w("",!0)])}const oe=E(T,[["render",X],["__scopeId","data-v-059847f6"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/System.vue"]]);export{oe as default}; diff --git a/web/settings/assets/TestingStore-db84111b.js b/web/settings/assets/TestingStore-db84111b.js new file mode 100644 index 0000000000..56cde63974 --- /dev/null +++ b/web/settings/assets/TestingStore-db84111b.js @@ -0,0 +1 @@ +import{C as k}from"./index-beac009d.js";import{S as B}from"./OpenwbSortableList-dbb3f422.js";import{_ as O,u as s,k as T,l as z,x as u,G as o,E as n,y as a,F as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const N={name:"OpenwbTestingStoreView",components:{SortableList:B},mixins:[k],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:[]}}},Z={class:"testingStore"},G={name:"testingStoreForm"};function L(t,e,D,j,A,J){const d=s("OpenwbBaseHeading"),S=s("OpenwbBaseSettingElement"),w=s("openwb-base-button-input"),b=s("openwb-base-button-group-input"),i=s("openwb-base-card"),p=s("openwb-base-text-input"),m=s("openwb-base-number-input"),x=s("openwb-base-textarea"),v=s("openwb-base-range-input"),f=s("openwb-base-select-input"),$=s("openwb-base-checkbox-input"),V=s("openwb-base-array-input"),E=s("openwb-base-heading"),r=s("openwb-base-alert"),U=s("sortable-list"),y=s("openwb-base-submit-buttons");return T(),z("div",Z,[u("form",G,[o(i,{title:"Elemente mit BaseSettingElement"},{default:n(()=>[o(d,null,{default:n(()=>e[28]||(e[28]=[a(" Basiselement ")])),_:1}),o(S,null,{help:n(()=>e[29]||(e[29]=[a(" Basis-Element für alle weiteren Elemente. Das ist ein "),u("a",{href:"test"},"Link",-1),a(". ")])),_:1}),o(d,null,{default:n(()=>e[30]||(e[30]=[a(" Abgeleitete Elemente ")])),_:1}),o(w,{title:"Button Input","button-text":"Klick mich",subtype:"info"},{help:n(()=>e[31]||(e[31]=[a(" Einfacher Click-Button für Aktionen. ")])),_:1}),o(b,{title:"Button Group Input",buttons:[{buttonValue:1,text:"Eins"},{buttonValue:2,text:"Zwei"}],"model-value":t.$store.state.examples.buttonGroup1,"onUpdate:modelValue":e[0]||(e[0]=l=>t.updateState("buttonGroup1",l))},{help:n(()=>e[32]||(e[32]=[a(" Button-Group Element zur Auswahl weniger Optionen. Bei vielen Optionen besser ein Dropdown verwenden. "),u("a",{href:"test"},"Link",-1),a(". ")])),_:1},8,["model-value"])]),_:1}),o(i,{title:"Einfache Eingabefelder"},{default:n(()=>[o(p,{title:"1. Text","model-value":t.$store.state.examples.text1,"onUpdate:modelValue":e[1]||(e[1]=l=>t.updateState("text1",l))},{help:n(()=>e[33]||(e[33]=[a(" Einfacher Text ")])),_:1},8,["model-value"]),o(p,{title:"2. Text (E-Mail)",subtype:"email","model-value":t.$store.state.examples.text2,"onUpdate:modelValue":e[2]||(e[2]=l=>t.updateState("text2",l))},{help:n(()=>e[34]||(e[34]=[a(" Eingabefeld für E-Mailadressen ")])),_:1},8,["model-value"]),o(p,{title:"3. Text (Host)",subtype:"host","model-value":t.$store.state.examples.text3,"onUpdate:modelValue":e[3]||(e[3]=l=>t.updateState("text3",l))},{help:n(()=>e[35]||(e[35]=[a(" Eingabefeld für Hosts (IP oder Namen) ")])),_:1},8,["model-value"]),o(p,{title:"4. Text (URL)",subtype:"url","model-value":t.$store.state.examples.text4,"onUpdate:modelValue":e[4]||(e[4]=l=>t.updateState("text4",l))},{help:n(()=>e[36]||(e[36]=[a(" Eingabefeld für URLs ")])),_:1},8,["model-value"]),o(p,{title:"5. Text (User)",subtype:"user","model-value":t.$store.state.examples.text5,"onUpdate:modelValue":e[5]||(e[5]=l=>t.updateState("text5",l))},{help:n(()=>e[37]||(e[37]=[a(" Eingabefeld für Benutzernamen ")])),_:1},8,["model-value"]),o(p,{title:"6. Text (Time)",subtype:"time","model-value":t.$store.state.examples.text6,"onUpdate:modelValue":e[6]||(e[6]=l=>t.updateState("text6",l))},{help:n(()=>e[38]||(e[38]=[a(" Eingabefeld für Zeiten ")])),_:1},8,["model-value"]),o(p,{title:"7. Text (Date)",subtype:"date","model-value":t.$store.state.examples.text7,"onUpdate:modelValue":e[7]||(e[7]=l=>t.updateState("text7",l))},{help:n(()=>e[39]||(e[39]=[a(" Eingabefeld für ein Datum ")])),_:1},8,["model-value"]),e[45]||(e[45]=u("hr",null,null,-1)),o(m,{title:"1. Zahl",min:5,max:9,step:2,unit:"kW","model-value":t.$store.state.examples.number1,"onUpdate:modelValue":e[8]||(e[8]=l=>t.updateState("number1",l))},{help:n(()=>e[40]||(e[40]=[a(" Zahl mit Einheit ")])),_:1},8,["model-value"]),o(m,{title:"2. Zahl",min:10,max:32,step:2,"model-value":t.$store.state.examples.number2,"onUpdate:modelValue":e[9]||(e[9]=l=>t.updateState("number2",l))},{help:n(()=>e[41]||(e[41]=[a(" Eingabefeld für Zahlen ohne Einheit ")])),_:1},8,["model-value"]),o(m,{title:"3. Zahl",min:-30,max:30,step:.01,precision:2,unit:"ct/kWh","model-value":t.$store.state.examples.number3*1e5,"onUpdate:modelValue":e[10]||(e[10]=l=>t.updateState("number3",parseFloat((l/1e5).toFixed(7))))},{help:n(()=>e[42]||(e[42]=[a(" Eingabefeld für Zahlen mit Einheit und Nachkommastellen"),u("br",null,null,-1),a(' Zusätzlich zum optionalen Parameter "step" sollte immer auch "precision" gesetzt sein, um unvermeidbare Darstellungsfehler zu vermeiden.'),u("br",null,null,-1),a(" Wenn der dargestellte Wert eine andere Genauigkeit/Einheit als der Wert im Backend hat (z.B. €/Wh <-> ct/kWh), dann ist bei der Umrechnung darauf zu achten, dass es nicht erneut zu Ungenauigkeiten bei Dezimalzahlen kommt. ")])),_:1},8,["model-value"]),o(p,{title:"1. Passwort",subtype:"password","model-value":t.$store.state.examples.password1,"onUpdate:modelValue":e[11]||(e[11]=l=>t.updateState("password1",l))},{help:n(()=>e[43]||(e[43]=[a(" Das Passwort kann per Klick auf das Auge angezeigt werden. ")])),_:1},8,["model-value"]),e[46]||(e[46]=u("hr",null,null,-1)),o(x,{title:"1. Textarea",maxlength:"50","model-value":t.$store.state.examples.textarea1,"onUpdate:modelValue":e[12]||(e[12]=l=>t.updateState("textarea1",l))},{help:n(()=>e[44]||(e[44]=[a(" Textarea mit maximaler Länge von 50 Zeichen. ")])),_:1},8,["model-value"])]),_:1}),o(i,{title:"Spezielle Elemente"},{default:n(()=>[o(v,{title:"1. Range",min:6,max:32,step:1,unit:"A","model-value":t.$store.state.examples.range1,"onUpdate:modelValue":e[13]||(e[13]=l=>t.updateState("range1",l))},{help:n(()=>e[47]||(e[47]=[a(" Range ohne spezielle Labels ")])),_:1},8,["model-value"]),o(v,{title:"2. Range",min:0,max:11,step:1,unit:"A",labels:[{label:"Aus",value:0},{label:6,value:6},{label:7,value:7},{label:8,value:8},{label:9,value:9},{label:10,value:10},{label:11,value:11},{label:12,value:12},{label:13,value:13},{label:14,value:14},{label:15,value:15},{label:16,value:16}],"model-value":t.$store.state.examples.range2,"onUpdate:modelValue":e[14]||(e[14]=l=>t.updateState("range2",l))},{help:n(()=>e[48]||(e[48]=[a(" Range mit speziellen Labels ")])),_:1},8,["model-value"]),e[53]||(e[53]=u("hr",null,null,-1)),o(f,{title:"1. Select","not-selected":"Bitte auswählen",options:[{value:1,text:"Eins"},{value:2,text:"Zwei"}],"model-value":t.$store.state.examples.select1,"onUpdate:modelValue":e[15]||(e[15]=l=>t.updateState("select1",l))},{help:n(()=>e[49]||(e[49]=[a(" Select mit einfachen Optionen ")])),_:1},8,["model-value"]),o(f,{title:"2. Select",groups:[{label:"Gruppe 1 (Number)",options:[{value:1,text:"Eins"},{value:2,text:"Zwei"}]},{label:"Gruppe 2 (String)",options:[{value:"three",text:"Drei"},{value:"four",text:"Vier"}]}],"not-selected":"Bitte auswählen","add-button":!0,"model-value":t.$store.state.examples.select2,"onUpdate:modelValue":e[16]||(e[16]=l=>t.updateState("select2",l)),"onInput:add":e[17]||(e[17]=l=>t.alert("add button pressed"))},{help:n(()=>e[50]||(e[50]=[a(" Select mit Gruppen und Add-Button. ")])),_:1},8,["model-value"]),e[54]||(e[54]=u("hr",null,null,-1)),o(b,{title:"1. Button-Group",buttons:[{buttonValue:1,text:"Eins"},{buttonValue:2,text:"Zwei"}],"model-value":t.$store.state.examples.buttonGroup1,"onUpdate:modelValue":e[18]||(e[18]=l=>t.updateState("buttonGroup1",l))},{help:n(()=>e[51]||(e[51]=[a(" Hilfetext ")])),_:1},8,["model-value"]),e[55]||(e[55]=u("hr",null,null,-1)),o($,{title:"1. Checkbox","model-value":t.$store.state.examples.checkbox1,"onUpdate:modelValue":e[19]||(e[19]=l=>t.updateState("checkbox1",l))},{help:n(()=>e[52]||(e[52]=[a(" Hilfetext ")])),_:1},8,["model-value"])]),_:1}),o(i,{title:"JSON Gruppe"},{default:n(()=>[o(p,{title:"JSON 1",subtype:"json","model-value":t.$store.state.examples.json1,"onUpdate:modelValue":e[20]||(e[20]=l=>t.updateState("json1",l))},{help:n(()=>e[56]||(e[56]=[a(" JSON Objekt ")])),_:1},8,["model-value"]),o(p,{title:"JSON 1 Text","model-value":t.$store.state.examples.json1.text,"onUpdate:modelValue":e[21]||(e[21]=l=>t.updateState("json1",l,"text"))},{help:n(()=>e[57]||(e[57]=[a(" Text im JSON Objekt ")])),_:1},8,["model-value"]),o(m,{title:"JSON 1 Zahl","model-value":t.$store.state.examples.json1.number,"onUpdate:modelValue":e[22]||(e[22]=l=>t.updateState("json1",l,"number"))},{help:n(()=>e[58]||(e[58]=[a(" Zahl im JSON Objekt ")])),_:1},8,["model-value"]),o(V,{title:"Tag Array","model-value":t.$store.state.examples.tags,"onUpdate:modelValue":e[23]||(e[23]=l=>t.updateState("tags",l))},{help:n(()=>[u("pre",null,g(JSON.stringify(t.$store.state.examples.tags,void 0,2)),1)]),_:1},8,["model-value"])]),_:1}),o(i,{title:"Meldungen"},{header:n(()=>e[59]||(e[59]=[u("span",{style:{"text-decoration":"underline","font-style":"italic"}},[a(" Styled "),u("span",{style:{"font-weight":"initial"}},"Header"),a(" Slot ")],-1)])),default:n(()=>[o(E,null,{help:n(()=>e[60]||(e[60]=[a(" Es sind auch Hilfetexte im #help Slot möglich. "),u("a",{href:"test"},"Link",-1)])),default:n(()=>[e[61]||(e[61]=a(" Das ist eine Überschrift "))]),_:1}),o(r,null,{default:n(()=>e[62]||(e[62]=[a(" Meldung ohne speziellen Subtype. ")])),_:1}),o(r,{subtype:"info"},{default:n(()=>e[63]||(e[63]=[a(" Infomeldung ")])),_:1}),o(r,{subtype:"warning"},{default:n(()=>e[64]||(e[64]=[a(" Warnmeldung ")])),_:1}),o(r,{subtype:"danger"},{default:n(()=>e[65]||(e[65]=[a(" Fehlermeldung ")])),_:1})]),_:1}),o(i,{title:"Listen"},{default:n(()=>[o(U,{modelValue:t.$store.state.examples.hierarchy1,"onUpdate:modelValue":e[24]||(e[24]=l=>t.$store.state.examples.hierarchy1=l),title:"Liste 1",labels:t.$store.state.examples.hierarchy1Labels},{help:n(()=>[u("pre",null,g(JSON.stringify(t.$store.state.examples.hierarchy1,void 0,2)),1)]),_:1},8,["modelValue","labels"])]),_:1}),o(y,{"form-name":"testingStoreForm",onSave:e[25]||(e[25]=l=>t.$emit("save")),onReset:e[26]||(e[26]=l=>t.$emit("reset")),onDefaults:e[27]||(e[27]=l=>t.$emit("defaults"))})])])}const K=O(N,[["render",L],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/TestingStore.vue"]]);export{K as default}; diff --git a/web/settings/assets/TimeChargeConfig-b8348c00.js b/web/settings/assets/TimeChargeConfig-b8348c00.js new file mode 100644 index 0000000000..f34b695d9a --- /dev/null +++ b/web/settings/assets/TimeChargeConfig-b8348c00.js @@ -0,0 +1 @@ +import{C as l}from"./index-beac009d.js";import{_ as b,u as o,k as i,l as a,x as _,G as s,E as r,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const f={name:"OpenwbTimeChargeConfigView",mixins:[l],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/chargemode_config/time_charging/phases_to_use"]}}},h={class:"timeChargeConfig"},c={name:"timeChargeConfigForm"},v={key:0},w={key:1};function C(t,e,$,B,k,V){const u=o("openwb-base-alert"),p=o("openwb-base-button-group-input"),g=o("openwb-base-card"),d=o("openwb-base-submit-buttons");return i(),a("div",h,[_("form",c,[s(g,{title:"Phasenumschaltung"},{default:r(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(i(),a("div",v,[s(u,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[m(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(i(),a("div",w,[s(p,{title:"Anzahl Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/time_charging/phases_to_use"],"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateState("openWB/general/chargemode_config/time_charging/phases_to_use",n))},{help:r(()=>e[5]||(e[5]=[m(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "Zeitladen" mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen 1- und 3-phasig (sog. 1p3p). ')])),_:1},8,["model-value"])]))]),_:1}),s(d,{"form-name":"timeChargeConfigForm",onSave:e[1]||(e[1]=n=>t.$emit("save")),onReset:e[2]||(e[2]=n=>t.$emit("reset")),onDefaults:e[3]||(e[3]=n=>t.$emit("defaults"))})])])}const q=b(f,[["render",C],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/TimeChargeConfig.vue"]]);export{q as default}; diff --git a/web/settings/assets/VehicleConfig-37a300a0.js b/web/settings/assets/VehicleConfig-37a300a0.js new file mode 100644 index 0000000000..5993894bdc --- /dev/null +++ b/web/settings/assets/VehicleConfig-37a300a0.js @@ -0,0 +1 @@ +import{l as $,d as H,a0 as j,A as J,a9 as G,aa as Q,z as X,P as Y,ac as K,R as ee,ab as te,ad as ne,F as ae,I as le}from"./vendor-fortawesome-3d19d475.js";import{_ as k,C as ie}from"./index-beac009d.js";import{_ as oe}from"./dynamic-import-helper-be004503.js";import{_ as q,u as V,k as d,l as g,z as p,E as l,y as i,F as C,G as a,x as h,a1 as re,a2 as de,N as P,B as m,M as E,D as F,q as x,A as N}from"./vendor-06e11d0e.js";const ue={props:{vehicleId:{required:!0,type:Number},vehicle:{required:!0,type:Object}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},se=q(ue,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/VehicleConfigMixin.vue"]]),me={name:"VehicleConfigFallback",mixins:[se]},ge={class:"vehicle-fallback"},he={key:1};function ce(t,e,b,B,f,s){const W=V("openwb-base-alert"),v=V("openwb-base-textarea");return d(),g("div",ge,[Object.keys(t.vehicle.configuration).length==0?(d(),p(W,{key:0,subtype:"info"},{default:l(()=>[i(' Der Fahrzeug-Typ "'+C(t.vehicle.type)+'" bietet keine Einstellungen. ',1)]),_:1})):(d(),g("div",he,[a(W,{subtype:"warning"},{default:l(()=>[i(' Es wurde keine Konfigurationsseite für den Fahrzeug-Typ "'+C(t.vehicle.type)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),a(v,{title:"Konfiguration",subtype:"json","model-value":t.vehicle.configuration,"onUpdate:modelValue":e[0]||(e[0]=T=>t.updateConfiguration(T,"configuration"))},{help:l(()=>e[1]||(e[1]=[i(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),a(W,{subtype:"info"},{default:l(()=>[h("pre",null,C(JSON.stringify(t.vehicle.configuration,void 0,2)),1)]),_:1})]))])}const pe=q(me,[["render",ce],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/OpenwbVehicleConfigFallback.vue"]]),be={name:"OpenwbVehicleProxy",props:{vehicleId:{type:Number,required:!0},vehicle:{type:Object,required:!0}},emits:["update:configuration"],computed:{myComponent(){return console.debug(`loading vehicle: ${this.vehicle.type}`),re({loader:()=>oe(Object.assign({"./bmw/vehicle.vue":()=>k(()=>import("./vehicle-ba4fa598.js"),["assets/vehicle-ba4fa598.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./bmwbc/vehicle.vue":()=>k(()=>import("./vehicle-57cd091a.js"),["assets/vehicle-57cd091a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./evcc/vehicle.vue":()=>k(()=>import("./vehicle-090faaf2.js"),["assets/vehicle-090faaf2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./evnotify/vehicle.vue":()=>k(()=>import("./vehicle-275590b2.js"),["assets/vehicle-275590b2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./http/vehicle.vue":()=>k(()=>import("./vehicle-c6776f5b.js"),["assets/vehicle-c6776f5b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kia/vehicle.vue":()=>k(()=>import("./vehicle-742a327c.js"),["assets/vehicle-742a327c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./manual/vehicle.vue":()=>k(()=>import("./vehicle-5b402ad7.js"),["assets/vehicle-5b402ad7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mercedeseq/vehicle.vue":()=>k(()=>import("./vehicle-2a15ca13.js"),["assets/vehicle-2a15ca13.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mqtt/vehicle.vue":()=>k(()=>import("./vehicle-9fb740cb.js"),["assets/vehicle-9fb740cb.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./ovms/vehicle.vue":()=>k(()=>import("./vehicle-b40ddfab.js"),["assets/vehicle-b40ddfab.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./psa/vehicle.vue":()=>k(()=>import("./vehicle-3d582767.js"),["assets/vehicle-3d582767.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./renault/vehicle.vue":()=>k(()=>import("./vehicle-32887c99.js"),["assets/vehicle-32887c99.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./skodaconnect/vehicle.vue":()=>k(()=>import("./vehicle-938e3571.js"),["assets/vehicle-938e3571.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smarteq/vehicle.vue":()=>k(()=>import("./vehicle-eff0eaa8.js"),["assets/vehicle-eff0eaa8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smarthello/vehicle.vue":()=>k(()=>import("./vehicle-0290d9e7.js"),["assets/vehicle-0290d9e7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tesla/vehicle.vue":()=>k(()=>import("./vehicle-4bbaa506.js"),["assets/vehicle-4bbaa506.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-axios-22b906fb.js","assets/index-beac009d.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tronity/vehicle.vue":()=>k(()=>import("./vehicle-1a3ca9c8.js"),["assets/vehicle-1a3ca9c8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vwid/vehicle.vue":()=>k(()=>import("./vehicle-88398611.js"),["assets/vehicle-88398611.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-beac009d.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.vehicle.type}/vehicle.vue`),errorComponent:pe})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function ve(t,e,b,B,f,s){const W=V("openwb-base-heading");return d(),g(P,null,[a(W,null,{default:l(()=>[i(' Einstellungen für SoC-Modul "'+C(b.vehicle.name)+'" ',1)]),_:1}),(d(),p(de(s.myComponent),{"vehicle-id":b.vehicleId,vehicle:b.vehicle,"onUpdate:configuration":e[0]||(e[0]=v=>s.updateConfiguration(v))},null,40,["vehicle-id","vehicle"]))],64)}const fe=q(be,[["render",ve],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/OpenwbVehicleProxy.vue"]]);$.add(H,j,J,G,Q,X,Y,K,ee,te,ne);const _e={name:"OpenwbVehicleConfigView",components:{FontAwesomeIcon:ae,FontAwesomeLayers:le,OpenwbVehicleProxy:fe},mixins:[ie],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/optional/dc_charging","openWB/optional/et/provider","openWB/optional/rfid/active","openWB/vehicle/template/ev_template/+","openWB/vehicle/template/charge_template/+","openWB/vehicle/template/charge_template/+/chargemode/scheduled_charging/plans/+","openWB/vehicle/template/charge_template/+/time_charging/plans/+","openWB/vehicle/+/name","openWB/vehicle/+/info","openWB/vehicle/+/charge_template","openWB/vehicle/+/ev_template","openWB/vehicle/+/tag_id","openWB/system/configurable/soc_modules","openWB/vehicle/+/soc_module/general_config","openWB/vehicle/+/soc_module/config"],showVehicleModal:!1,modalVehicleIndex:void 0,showEvTemplateModal:!1,modalEvTemplateIndex:void 0,showChargeTemplateModal:!1,modalChargeTemplateIndex:void 0,showChargeTemplateSchedulePlanModal:!1,modalChargeTemplateSchedulePlanIndex:void 0,showChargeTemplateTimeChargingPlanModal:!1,modalChargeTemplateTimeChargingPlanIndex:void 0}},computed:{dcChargingEnabled:{get(){return this.$store.state.mqtt["openWB/optional/dc_charging"]}},vehicleIndexes:{get(){return this.getWildcardIndexList("openWB/vehicle/+/name")}},evTemplates:{get(){return this.getWildcardTopics("openWB/vehicle/template/ev_template/+")}},evTemplateList:{get(){let t=[];return Object.keys(this.evTemplates).forEach(e=>{let b=parseInt(e.match(/([0-9]+)$/g)[0]),B=this.$store.state.mqtt["openWB/vehicle/template/ev_template/"+b].name;t.push({value:b,text:B})}),t}},chargeTemplates:{get(){return this.getWildcardTopics("openWB/vehicle/template/charge_template/+")}},chargeTemplateList:{get(){let t=[];return Object.keys(this.chargeTemplates).forEach(e=>{let b=parseInt(e.match(/([0-9]+)$/g)[0]),B=this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+b].name;t.push({value:b,text:B})}),t}},socModuleList:{get(){return this.$store.state.mqtt["openWB/system/configurable/soc_modules"]}}},methods:{getChargeTemplateScheduledChargingPlans(t){let e=t.match(/([^/]+)$/)[0];return this.getWildcardTopics("openWB/vehicle/template/charge_template/"+e+"/chargemode/scheduled_charging/plans/+")},getChargeTemplateTimeChargingPlans(t){let e=t.match(/([^/]+)$/)[0];return this.getWildcardTopics("openWB/vehicle/template/charge_template/"+e+"/time_charging/plans/+")},addVehicle(t){t.stopPropagation(),console.info("requesting new vehicle..."),this.$emit("sendCommand",{command:"addVehicle",data:{}})},removeVehicleModal(t,e){e.stopPropagation(),this.modalVehicleIndex=t,this.showVehicleModal=!0},removeVehicle(t,e){this.showVehicleModal=!1,e=="confirm"&&(console.info("request removal of vehicle '"+t+"'"),this.$emit("sendCommand",{command:"removeVehicle",data:{id:t}}))},getVehicleName(t){return this.$store.state.mqtt["openWB/vehicle/"+t+"/name"]?this.$store.state.mqtt["openWB/vehicle/"+t+"/name"]:"Fahrzeug "+t},getSocDefaultConfiguration(t){const e=this.socModuleList.find(b=>b.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...JSON.parse(JSON.stringify(e.defaults))}:(console.warn("no default configuration found for soc type!",t),{})},updateSelectedSocModule(t,e){this.updateState("openWB/vehicle/"+t+"/soc_module/config",e,"type"),this.updateState("openWB/vehicle/"+t+"/soc_module/config",this.getSocDefaultConfiguration(e))},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)},addEvTemplate(t){t.stopPropagation(),console.info("requesting new ev template..."),this.$emit("sendCommand",{command:"addEvTemplate",data:{}})},removeEvTemplateModal(t,e){e.stopPropagation(),this.modalEvTemplateIndex=parseInt(t.match(/([^/]+)$/)[0]),this.showEvTemplateModal=!0},removeEvTemplate(t,e){this.showEvTemplateModal=!1,e=="confirm"&&(console.info("request removal of ev template '"+t+"'"),this.$emit("sendCommand",{command:"removeEvTemplate",data:{id:t}}))},getEvTemplateName(t){return this.$store.state.mqtt["openWB/vehicle/template/ev_template/"+t]?this.$store.state.mqtt["openWB/vehicle/template/ev_template/"+t].name:"Fahrzeug-Profil "+t},addChargeTemplate(t){t.stopPropagation(),console.info("requesting new charge template..."),this.$emit("sendCommand",{command:"addChargeTemplate",data:{}})},getChargeTemplateIndex(t){return parseInt(t.match(/([^/]+)$/)[0])},removeChargeTemplateModal(t,e){e.stopPropagation(),this.modalChargeTemplateIndex=this.getChargeTemplateIndex(t),this.showChargeTemplateModal=!0},removeChargeTemplate(t,e){this.showChargeTemplateModal=!1,e=="confirm"&&(console.info("request removal of charge template '"+t+"'"),this.$emit("sendCommand",{command:"removeChargeTemplate",data:{id:t}}))},getChargeTemplateName(t){return this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t]?this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t].name:"Lade-Profil "+t},getChargeTemplateSchedulePlanName(t,e){return this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t+"/chargemode/scheduled_charging/plans/"+e]?this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t+"/chargemode/scheduled_charging/plans/"+e].name:"Zielladen Zeitplan "+t+"/"+e},addChargeTemplateSchedulePlan(t,e){e.stopPropagation(),console.info("requesting new charge template schedule plan...");let b=parseInt(t.match(/([^/]+)$/)[0]);this.$emit("sendCommand",{command:"addChargeTemplateSchedulePlan",data:{template:b}})},removeChargeTemplateSchedulePlanModal(t,e,b){b.stopPropagation(),this.modalChargeTemplateIndex=parseInt(t.match(/([^/]+)$/)[0]),this.modalChargeTemplateSchedulePlanIndex=parseInt(e.match(/([^/]+)$/)[0]),this.showChargeTemplateSchedulePlanModal=!0},removeChargeTemplateSchedulePlan(t,e,b){this.showChargeTemplateSchedulePlanModal=!1,b=="confirm"&&(console.info("request removal of charge template '"+t+"' schedule plan '"+e+"'"),this.$emit("sendCommand",{command:"removeChargeTemplateSchedulePlan",data:{template:t,plan:e}}))},getChargeTemplateTimeChargingPlanName(t,e){return this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t+"/time_charging/plans/"+e]?this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t+"/time_charging/plans/"+e].name:"Zeitladen Zeitplan "+t+"/"+e},addChargeTemplateTimeChargingPlan(t,e){e.stopPropagation(),console.info("requesting new charge template time charging plan...");let b=parseInt(t.match(/([^/]+)$/)[0]);this.$emit("sendCommand",{command:"addChargeTemplateTimeChargingPlan",data:{template:b}})},removeChargeTemplateTimeChargingPlanModal(t,e,b){b.stopPropagation(),this.modalChargeTemplateIndex=parseInt(t.match(/([^/]+)$/)[0]),this.modalChargeTemplateTimeChargingPlanIndex=parseInt(e.match(/([^/]+)$/)[0]),this.showChargeTemplateTimeChargingPlanModal=!0},removeChargeTemplateTimeChargingPlan(t,e,b){this.showChargeTemplateTimeChargingPlanModal=!1,b=="confirm"&&(console.info("request removal of charge template '"+t+"' time charging plan '"+e+"'"),this.$emit("sendCommand",{command:"removeChargeTemplateTimeChargingPlan",data:{template:t,plan:e}}))}}},we={class:"vehicleConfig"},ke={name:"vehicleConfigForm"},Ve={key:0},Ce={key:1},Se={key:2},ze=["innerHTML"],Ue={key:3},Te={key:0},We={key:1},Le={key:0},Pe={key:1},Ae={key:0},ye={key:0},Ee={key:3},Be={key:0},Fe={key:1},qe={key:0},Me={key:0},De={key:0},Ze=["onClick"],xe={key:0},Ne={key:1},Oe={key:2},Re={key:3},Ie={key:4},$e={key:5},He={key:4},je=["onClick"],Je={key:0},Ge={key:1},Qe={key:2},Xe={key:3},Ye={key:4},Ke={key:5};function et(t,e,b,B,f,s){const W=V("openwb-base-modal-dialog"),v=V("font-awesome-icon"),T=V("openwb-base-avatar"),y=V("openwb-base-alert"),z=V("openwb-base-text-input"),M=V("openwb-base-select-input"),O=V("openwb-base-array-input"),_=V("openwb-base-button-group-input"),L=V("openwb-base-heading"),w=V("openwb-base-number-input"),R=V("openwb-vehicle-proxy"),A=V("openwb-base-card"),Z=V("font-awesome-layers"),S=V("openwb-base-range-input"),I=V("openwb-base-submit-buttons");return d(),g(P,null,[a(W,{show:f.showVehicleModal,title:"Fahrzeug löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[0]||(e[0]=o=>s.removeVehicle(f.modalVehicleIndex,o))},{default:l(()=>[i(' Wollen Sie das Fahrzeug "'+C(s.getVehicleName(f.modalVehicleIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),a(W,{show:f.showEvTemplateModal,title:"Fahrzeug-Profil löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[1]||(e[1]=o=>s.removeEvTemplate(f.modalEvTemplateIndex,o))},{default:l(()=>[i(' Wollen Sie das Fahrzeug-Profil "'+C(s.getEvTemplateName(f.modalEvTemplateIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),a(W,{show:f.showChargeTemplateModal,title:"Lade-Profil löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[2]||(e[2]=o=>s.removeChargeTemplate(f.modalChargeTemplateIndex,o))},{default:l(()=>[i(' Wollen Sie das Lade-Profil "'+C(s.getChargeTemplateName(f.modalChargeTemplateIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),a(W,{show:f.showChargeTemplateSchedulePlanModal,title:"Zielladen Zeitplan löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[3]||(e[3]=o=>s.removeChargeTemplateSchedulePlan(f.modalChargeTemplateIndex,f.modalChargeTemplateSchedulePlanIndex,o))},{default:l(()=>[i(' Wollen Sie den Zielladen Zeitplan "'+C(s.getChargeTemplateSchedulePlanName(f.modalChargeTemplateIndex,f.modalChargeTemplateSchedulePlanIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),a(W,{show:f.showChargeTemplateTimeChargingPlanModal,title:"Zeitladen Zeitplan löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[4]||(e[4]=o=>s.removeChargeTemplateTimeChargingPlan(f.modalChargeTemplateIndex,f.modalChargeTemplateTimeChargingPlanIndex,o))},{default:l(()=>[i(' Wollen Sie den Zeitladen Zeitplan "'+C(s.getChargeTemplateTimeChargingPlanName(f.modalChargeTemplateIndex,f.modalChargeTemplateTimeChargingPlanIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),h("div",we,[h("form",ke,[a(A,{subtype:"info",collapsible:!0,collapsed:t.$route.params.section!="vehicle"},{header:l(()=>[a(v,{"fixed-width":"",icon:["fas","car"]}),e[8]||(e[8]=i(" Fahrzeuge "))]),actions:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(d(),p(T,{key:0,class:"bg-success clickable",onClick:s.addVehicle},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):m("",!0)]),default:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(d(),g("div",Ve,[a(y,{subtype:"info"},{default:l(()=>e[9]||(e[9]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(d(),g("div",Ce,[(d(!0),g(P,null,E(s.vehicleIndexes,o=>(d(),p(A,{key:o,title:s.getVehicleName(o),collapsible:!0,collapsed:!(t.$route.params.section=="vehicle"&&parseInt(t.$route.params.section_index)==o),subtype:"info"},F({default:l(()=>[a(z,{title:"Bezeichnung","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/name"],disabled:o===0,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/name",r)},F({_:2},[o===0?{name:"help",fn:l(()=>[e[10]||(e[10]=i(" Das Standard-Fahrzeug kann nicht umbenannt werden. "))]),key:"0"}:void 0]),1032,["model-value","disabled","onUpdate:modelValue"]),o!==0?(d(),p(z,{key:0,title:"Fahrzeughersteller ","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/info"].manufacturer,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/info",r,"manufacturer")},{help:l(()=>[...e[11]||(e[11]=[i(" Optional: zusätzliche Information für den Systembericht. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),o!==0?(d(),p(z,{key:1,title:"Fahrzeugmodell","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/info"].model,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/info",r,"model")},{help:l(()=>[...e[12]||(e[12]=[i(" Optional: zusätzliche Information für den Systembericht."),h("br",null,null,-1),i(" Nach Möglichkeit auch Angabe des Baujahres, da es durchaus beim Verhalten des Fahrzeugs Unterschiede geben kann. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(y,{subtype:"info"},{default:l(()=>[...e[13]||(e[13]=[i(" Ein anderes Fahrzeug-Profil wird erst NACH dem Abstecken übernommen, da es sonst durch die Änderung bestimmter Einstellungen im laufenden Ladevorgang zu Widersprüchen kommen kann. ")])]),_:1}),a(M,{title:"Fahrzeug-Profil",options:s.evTemplateList,"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/ev_template"],"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/ev_template",r)},null,8,["options","model-value","onUpdate:modelValue"]),a(M,{title:"Lade-Profil",options:s.chargeTemplateList,"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/charge_template"],"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/charge_template",r)},null,8,["options","model-value","onUpdate:modelValue"]),e[24]||(e[24]=h("hr",null,null,-1)),t.$store.state.mqtt["openWB/optional/rfid/active"]===!0&&!b.installAssistantActive?(d(),g("div",Se,[a(O,{title:"Zugeordnete ID-Tags","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/tag_id"],"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/tag_id",r)},null,8,["model-value","onUpdate:modelValue"]),a(y,{subtype:"info"},{default:l(()=>[e[14]||(e[14]=i(" Die hier eingetragenen ID-Tags dienen ausschließlich der Fahrzeugzuordnung.")),e[15]||(e[15]=h("br",null,null,-1)),h("span",{innerHTML:t.$store.state.text.rfidWiki},null,8,ze)]),_:1}),e[16]||(e[16]=h("hr",null,null,-1))])):m("",!0),a(M,{class:"mb-2",title:"SoC-Modul des Fahrzeugs",options:s.socModuleList,"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/config"].type,"onUpdate:modelValue":r=>s.updateSelectedSocModule(o,r)},{help:l(()=>[...e[17]||(e[17]=[i(" Mit einem SoC-Modul kann der Ladestand des Fahrzeugs ermittelt und geregelt werden. Z.B. lassen sich unabhängig vom Fahrzeug bestimmte SoC-Werte einstellen, um den Fahrzeugakku zu schonen. Aktuell werden die SoC-Werte mittels der App-Zugangsdaten aus dem Herstellerserver des Fahrzeuges ausgelesen. Zukünftig soll auch eine direkte SoC-Auslesung aus dem Fahrzeug möglich werden (openWB Pro)."),h("br",null,null,-1),i(" Die SoC-Abfrage erfolgt automatisch beim Anstecken des Fahrzeuges und zusätzlich über einstellbare Abfrageintervalle während des Ladens und Nichtladens. Die Abfrage kann auch manuell durch Klick auf den Reload-Pfeil auf der Hauptseite ausgelöst werden."),h("br",null,null,-1),i(" Wenn eine Abfrage fehlschlägt, wird noch drei weitere Male im Abstand von 5 Minuten versucht, den SoC abzufragen. Wenn dies nicht erfolgreich ist, wird der SoC auf 0% gesetzt um zu vermeiden, dass ein Auto beim SoC-basierten Laden nicht geladen wird. Die Abfrage erfolgt dann wieder in den oben genannten Intervallen."),h("br",null,null,-1),i(" Da aktuell die SoC-Abfragen über Onlineserver der Fahrzeughersteller laufen, ist infolge möglicher Umstellungen/Wartungen keine 100%-ig sichere SoC-Abfrage garantiert. Auch kann es zu SoC-Abweichungen infolge von zeitlicher Verzögerungen kommen. Hilfestellung erfolgt primär im openWB-Forum. ")])]),_:2},1032,["options","model-value","onUpdate:modelValue"]),t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/config"].type?(d(),g("div",Ue,[a(_,{title:"SoC direkt aus Fahrzeug auslesen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/general_config"].use_soc_from_cp,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/soc_module/general_config",r,"use_soc_from_cp")},{help:l(()=>[...e[18]||(e[18]=[i(" Wenn Ladepunkt und Fahrzeug das direkte Auslesen des SoCs über das Ladekabel unterstützen, wird der SoC nach dem Anstecken aus dem Fahrzeug ausgelesen und während der Ladung berechnet. Das direkte Auslesen des SoC aus dem Fahrzeug ist aktuell nur mit einer openWB Pro möglich. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(L,null,{help:l(()=>[...e[19]||(e[19]=[i(" Einige Hersteller begrenzen die möglichen Abfragen. Sobald ein gewisses Limit in einem Zeitraum überschritten wird, werden weitere Anfragen blockiert. Die Zeitintervalle sollten daher nicht zu klein gewählt werden. ")])]),default:l(()=>[e[20]||(e[20]=i(" Aktualisierung der Fahrzeugdaten "))]),_:1}),a(w,{title:"Während der Ladung",unit:"Min.",min:1,required:"","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/general_config"].request_interval_charging/60,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/soc_module/general_config",r*60,"request_interval_charging")},{help:l(()=>[...e[21]||(e[21]=[i(" Der Ladestand des Fahrzeugs (SoC) wird bei einem laufenden Ladevorgang in dem hier eingestellten Intervall in Minuten abgefragt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(w,{title:"Ohne laufende Ladung",unit:"Min.",min:1,required:"","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/general_config"].request_interval_not_charging/60,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/soc_module/general_config",r*60,"request_interval_not_charging")},{help:l(()=>[...e[22]||(e[22]=[i(" Der Ladestand des Fahrzeugs (SoC) wird in dem hier eingestellten Intervall in Minuten abgefragt, falls kein Ladevorgang aktiv ist. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Nur aktualisieren wenn angesteckt",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/general_config"].request_only_plugged,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/soc_module/general_config",r,"request_only_plugged")},{help:l(()=>[...e[23]||(e[23]=[i(' Wird hier "Ja" ausgewählt, dann wird der Ladestand des Fahrzeugs nur abgefragt, wenn das Ladekabel angesteckt ist. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(R,{"vehicle-id":o,vehicle:t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/config"],"onUpdate:configuration":r=>s.updateConfiguration("openWB/vehicle/"+o+"/soc_module/config",r)},null,8,["vehicle-id","vehicle","onUpdate:configuration"])])):m("",!0)]),_:2},[o!==0?{name:"actions",fn:l(r=>[r.collapsed?m("",!0):(d(),p(T,{key:0,class:"bg-danger clickable",onClick:n=>s.removeVehicleModal(o,n)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),key:"0"}:void 0]),1032,["title","collapsed"]))),128))]))]),_:1},8,["collapsed"]),e[81]||(e[81]=h("hr",{class:"border-secondary"},null,-1)),a(L,null,{default:l(()=>e[25]||(e[25]=[i("Profile")])),_:1}),a(A,{collapsible:!0,collapsed:!0},{header:l(()=>[a(Z,{"fixed-width":"",class:"fa-lg"},{default:l(()=>[a(v,{"fixed-width":"",icon:["far","file"]}),a(v,{"fixed-width":"",icon:["fas","car"],transform:"shrink-8"})]),_:1}),e[26]||(e[26]=i(" Fahrzeug-Profile "))]),actions:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(d(),p(T,{key:0,class:"bg-success clickable",onClick:s.addEvTemplate},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):m("",!0)]),default:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(d(),g("div",Te,[a(y,{subtype:"info"},{default:l(()=>e[27]||(e[27]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(d(),g("div",We,[a(y,{subtype:"info"},{default:l(()=>e[28]||(e[28]=[i(" Ein anderes Fahrzeug-Profil wird erst "),h("span",{class:"text-uppercase font-weight-bold"}," nach dem Abstecken ",-1),i(" übernommen, da es sonst durch die Änderung bestimmter Einstellungen im laufenden Ladevorgang zu Widersprüchen kommen kann. ")])),_:1}),(d(!0),g(P,null,E(s.evTemplates,(o,r)=>(d(),p(A,{key:r,title:o.name?o.name:r,collapsible:!0,collapsed:!0},F({default:l(()=>[a(z,{title:"Bezeichnung","model-value":o.name,disabled:r.endsWith("/0"),"onUpdate:modelValue":n=>t.updateState(r,n,"name")},F({_:2},[r.endsWith("/0")?{name:"help",fn:l(()=>[e[29]||(e[29]=i(" Das Standard-Profil kann nicht umbenannt werden. "))]),key:"0"}:void 0]),1032,["model-value","disabled","onUpdate:modelValue"]),a(L,null,{default:l(()=>[...e[30]||(e[30]=[i(" Angaben zur Batterie ")])]),_:1}),a(w,{title:"Kapazität der Batterie",unit:"kWh",min:1,step:1,required:"","model-value":o.battery_capacity/1e3,"onUpdate:modelValue":n=>t.updateState(r,n*1e3,"battery_capacity")},{help:l(()=>[...e[31]||(e[31]=[i(" Angabe der Netto-Kapazität der Fahrzeugbatterie. Dient zur Berechnung des manuellen SoC und der geladenen Reichweite. Die Netto-Kapazität unterscheidet sich meist von den Angaben der Fahrzeughersteller. So besitzt ein Tesla Model S 90 z. B. nur ca. 83kWh und nicht die durch die Typenbezeichnung suggerierten 90kWh. Andere Hersteller begrenzen die nutzbare Kapazität absichtlich, um eine höhere Lebensdauer der Akkus zu erreichen. Gängig sind eine Drosselung auf 90% der angegebenen Brutto-Kapazität. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),b.installAssistantActive?m("",!0):(d(),g("div",Le,[a(w,{title:"Wirkungsgrad der Ladeelektronik",unit:"%",min:1,max:100,required:"","model-value":o.efficiency,"onUpdate:modelValue":n=>t.updateState(r,n,"efficiency")},{help:l(()=>[...e[32]||(e[32]=[i(" Durch Verluste in der Ladeelektronik (z. B. Umwandlung Wechselspannung in Gleichspannung) gelangt nicht die komplette Energie, welche durch den Zähler in der Wallbox gemessen wird, in den Akku des Fahrzeugs. Der anzugebende Wert liegt bei gängigen Fahrzeugen im Bereich 90-95%. Eine Ausnahme stellt der Zoe dar, dessen Chameleon-Lader je nach Modellversion und freigegebener Leistung der Wallbox teilweise nur auf ca. 50% kommt."),h("br",null,null,-1),i(" Liegen die Angaben der Wallbox und des Fahrzeugs nach der Ladung mehrere Prozent auseinander, dann kann mit dieser Einstellung eine Feinabstimmung erfolgen: "),h("br",null,null,-1),i(" SoC an der Wallbox zu hoch: Wirkungsgrad um ein paar Prozent reduzieren"),h("br",null,null,-1),i(" SoC an der Wallbox zu gering: Wirkungsgrad um ein paar Prozent erhöhen"),h("br",null,null,-1)])]),_:2},1032,["model-value","onUpdate:modelValue"])])),a(w,{title:"Durchschnittsverbrauch",unit:"kWh / 100km",min:1,step:.1,required:"","model-value":o.average_consump/1e3,"onUpdate:modelValue":n=>t.updateState(r,n*1e3,"average_consump")},null,8,["model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),g("div",Pe,[a(L,null,{default:l(()=>[...e[33]||(e[33]=[i(" Angaben zur Ladeleistung (DC) ")])]),_:1}),a(w,{title:"Mindestleistung",min:5,unit:"kW","model-value":t.ac_current2dc_power(o.dc_min_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"dc_min_current")},null,8,["model-value","onUpdate:modelValue"]),a(w,{title:"Maximalleistung",unit:"kW","model-value":t.ac_current2dc_power(o.dc_max_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"dc_max_current")},null,8,["model-value","onUpdate:modelValue"])])):m("",!0),a(L,null,{default:l(()=>[e[34]||(e[34]=i(" Angaben zum Ladestrom ")),s.dcChargingEnabled===!0?(d(),g("span",Ae," (AC) ")):m("",!0)]),_:1}),a(S,{title:"Mindeststrom",min:6,max:16,step:1,unit:"A","model-value":o.min_current,"onUpdate:modelValue":n=>t.updateState(r,n,"min_current")},null,8,["model-value","onUpdate:modelValue"]),a(S,{title:"Maximalstrom bei einer Phase",min:6,max:32,step:1,unit:"A","model-value":o.max_current_single_phase,"onUpdate:modelValue":n=>t.updateState(r,n,"max_current_single_phase")},null,8,["model-value","onUpdate:modelValue"]),a(S,{title:"Maximalstrom mehrere Phasen",min:6,max:32,step:1,unit:"A","model-value":o.max_current_multi_phases,"onUpdate:modelValue":n=>t.updateState(r,n,"max_current_multi_phases")},null,8,["model-value","onUpdate:modelValue"]),a(w,{title:"Erlaubte Stromabweichung",step:.1,unit:"A","model-value":o.nominal_difference,"onUpdate:modelValue":n=>t.updateState(r,n,"nominal_difference")},{help:l(()=>[...e[35]||(e[35]=[i(" In manchen Lademodi, z.B. bei der automatischen Phasenumschaltung, wird geprüft, ob das Fahrzeug mit der vorgegebenen Stromstärke lädt. Manche Fahrzeuge laden nicht exakt mit der vorgegebenen Stromstärke. Die erlaubte Abweichung kann hier eingestellt werden. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(L,null,{default:l(()=>[e[36]||(e[36]=i(" Angaben zur Handhabung von Phasen ")),s.dcChargingEnabled===!0?(d(),g("span",ye," (AC) ")):m("",!0)]),_:1}),a(_,{title:"Unterstützte Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:2,text:"2"},{buttonValue:3,text:"3"}],"model-value":o.max_phases,"onUpdate:modelValue":n=>t.updateState(r,n,"max_phases")},{help:l(()=>[...e[37]||(e[37]=[i(" Anzahl der Phasen, die der Fahrzeuglader (s.g. OBC - OnboardCharger) bereitstellt. Plugin-Hybride haben meist nur eine Phase, reine E-Autos meist 2 bis 3 Phasen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"CP-Unterbrechung",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":o.control_pilot_interruption,"onUpdate:modelValue":n=>t.updateState(r,n,"control_pilot_interruption")},{help:l(()=>[...e[38]||(e[38]=[i(' Erläuterung siehe "Konfiguration - Ladepunkte" -> Hardware-Optionen ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),o.control_pilot_interruption?(d(),p(w,{key:2,title:"Dauer der CP-Unterbrechung",min:4,step:1,unit:"s","model-value":o.control_pilot_interruption_duration,"onUpdate:modelValue":n=>t.updateState(r,n,"control_pilot_interruption_duration")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Phasenumschaltung blockieren",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":o.prevent_phase_switch,"onUpdate:modelValue":n=>t.updateState(r,n,"prevent_phase_switch")},{help:l(()=>[...e[39]||(e[39]=[i(' Erläuterung zu 1p3p siehe "Ladeeinstellungen" ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Ladung aktiv halten",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":o.prevent_charge_stop,"onUpdate:modelValue":n=>t.updateState(r,n,"prevent_charge_stop")},{help:l(()=>[...e[40]||(e[40]=[i(" Der Ladevorgang wird in den Lademodi PV- und Zielladen nach Ladebeginn nicht unterbrochen, selbst wenn nicht mehr genug Überschuss vorhanden ist. Diese Einstellung sollte bei Fahrzeugen aktiviert werden, die nach einer Ladungsunterbrechung keine Ladung mehr starten. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(w,{title:"Pause bei Phasenumschaltung",unit:"s",min:2,step:1,required:"","model-value":o.phase_switch_pause,"onUpdate:modelValue":n=>t.updateState(r,n,"phase_switch_pause")},null,8,["model-value","onUpdate:modelValue"]),b.installAssistantActive?m("",!0):(d(),g("div",Ee,[a(w,{title:"Mindestzeit zwischen Umschaltungen",unit:"s",min:2,step:1,required:"","model-value":o.keep_charge_active_duration,"onUpdate:modelValue":n=>t.updateState(r,n,"keep_charge_active_duration")},{help:l(()=>[...e[41]||(e[41]=[i(" Manche Fahrzeuge benötigen nach der Umschaltung einige Zeit, bis sie mit der vorgegebenen Phasenzahl laden. In dieser Zeit wird keine neue Phasenumschaltung angestoßen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])]))]),_:2},[r.endsWith("/0")?void 0:{name:"actions",fn:l(n=>[t.$store.state.mqtt["openWB/general/extern"]===!1&&!n.collapsed?(d(),p(T,{key:0,class:"bg-danger clickable",onClick:c=>s.removeEvTemplateModal(r,c)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])):m("",!0)]),key:"0"}]),1032,["title"]))),128))]))]),_:1}),a(A,{collapsible:!0,collapsed:t.$route.params.section!="charge_template"},{header:l(()=>[a(Z,{"fixed-width":"",class:"fa-lg"},{default:l(()=>[a(v,{"fixed-width":"",icon:["far","file"]}),a(v,{"fixed-width":"",icon:["fas","plug"],transform:"shrink-8"})]),_:1}),e[42]||(e[42]=i(" Lade-Profile "))]),actions:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(d(),p(T,{key:0,class:"bg-success clickable",onClick:s.addChargeTemplate},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):m("",!0)]),default:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(d(),g("div",Be,[a(y,{subtype:"info"},{default:l(()=>e[43]||(e[43]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(d(),g("div",Fe,[(d(!0),g(P,null,E(s.chargeTemplates,(o,r)=>(d(),p(A,{key:r,title:o.name?o.name:r,collapsible:!0,collapsed:!(t.$route.params.section=="charge_template"&&parseInt(t.$route.params.section_index)==s.getChargeTemplateIndex(r))},F({default:l(()=>[a(z,{title:"Bezeichnung","model-value":o.name,disabled:r.endsWith("/0"),"onUpdate:modelValue":n=>t.updateState(r,n,"name")},F({_:2},[r.endsWith("/0")?{name:"help",fn:l(()=>[e[44]||(e[44]=i(" Das Standard-Profil kann nicht umbenannt werden. "))]),key:"0"}:void 0]),1032,["model-value","disabled","onUpdate:modelValue"]),a(L,null,{default:l(()=>[...e[45]||(e[45]=[i(" Allgemeine Optionen ")])]),_:1}),a(_,{title:"Aktiver Lademodus",buttons:[{buttonValue:"instant_charging",text:"Sofortladen",class:"btn-outline-danger"},{buttonValue:"pv_charging",text:"PV",class:"btn-outline-success"},{buttonValue:"scheduled_charging",text:"Zielladen",class:"btn-outline-primary"},{buttonValue:"standby",text:"Standby",class:"btn-outline-secondary"},{buttonValue:"stop",text:"Stop",class:"btn-outline-dark"}],"model-value":o.chargemode.selected,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.selected")},{help:l(()=>[...e[46]||(e[46]=[i(" Diese Einstellung entspricht dem gewählten Lademodus auf der Hauptseite und ist aktiv, wenn ein zugehöriges Fahrzeug angesteckt ist."),h("br",null,null,-1),i(" Die zur Verfügung stehende Leistung wird intern anhand folgender Prioritätenliste auf die Fahrzeuge bzw. Ladepunkte verteilt:"),h("br",null,null,-1),h("ol",null,[h("li",null,"Zielladen (Sofortladen) mit Priorität"),h("li",null,"Zielladen (Sofortladen)"),h("li",null,"Zeitladen mit Priorität"),h("li",null,"Zeitladen"),h("li",null,"Sofortladen mit Priorität"),h("li",null,"Sofortladen"),h("li",null,"PV (Min-Anteil) mit Priorität"),h("li",null,"PV (Min-Anteil)"),h("li",null,"Zielladen (PV) mit Priorität"),h("li",null,"Zielladen (PV)"),h("li",null,"PV (PV-Anteil) mit Priorität"),h("li",null,"PV (PV-Anteil)")],-1)])]),_:2},1032,["model-value","onUpdate:modelValue"]),b.installAssistantActive?m("",!0):(d(),g("div",qe,[a(_,{title:"Priorität",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.prio,"onUpdate:modelValue":n=>t.updateState(r,n,"prio")},{help:l(()=>[...e[47]||(e[47]=[i(" Die Ladefreigabe mit dem jeweils eingestellten Mindeststrom erfolgt für alle Fahrzeuge, soweit die verfügbare Leistung ausreicht. Fahrzeuge mit Priorität werden bevorzugt mit mehr Leistung geladen, falls verfügbar. Erst wenn alle priorisierten Fahrzeuge die maximale Ladeleistung bekommen und noch zusätzlicher Überschuss vorhanden ist, wird auch für Fahrzeuge ohne Priorität mehr Leistung freigegeben. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Zeitladen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.time_charging.active,"onUpdate:modelValue":n=>t.updateState(r,n,"time_charging.active")},{help:l(()=>[...e[48]||(e[48]=[i(' Der Lademodus Zeitladen kann parallel zu einem der anderen Lademodi aktiviert werden. Die Auswahl des Lademodus, der in der Regelung genutzt wird, erfolgt anhand der Übersicht in der Hilfe bei "Aktiver Lademodus". Wenn kein Zeitplan aktiv ist oder das Limit des Zeitplans erreicht wurde, wird der Lademodus verwendet, der bei "Aktiver Lademodus" ausgewählt ist. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Standard nach Abstecken",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.load_default,"onUpdate:modelValue":n=>t.updateState(r,n,"load_default")},{help:l(()=>[...e[49]||(e[49]=[i(" Falls diese Option aktiviert ist, wird der betroffene Ladepunkt nach dem Abstecken auf das Standard Fahrzeug zurückgesetzt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Strompreisbasiert Laden",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.et.active,"onUpdate:modelValue":n=>t.updateState(r,n,"et.active")},null,8,["model-value","onUpdate:modelValue"]),o.et.active==!0?(d(),g("div",Me,[!t.$store.state.mqtt["openWB/optional/et/provider"]||!t.$store.state.mqtt["openWB/optional/et/provider"].type?(d(),g("div",De,[a(y,{subtype:"danger"},{default:l(()=>[...e[50]||(e[50]=[i(" Bitte in den übergreifenden Ladeeinstellungen einen Strompreis-Anbieter konfigurieren. ")])]),_:1})])):m("",!0),a(w,{title:"Preisgrenze für Zeit- & Sofortladen",min:"-80",max:"80",step:"0.01",precision:2,unit:"ct/kWh","model-value":o.et.max_price*1e5,"onUpdate:modelValue":n=>t.updateState(r,parseFloat((n/1e5).toFixed(7)),"et.max_price")},{help:l(()=>[...e[51]||(e[51]=[i(" Für Zielladen werden die günstigsten Stunden ermittelt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])])):m("",!0),e[52]||(e[52]=h("hr",null,null,-1))])),a(L,null,{default:l(()=>[...e[53]||(e[53]=[i("Sofortladen")])]),_:1}),a(S,{title:"Soll-Ladestrom"+(s.dcChargingEnabled?" (AC)":""),min:6,max:32,step:1,unit:"A","model-value":o.chargemode.instant_charging.current,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.instant_charging.current")},null,8,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:1,title:"Soll-Ladeleistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(o.chargemode.instant_charging.dc_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"chargemode.instant_charging.dc_current")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Begrenzung",buttons:[{buttonValue:"none",text:"Aus"},{buttonValue:"soc",text:"Fahrzeug-SoC"},{buttonValue:"amount",text:"Energie"}],"model-value":o.chargemode.instant_charging.limit.selected,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.instant_charging.limit.selected")},{help:l(()=>[...e[54]||(e[54]=[i(" Sofortladen kann ohne Fahrzeug-SoC-Begrenzung (Aus), mit Begrenzung des Fahrzeug-SoC (SoC) bei konfiguriertem SoC-Auslesemodul oder mittels Vorgabe eine gewünschten Energiemenge in kWh (Energie) genutzt werden. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(S,{title:"SoC-Limit für das Fahrzeug",min:5,max:100,step:5,unit:"%","model-value":o.chargemode.instant_charging.limit.soc,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.instant_charging.limit.soc")},{help:l(()=>[...e[55]||(e[55]=[i(' Um die Fahrzeug-SoC-Begrenzung nutzen zu können, muss ein SoC-Modul für das jeweilige Fahrzeug eingerichtet sein (siehe "Konfiguration" -> "Fahrzeuge" -> "SoC-Modul"). ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(w,{title:"Energie-Limit",unit:"kWh",min:1,step:1,"model-value":o.chargemode.instant_charging.limit.amount/1e3,"onUpdate:modelValue":n=>t.updateState(r,n*1e3,"chargemode.instant_charging.limit.amount")},{help:l(()=>[...e[56]||(e[56]=[i(" Die geladene Energiemenge wird beim Wechsel des Lademodus oder nach dem Anstecken, wenn Sofortladen schon ausgewählt ist, neu gezählt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),e[79]||(e[79]=h("hr",null,null,-1)),a(L,null,{default:l(()=>[...e[57]||(e[57]=[i("PV-Laden")])]),_:1}),a(S,{title:"Minimaler Dauerstrom"+(s.dcChargingEnabled?" (AC)":""),min:0,max:11,step:1,unit:"A",labels:[{label:"Aus",value:0},{label:6,value:6},{label:7,value:7},{label:8,value:8},{label:9,value:9},{label:10,value:10},{label:11,value:11},{label:12,value:12},{label:13,value:13},{label:14,value:14},{label:15,value:15},{label:16,value:16}],"model-value":o.chargemode.pv_charging.min_current,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.min_current")},{help:l(()=>[...e[58]||(e[58]=[i(' Hier kann eine Stromstärke eingestellt werden, mit dem unabhängig vom vorhandenen Überschuss durchgeladen wird. Hierdurch wird z.B. an Tagen mit häufigem Sonne/Wolken-Wechsel oder mit nur wenig PV-Ertrag ein Laden ohne Unterbrechung ermöglicht. Folglich kann auch Netzbezug für das Fahrzeugladen entstehen, weshalb der niedrigste Stromwert empfohlen wird. Diese Einstellung entspricht weitestgehend dem Lademodus "Min+PV" der Version 1.x. ')])]),_:2},1032,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:2,title:"Minimale Dauerleistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(o.chargemode.pv_charging.dc_min_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"chargemode.pv_charging.dc_min_current")},{help:l(()=>[...e[59]||(e[59]=[i(" Hier kann eine Leistung eingestellt werden, mit dem unabhängig vom vorhandenen Überschuss durchgeladen wird. Hierdurch wird z.B. an Tagen mit häufigem Sonne/Wolken-Wechsel oder mit nur wenig PV-Ertrag ein Laden ohne Unterbrechung ermöglicht. Folglich kann auch Netzbezug für das Fahrzeugladen entstehen, weshalb der niedrigste Leistungswert empfohlen wird. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(S,{title:"SoC-Limit für das Fahrzeug",min:0,max:20,step:1,unit:"%",labels:[{label:5,value:5},{label:10,value:10},{label:15,value:15},{label:20,value:20},{label:25,value:25},{label:30,value:30},{label:35,value:35},{label:40,value:40},{label:45,value:45},{label:50,value:50},{label:55,value:55},{label:60,value:60},{label:65,value:65},{label:70,value:70},{label:75,value:75},{label:80,value:80},{label:85,value:85},{label:90,value:90},{label:95,value:95},{label:100,value:100},{label:"Aus",value:101}],"model-value":o.chargemode.pv_charging.max_soc,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.max_soc")},{help:l(()=>[...e[60]||(e[60]=[i(' Bei der Einstellung "100%" wird die Ladung sofort mit Erreichen der 100% beendet. Dadurch erfolgt KEIN Balancing der Batteriezellen. Ist dies gewünscht (sollte ab und an durchgeführt werden), muss hier "Aus" gewählt werden (Schieberegler ganz nach rechts stellen), um die Ladung MIT Balancing bis zur Beendigung durch das Fahrzeug weiterlaufen zu lassen.'),h("br",null,null,-1),i(' Um die Fahrzeug-SoC-Begrenzung nutzen zu können, muss ein SoC-Modul für das jeweilige Fahrzeug eingerichtet sein (siehe "Konfiguration" -> "Fahrzeuge" -> "SoC-Modul"). ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(S,{title:"Mindest-SoC für das Fahrzeug",min:0,max:19,step:1,unit:"%",labels:[{label:"Aus",value:0},{label:5,value:5},{label:10,value:10},{label:15,value:15},{label:20,value:20},{label:25,value:25},{label:30,value:30},{label:35,value:35},{label:40,value:40},{label:45,value:45},{label:50,value:50},{label:55,value:55},{label:60,value:60},{label:65,value:65},{label:70,value:70},{label:75,value:75},{label:80,value:80},{label:85,value:85},{label:90,value:90},{label:95,value:95}],"model-value":o.chargemode.pv_charging.min_soc,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.min_soc")},{help:l(()=>[...e[61]||(e[61]=[i(' Liegt der Fahrzeug-Ladestand (SoC) unter dem hier eingestellten Wert, dann wird bis zum Erreichen dieses Wertes mit dem eingestellten "Mindest-SoC-Strom" geladen. Dies dient der Sicherstellung eines "Mindest-SoC" - z.B. für eine immer abzudeckende Fahrzeugreichweite - auch wenn kein oder zu wenig Überschuss verfügbar ist (=> Laden mit anteilig Netzstrom). Nach dem Erreichen des "Mindest-SoC" wird bei verfügbarem Überschuss geladen.'),h("br",null,null,-1),i(' Um die Fahrzeug-SoC-Begrenzung nutzen zu können, muss ein SoC-Modul für das jeweilige Fahrzeug eingerichtet sein (siehe "Konfiguration" -> "Fahrzeuge" -> "SoC-Modul"). ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(S,{title:"Mindest-SoC-Strom"+(s.dcChargingEnabled?" (AC)":""),min:6,max:32,step:1,unit:"A","model-value":o.chargemode.pv_charging.min_soc_current,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.min_soc_current")},{help:l(()=>[...e[62]||(e[62]=[i(' Wird der oben eingestellte "Mindest-SoC" des Fahrzeuges unterschritten, dann wird unabhängig vom Überschuss ein Ladevorgang mit dem hier festgelegten "Mindest-SoC-Strom" initiiert (ggf. mit anteilig Netzbezug). ')])]),_:2},1032,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:3,title:"Mindest-SoC-Leistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(o.chargemode.pv_charging.dc_min_soc_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"chargemode.pv_charging.dc_min_soc_current")},{help:l(()=>[...e[63]||(e[63]=[i(' Wird der oben eingestellte "Mindest-SoC" des Fahrzeuges unterschritten, dann wird unabhängig vom Überschuss ein Ladevorgang mit der hier festgelegten "Mindest-SoC-Leistung" initiiert (ggf. mit anteilig Netzbezug). ')])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Einspeisegrenze beachten",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.chargemode.pv_charging.feed_in_limit,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.feed_in_limit")},{help:l(()=>[...e[64]||(e[64]=[i(' Erläuterung siehe "Ladeeinstellungen" -> "PV-Laden" -> "Regelparameter" -> "Regelpunkt Einspeisegrenze" ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),e[80]||(e[80]=h("hr",null,null,-1)),a(L,null,{actions:l(()=>[a(T,{class:"bg-success clickable",onClick:n=>s.addChargeTemplateSchedulePlan(r,n)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:2},1032,["onClick"])]),help:l(()=>[...e[65]||(e[65]=[i(' Im Lademodus "Zielladen" wird der Ladestrom so angepasst, dass das Fahrzeug zum angegebenen Zeitpunkt den eingestellten SoC bzw. die einzuladende Energiemenge erreicht. Anhand des vorgegebenen Ladestroms wird der Zeitpunkt berechnet, an dem die Ladung spätestens starten muss.'),h("br",null,null,-1),i(' Ist der berechnete Zeitpunkt des Ladestarts noch nicht erreicht, wird mit Überschuss geladen. Auch nach Erreichen des Ziel-SoCs wird mit Überschuss geladen, solange bis das "SoC-Limit für das Fahrzeug" erreicht wird.'),h("br",null,null,-1),i(" Kann der Ziel-SoC bzw. die Energiemenge NICHT erreicht werden, z.B. weil das Auto zu spät angesteckt wurde oder das Lastmanagement eingegriffen hat, wird bis 20 Minuten nach dem angegebenen Termin mit der Maximalstromstärke geladen. Danach wird der Termin verworfen und mit Überschuss geladen. ")])]),default:l(()=>[e[66]||(e[66]=i(" Zielladen "))]),_:2},1024),(d(!0),g(P,null,E(s.getChargeTemplateScheduledChargingPlans(r),(n,c)=>(d(),p(A,{key:c,title:n.name,collapsible:!0,collapsed:!0},{actions:l(u=>[u.collapsed==!0?(d(),g("span",{key:0,class:x(["subheader pill clickable",n.active?"bg-success":"bg-danger"]),onClick:N(U=>t.updateState(c,!n.active,"active"),["stop"])},[n.limit.selected=="soc"?(d(),g("span",xe,[a(v,{"fixed-width":"",icon:["fas","car-battery"]}),i(" "+C(n.limit.soc_scheduled)+"% ",1)])):m("",!0),n.limit.selected=="amount"?(d(),g("span",Ne,[a(v,{"fixed-width":"",icon:["fas","bolt"]}),i(" "+C(n.limit.amount/1e3)+"kWh ",1)])):m("",!0),a(v,{"fixed-width":"",icon:["fas","clock"]}),i(" "+C(n.time)+" ",1),n.frequency.selected=="once"?(d(),g("span",Oe,[a(v,{"fixed-width":"",icon:["fas","calendar-day"]}),i(" "+C(t.formatDate(n.frequency.once)),1)])):m("",!0),n.frequency.selected=="daily"?(d(),g("span",Re,[a(v,{"fixed-width":"",icon:["fas","calendar-week"]})])):m("",!0),n.frequency.selected=="weekly"?(d(),g("span",Ie,[a(v,{"fixed-width":"",icon:["fas","calendar-alt"]})])):m("",!0)],10,Ze)):m("",!0),u.collapsed==!1?(d(),p(T,{key:1,class:"bg-danger clickable",onClick:U=>s.removeChargeTemplateSchedulePlanModal(r,c,U)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])):m("",!0)]),default:l(()=>[a(z,{title:"Bezeichnung","model-value":n.name,"onUpdate:modelValue":u=>t.updateState(c,u,"name")},null,8,["model-value","onUpdate:modelValue"]),a(_,{title:"Zeitpunkt aktiv",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.active,"onUpdate:modelValue":u=>t.updateState(c,u,"active")},null,8,["model-value","onUpdate:modelValue"]),a(z,{title:"Ziel-Uhrzeit",subtype:"time","model-value":n.time,"onUpdate:modelValue":u=>t.updateState(c,u,"time")},{help:l(()=>[...e[67]||(e[67]=[i(" Hier ist die gewünschte Uhrzeit einzustellen, zu welcher das Fahrzeug den gewünschten SoC bzw. die zu ladende Energiemenge BEREITS ERREICHT haben soll. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(S,{title:"Ladestrom"+(s.dcChargingEnabled?" (AC)":""),min:6,max:32,step:1,unit:"A","model-value":n.current,"onUpdate:modelValue":u=>t.updateState(c,u,"current")},{help:l(()=>[...e[68]||(e[68]=[i(" Mit dieser Stromstärke wird der Zeitpunkt berechnet, wann die Ladung mit Netzbezug gestartet werden muss. Wird der Ziel-SoC nicht zum angegebenen Termin erreicht, weil z.B. das Auto erst später angesteckt wurde, wird auch mit einer höheren Stromstärke geladen. Um etwas Puffer zu haben, empfiehlt es sich, etwas weniger als die Maximalstromstärke des Fahrzeugs zu wählen. ")])]),_:2},1032,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:0,title:"Ladeleistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(n.dc_current),"onUpdate:modelValue":u=>t.updateState(c,t.dc_power2ac_current(u),"dc_current")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Ziel",buttons:[{buttonValue:"soc",text:"Fahrzeug-SoC"},{buttonValue:"amount",text:"Energie"}],"model-value":n.limit.selected,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.selected")},{help:l(()=>[...e[69]||(e[69]=[i(" Bestimmt die Art der Grenze für den Ladevorgang. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),n.limit.selected=="soc"?(d(),p(S,{key:1,title:"Fahrzeug-SoC zum Zielzeitpunkt",min:5,max:100,step:5,unit:"%","model-value":n.limit.soc_scheduled,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.soc_scheduled")},{help:l(()=>[...e[70]||(e[70]=[i(" SoC, der zum angegebenen Zeitpunkt erreicht werden soll (Ziel-SoC). ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),n.limit.selected=="soc"?(d(),p(S,{key:2,title:"Fahrzeug-SoC mit Überschuss",min:5,max:100,step:5,unit:"%","model-value":n.limit.soc_limit,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.soc_limit")},{help:l(()=>[...e[71]||(e[71]=[i(" Nach Erreichen des Ziel-SoCs wird mit Überschuss weiter geladen, bis das SoC-Limit erreicht wird. Sobald das SoC-Limit erreicht wurde, findet keine Ladung mehr mit Überschuss statt! ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),n.limit.selected=="amount"?(d(),p(w,{key:3,title:"Ziel-Energie",unit:"kWh",min:1,step:.5,"model-value":n.limit.amount/1e3,"onUpdate:modelValue":u=>t.updateState(c,u*1e3,"limit.amount")},{help:l(()=>[...e[72]||(e[72]=[i(" Die geladene Energiemenge wird beim Wechsel des Lademodus, Wechsel des Plans oder nach dem Anstecken, wenn Zielladen schon ausgewählt ist, neu gezählt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Wiederholungen",buttons:[{buttonValue:"once",text:"Einmalig",class:"btn-outline-info"},{buttonValue:"daily",text:"Täglich",class:"btn-outline-info"},{buttonValue:"weekly",text:"Wöchentlich",class:"btn-outline-info"}],"model-value":n.frequency.selected,"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.selected")},null,8,["model-value","onUpdate:modelValue"]),n.frequency.selected=="once"?(d(),p(z,{key:4,title:"Datum",subtype:"date","model-value":n.frequency.once,"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.once")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),n.frequency.selected=="weekly"?(d(),g("div",$e,[(d(!0),g(P,null,E(t.weekdays,(u,U)=>(d(),p(_,{key:U,title:u,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":n.frequency.weekly[U],"onUpdate:modelValue":D=>t.updateState(c,D,"frequency.weekly."+U)},null,8,["title","model-value","onUpdate:modelValue"]))),128))])):m("",!0)]),_:2},1032,["title"]))),128)),b.installAssistantActive?m("",!0):(d(),g("div",He,[e[75]||(e[75]=h("hr",null,null,-1)),a(L,null,{actions:l(()=>[a(T,{class:"bg-success clickable",onClick:n=>s.addChargeTemplateTimeChargingPlan(r,n)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:2},1032,["onClick"])]),help:l(()=>[...e[73]||(e[73]=[i(" Mit einem Zeitplan kann ein klar abgegrenzter Zeitbereich zum Fahrzeugladen definiert werden. Dies wird häufig genutzt, um einem Fahrzeug kurz vor der Abfahrt Strom anzubieten, damit dessen Vorklimatisierung nicht aus dem Fahrzeugakku, sondern aus der openWB bezogen wird (Enteisung, Vorwärmung, Abkühlung). Nicht von der Vorklimatisierung benötigter Strom erhöht dabei den Fahrzeug-SoC. Um das Stromnetz am Morgen nicht unnötig zu strapazieren, sollte eine moderate Stromvorgabe und ein beschränkter Zeitbereich vorgegeben werden (z.B. max. 10A; 30min - in Übereinstimmung mit den Fahrzeug-App-Vorklimatisierungsvorgaben). ")])]),default:l(()=>[e[74]||(e[74]=i(" Laden nach Zeitplan "))]),_:2},1024)])),(d(!0),g(P,null,E(s.getChargeTemplateTimeChargingPlans(r),(n,c)=>(d(),p(A,{key:c,title:n.name,collapsible:!0,collapsed:!0},{actions:l(u=>[u.collapsed==!0?(d(),g("span",{key:0,class:x(["subheader pill clickable",n.active?"bg-success":"bg-danger"]),onClick:N(U=>t.updateState(c,!n.active,"active"),["stop"])},[n.limit.selected=="soc"?(d(),g("span",Je,[a(v,{"fixed-width":"",icon:["fas","car-battery"]}),i(" "+C(n.limit.soc)+"% ",1)])):m("",!0),n.limit.selected=="amount"?(d(),g("span",Ge,[a(v,{"fixed-width":"",icon:["fas","bolt"]}),i(" "+C(n.limit.amount/1e3)+"kWh ",1)])):m("",!0),a(v,{"fixed-width":"",icon:["fas","clock"]}),i(" "+C(n.time[0])+" - "+C(n.time[1])+" ",1),n.frequency.selected=="once"?(d(),g("span",Qe,[a(v,{"fixed-width":"",icon:["fas","calendar-day"]}),i(" "+C(t.formatDate(n.frequency.once[0])==t.formatDate(n.frequency.once[1])?t.formatDate(n.frequency.once[0]):t.formatDate(n.frequency.once[0])+" - "+t.formatDate(n.frequency.once[1])),1)])):m("",!0),n.frequency.selected=="daily"?(d(),g("span",Xe,[a(v,{"fixed-width":"",icon:["fas","calendar-week"]})])):m("",!0),n.frequency.selected=="weekly"?(d(),g("span",Ye,[a(v,{"fixed-width":"",icon:["fas","calendar-alt"]})])):m("",!0)],10,je)):m("",!0),u.collapsed==!1?(d(),p(T,{key:1,class:"bg-danger clickable",onClick:U=>s.removeChargeTemplateTimeChargingPlanModal(r,c,U)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])):m("",!0)]),default:l(()=>[a(z,{title:"Bezeichnung","model-value":n.name,"onUpdate:modelValue":u=>t.updateState(c,u,"name")},null,8,["model-value","onUpdate:modelValue"]),a(_,{title:"Zeitplan aktiv",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.active,"onUpdate:modelValue":u=>t.updateState(c,u,"active")},null,8,["model-value","onUpdate:modelValue"]),a(S,{title:"Ladestrom"+(s.dcChargingEnabled?" (AC)":""),min:6,max:32,step:1,unit:"A","model-value":n.current,"onUpdate:modelValue":u=>t.updateState(c,u,"current")},null,8,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:0,title:"Ladeleistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(n.dc_current),"onUpdate:modelValue":u=>t.updateState(c,t.dc_power2ac_current(u),"dc_current")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Ziel",buttons:[{buttonValue:"none",text:"Aus"},{buttonValue:"soc",text:"Fahrzeug-SoC"},{buttonValue:"amount",text:"Energie"}],"model-value":n.limit.selected,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.selected")},{help:l(()=>[...e[76]||(e[76]=[i(" Bestimmt die Art der Grenze für den Ladevorgang. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),n.limit.selected=="soc"?(d(),p(S,{key:1,title:"Ziel-SoC für das Fahrzeug",min:5,max:100,step:5,unit:"%","model-value":n.limit.soc,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.soc")},{help:l(()=>[...e[77]||(e[77]=[i(" Ladestand des Akku (State of Charge, SoC), bis zu welchem maximal geladen werden soll. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),n.limit.selected=="amount"?(d(),p(w,{key:2,title:"Ziel-Energie",unit:"kWh",min:1,step:.5,"model-value":n.limit.amount/1e3,"onUpdate:modelValue":u=>t.updateState(c,u*1e3,"limit.amount")},{help:l(()=>[...e[78]||(e[78]=[i(" Maximal zu ladende Energie innerhalb des Zeitfensters. Eignet sich immer dann wenn kein SoC zur Verfügung steht. Die geladene Energiemenge wird beim Wechsel des Lademodus, Wechsel des Plans oder nach dem Anstecken, wenn Zeitladen schon aktiv ist, neu gezählt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(z,{title:"Zeitpunkt des Ladebeginns",subtype:"time","model-value":n.time[0],"onUpdate:modelValue":u=>t.updateState(c,u,"time.0")},null,8,["model-value","onUpdate:modelValue"]),a(z,{title:"Zeitpunkt des Ladeendes",subtype:"time","model-value":n.time[1],"onUpdate:modelValue":u=>t.updateState(c,u,"time.1")},null,8,["model-value","onUpdate:modelValue"]),a(_,{title:"Wiederholungen",buttons:[{buttonValue:"once",text:"Einmalig",class:"btn-outline-info"},{buttonValue:"daily",text:"Täglich",class:"btn-outline-info"},{buttonValue:"weekly",text:"Wöchentlich",class:"btn-outline-info"}],"model-value":n.frequency.selected,"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.selected")},null,8,["model-value","onUpdate:modelValue"]),n.frequency.selected=="once"?(d(),p(z,{key:3,title:"Gültig ab",subtype:"date","model-value":n.frequency.once[0],"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.once.0")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),n.frequency.selected=="once"?(d(),p(z,{key:4,title:"Gültig bis",subtype:"date",min:n.frequency.once[0],"model-value":n.frequency.once[1],"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.once.1")},null,8,["min","model-value","onUpdate:modelValue"])):m("",!0),n.frequency.selected=="weekly"?(d(),g("div",Ke,[(d(!0),g(P,null,E(t.weekdays,(u,U)=>(d(),p(_,{key:U,title:u,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":n.frequency.weekly[U],"onUpdate:modelValue":D=>t.updateState(c,D,"frequency.weekly."+U)},null,8,["title","model-value","onUpdate:modelValue"]))),128))])):m("",!0)]),_:2},1032,["title"]))),128))]),_:2},[r.endsWith("/0")?void 0:{name:"actions",fn:l(n=>[n.collapsed?m("",!0):(d(),p(T,{key:0,class:"bg-danger clickable",onClick:c=>s.removeChargeTemplateModal(r,c)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),key:"0"}]),1032,["title","collapsed"]))),128))]))]),_:1},8,["collapsed"]),a(I,{"form-name":"vehicleConfigForm",onSave:e[5]||(e[5]=o=>t.$emit("save")),onReset:e[6]||(e[6]=o=>t.$emit("reset")),onDefaults:e[7]||(e[7]=o=>t.$emit("defaults"))})])])],64)}const tt=q(_e,[["render",et],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/VehicleConfig.vue"]]),ot=Object.freeze(Object.defineProperty({__proto__:null,default:tt},Symbol.toStringTag,{value:"Module"}));export{se as V,tt as a,ot as b}; diff --git a/web/settings/assets/backup_cloud-16c908ba.js b/web/settings/assets/backup_cloud-16c908ba.js new file mode 100644 index 0000000000..41fe017f95 --- /dev/null +++ b/web/settings/assets/backup_cloud-16c908ba.js @@ -0,0 +1 @@ +import{B as r}from"./DataManagement-c0d34f05.js";import{_ as p,u,k as i,l,G as d,E as c,y as o,x as n}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"BackupCloudNfs",mixins:[r]},m={class:"backup-cloud-nfs"};function _(t,e,b,k,v,x){const a=u("openwb-base-text-input");return i(),l("div",m,[d(a,{title:"Pfad zum NFS Share",pattern:"^([^/: ]+):(\\/[^/: ]+)+$",required:"","model-value":t.backupCloud.configuration.nfs_share,"onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.nfs_share"))},{help:c(()=>e[1]||(e[1]=[o(" 1. IP basierter Pfad: 1.2.3.4:/pfad/zum/nfs-share"),n("br",null,null,-1),o(" 2. Host (FQDN) basierter Pfad: backupserver.domain.net:/pfad/zum/nfs-share"),n("br",null,null,-1),o(" Bitte entgegen der Syntax das Protokoll nicht davor schreiben. Falsch wäre, “nfs://” davor zu setzen. ")])),_:1},8,["model-value"])])}const V=p(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/nfs/backup_cloud.vue"]]);export{V as default}; diff --git a/web/settings/assets/backup_cloud-830d78ba.js b/web/settings/assets/backup_cloud-830d78ba.js new file mode 100644 index 0000000000..bc12332654 --- /dev/null +++ b/web/settings/assets/backup_cloud-830d78ba.js @@ -0,0 +1 @@ +import{B as r}from"./DataManagement-c0d34f05.js";import{_ as i,u as s,k as p,l as d,G as t,E as m,y as a,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"BackupCloudSamba",mixins:[r]},f={class:"backup-cloud-samba"};function g(o,e,v,C,k,c){const u=s("openwb-base-text-input");return p(),d("div",f,[t(u,{title:"Server",subtype:"host",required:"","model-value":o.backupCloud.configuration.smb_server,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.smb_server"))},null,8,["model-value"]),t(u,{title:"Freigabe",required:"","model-value":o.backupCloud.configuration.smb_share,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.smb_share"))},null,8,["model-value"]),t(u,{title:"Unterordner (optional)","model-value":o.backupCloud.configuration.smb_path,pattern:'(^\\/$)|(^([^\\\\:"\\|*?<>]+\\/)+$)',required:"","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.smb_path"))},{help:m(()=>e[5]||(e[5]=[a(" Jeder Unterordner muss mit / enden."),l("br",null,null,-1),a(' Die Zeichen \\:"|*?<> sind verboten!'),l("br",null,null,-1),a(" Beispiel 1: openwb/ "),l("br",null,null,-1),a(" Beispiel 2: openwb/lp2/ ")])),_:1},8,["model-value"]),t(u,{title:"Benutzer",subtype:"user","model-value":o.backupCloud.configuration.smb_user,"onUpdate:modelValue":e[3]||(e[3]=n=>o.updateConfiguration(n,"configuration.smb_user"))},null,8,["model-value"]),t(u,{title:"Kennwort",subtype:"password","model-value":o.backupCloud.configuration.smb_password,"onUpdate:modelValue":e[4]||(e[4]=n=>o.updateConfiguration(n,"configuration.smb_password"))},null,8,["model-value"])])}const E=i(b,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/samba/backup_cloud.vue"]]);export{E as default}; diff --git a/web/settings/assets/backup_cloud-b6077718.js b/web/settings/assets/backup_cloud-b6077718.js new file mode 100644 index 0000000000..ffbcfdec2b --- /dev/null +++ b/web/settings/assets/backup_cloud-b6077718.js @@ -0,0 +1 @@ +import{B as s}from"./DataManagement-c0d34f05.js";import{_ as a,u as r,k as i,l,G as u,E as d,y as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"BackupCloudNextCloud",mixins:[s]},c={class:"backup-cloud-next-cloud"};function f(o,e,b,k,C,g){const n=r("openwb-base-text-input");return i(),l("div",c,[u(n,{title:"Cloud-URL",subtype:"host",required:"","model-value":o.backupCloud.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},{help:d(()=>e[3]||(e[3]=[p(" Die Cloud-URL wird in der Form 'https://nextcloud-url' und Benutzername im Eingabefeld oder mit Zugangstoken erwartet. Die URL kann je nach NextCloud Installation so 'https://nextcloud-url/s/user_token' oder so 'https://nextcloud-url/index.php/s/user_token' aussehen. ")])),_:1},8,["model-value"]),u(n,{title:"Benutzername",subtype:"user","model-value":o.backupCloud.configuration.user,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),u(n,{title:"Passwort",subtype:"password","model-value":o.backupCloud.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const $=a(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/nextcloud/backup_cloud.vue"]]);export{$ as default}; diff --git a/web/settings/assets/backup_cloud-c3793477.js b/web/settings/assets/backup_cloud-c3793477.js new file mode 100644 index 0000000000..6a590cd708 --- /dev/null +++ b/web/settings/assets/backup_cloud-c3793477.js @@ -0,0 +1 @@ +import{B as c}from"./DataManagement-c0d34f05.js";import{_ as m,u as a,k as b,l as f,G as t,E as r,y as n,x as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"BackupCloudOneDrive",mixins:[c]},v={class:"backup-cloud-one-drive"};function k(o,e,h,w,B,C){const d=a("openwb-base-alert"),u=a("openwb-base-text-input"),p=a("openwb-base-heading"),l=a("openwb-base-button-input");return b(),f("div",v,[t(d,{subtype:"info"},{default:r(()=>e[3]||(e[3]=[n(" Zum Abruf der Zugangsberechtigung bitte die Konfiguration speichern, dann die Schritte 1-4 durchführen und danach die Konfiguration erneut speichern. "),i("br",null,null,-1),n(" Auth Code und URL werden nur einmal benötigt werden nach erfolgreicher Autorisierung wieder gelöscht. ")])),_:1}),t(u,{title:"Backupverzeichnis in OneDrive",subtype:"text",required:"",pattern:"^/(.*/)*","model-value":o.backupCloud.configuration.backuppath,"onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.backuppath"))},{help:r(()=>e[4]||(e[4]=[n(" In diesem Verzeichnis werden die Backupdateien erstellt. Bitte den Pfad mit / beenden. "),i("br",null,null,-1),n(" Beispiel: /openWB/Backup/ ")])),_:1},8,["model-value"]),t(u,{title:"Anmeldedaten auf openWB gespeichert",readonly:"","model-value":o.backupCloud.configuration.persistent_tokencache?"Ja":"Nein"},null,8,["model-value"]),t(p,null,{default:r(()=>e[5]||(e[5]=[n(" Zugang zu OneDrive für diese openWB autorisieren ")])),_:1}),t(l,{title:"1. Anmeldeanforderung erstellen","button-text":"Autorisierungs-Code anfordern",subtype:"success",onButtonClicked:e[1]||(e[1]=s=>o.sendSystemCommand("requestMSALAuthCode",{}))},{help:r(()=>e[6]||(e[6]=[n(" Es werden Zugangstokens für OneDrive angefordert. Diese werden nur lokal auf dieser openWB gespeichert. Genutzt wird Device Flow mit public application."),i("br",null,null,-1),n(" Weitere Infos:"),i("br",null,null,-1),i("a",{href:"https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-device-code",target:"_blank",rel:"noopener noreferrer"},"https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-device-code",-1),i("a",{href:"https://learn.microsoft.com/en-us/azure/active-directory/develop/msal-client-applications",target:"_blank",rel:"noopener noreferrer"},"https://learn.microsoft.com/en-us/azure/active-directory/develop/msal-client-applications",-1)])),_:1}),t(u,{title:"2. Diesen Code kopieren",subtype:"text",readonly:"","model-value":o.backupCloud.configuration.authcode},null,8,["model-value"]),t(u,{title:"3. Anmelde-URL aufrufen",subtype:"url",readonly:"","model-value":o.backupCloud.configuration.authurl},{help:r(()=>e[7]||(e[7]=[n(" Diese URL im Browser öffnen und den Code eingeben. Dies erzeugt die notwendigen Zugangsberechtigung für diese openWB. ")])),_:1},8,["model-value"]),t(l,{title:"4. Token abrufen und speichern","button-text":"Autorisierungs-Token abrufen",subtype:"success",onButtonClicked:e[2]||(e[2]=s=>o.sendSystemCommand("retrieveMSALTokens",{}))},{help:r(()=>e[8]||(e[8]=[n(" Zugangstoken wird abgerufen und gespeichert, damit das Backup durchgeführt werden kann. Zugangstoken werden nur lokal auf dieser openWB gespeichert. ")])),_:1})])}const L=m(g,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/onedrive/backup_cloud.vue"]]);export{L as default}; diff --git a/web/settings/assets/bat-13a196e8.js b/web/settings/assets/bat-13a196e8.js new file mode 100644 index 0000000000..1586c6098b --- /dev/null +++ b/web/settings/assets/bat-13a196e8.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as p,u as n,k as m,l,G as t,E as u,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolisBat",mixins:[r]},_={class:"device-solis-bat"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),l("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[d(" Einstellungen für Solis Batteriespeicher ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const M=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solis/solis/bat.vue"]]);export{M as default}; diff --git a/web/settings/assets/bat-1cdb6279.js b/web/settings/assets/bat-1cdb6279.js new file mode 100644 index 0000000000..133414e040 --- /dev/null +++ b/web/settings/assets/bat-1cdb6279.js @@ -0,0 +1 @@ +import{C as u}from"./HardwareInstallation-775406e1.js";import{_ as m,u as s,k as p,l as g,G as r,E as i,y as n,x as o}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const h={name:"DeviceHttpBat",mixins:[u]},b={class:"device-http-bat"};function f(t,e,v,w,c,k){const d=s("openwb-base-heading"),l=s("openwb-base-text-input");return p(),g("div",b,[r(d,null,{default:i(()=>e[4]||(e[4]=[n(" Einstellungen für Http Batteriespeicher ")])),_:1}),r(l,{title:"Pfad für Leistung",subtype:"text",required:"",pattern:"^/[-a-zA-Z0-9@:%_\\+.~#?&/=]*","model-value":t.component.configuration.power_path,"onUpdate:modelValue":e[0]||(e[0]=a=>t.updateConfiguration(a,"configuration.power_path"))},{help:i(()=>e[5]||(e[5]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),o("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. ")])),_:1},8,["model-value"]),r(l,{title:"Pfad für Ladestand",subtype:"text",required:"",pattern:"^/[-a-zA-Z0-9@:%_\\+.~#?&/=]*","model-value":t.component.configuration.soc_path,"onUpdate:modelValue":e[1]||(e[1]=a=>t.updateConfiguration(a,"configuration.soc_path"))},{help:i(()=>e[6]||(e[6]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),o("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen Ladestand (SoC) in Prozent darstellt. ")])),_:1},8,["model-value"]),r(l,{title:"Pfad für Zählerstand laden",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.imported_path,"onUpdate:modelValue":e[2]||(e[2]=a=>t.updateConfiguration(a,"configuration.imported_path"))},{help:i(()=>e[7]||(e[7]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),o("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt. ")])),_:1},8,["model-value"]),r(l,{title:"Pfad für Zählerstand entladen",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.exported_path,"onUpdate:modelValue":e[3]||(e[3]=a=>t.updateConfiguration(a,"configuration.exported_path"))},{help:i(()=>e[8]||(e[8]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),o("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt."),o("br",null,null,-1),n(" Wird dieses Feld leer gelassen, werden keine Phasenströme ermittelt und es kann kein Lastmanagement berechnet werden! ")])),_:1},8,["model-value"])])}const A=m(h,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/http/bat.vue"]]);export{A as default}; diff --git a/web/settings/assets/bat-223eeaaa.js b/web/settings/assets/bat-223eeaaa.js new file mode 100644 index 0000000000..9329da70e7 --- /dev/null +++ b/web/settings/assets/bat-223eeaaa.js @@ -0,0 +1 @@ +import{C as m}from"./HardwareInstallation-775406e1.js";import{_ as d,u as n,k as u,l,G as t,E as i,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSigenergyBat",mixins:[m]},b={class:"device-sigenergy-bat"};function _(o,e,c,f,v,y){const r=n("openwb-base-heading"),a=n("openwb-base-number-input");return u(),l("div",b,[t(r,null,{default:i(()=>e[1]||(e[1]=[s(" Einstellungen für Sigenergy Batteriespeicher ")])),_:1}),t(a,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=p=>o.updateConfiguration(p,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[s(" Die Standard-Modbus-ID von Sigenergy ist 247 ")])),_:1},8,["model-value"])])}const M=d(g,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sigenergy/sigenergy/bat.vue"]]);export{M as default}; diff --git a/web/settings/assets/bat-3f89602e.js b/web/settings/assets/bat-3f89602e.js new file mode 100644 index 0000000000..70edd733a1 --- /dev/null +++ b/web/settings/assets/bat-3f89602e.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as r,u as o,k as l,l as u,G as n,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbEvukitBat",mixins:[a]},_={class:"device-openwb-evukit-bat"};function v(t,e,b,f,w,g){const i=o("openwb-base-heading"),s=o("openwb-base-select-input");return l(),u("div",_,[n(i,null,{default:m(()=>e[1]||(e[1]=[c(" Einstellungen für openWB EVU-Kit Batteriespeicher ")])),_:1}),n(s,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"SDM120"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":t.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=p=>t.updateConfiguration(p,"configuration.version"))},null,8,["model-value"])])}const $=r(d,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_evu_kit/bat.vue"]]);export{$ as default}; diff --git a/web/settings/assets/bat-4fcc1b0f.js b/web/settings/assets/bat-4fcc1b0f.js new file mode 100644 index 0000000000..caf713a43a --- /dev/null +++ b/web/settings/assets/bat-4fcc1b0f.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceFroniusBat",mixins:[a]},_={class:"device-fronius-bat"};function f(o,e,b,v,g,w){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),u("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Fronius Batteriespeicher ")])),_:1}),t(r,{title:"Meter ID",required:"",min:"0",max:"65535","model-value":o.component.configuration.meter_id,"onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.meter_id"))},null,8,["model-value"])])}const F=p(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fronius/fronius/bat.vue"]]);export{F as default}; diff --git a/web/settings/assets/bat-548da92a.js b/web/settings/assets/bat-548da92a.js new file mode 100644 index 0000000000..ebd22203d7 --- /dev/null +++ b/web/settings/assets/bat-548da92a.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as p,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSunnyBoyBat",mixins:[r]},b={class:"device-sunnyboy-bat"};function c(o,e,f,v,y,g){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),u("div",b,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für SMA Sunny Boy/Tripower Batteriespeicher ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const V=p(_,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/bat.vue"]]);export{V as default}; diff --git a/web/settings/assets/bat-5d3c3021.js b/web/settings/assets/bat-5d3c3021.js new file mode 100644 index 0000000000..62f7447b4e --- /dev/null +++ b/web/settings/assets/bat-5d3c3021.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as t,k as u,l as d,G as n,E as m,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceStuderBat",mixins:[a]},_={class:"device-studer-bat"};function b(o,e,f,v,g,w){const i=t("openwb-base-heading"),s=t("openwb-base-number-input");return u(),d("div",_,[n(i,null,{default:m(()=>e[1]||(e[1]=[l(" Einstellungen für Studer Batteriespeicher ")])),_:1}),n(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const M=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/studer/studer/bat.vue"]]);export{M as default}; diff --git a/web/settings/assets/bat-80c102dd.js b/web/settings/assets/bat-80c102dd.js new file mode 100644 index 0000000000..8dba67365b --- /dev/null +++ b/web/settings/assets/bat-80c102dd.js @@ -0,0 +1 @@ +import{C as s}from"./HardwareInstallation-775406e1.js";import{_ as m,u as t,k as p,l as u,G as n,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceHuaweiSmartLoggerBat",mixins:[s]},c={class:"device-huawei-smart-logger-bat"};function b(o,e,g,f,w,v){const i=t("openwb-base-heading"),a=t("openwb-base-number-input");return p(),u("div",c,[n(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Huawei SmartLogger Batteriespeicher ")])),_:1}),n(a,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const H=m(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei_smartlogger/bat.vue"]]);export{H as default}; diff --git a/web/settings/assets/bat-870c9071.js b/web/settings/assets/bat-870c9071.js new file mode 100644 index 0000000000..65ef8bb620 --- /dev/null +++ b/web/settings/assets/bat-870c9071.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as p,u as o,k as m,l as u,G as t,E as l,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceFemsBat",mixins:[r]},f={class:"device-fems-bat"};function _(n,e,b,v,g,C){const i=o("openwb-base-heading"),s=o("openwb-base-number-input");return m(),u("div",f,[t(i,null,{default:l(()=>e[1]||(e[1]=[c(" Einstellungen für openEMS, Fenecon FEMS, CENTURIO 10, Kaco Hy-Control Batteriespeicher ")])),_:1}),t(s,{title:"Anzahl der verbauten Speicher",required:"",min:1,max:2,"model-value":n.component.configuration.num,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.num"))},null,8,["model-value"])])}const N=p(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fems/fems/bat.vue"]]);export{N as default}; diff --git a/web/settings/assets/bat-942f38fa.js b/web/settings/assets/bat-942f38fa.js new file mode 100644 index 0000000000..70b4a93ac9 --- /dev/null +++ b/web/settings/assets/bat-942f38fa.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as m,u as t,k as p,l,G as n,E as u,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolarmaxBat",mixins:[r]},b={class:"device-solarmax-bat"};function _(o,e,f,x,v,g){const a=t("openwb-base-alert"),s=t("openwb-base-number-input");return p(),l("div",b,[n(a,{subtype:"info"},{default:u(()=>e[1]||(e[1]=[d(" Solarmax MAX.STORAGE / MAX.STORAGE Ultimate Batteriespeicher sind Teil eines Hybridsystems. Daher muss auch eine Komponente Wechselrichter angelegt werden. ")])),_:1}),n(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=i=>o.updateConfiguration(i,"configuration.modbus_id"))},null,8,["model-value"])])}const T=m(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solarmax/solarmax/bat.vue"]]);export{T as default}; diff --git a/web/settings/assets/bat-95be4844.js b/web/settings/assets/bat-95be4844.js new file mode 100644 index 0000000000..785f33a434 --- /dev/null +++ b/web/settings/assets/bat-95be4844.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as n,k as m,l as u,G as t,E as d,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceVictronBat",mixins:[a]},_={class:"device-victron-bat"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),u("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[c(" Einstellungen für Victron Batteriespeicher ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const M=p(l,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/victron/victron/bat.vue"]]);export{M as default}; diff --git a/web/settings/assets/bat-97b3e513.js b/web/settings/assets/bat-97b3e513.js new file mode 100644 index 0000000000..379b3f76cf --- /dev/null +++ b/web/settings/assets/bat-97b3e513.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as p,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceFoxEssBat",mixins:[r]},c={class:"device-fox_ess-bat"};function b(o,e,f,x,v,g){const s=n("openwb-base-heading"),i=n("openwb-base-number-input");return m(),u("div",c,[t(s,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für FoxEss Batteriespeicher ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const F=p(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fox_ess/fox_ess/bat.vue"]]);export{F as default}; diff --git a/web/settings/assets/bat-a540cbe7.js b/web/settings/assets/bat-a540cbe7.js new file mode 100644 index 0000000000..a01c7c43b3 --- /dev/null +++ b/web/settings/assets/bat-a540cbe7.js @@ -0,0 +1 @@ +import{C as m}from"./HardwareInstallation-775406e1.js";import{_ as l,u as t,k as d,l as c,G as i,E as a,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceMTecBat",mixins:[m]},_={class:"device-mtec-bat"};function f(o,e,v,g,w,C){const p=t("openwb-base-heading"),r=t("openwb-base-select-input"),u=t("openwb-base-number-input");return d(),c("div",_,[i(p,null,{default:a(()=>e[2]||(e[2]=[s(" Einstellungen für M-Tec Batteriespeicher ")])),_:1}),i(r,{title:"Generation","not-selected":"Bitte auswählen",options:[{value:2,text:"Gen 2"},{value:3,text:"Gen 3"}],"model-value":o.component.configuration.generation,required:"","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.generation"))},null,8,["model-value"]),i(u,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},{help:a(()=>e[3]||(e[3]=[s(" Die Standard-Modbus-ID von M-Tec ist 247 ")])),_:1},8,["model-value"])])}const E=l(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/mtec/mtec/bat.vue"]]);export{E as default}; diff --git a/web/settings/assets/bat-ab9b0c54.js b/web/settings/assets/bat-ab9b0c54.js new file mode 100644 index 0000000000..db68658f0f --- /dev/null +++ b/web/settings/assets/bat-ab9b0c54.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as p,u as n,k as m,l as d,G as t,E as u,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceDeyeBat",mixins:[r]},_={class:"device-deye-bat"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),d("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[l(" Einstellungen für Deye Batteriespeicher ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const h=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/deye/deye/bat.vue"]]);export{h as default}; diff --git a/web/settings/assets/bat-c25e7ed7.js b/web/settings/assets/bat-c25e7ed7.js new file mode 100644 index 0000000000..5014a769ba --- /dev/null +++ b/web/settings/assets/bat-c25e7ed7.js @@ -0,0 +1 @@ +import{C as l}from"./HardwareInstallation-775406e1.js";import{_ as r,u as t,k as u,l as m,G as i,E as d,y as b}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceOpenwbFlexBat",mixins:[l]},f={class:"device-openwb-flex-bat"};function _(o,e,v,w,g,x){const a=t("openwb-base-heading"),p=t("openwb-base-select-input"),s=t("openwb-base-number-input");return u(),m("div",f,[i(a,null,{default:d(()=>e[2]||(e[2]=[b(" Einstellungen für openWB-Flex Batteriespeicher ")])),_:1}),i(p,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"SDM120"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":o.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.version"))},null,8,["model-value"]),i(s,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":o.component.configuration.id,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.id"))},null,8,["model-value"])])}const h=r(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/bat.vue"]]);export{h as default}; diff --git a/web/settings/assets/bat-cf1b9ed4.js b/web/settings/assets/bat-cf1b9ed4.js new file mode 100644 index 0000000000..818a300df9 --- /dev/null +++ b/web/settings/assets/bat-cf1b9ed4.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as p,u as o,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSunnyIslandBat",mixins:[r]},c={class:"device-sunnyisland-bat"};function b(n,e,f,v,g,w){const s=o("openwb-base-heading"),i=o("openwb-base-number-input");return m(),u("div",c,[t(s,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Sunny Island Batteriespeicher ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const h=p(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_island/bat.vue"]]);export{h as default}; diff --git a/web/settings/assets/bat-e4d22267.js b/web/settings/assets/bat-e4d22267.js new file mode 100644 index 0000000000..77c49c1e18 --- /dev/null +++ b/web/settings/assets/bat-e4d22267.js @@ -0,0 +1 @@ +import{C as d}from"./HardwareInstallation-775406e1.js";import{_ as u,u as l,k as p,l as m,G as o,E as a,y as r,x as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceJsonBat",mixins:[d]},b={class:"device-json-bat"};function w(t,e,v,j,q,_){const s=l("openwb-base-heading"),i=l("openwb-base-text-input");return p(),m("div",b,[o(s,null,{default:a(()=>e[4]||(e[4]=[r(" Einstellungen für JSON Batteriespeicher ")])),_:1}),o(i,{title:"Abfrage für Leistung",subtype:"text",required:"","model-value":t.component.configuration.jq_power,"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateConfiguration(n,"configuration.jq_power"))},{help:a(()=>e[5]||(e[5]=[r(' Zur Analyse der Werte aus dem json-Objekt wird jq benutzt. Ist die Json Antwort z.B. {"PowerInstalledPeak":4655, "PowerProduced":132, "PowerOut":897.08172362555717, "PowerSelfSupplied":234.9182763744428} So muss hier .PowerOut eingetragen werden. '),g("br",null,null,-1),r(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt (positiv Ladung, negativ Entladung) darstellt. ")])),_:1},8,["model-value"]),o(i,{title:"Abfrage für Ladestand",subtype:"text",required:"","model-value":t.component.configuration.jq_soc,"onUpdate:modelValue":e[1]||(e[1]=n=>t.updateConfiguration(n,"configuration.jq_soc"))},null,8,["model-value"]),o(i,{title:"Abfrage für Zählerstand Ladung",subtype:"text","model-value":t.component.configuration.jq_imported,"onUpdate:modelValue":e[2]||(e[2]=n=>t.updateConfiguration(n,"configuration.jq_imported"))},{help:a(()=>e[6]||(e[6]=[r(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"]),o(i,{title:"Abfrage für Zählerstand Entladung",subtype:"text","model-value":t.component.configuration.jq_exported,"onUpdate:modelValue":e[3]||(e[3]=n=>t.updateConfiguration(n,"configuration.jq_exported"))},{help:a(()=>e[7]||(e[7]=[r(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"])])}const E=u(f,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/json/bat.vue"]]);export{E as default}; diff --git a/web/settings/assets/bat-e7e1291b.js b/web/settings/assets/bat-e7e1291b.js new file mode 100644 index 0000000000..eb1bd3223e --- /dev/null +++ b/web/settings/assets/bat-e7e1291b.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as m,u as p,k as b,l as g,G as l,E as i,y as t,x as n,F as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceMqttBat",mixins:[a]},k={class:"device-mqtt-bat"};function B(o,e,z,x,w,W){const u=p("openwb-base-heading"),s=p("openwb-base-copy-to-clipboard"),d=p("openwb-base-alert");return b(),g("div",k,[l(u,null,{default:i(()=>e[0]||(e[0]=[t(" Einstellungen für MQTT Batteriespeicher ")])),_:1}),l(d,{subtype:"info"},{default:i(()=>[e[26]||(e[26]=t(" Die folgenden Topics sind für einen reibungslosen Betrieb unbedingt erforderlich: ")),n("ul",null,[n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/bat/"+r(o.component.id)+"/get/power ",1)]),_:1}),e[1]||(e[1]=n("br",null,null,-1)),e[2]||(e[2]=t(" Speicherleistung in Watt, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, positiv Ladung, negativ Entladung")),e[3]||(e[3]=n("br",null,null,-1)),e[4]||(e[4]=t(" Beispiel: ")),e[5]||(e[5]=n("span",{class:"text-info"},"-123",-1))]),n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/bat/"+r(o.component.id)+"/get/imported ",1)]),_:1}),e[6]||(e[6]=n("br",null,null,-1)),e[7]||(e[7]=t(" Geladene Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),e[8]||(e[8]=n("br",null,null,-1)),e[9]||(e[9]=t(" Beispiel: ")),e[10]||(e[10]=n("span",{class:"text-info"},"123.45",-1))]),n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/bat/"+r(o.component.id)+"/get/exported ",1)]),_:1}),e[11]||(e[11]=n("br",null,null,-1)),e[12]||(e[12]=t(" Entladene Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),e[13]||(e[13]=n("br",null,null,-1)),e[14]||(e[14]=t(" Beispiel: ")),e[15]||(e[15]=n("span",{class:"text-info"},"123.45",-1))]),n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/bat/"+r(o.component.id)+"/get/soc ",1)]),_:1}),e[16]||(e[16]=n("br",null,null,-1)),e[17]||(e[17]=t(" Ladestand des Speichers, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, gültige Werte 0 bis 100")),e[18]||(e[18]=n("br",null,null,-1)),e[19]||(e[19]=t(" Beispiel: ")),e[20]||(e[20]=n("span",{class:"text-info"},"95",-1))])]),e[27]||(e[27]=t(" Optional: Wenn der Speicher dies unterstützt, kann folgendes Topic abonniert werden, um die Entladeleistung im Speicher zu setzen. Der Modus, um die Speicher-Entladung ins Fahrzeug zu steuern, kann in den übergreifenden Ladeeinstellungen gesetzt werden. ")),n("ul",null,[n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/bat/"+r(o.component.id)+"/set/power_limit ",1)]),_:1}),e[21]||(e[21]=n("br",null,null,-1)),e[22]||(e[22]=t(" Entladeleistung in Watt (Float), die im Speicher gesetzt werden muss.")),e[23]||(e[23]=n("br",null,null,-1)),e[24]||(e[24]=t(" Beispiel: ")),e[25]||(e[25]=n("span",{class:"text-info"},"123.0",-1))])])]),_:1})])}const I=m(f,[["render",B],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/mqtt/bat.vue"]]);export{I as default}; diff --git a/web/settings/assets/bat-f25e046a.js b/web/settings/assets/bat-f25e046a.js new file mode 100644 index 0000000000..32495889b7 --- /dev/null +++ b/web/settings/assets/bat-f25e046a.js @@ -0,0 +1 @@ +import{C as s}from"./HardwareInstallation-775406e1.js";import{_ as p,u as n,k as d,l as m,G as t,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolaredgeBat",mixins:[s]},_={class:"device-solaredge-bat"};function b(o,e,f,g,v,w){const i=n("openwb-base-heading"),a=n("openwb-base-number-input");return d(),m("div",_,[t(i,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für SolarEdge Batteriespeicher ")])),_:1}),t(a,{title:"SolarEdge-Geräte-ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const D=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/bat.vue"]]);export{D as default}; diff --git a/web/settings/assets/bat-fa95bd0d.js b/web/settings/assets/bat-fa95bd0d.js new file mode 100644 index 0000000000..d8c49b88ff --- /dev/null +++ b/web/settings/assets/bat-fa95bd0d.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as r,u as o,k as l,l as m,G as n,E as u,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbBatkitBat",mixins:[p]},_={class:"device-openwb-batkit-bat"};function b(t,e,f,v,w,g){const i=o("openwb-base-heading"),s=o("openwb-base-select-input");return l(),m("div",_,[n(i,null,{default:u(()=>e[1]||(e[1]=[c(" Einstellungen für openWB EVU-Kit Batteriespeicher ")])),_:1}),n(s,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"SDM120"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":t.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=a=>t.updateConfiguration(a,"configuration.version"))},null,8,["model-value"])])}const $=r(d,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_bat_kit/bat.vue"]]);export{$ as default}; diff --git a/web/settings/assets/bat_smart_energy-24b782da.js b/web/settings/assets/bat_smart_energy-24b782da.js new file mode 100644 index 0000000000..5aad3e41ea --- /dev/null +++ b/web/settings/assets/bat_smart_energy-24b782da.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as m,u as o,k as p,l as u,G as t,E as d,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceSunnyBoyBatSmartEnergy",mixins:[a]},b={class:"device-sunnyboy-bat-smart-energy"};function c(n,e,f,y,g,v){const s=o("openwb-base-heading"),r=o("openwb-base-number-input");return p(),u("div",b,[t(s,null,{default:d(()=>e[1]||(e[1]=[_(" Einstellungen für SMA Sunny Boy Smart Energy Batteriespeicher ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.modbus_id"))},null,8,["model-value"])])}const V=m(l,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/bat_smart_energy.vue"]]);export{V as default}; diff --git a/web/settings/assets/chargePoint-05b4e7ae.js b/web/settings/assets/chargePoint-05b4e7ae.js new file mode 100644 index 0000000000..19c1934355 --- /dev/null +++ b/web/settings/assets/chargePoint-05b4e7ae.js @@ -0,0 +1 @@ +import{C as r}from"./ChargePointInstallation-a0c18822.js";import{_ as i,u as a,k as p,l as s,G as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"ChargePointOpenwbDcAdapter",mixins:[r]},m={class:"charge-point-openwb-dc-adapter"};function u(e,o,_,l,f,g){const t=a("openwb-base-text-input");return p(),s("div",m,[d(t,{title:"IP oder Hostname",subtype:"host",required:"","model-value":e.chargePoint.configuration.ip_address,"onUpdate:modelValue":o[0]||(o[0]=n=>e.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"])])}const B=i(c,[["render",u],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/openwb_dc_adapter/chargePoint.vue"]]);export{B as default}; diff --git a/web/settings/assets/chargePoint-1aa86906.js b/web/settings/assets/chargePoint-1aa86906.js new file mode 100644 index 0000000000..ddeae42754 --- /dev/null +++ b/web/settings/assets/chargePoint-1aa86906.js @@ -0,0 +1 @@ +import{C as d}from"./ChargePointInstallation-a0c18822.js";import{_ as g,u,k as a,l as f,G as e,E as i,y as t,x as l,F as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"ChargePointMqtt",mixins:[d]},b={class:"charge-point-mqtt"};function k(o,n,B,v,w,W){const p=u("openwb-base-alert"),s=u("openwb-base-copy-to-clipboard");return a(),f("div",b,[e(p,{subtype:"danger"},{default:i(()=>n[0]||(n[0]=[t(" Dieser Ladepunkt-Typ darf nur in Kombination mit dem Simulator zur Fehleranalyse genutzt werden. Eine andere Verwendung ist laut den Nutzungsbedingungen untersagt. ")])),_:1}),e(p,{subtype:"info"},{default:i(()=>[n[72]||(n[72]=t(" Das MQTT Modul stellt keine aktive Verbindung her, sondern erwartet, dass die Daten von speziellen Topics im Broker gelesen bzw. geschrieben werden.")),n[73]||(n[73]=l("br",null,null,-1)),n[74]||(n[74]=t(" Alle Daten werden als gültiges JSON gesendet und auch so erwartet! Zahlen mit Nachkommastellen (Float) verwenden einen Punkt als Dezimaltrenner (internationales Format). ")),l("ol",null,[l("li",null,[n[11]||(n[11]=t(" von openWB gesendete Topics ")),l("ul",null,[l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/chargepoint/"+r(o.chargePoint.id)+"/set/current ",1)]),_:1}),n[1]||(n[1]=l("br",null,null,-1)),n[2]||(n[2]=t(" Sollwert des Ladestroms, mit Nachkommastellen (Float), positiv (laden) oder negativ (entladen, falls vom Ladepunkt unterstützt).")),n[3]||(n[3]=l("br",null,null,-1)),n[4]||(n[4]=t(" Beispiel: ")),n[5]||(n[5]=l("span",{class:"text-info"},"12.34",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/chargepoint/"+r(o.chargePoint.id)+"/set/phases_to_use ",1)]),_:1}),n[6]||(n[6]=l("br",null,null,-1)),n[7]||(n[7]=t(" Sollwert für die Anzahl Phasen als Ganzzahl (Integer). Mögliche Werte: 1 oder 3")),n[8]||(n[8]=l("br",null,null,-1)),n[9]||(n[9]=t(" Beispiel: ")),n[10]||(n[10]=l("span",{class:"text-info"},"1",-1))])])]),l("li",null,[n[37]||(n[37]=t(" von openWB zwingend erwartete Topics ")),l("ul",null,[l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/currents ",1)]),_:1}),n[12]||(n[12]=l("br",null,null,-1)),n[13]||(n[13]=t(" Aktuelle Phasenströme des Ladepunktes, Array mit drei Zahlen (Float), positiv (laden) oder negativ (entladen, falls vom Ladepunkt unterstützt).")),n[14]||(n[14]=l("br",null,null,-1)),n[15]||(n[15]=t(" Beispiel: ")),n[16]||(n[16]=l("span",{class:"text-info"},"[6.78,6.89,6.94]",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/power ",1)]),_:1}),n[17]||(n[17]=l("br",null,null,-1)),n[18]||(n[18]=t(" Leistung in Watt, mit Nachkommastellen (Float), positiv (laden) oder negativ (entladen, falls vom Ladepunkt unterstützt).")),n[19]||(n[19]=l("br",null,null,-1)),n[20]||(n[20]=t(" Beispiel: ")),n[21]||(n[21]=l("span",{class:"text-info"},"123.45",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/plug_state ",1)]),_:1}),n[22]||(n[22]=l("br",null,null,-1)),n[23]||(n[23]=t(" Zeigt an, ob aktuell ein Fahrzeug angesteckt ist, Wahrheitswert (Bool).")),n[24]||(n[24]=l("br",null,null,-1)),n[25]||(n[25]=t(" Beispiel: ")),n[26]||(n[26]=l("span",{class:"text-info"},"true",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/charge_state ",1)]),_:1}),n[27]||(n[27]=l("br",null,null,-1)),n[28]||(n[28]=t(" Zeigt an, ob ein Ladevorgang aktiv ist, Wahrheitswert (Bool).")),n[29]||(n[29]=l("br",null,null,-1)),n[30]||(n[30]=t(" Beispiel: ")),n[31]||(n[31]=l("span",{class:"text-info"},"true",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/phases_in_use ",1)]),_:1}),n[32]||(n[32]=l("br",null,null,-1)),n[33]||(n[33]=t(" Anzahl der Phasen, mit denen geladen wird, Ganzzahl (Integer). Mögliche Werte: 0 bis 3")),n[34]||(n[34]=l("br",null,null,-1)),n[35]||(n[35]=t(" Beispiel: ")),n[36]||(n[36]=l("span",{class:"text-info"},"3",-1))])])]),l("li",null,[n[71]||(n[71]=t(" optionale Topics ")),l("ul",null,[l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/imported ",1)]),_:1}),n[38]||(n[38]=l("br",null,null,-1)),n[39]||(n[39]=t(" Geladene Energie in Wh, mit Nachkommastellen (Float), nur positiv")),n[40]||(n[40]=l("br",null,null,-1)),n[41]||(n[41]=t(" Wird dieses Topic nicht vom Ladepunkt gesendet, so wird intern ein Zählerstand anhand der Leistung simuliert.")),n[42]||(n[42]=l("br",null,null,-1)),n[43]||(n[43]=t(" Beispiel: ")),n[44]||(n[44]=l("span",{class:"text-info"},"123.45",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/exported ",1)]),_:1}),n[45]||(n[45]=l("br",null,null,-1)),n[46]||(n[46]=t(" Entladene Energie in Wh, mit Nachkommastellen (Float), nur positiv")),n[47]||(n[47]=l("br",null,null,-1)),n[48]||(n[48]=t(" Wird dieses Topic nicht vom Ladepunkt gesendet, so wird intern ein Zählerstand anhand der Leistung simuliert.")),n[49]||(n[49]=l("br",null,null,-1)),n[50]||(n[50]=t(" Beispiel: ")),n[51]||(n[51]=l("span",{class:"text-info"},"123.45",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/voltages ",1)]),_:1}),n[52]||(n[52]=l("br",null,null,-1)),n[53]||(n[53]=t(" Aktuelle Phasenspannungen des Ladepunktes, Array mit drei Zahlen (Float), nur positiv.")),n[54]||(n[54]=l("br",null,null,-1)),n[55]||(n[55]=t(" Die Spannungen werden nicht verarbeitet, sondern lediglich im Status angezeigt.")),n[56]||(n[56]=l("br",null,null,-1)),n[57]||(n[57]=t(" Beispiel: ")),n[58]||(n[58]=l("span",{class:"text-info"},"[230.12,231.08,232.54]",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/power_factors ",1)]),_:1}),n[59]||(n[59]=l("br",null,null,-1)),n[60]||(n[60]=t(" Aktuelle Leistungsfaktoren des Ladepunktes, Array mit drei Zahlen (Float), Wertebereich von -1 bis 1.")),n[61]||(n[61]=l("br",null,null,-1)),n[62]||(n[62]=t(" Die Leistungsfaktoren werden nicht verarbeitet, sondern lediglich im Status angezeigt.")),n[63]||(n[63]=l("br",null,null,-1)),n[64]||(n[64]=t(" Beispiel: ")),n[65]||(n[65]=l("span",{class:"text-info"},"[-0.87,0.96,1.0]",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/rfid_tag ",1)]),_:1}),n[66]||(n[66]=l("br",null,null,-1)),n[67]||(n[67]=t(" Eine Zeichenfolge, die einen eingelesenen Tag für openWB repräsentiert.")),n[68]||(n[68]=l("br",null,null,-1)),n[69]||(n[69]=t(" Beispiel: ")),n[70]||(n[70]=l("span",{class:"text-info"},'"123654"',-1))])])])])]),_:1})])}const Z=g(m,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/mqtt/chargePoint.vue"]]);export{Z as default}; diff --git a/web/settings/assets/chargePoint-49cec1b9.js b/web/settings/assets/chargePoint-49cec1b9.js new file mode 100644 index 0000000000..b1ba83d863 --- /dev/null +++ b/web/settings/assets/chargePoint-49cec1b9.js @@ -0,0 +1 @@ +import{C as p}from"./ChargePointInstallation-a0c18822.js";import{_ as s,u as t,k as u,l as m,G as i,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"ChargePointSatellite",mixins:[p]},c={class:"charge-point-openwb-satellite"};function g(n,e,f,b,h,w){const r=t("openwb-base-text-input"),a=t("openwb-base-number-input");return u(),m("div",c,[i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.chargePoint.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Ladepunkt-Nummer",required:"",min:1,max:2,"model-value":n.chargePoint.configuration.duo_num+1,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o-1,"configuration.duo_num"))},{help:d(()=>e[2]||(e[2]=[l(' Bei einfachen Ladepunkten ist hier immer eine "1" einzutragen. Lediglich bei einer openWB Duo kann mit "2" der zweite enthaltene Ladepunkt angesprochen werden. ')])),_:1},8,["model-value"])])}const N=s(_,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/openwb_series2_satellit/chargePoint.vue"]]);export{N as default}; diff --git a/web/settings/assets/chargePoint-a137dfd4.js b/web/settings/assets/chargePoint-a137dfd4.js new file mode 100644 index 0000000000..0d1ed6c2fe --- /dev/null +++ b/web/settings/assets/chargePoint-a137dfd4.js @@ -0,0 +1 @@ +import{C as s}from"./ChargePointInstallation-a0c18822.js";import{_ as p,u as n,k as u,l as m,G as i,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"ChargePointSmartwb",mixins:[s]},b={class:"charge-point-smartwb"};function c(t,e,f,_,w,v){const r=n("openwb-base-text-input"),a=n("openwb-base-number-input");return u(),m("div",b,[i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.chargePoint.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Wartezeit",required:"",min:2,max:10,unit:"s","model-value":t.chargePoint.configuration.timeout,"onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.timeout"))},{help:d(()=>e[2]||(e[2]=[l(" Zeitangabe in Sekunden, für die auf eine Antwort des Ladepunktes gewartet wird. Wird diese Zeit überschritten, so wird von einer Kommunikationsstörung ausgegangen. ")])),_:1},8,["model-value"])])}const q=p(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/smartwb/chargePoint.vue"]]);export{q as default}; diff --git a/web/settings/assets/chargePoint-c6047ea4.js b/web/settings/assets/chargePoint-c6047ea4.js new file mode 100644 index 0000000000..6f8ad6b422 --- /dev/null +++ b/web/settings/assets/chargePoint-c6047ea4.js @@ -0,0 +1 @@ +import{C as u}from"./ChargePointInstallation-a0c18822.js";import{_ as p,u as t,k as i,l as d,G as m,z as l,E as c,y as g,B as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"ChargePointInternalOpenwb",mixins:[u],methods:{updateMode(e){(e=="series"||e=="socket")&&this.updateConfiguration(0,"configuration.duo_num"),this.updateConfiguration(e,"configuration.mode")}}},h={class:"charge-point-internal-openwb"};function b(e,n,B,w,k,a){const r=t("openwb-base-select-input"),s=t("openwb-base-number-input");return i(),d("div",h,[m(r,{title:"Bauart","not-selected":"Bitte auswählen",required:"",options:[{value:"series",text:"openWB series1/2 in den Varianten custom, standard & standard+"},{value:"duo",text:"openWB series1/2 Duo"},{value:"socket",text:"openWB series1/2 Buchse"}],"model-value":e.chargePoint.configuration.mode,"onUpdate:modelValue":n[0]||(n[0]=o=>a.updateMode(o))},null,8,["model-value"]),e.chargePoint.configuration.mode=="duo"?(i(),l(s,{key:0,title:"Ladepunkt-Nummer",required:"",min:1,max:2,"model-value":e.chargePoint.configuration.duo_num+1,"onUpdate:modelValue":n[1]||(n[1]=o=>e.updateConfiguration(o-1,"configuration.duo_num"))},{help:c(()=>n[2]||(n[2]=[g(' Bei einfachen Ladepunkten ist hier immer eine "1" einzutragen. Lediglich bei einer openWB Duo kann mit "2" der zweite enthaltene Ladepunkt angesprochen werden. ')])),_:1},8,["model-value"])):f("",!0)])}const M=p(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/internal_openwb/chargePoint.vue"]]);export{M as default}; diff --git a/web/settings/assets/chargePoint-d4002da3.js b/web/settings/assets/chargePoint-d4002da3.js new file mode 100644 index 0000000000..c5717a2560 --- /dev/null +++ b/web/settings/assets/chargePoint-d4002da3.js @@ -0,0 +1 @@ +import{C as p}from"./ChargePointInstallation-a0c18822.js";import{_ as s,u as t,k as u,l as m,G as i,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"ChargePointExternalOpenwb",mixins:[p]},c={class:"charge-point-external-openwb"};function g(n,e,b,f,h,w){const r=t("openwb-base-text-input"),a=t("openwb-base-number-input");return u(),m("div",c,[i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.chargePoint.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Ladepunkt-Nummer",required:"",min:1,max:2,"model-value":n.chargePoint.configuration.duo_num+1,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o-1,"configuration.duo_num"))},{help:d(()=>e[2]||(e[2]=[l(' Bei einfachen Ladepunkten ist hier immer eine "1" einzutragen. Lediglich bei einer openWB Duo kann mit "2" der zweite enthaltene Ladepunkt angesprochen werden. ')])),_:1},8,["model-value"])])}const E=s(_,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/external_openwb/chargePoint.vue"]]);export{E as default}; diff --git a/web/settings/assets/chargePoint-d949b41f.js b/web/settings/assets/chargePoint-d949b41f.js new file mode 100644 index 0000000000..56e0a95926 --- /dev/null +++ b/web/settings/assets/chargePoint-d949b41f.js @@ -0,0 +1 @@ +import{C as r}from"./ChargePointInstallation-a0c18822.js";import{_ as i,u as p,k as s,l as a,G as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"ChargePointOpenwbPro",mixins:[r]},d={class:"charge-point-openwb-pro"};function u(o,e,_,l,f,g){const t=p("openwb-base-text-input");return s(),a("div",d,[m(t,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.chargePoint.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"])])}const B=i(c,[["render",u],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/openwb_pro/chargePoint.vue"]]);export{B as default}; diff --git a/web/settings/assets/commands-b151f1d7.js b/web/settings/assets/commands-b151f1d7.js new file mode 100644 index 0000000000..33a204215f --- /dev/null +++ b/web/settings/assets/commands-b151f1d7.js @@ -0,0 +1 @@ +import{a as i}from"./ChargePointInstallation-a0c18822.js";import{_ as r,u as p,k as d,l as c,G as u,E as m,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"ChargePointCommandsOpenwbPro",mixins:[i],methods:{async triggerUpdate(){let t=new FormData;t.append("command","update"),t.append("data",'{"ip_address":"'+this.chargePoint.configuration.ip_address+'"}');const o="Die Aktualisierung der openWB Pro wird gestartet...";this.$root.postClientMessage(o,"info"),console.debug(location),this.axios.post(location.protocol+"//"+location.host+"/openWB/web/settings/modules/charge_points/openwb_pro/commands.php",t,{timeout:5e3}).then(()=>{const e="Die Aktualisierung der openWB Pro wurde erfolgreich gestartet.";this.$root.postClientMessage(e,"success")}).catch(e=>{var s="Aktualisierung fehlgeschlagen!
";e.response?(console.error(e.response.status,e.response.data),s+=e.response.status+": "+e.response.data):e.request?(console.error(e.request),s+="Es wurde keine Antwort vom Server empfangen."):(console.error("Error",e.message),s+="Es ist ein unbekannter Fehler aufgetreten."),this.$root.postClientMessage(s,"danger")})}}},h={class:"charge-point-commands-openwb-pro"};function _(t,o,e,s,f,n){const a=p("openwb-base-button-input");return d(),c("div",h,[u(a,{title:"Ladepunkt aktualisieren","button-text":"Update anfordern",subtype:"success",disabled:t.chargePoint.configuration.ip_address==null,onButtonClicked:n.triggerUpdate},{help:m(()=>o[0]||(o[0]=[l(" Mit diesem Befehl können Sie die Aktualisierung der openWB Pro anstoßen. Bitte beachten Sie, dass kein Fahrzeug angesteckt ist. ")])),_:1},8,["disabled","onButtonClicked"])])}const $=r(g,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/openwb_pro/commands.vue"]]);export{$ as default}; diff --git a/web/settings/assets/consumption_counter-243210f8.js b/web/settings/assets/consumption_counter-243210f8.js new file mode 100644 index 0000000000..4b128c59c4 --- /dev/null +++ b/web/settings/assets/consumption_counter-243210f8.js @@ -0,0 +1 @@ +import{C as d}from"./HardwareInstallation-775406e1.js";import{_ as m,u as o,k as b,l as c,G as t,E as s,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceOpenwbFlexConsumptionCounter",mixins:[d]},f={class:"device-openwb-flex-consumption-counter"};function g(n,e,w,v,x,B){const l=o("openwb-base-heading"),u=o("openwb-base-alert"),p=o("openwb-base-select-input"),a=o("openwb-base-number-input");return b(),c("div",f,[t(l,null,{default:s(()=>e[2]||(e[2]=[r(" Einstellungen für openWB-Flex Verbrauchszähler ")])),_:1}),t(u,{subtype:"info"},{default:s(()=>e[3]||(e[3]=[r(" Bei saldierenden Zählern (B23) werden die Zählerstände für Einspeisung und Bezug aus dem Zähler ausgelesen. Bei Zählern, die nicht saldierend arbeiten (SDM120, SDM630, SDM72D-M), wird der Zählerstand für den Bezug aus dem Zähler ausgelesen. Eine Messung der Einspeisung ist nicht möglich. ")])),_:1}),t(p,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:"sdm120",text:"SDM120"},{value:"sdm630",text:"SDM630/SDM72D-M"},{value:"b23",text:"B23"}],"model-value":n.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.version"))},null,8,["model-value"]),t(a,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":n.component.configuration.id,"onUpdate:modelValue":e[1]||(e[1]=i=>n.updateConfiguration(i,"configuration.id"))},null,8,["model-value"])])}const k=m(_,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/consumption_counter.vue"]]);export{k as default}; diff --git a/web/settings/assets/counter-00ded250.js b/web/settings/assets/counter-00ded250.js new file mode 100644 index 0000000000..ed9d54abb2 --- /dev/null +++ b/web/settings/assets/counter-00ded250.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceDeyeCounter",mixins:[p]},_={class:"device-deye-counter"};function b(o,e,f,v,g,C){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),u("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Deye Zähler ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const h=a(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/deye/deye/counter.vue"]]);export{h as default}; diff --git a/web/settings/assets/counter-04d44a2a.js b/web/settings/assets/counter-04d44a2a.js new file mode 100644 index 0000000000..b86004f6d9 --- /dev/null +++ b/web/settings/assets/counter-04d44a2a.js @@ -0,0 +1 @@ +import{C as o}from"./HardwareInstallation-775406e1.js";import{_ as n,u as i,k as s,l as a,G as r,E as p,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceJanitzaBat",mixins:[o]},u={class:"device-janitza-counter"};function _(d,e,f,l,v,b){const t=i("openwb-base-alert");return s(),a("div",u,[r(t,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[c(' ModbusTCP muss im Janitza auf Port 502 aktiv und die ID auf "1" eingestellt sein. ')])),_:1})])}const y=n(m,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/janitza/janitza/counter.vue"]]);export{y as default}; diff --git a/web/settings/assets/counter-071db92b.js b/web/settings/assets/counter-071db92b.js new file mode 100644 index 0000000000..f4da9236e6 --- /dev/null +++ b/web/settings/assets/counter-071db92b.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as u,u as n,k as a,l as m,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSunnyBoyCounter",mixins:[p]},_={class:"device-sunnyboy-counter"};function b(o,e,f,v,y,g){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return a(),m("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für SMA Sunny Boy/Tripower Zähler ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const V=u(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/counter.vue"]]);export{V as default}; diff --git a/web/settings/assets/counter-0a4f8168.js b/web/settings/assets/counter-0a4f8168.js new file mode 100644 index 0000000000..f1d4a62229 --- /dev/null +++ b/web/settings/assets/counter-0a4f8168.js @@ -0,0 +1 @@ +import{C as d}from"./HardwareInstallation-775406e1.js";import{_ as m,u as o,k as b,l as c,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceOpenwbFlexCounter",mixins:[d]},_={class:"device-openwb-flex-counter"};function v(n,e,w,g,M,x){const l=o("openwb-base-heading"),a=o("openwb-base-alert"),p=o("openwb-base-select-input"),u=o("openwb-base-number-input");return b(),c("div",_,[t(l,null,{default:r(()=>e[2]||(e[2]=[s(" Einstellungen für openWB-Flex Zähler ")])),_:1}),t(a,{subtype:"info"},{default:r(()=>e[3]||(e[3]=[s(" Bei saldierenden Zählern (MPM3PM, B23) werden die Zählerstände für Einspeisung und Bezug aus dem Zähler ausgelesen. Bei Zählern, die nicht saldierend arbeiten (Lovato, SDM630, SDM72D-M), werden die Zählerstände von der openWB berechnet. ")])),_:1}),t(p,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:3,text:"B23"},{value:1,text:"Lovato"},{value:0,text:"MPM3PM"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":n.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.version"))},null,8,["model-value"]),t(u,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":n.component.configuration.id,"onUpdate:modelValue":e[1]||(e[1]=i=>n.updateConfiguration(i,"configuration.id"))},null,8,["model-value"])])}const $=m(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter-13b5dd50.js b/web/settings/assets/counter-13b5dd50.js new file mode 100644 index 0000000000..c8a81c62a1 --- /dev/null +++ b/web/settings/assets/counter-13b5dd50.js @@ -0,0 +1 @@ +import{C as s}from"./HardwareInstallation-775406e1.js";import{_ as u,u as n,k as m,l as p,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceHuaweiSmartLoggerCounter",mixins:[s]},_={class:"device-huawei-smart-logger-counter"};function g(o,e,b,f,w,v){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),p("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Huawei SmartLogger Zähler ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const H=u(c,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei_smartlogger/counter.vue"]]);export{H as default}; diff --git a/web/settings/assets/counter-164996b5.js b/web/settings/assets/counter-164996b5.js new file mode 100644 index 0000000000..4ca36e10fb --- /dev/null +++ b/web/settings/assets/counter-164996b5.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as u,u as t,k as l,l as d,G as r,E as i,y as n,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSmahmCounter",mixins:[p]},f={class:"device-smahm-counter"};function b(o,e,g,v,M,h){const s=t("openwb-base-heading"),a=t("openwb-base-number-input");return l(),d("div",f,[r(s,null,{default:i(()=>e[1]||(e[1]=[n(" Einstellungen für SMA-HM/EM Zähler ")])),_:1}),r(a,{title:"Seriennummer","model-value":o.component.configuration.serials,"onUpdate:modelValue":e[0]||(e[0]=m=>o.updateConfiguration(m,"configuration.serials"))},{help:i(()=>e[2]||(e[2]=[n(" Eine Seriennummer ist nur erforderlich, wenn mehrere SMA HomeManager in Betrieb sind."),c("br",null,null,-1),n(" Funktioniert auch mit Energy Meter anstatt Home Manager. ")])),_:1},8,["model-value"])])}const H=u(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_shm/counter.vue"]]);export{H as default}; diff --git a/web/settings/assets/counter-1c7d13ea.js b/web/settings/assets/counter-1c7d13ea.js new file mode 100644 index 0000000000..9e9629b836 --- /dev/null +++ b/web/settings/assets/counter-1c7d13ea.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as l,u as t,k as m,l as d,G as o,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceVirtualCounter",mixins:[p]},_={class:"device-virtual-counter"};function f(n,e,b,g,v,h){const s=t("openwb-base-heading"),a=t("openwb-base-number-input");return m(),d("div",_,[o(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für virtuelle Zähler ")])),_:1}),o(a,{title:"Zusätzlicher Verbrauch",min:0,step:.05,unit:"kW",required:"","model-value":n.component.configuration.external_consumption/1e3,"onUpdate:modelValue":e[0]||(e[0]=u=>n.updateConfiguration(u*1e3,"configuration.external_consumption"))},{help:i(()=>e[2]||(e[2]=[r(" Die hier angegebene Leistung wird pauschal zu dem Leistungen der hinter dem Zähler liegenden Komponenten addiert. Damit lässt sich z. B. eine Reserve für nicht erfasste Verbraucher einstellen. ")])),_:1},8,["model-value"])])}const E=l(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/virtual/counter.vue"]]);export{E as default}; diff --git a/web/settings/assets/counter-1d0ae197.js b/web/settings/assets/counter-1d0ae197.js new file mode 100644 index 0000000000..695e354c02 --- /dev/null +++ b/web/settings/assets/counter-1d0ae197.js @@ -0,0 +1 @@ +import{C as s}from"./HardwareInstallation-775406e1.js";import{_ as d,u as r,k as m,l as g,G as t,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceVZLoggerCounter",mixins:[s]},_={class:"device-vzlogger-counter"};function c(n,e,b,v,w,Z){const a=r("openwb-base-heading"),p=r("openwb-base-alert"),i=r("openwb-base-number-input");return m(),g("div",_,[t(a,null,{default:l(()=>e[3]||(e[3]=[u(" Einstellungen für VZLogger Zähler ")])),_:1}),t(p,{subtype:"info"},{default:l(()=>e[4]||(e[4]=[u(' Bitte auf der Shell ausführen: "curl -s IPdesVZLogger:Port | jq .|cat -n" Zählen, in welcher Zeile der gesuchte Wert steht. Bei der ersten Zeile mit 1 anfangen zu zählen. ')])),_:1}),t(i,{title:"Zeile der Leistung",required:"",min:0,"model-value":n.component.configuration.line_power,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.line_power"))},null,8,["model-value"]),t(i,{title:"Zeile der Einspeisung",min:0,"model-value":n.component.configuration.line_exported,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.line_exported"))},null,8,["model-value"]),t(i,{title:"Zeile des Bezugs",min:0,"model-value":n.component.configuration.line_imported,"onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.line_imported"))},null,8,["model-value"])])}const x=d(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/vzlogger/vzlogger/counter.vue"]]);export{x as default}; diff --git a/web/settings/assets/counter-20351565.js b/web/settings/assets/counter-20351565.js new file mode 100644 index 0000000000..e147974312 --- /dev/null +++ b/web/settings/assets/counter-20351565.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as t,k as m,l,G as i,E as d,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceVictronCounter",mixins:[p]},_={class:"device-victron-counter"};function f(o,e,g,v,C,V){const r=t("openwb-base-heading"),u=t("openwb-base-number-input"),s=t("openwb-base-button-group-input");return m(),l("div",_,[i(r,null,{default:d(()=>e[2]||(e[2]=[c(" Einstellungen für Victron Zähler ")])),_:1}),i(u,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"]),i(s,{title:"Messgerät",buttons:[{buttonValue:!1,text:"AC-In Victron GX"},{buttonValue:!0,text:"Energy Meter"}],"model-value":o.component.configuration.energy_meter,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.energy_meter"))},null,8,["model-value"])])}const G=a(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/victron/victron/counter.vue"]]);export{G as default}; diff --git a/web/settings/assets/counter-24f79ace.js b/web/settings/assets/counter-24f79ace.js new file mode 100644 index 0000000000..410c3f1ee5 --- /dev/null +++ b/web/settings/assets/counter-24f79ace.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as u,u as n,k as d,l as c,G as t,E as i,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceMTecCounter",mixins:[a]},_={class:"device-mtec-counter"};function b(o,e,f,v,g,C){const r=n("openwb-base-heading"),p=n("openwb-base-number-input");return d(),c("div",_,[t(r,null,{default:i(()=>e[1]||(e[1]=[s(" Einstellungen für M-Tec Zähler ")])),_:1}),t(p,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=m=>o.updateConfiguration(m,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[s(" Die Standard-Modbus-ID von M-Tec ist 247 ")])),_:1},8,["model-value"])])}const V=u(l,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/mtec/mtec/counter.vue"]]);export{V as default}; diff --git a/web/settings/assets/counter-2fbd500e.js b/web/settings/assets/counter-2fbd500e.js new file mode 100644 index 0000000000..05c6459e3d --- /dev/null +++ b/web/settings/assets/counter-2fbd500e.js @@ -0,0 +1 @@ +import{C as m}from"./HardwareInstallation-775406e1.js";import{_ as u,u as n,k as d,l,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSigenergyCounter",mixins:[m]},_={class:"device-sigenergy-counter"};function c(o,e,b,f,v,y){const s=n("openwb-base-heading"),p=n("openwb-base-number-input");return d(),l("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für Sigenergy Zähler ")])),_:1}),t(p,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[r(" Die Standard-Modbus-ID von Sigenergy ist 247 ")])),_:1},8,["model-value"])])}const M=u(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sigenergy/sigenergy/counter.vue"]]);export{M as default}; diff --git a/web/settings/assets/counter-3f1d575b.js b/web/settings/assets/counter-3f1d575b.js new file mode 100644 index 0000000000..0f62dc4dc8 --- /dev/null +++ b/web/settings/assets/counter-3f1d575b.js @@ -0,0 +1 @@ +import{C as m}from"./HardwareInstallation-775406e1.js";import{_ as u,u as o,k as d,l,G as t,E as i,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceEnphaseCounter",mixins:[m]},_={class:"device-enphase-counter"};function f(n,e,b,v,g,E){const p=o("openwb-base-heading"),r=o("openwb-base-number-input");return d(),l("div",_,[t(p,null,{default:i(()=>e[1]||(e[1]=[s(" Einstellungen für Enphase Envoy / IQ Gateway Zähler ")])),_:1}),t(r,{title:"EID",required:"","model-value":n.component.configuration.eid,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.eid"))},{help:i(()=>e[2]||(e[2]=[s(' EID für "net-consumption" ')])),_:1},8,["model-value"])])}const I=u(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/enphase/enphase/counter.vue"]]);export{I as default}; diff --git a/web/settings/assets/counter-4db8b27f.js b/web/settings/assets/counter-4db8b27f.js new file mode 100644 index 0000000000..4c73e7b8fe --- /dev/null +++ b/web/settings/assets/counter-4db8b27f.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as u,u as t,k as a,l,G as n,E as d,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DevicePowerdogCounter",mixins:[p]},_={class:"device-powerdog-counter"};function b(e,o,f,g,v,w){const i=t("openwb-base-heading"),r=t("openwb-base-button-group-input");return a(),l("div",_,[n(i,null,{default:d(()=>o[1]||(o[1]=[m(" Einstellungen für Powerdog Zähler ")])),_:1}),n(r,{title:"Einbau-Position",buttons:[{buttonValue:!1,text:"Hausverbrauch"},{buttonValue:!0,text:"EVU-Punkt"}],"model-value":e.component.configuration.position_evu,"onUpdate:modelValue":o[0]||(o[0]=s=>e.updateConfiguration(s,"configuration.position_evu"))},null,8,["model-value"])])}const N=u(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerdog/powerdog/counter.vue"]]);export{N as default}; diff --git a/web/settings/assets/counter-4e56c7f7.js b/web/settings/assets/counter-4e56c7f7.js new file mode 100644 index 0000000000..99ebaa9d4e --- /dev/null +++ b/web/settings/assets/counter-4e56c7f7.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as n,k as m,l as u,G as t,E as l,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolisCounter",mixins:[p]},_={class:"device-solis-counter"};function b(o,e,f,v,g,C){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),u("div",_,[t(i,null,{default:l(()=>e[1]||(e[1]=[d(" Einstellungen für Solis Zähler ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const M=a(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solis/solis/counter.vue"]]);export{M as default}; diff --git a/web/settings/assets/counter-4fb1767e.js b/web/settings/assets/counter-4fb1767e.js new file mode 100644 index 0000000000..1863e6a432 --- /dev/null +++ b/web/settings/assets/counter-4fb1767e.js @@ -0,0 +1 @@ +import{C as u}from"./HardwareInstallation-775406e1.js";import{_ as m,u as s,k as p,l as g,G as i,E as a,y as n,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const h={name:"DeviceHttpCounter",mixins:[u]},b={class:"device-http-counter"};function f(t,e,w,v,k,S){const d=s("openwb-base-heading"),o=s("openwb-base-text-input");return p(),g("div",b,[i(d,null,{default:a(()=>e[6]||(e[6]=[n(" Einstellungen für Http Zähler ")])),_:1}),i(o,{title:"Pfad für Leistung",subtype:"text",required:"",pattern:"^/[-a-zA-Z0-9@:%_\\+.~#?&/=]*","model-value":t.component.configuration.power_path,"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateConfiguration(r,"configuration.power_path"))},{help:a(()=>e[7]||(e[7]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Zählerstand Bezug",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.imported_path,"onUpdate:modelValue":e[1]||(e[1]=r=>t.updateConfiguration(r,"configuration.imported_path"))},{help:a(()=>e[8]||(e[8]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, wird der Zählerstand intern simuliert. ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Zählerstand Einspeisung",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.exported_path,"onUpdate:modelValue":e[2]||(e[2]=r=>t.updateConfiguration(r,"configuration.exported_path"))},{help:a(()=>e[9]||(e[9]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, wird der Zählerstand intern simuliert. ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Strom Phase 1",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.current_l1_path,"onUpdate:modelValue":e[3]||(e[3]=r=>t.updateConfiguration(r,"configuration.current_l1_path"))},{help:a(()=>e[10]||(e[10]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Stromstärke der 1. Phase in Ampere darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, werden keine Phasenströme ermittelt und es kann kein Lastmanagement berechnet werden! ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Strom Phase 2",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.current_l2_path,"onUpdate:modelValue":e[4]||(e[4]=r=>t.updateConfiguration(r,"configuration.current_l2_path"))},{help:a(()=>e[11]||(e[11]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Stromstärke der 2. Phase in Ampere darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, werden keine Phasenströme ermittelt und es kann kein Lastmanagement berechnet werden! ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Strom Phase 3",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.current_l3_path,"onUpdate:modelValue":e[5]||(e[5]=r=>t.updateConfiguration(r,"configuration.current_l3_path"))},{help:a(()=>e[12]||(e[12]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Stromstärke der 3. Phase in Ampere darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, werden keine Phasenströme ermittelt und es kann kein Lastmanagement berechnet werden! ")])),_:1},8,["model-value"])])}const F=m(h,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/http/counter.vue"]]);export{F as default}; diff --git a/web/settings/assets/counter-51b45e76.js b/web/settings/assets/counter-51b45e76.js new file mode 100644 index 0000000000..d44e2fc9ee --- /dev/null +++ b/web/settings/assets/counter-51b45e76.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as l,u as o,k as m,l as d,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSungrowCounter",mixins:[p]},g={class:"device-sungrow-counter"};function _(n,e,b,f,v,w){const s=o("openwb-base-heading"),u=o("openwb-base-select-input");return m(),d("div",g,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für Sungrow Zähler ")])),_:1}),t(u,{title:"Version",options:[{value:0,text:"SH (Hybrid)"},{value:1,text:"SG (kein Hybrid)"},{value:2,text:"SG (kein Hybrid) mit WiNet Dongle"}],"model-value":n.component.configuration.version,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.version"))},{help:i(()=>e[2]||(e[2]=[r(" Die Variante SH ist nur über die LAN-IP mit openWB nutzbar. Hierzu hinter dem WiNet-S Dongle den Lan Anschluss nutzen. Den WiNet-S Dongle zusätzlich ins Heimnetz (per Lan oder Wlan) einbinden, um ISolarCloud nutzen zu können. ")])),_:1},8,["model-value"])])}const V=l(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sungrow/sungrow/counter.vue"]]);export{V as default}; diff --git a/web/settings/assets/counter-5e8a02df.js b/web/settings/assets/counter-5e8a02df.js new file mode 100644 index 0000000000..6ba1c8da1e --- /dev/null +++ b/web/settings/assets/counter-5e8a02df.js @@ -0,0 +1 @@ +import{C as d}from"./HardwareInstallation-775406e1.js";import{_ as a,u,k as f,l as g,G as l,E as o,y as t,x as e,F as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceMqttCounter",mixins:[d]},k={class:"device-mqtt-counter"};function B(i,n,z,x,v,w){const p=u("openwb-base-heading"),s=u("openwb-base-copy-to-clipboard"),m=u("openwb-base-alert");return f(),g("div",k,[l(p,null,{default:o(()=>n[0]||(n[0]=[t(" Einstellungen für MQTT Zähler ")])),_:1}),l(m,{subtype:"info"},{default:o(()=>[n[41]||(n[41]=t(" Die folgenden Topics sind für einen reibungslosen Betrieb unbedingt erforderlich: ")),e("ul",null,[e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/power ",1)]),_:1}),n[1]||(n[1]=e("br",null,null,-1)),n[2]||(n[2]=t(" Bezugsleistung in Watt, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, positiv Bezug, negativ Einspeisung")),n[3]||(n[3]=e("br",null,null,-1)),n[4]||(n[4]=t(" Beispiel: ")),n[5]||(n[5]=e("span",{class:"text-info"},"-123.45",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/imported ",1)]),_:1}),n[6]||(n[6]=e("br",null,null,-1)),n[7]||(n[7]=t(" Bezogene Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),n[8]||(n[8]=e("br",null,null,-1)),n[9]||(n[9]=t(" Beispiel: ")),n[10]||(n[10]=e("span",{class:"text-info"},"123.45",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/exported ",1)]),_:1}),n[11]||(n[11]=e("br",null,null,-1)),n[12]||(n[12]=t(" Eingespeiste Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),n[13]||(n[13]=e("br",null,null,-1)),n[14]||(n[14]=t(" Beispiel: ")),n[15]||(n[15]=e("span",{class:"text-info"},"123.45",-1))])]),n[42]||(n[42]=t(" Ströme je Phase sind für phasenbasiertes Lastmanagement unbedingt erforderlich, sonst erfolgt das Lastmanagement ausschließlich auf Basis der Gesamtleistung am EVU-Punkt: ")),e("ul",null,[e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/currents ",1)]),_:1}),n[16]||(n[16]=e("br",null,null,-1)),n[17]||(n[17]=t(" Array mit den Strömen je Phase in Ampere, mit Nachkommastellen (Float), positiv Bezug, negativ Einspeisung")),n[18]||(n[18]=e("br",null,null,-1)),n[19]||(n[19]=t(" Beispiel: ")),n[20]||(n[20]=e("span",{class:"text-info"},"[1.2,2.3,-2.1]",-1))])]),n[43]||(n[43]=t(" Die Netzfrequenz, Spannungen, Leistungen und Leistungsfaktoren jeder Phase werden ausschließlich zu Anzeigezwecken verwendet: ")),e("ul",null,[e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/frequency ",1)]),_:1}),n[21]||(n[21]=e("br",null,null,-1)),n[22]||(n[22]=t(" Netzfrequenz in Hz, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen")),n[23]||(n[23]=e("br",null,null,-1)),n[24]||(n[24]=t(" Beispiel: ")),n[25]||(n[25]=e("span",{class:"text-info"},"50.12",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/voltages ",1)]),_:1}),n[26]||(n[26]=e("br",null,null,-1)),n[27]||(n[27]=t(" Array mit den Spannungen je Phase in Volt, mit Nachkommastellen (Float)")),n[28]||(n[28]=e("br",null,null,-1)),n[29]||(n[29]=t(" Beispiel: ")),n[30]||(n[30]=e("span",{class:"text-info"},"[222.2,223.3,222.3]",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/powers ",1)]),_:1}),n[31]||(n[31]=e("br",null,null,-1)),n[32]||(n[32]=t(" Array mit den Leistungen je Phase in Watt, mit Nachkommastellen (Float)")),n[33]||(n[33]=e("br",null,null,-1)),n[34]||(n[34]=t(" Beispiel: ")),n[35]||(n[35]=e("span",{class:"text-info"},"[12.3,23.4,-12.3]",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/power_factors ",1)]),_:1}),n[36]||(n[36]=e("br",null,null,-1)),n[37]||(n[37]=t(" Array mit den Leistungsfaktoren je Phase, mit Nachkommastellen (Float), Wertebereich -1 bis 1")),n[38]||(n[38]=e("br",null,null,-1)),n[39]||(n[39]=t(" Beispiel: ")),n[40]||(n[40]=e("span",{class:"text-info"},"[0.95,0.96,-0.95]",-1))])])]),_:1})])}const q=a(b,[["render",B],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/mqtt/counter.vue"]]);export{q as default}; diff --git a/web/settings/assets/counter-5ed295f8.js b/web/settings/assets/counter-5ed295f8.js new file mode 100644 index 0000000000..822def7494 --- /dev/null +++ b/web/settings/assets/counter-5ed295f8.js @@ -0,0 +1 @@ +import{C as t}from"./HardwareInstallation-775406e1.js";import{_ as o,u as s,k as i,l as r,G as a,E as p,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSonnenbatterieCounter",mixins:[t]},d={class:"device-sonnenbatterie-counter"};function _(l,e,u,f,b,v){const n=s("openwb-base-alert");return i(),r("div",d,[a(n,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[m(" Mit diesem Modul ist kein phasenbasiertes Lastmanagement möglich, da keine Ströme der einzelnen Phasen gemessen werden. ")])),_:1})])}const y=o(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sonnen/sonnenbatterie/counter.vue"]]);export{y as default}; diff --git a/web/settings/assets/counter-7247e287.js b/web/settings/assets/counter-7247e287.js new file mode 100644 index 0000000000..81c095e93f --- /dev/null +++ b/web/settings/assets/counter-7247e287.js @@ -0,0 +1 @@ +import{C as n}from"./HardwareInstallation-775406e1.js";import{_ as o,u as s,k as r,l as a,G as i,E as m,y as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceTeslaCounter",mixins:[n]},l={class:"device-tesla-counter"};function _(d,e,u,f,v,x){const t=s("openwb-base-alert");return r(),a("div",l,[i(t,{subtype:"info"},{default:m(()=>e[0]||(e[0]=[p(" Je nach Firmware-Version ist nur ein Lastmanagement anhand der Gesamtleistung möglich, da nicht alle Firmware-Versionen Phasenströme liefern. ")])),_:1})])}const y=o(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/tesla/tesla/counter.vue"]]);export{y as default}; diff --git a/web/settings/assets/counter-7449b66a.js b/web/settings/assets/counter-7449b66a.js new file mode 100644 index 0000000000..887133a8f0 --- /dev/null +++ b/web/settings/assets/counter-7449b66a.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as n,u as s,k as i,l as a,G as c,E as p,y as o,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceKostalPlenticoreCounter",mixins:[r]},u={class:"device-kostal-plenticore-counter"};function _(d,e,f,b,h,v){const t=s("openwb-base-alert");return i(),a("div",u,[c(t,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[o(" Wenn der Zähler im Hausverbrauchs-Zweig installiert ist, muss die Hierarchie wie im "),l("a",{href:"https://github.com/openWB/core/wiki/Hausverbrauchs-Zähler",target:"_blank",rel:"noopener noreferrer"},"Wiki für Hausverbrauchs-Zähler",-1),o(" beschrieben, angeordnet werden. ")])),_:1})])}const $=n(m,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_plenticore/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter-74820587.js b/web/settings/assets/counter-74820587.js new file mode 100644 index 0000000000..2b2f2e157a --- /dev/null +++ b/web/settings/assets/counter-74820587.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as m,u as t,k as p,l as u,G as n,E as l,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmartMeCounter",mixins:[a]},_={class:"device-smart-me-counter"};function f(o,e,b,v,g,x){const r=t("openwb-base-heading"),i=t("openwb-base-text-input");return p(),u("div",_,[n(r,null,{default:l(()=>e[1]||(e[1]=[d(" Einstellungen für smart-me Zähler ")])),_:1}),n(i,{title:"Geräte-ID",required:"","model-value":o.component.configuration.id,"onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.id"))},null,8,["model-value"])])}const G=m(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/smart_me/smart_me/counter.vue"]]);export{G as default}; diff --git a/web/settings/assets/counter-76b0320f.js b/web/settings/assets/counter-76b0320f.js new file mode 100644 index 0000000000..098c7150aa --- /dev/null +++ b/web/settings/assets/counter-76b0320f.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as a,u as t,k as l,l as u,G as n,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbEvukitCounter",mixins:[r]},v={class:"device-openwb-evukit-counter"};function _(o,e,f,b,w,x){const i=t("openwb-base-heading"),s=t("openwb-base-select-input");return l(),u("div",v,[n(i,null,{default:m(()=>e[1]||(e[1]=[c(" Einstellungen für openWB EVU-Kit Zähler ")])),_:1}),n(s,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:3,text:"B23"},{value:1,text:"Lovato"},{value:0,text:"MPM3PM"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":o.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=p=>o.updateConfiguration(p,"configuration.version"))},null,8,["model-value"])])}const $=a(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_evu_kit/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter-a5db85df.js b/web/settings/assets/counter-a5db85df.js new file mode 100644 index 0000000000..97b31a3f14 --- /dev/null +++ b/web/settings/assets/counter-a5db85df.js @@ -0,0 +1 @@ +import{C as n}from"./HardwareInstallation-775406e1.js";import{_ as s,u as a,k as i,l,G as p,E as c,x as e,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceSolarLogCounter",mixins:[n]},u={class:"device-solar_log-counter"};function d(_,o,g,h,f,b){const t=a("openwb-base-alert");return i(),l("div",u,[p(t,{subtype:"info"},{default:c(()=>o[0]||(o[0]=[e("span",{class:"text-danger"},[r(" Solar-Log Zähler geben keine Ströme aus, sodass nur ein Lastmanagement anhand der Gesamtleistung, aber nicht phasenbasiert möglich ist."),e("br")],-1),r(" Solar-Log Zähler sind Hausverbrauchs-Zähler. Um die Werte am EVU-Punkt zu ermitteln, muss ein virtueller Zähler konfiguriert werden. Eine Beispiel-Konfiguration mit Solar-Log Zähler findest Du im "),e("a",{href:"https://github.com/openWB/core/wiki/Hausverbrauchs-Z%C3%A4hler",target:"_blank",rel:"noopener noreferrer"}," Wiki für Hausverbrauchs-Zähler ",-1),r(". ")])),_:1})])}const E=s(m,[["render",d],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_log/solar_log/counter.vue"]]);export{E as default}; diff --git a/web/settings/assets/counter-be3ab298.js b/web/settings/assets/counter-be3ab298.js new file mode 100644 index 0000000000..4c0090a4c3 --- /dev/null +++ b/web/settings/assets/counter-be3ab298.js @@ -0,0 +1 @@ +import{C as d}from"./HardwareInstallation-775406e1.js";import{_ as u,u as n,k as m,l as c,G as r,E as i,y as o,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceDiscovergyCounter",mixins:[d]},g={class:"device-discovergy-counter"};function _(t,e,v,b,w,x){const s=n("openwb-base-heading"),a=n("openwb-base-text-input");return m(),c("div",g,[r(s,null,{default:i(()=>e[1]||(e[1]=[o(" Einstellungen für Discovergy Zähler ")])),_:1}),r(a,{title:"Meter-ID",required:"","model-value":t.component.configuration.meter_id,"onUpdate:modelValue":e[0]||(e[0]=p=>t.updateConfiguration(p,"configuration.meter_id"))},{help:i(()=>e[2]||(e[2]=[o(" Um die ID herauszufinden mit dem Browser die Adresse "),l("a",{href:"https://api.discovergy.com/public/v1/meters",target:"_blank",rel:"noopener noreferrer"}," https://api.discovergy.com/public/v1/meters ",-1),o(" aufrufen und dort Benutzername und Passwort eingeben. Hier wird nun u.a. die ID des Zählers angezeigt. ")])),_:1},8,["model-value"])])}const E=u(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/discovergy/discovergy/counter.vue"]]);export{E as default}; diff --git a/web/settings/assets/counter-bf1f6045.js b/web/settings/assets/counter-bf1f6045.js new file mode 100644 index 0000000000..77b1289458 --- /dev/null +++ b/web/settings/assets/counter-bf1f6045.js @@ -0,0 +1 @@ +import{C as u}from"./HardwareInstallation-775406e1.js";import{_ as l,u as t,k as c,l as m,G as r,E as i,y as n,x as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DevicePowerfoxCounter",mixins:[u]},b={class:"device-powerfox-counter"};function g(o,e,w,x,_,h){const a=t("openwb-base-heading"),p=t("openwb-base-text-input");return c(),m("div",b,[r(a,null,{default:i(()=>e[1]||(e[1]=[n(" Einstellungen für Powerfox Zähler ")])),_:1}),r(p,{title:"ID",required:"","model-value":o.component.configuration.id,"onUpdate:modelValue":e[0]||(e[0]=d=>o.updateConfiguration(d,"configuration.id"))},{help:i(()=>e[2]||(e[2]=[n(" Um die ID herauszufinden mit dem Browser die Adresse "),s("a",{href:"https://backend.powerfox.energy/api/2.0/my/all/devices",target:"_blank",rel:"noopener noreferrer"}," https://backend.powerfox.energy/api/2.0/my/all/devices ",-1),n(" aufrufen und dort Benutzername und Passwort eingeben. Die DeviceID ist exakt so einzutragen, wie in der Antwort des Servers. Das bedeutet insbesondere auch, die Groß-/Kleinschreibung ist zu beachten! In dem Feld ist nur die Zeichenfolge direkt hinter "),s("span",{class:"font-weight-bold text-monospace",style:{display:"contents"}},' "DeviceID" ',-1),n(" ohne den Doppelpunkt und Anführungszeichen einzutragen. ")])),_:1},8,["model-value"])])}const $=l(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerfox/powerfox/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter-c3f9c146.js b/web/settings/assets/counter-c3f9c146.js new file mode 100644 index 0000000000..c0981c46e6 --- /dev/null +++ b/web/settings/assets/counter-c3f9c146.js @@ -0,0 +1 @@ +import{C as t}from"./HardwareInstallation-775406e1.js";import{_ as n,u as r,k as s,l as a,G as i,E as p,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceCarloGavazziCounter",mixins:[t]},_={class:"device-carlo-gavazzi-counter"};function l(u,e,d,v,f,z){const o=r("openwb-base-alert");return s(),a("div",_,[i(o,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[c(" ModbusTCP muss aktiviert sein. ")])),_:1})])}const E=n(m,[["render",l],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/carlo_gavazzi/carlo_gavazzi/counter.vue"]]);export{E as default}; diff --git a/web/settings/assets/counter-c577a2f2.js b/web/settings/assets/counter-c577a2f2.js new file mode 100644 index 0000000000..0a2d207f42 --- /dev/null +++ b/web/settings/assets/counter-c577a2f2.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as s,u as n,k as i,l as a,G as p,E as c,y as o,x as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceKostalPikoCounter",mixins:[r]},u={class:"device-kostal-piko-counter"};function _(d,e,f,b,h,k){const t=n("openwb-base-alert");return i(),a("div",u,[p(t,{subtype:"info"},{default:c(()=>e[0]||(e[0]=[o(" Wenn der Zähler im Hausverbrauchs-Zweig installiert ist, muss die Hierarchie wie im "),m("a",{href:"https://github.com/openWB/core/wiki/Hausverbrauchs-Zähler",target:"_blank",rel:"noopener noreferrer"},"Wiki für Hausverbrauchs-Zähler",-1),o(" beschrieben, angeordnet werden. ")])),_:1})])}const $=s(l,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_piko/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter-e5120d9a.js b/web/settings/assets/counter-e5120d9a.js new file mode 100644 index 0000000000..d0d079d165 --- /dev/null +++ b/web/settings/assets/counter-e5120d9a.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceFoxEssCounter",mixins:[p]},c={class:"device-fox_ess-counter"};function f(o,e,b,x,v,g){const s=n("openwb-base-heading"),i=n("openwb-base-number-input");return m(),u("div",c,[t(s,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für FoxEss Zähler ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const F=a(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fox_ess/fox_ess/counter.vue"]]);export{F as default}; diff --git a/web/settings/assets/counter-ebb39c58.js b/web/settings/assets/counter-ebb39c58.js new file mode 100644 index 0000000000..9858735a6d --- /dev/null +++ b/web/settings/assets/counter-ebb39c58.js @@ -0,0 +1 @@ +import{C as d}from"./HardwareInstallation-775406e1.js";import{_ as p,u,k as m,l as f,G as t,E as a,y as l,x as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceJsonCounter",mixins:[d]},w={class:"device-json-counter"};function v(n,e,j,q,P,C){const i=u("openwb-base-heading"),r=u("openwb-base-text-input"),s=u("openwb-base-alert");return m(),f("div",w,[t(i,null,{default:a(()=>e[9]||(e[9]=[l(" Einstellungen für JSON Zähler ")])),_:1}),t(r,{title:"Abfrage für Leistung",subtype:"text",required:"","model-value":n.component.configuration.jq_power,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.jq_power"))},{help:a(()=>e[10]||(e[10]=[l(' Zur Analyse der Werte aus dem json-Objekt wird jq benutzt. Ist die Json Antwort z.B. {"PowerInstalledPeak":4655, "PowerProduced":132, "PowerOut":897.08172362555717, "PowerSelfSupplied":234.9182763744428} So muss hier .PowerOut eingetragen werden. '),g("br",null,null,-1),l(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. ")])),_:1},8,["model-value"]),t(r,{title:"Abfrage für Zählerstand Bezug",subtype:"text","model-value":n.component.configuration.jq_imported,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.jq_imported"))},{help:a(()=>e[11]||(e[11]=[l(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"]),t(r,{title:"Abfrage für Zählerstand Einspeisung",subtype:"text","model-value":n.component.configuration.jq_exported,"onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.jq_exported"))},{help:a(()=>e[12]||(e[12]=[l(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"]),t(s,{subtype:"info"},{default:a(()=>e[13]||(e[13]=[l(" Werden sowohl Leistung als auch Strom auf den Einzelphasen leer gelassen, erfolgt das Lastmanagement am EVU-Punkt nur anhand der Gesamtleistung am EVU-Punkt. Wird der Zähler als Zwischenzähler verwendet, wird in diesem Fall kein Lastmanagement durchgeführt. ")])),_:1}),t(r,{title:"Abfrage für Leistung auf Phase 1",subtype:"text","model-value":n.component.configuration.jq_power_l1,"onUpdate:modelValue":e[3]||(e[3]=o=>n.updateConfiguration(o,"configuration.jq_power_l1"))},null,8,["model-value"]),t(r,{title:"Abfrage für Leistung auf Phase 2",subtype:"text","model-value":n.component.configuration.jq_power_l2,"onUpdate:modelValue":e[4]||(e[4]=o=>n.updateConfiguration(o,"configuration.jq_power_l2"))},null,8,["model-value"]),t(r,{title:"Abfrage für Leistung auf Phase 3",subtype:"text","model-value":n.component.configuration.jq_power_l3,"onUpdate:modelValue":e[5]||(e[5]=o=>n.updateConfiguration(o,"configuration.jq_power_l3"))},null,8,["model-value"]),t(r,{title:"Abfrage für Strom auf Phase 1",subtype:"text","model-value":n.component.configuration.jq_current_l1,"onUpdate:modelValue":e[6]||(e[6]=o=>n.updateConfiguration(o,"configuration.jq_current_l1"))},null,8,["model-value"]),t(r,{title:"Abfrage für Strom auf Phase 2",subtype:"text","model-value":n.component.configuration.jq_current_l2,"onUpdate:modelValue":e[7]||(e[7]=o=>n.updateConfiguration(o,"configuration.jq_current_l2"))},null,8,["model-value"]),t(r,{title:"Abfrage für Strom auf Phase 3",subtype:"text","model-value":n.component.configuration.jq_current_l3,"onUpdate:modelValue":e[8]||(e[8]=o=>n.updateConfiguration(o,"configuration.jq_current_l3"))},null,8,["model-value"])])}const L=p(b,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/json/counter.vue"]]);export{L as default}; diff --git a/web/settings/assets/counter-ee99dcfc.js b/web/settings/assets/counter-ee99dcfc.js new file mode 100644 index 0000000000..8ed319d50f --- /dev/null +++ b/web/settings/assets/counter-ee99dcfc.js @@ -0,0 +1 @@ +import{C as o}from"./HardwareInstallation-775406e1.js";import{_ as s,u as n,k as r,l as i,G as a,E as p,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceKostalSemCounter",mixins:[o]},l={class:"device-kostal-sem-counter"};function d(_,e,u,f,b,h){const t=n("openwb-base-alert");return r(),i("div",l,[a(t,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[c(" Diese Komponente ist nur richtig, wenn der Zähler NICHT direkt am Wechselrichter (Kostal Plenticore) angeschlossen ist und daher separat abgefragt werden muss. ")])),_:1})])}const N=s(m,[["render",d],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_sem/counter.vue"]]);export{N as default}; diff --git a/web/settings/assets/counter-f130bb29.js b/web/settings/assets/counter-f130bb29.js new file mode 100644 index 0000000000..be29e818ba --- /dev/null +++ b/web/settings/assets/counter-f130bb29.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as c,u as t,k as m,l as u,G as o,E as s,y as l,x as n,F as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceShellyCounter",mixins:[p]},f={class:"device-shelly-counter"},h={class:"small"};function b(r,e,y,g,x,v){const i=t("openwb-base-heading"),a=t("openwb-base-alert");return m(),u("div",f,[o(i,null,{default:s(()=>[e[0]||(e[0]=l(" Einstellungen für Shelly Zähler ")),n("span",h,"(Modul: "+d(r.$options.name)+")",1)]),_:1}),o(a,{subtype:"info"},{default:s(()=>e[1]||(e[1]=[n("span",{class:"text-danger"}," Als EVU-Zähler werden nur dreiphasige Shellys unterstützt (z.B. Shelly 3EM, Shelly Pro 3EM)",-1),n("br",null,null,-1),l(" Diese Komponente benötigt keine Einstellungen. ")])),_:1})])}const D=c(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/shelly/shelly/counter.vue"]]);export{D as default}; diff --git a/web/settings/assets/counter-f13f10a1.js b/web/settings/assets/counter-f13f10a1.js new file mode 100644 index 0000000000..fb76d28299 --- /dev/null +++ b/web/settings/assets/counter-f13f10a1.js @@ -0,0 +1 @@ +import{C as d}from"./HardwareInstallation-775406e1.js";import{_ as m,u as r,k as p,l as f,G as n,E as s,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSolaredgeCounter",mixins:[d]},b={class:"device-solaredge-counter"};function c(o,e,_,v,w,C){const l=r("openwb-base-heading"),u=r("openwb-base-alert"),i=r("openwb-base-number-input");return p(),f("div",b,[n(l,null,{default:s(()=>e[2]||(e[2]=[a(" Einstellungen für SolarEdge Zähler ")])),_:1}),n(u,{subtype:"info"},{default:s(()=>e[3]||(e[3]=[a(" Hierfür muss ein EVU-Zähler am SolarEdge Wechselrichter per Modbus angebunden sein. Der Zähler muss an erster Position im Wechselrichter konfiguriert sein. ")])),_:1}),n(i,{title:"SolarEdge-Geräte-ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.modbus_id"))},null,8,["model-value"]),n(i,{title:"SolarEdge-Meter-ID","model-value":o.component.configuration.meter_id,min:"1",max:"255",required:"","onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.meter_id"))},null,8,["model-value"])])}const M=m(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/counter.vue"]]);export{M as default}; diff --git a/web/settings/assets/counter_sm-33d0208f.js b/web/settings/assets/counter_sm-33d0208f.js new file mode 100644 index 0000000000..e995f30332 --- /dev/null +++ b/web/settings/assets/counter_sm-33d0208f.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as f,u as i,k as g,l as c,G as o,E as a,y as t,x as l,F as b}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceFroniusCounterSM",mixins:[p],computed:{meterRealtimeUrl:{get(){return`http://${this.device.configuration.ip_address}/solar_api/v1/GetMeterRealtimeData.cgi?Scope=System`}}}},v={class:"device-fronius-counter-sm"},w=["href"];function D(n,e,M,k,S,s){const d=i("openwb-base-heading"),m=i("openwb-base-select-input"),u=i("openwb-base-number-input");return g(),c("div",v,[o(d,null,{default:a(()=>e[2]||(e[2]=[t(" Einstellungen für Fronius SmartMeter ")])),_:1}),o(m,{title:"Kompatibilitätsmodus","not-selected":"Bitte auswählen",required:"",options:[{value:0,text:"Aus"},{value:1,text:"Variante 1"},{value:2,text:"Variante 2"}],"model-value":n.component.configuration.variant,"onUpdate:modelValue":e[0]||(e[0]=r=>n.updateConfiguration(r,"configuration.variant"))},{help:a(()=>e[3]||(e[3]=[t(" Gegebenenfalls auch für alte Modelle nach einem Softwareupdate erforderlich. Fronius hat derzeit keine Konsistente Schnittstelle. Speziell beim Gen24 kann Variante 1 oder 2 erforderlich sein. Nach speichern sollten nach etwa 10-20 Sekunden Daten angezeigt werden. Ist dies nicht der Fall die andere Variante ausprobieren. ")])),_:1},8,["model-value"]),o(u,{title:"Meter ID",required:"",min:"0",max:"65535","model-value":n.component.configuration.meter_id,"onUpdate:modelValue":e[1]||(e[1]=r=>n.updateConfiguration(r,"configuration.meter_id"))},{help:a(()=>[e[4]||(e[4]=t(" Die Meter ID des SmartMeters. Diese ist normalerweise 1. Bei mehreren SmartMetern im System kann es notwendig sein, die Meter ID zu ändern. Zur Ermittlung kann der folgende Link verwendet werden. Die Meter ID kann den zurückgegebenen JSON Daten entnommen werden. ")),l("a",{href:s.meterRealtimeUrl,target:"_blank",rel:"noopener noreferrer"},b(s.meterRealtimeUrl),9,w),e[5]||(e[5]=l("br",null,null,-1)),e[6]||(e[6]=t(' Im Abschnitt "Body" -> "Data" werden die installierten SmartMeter mit aktuellen Messwerten angezeigt. Die Meter ID ist die Zahl vor dem Doppelpunkt und den zugehörigen Messwerten. '))]),_:1},8,["model-value"])])}const N=f(_,[["render",D],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fronius/fronius/counter_sm.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-0030c6d0.js b/web/settings/assets/device-0030c6d0.js new file mode 100644 index 0000000000..8d19efac8d --- /dev/null +++ b/web/settings/assets/device-0030c6d0.js @@ -0,0 +1 @@ +import{D as v}from"./HardwareInstallation-775406e1.js";import{_ as g,u as o,k as m,l as _,G as s,E as u,y as i,x as n,F as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const A={name:"DeviceSonnenbatterie",mixins:[v],computed:{linkRestApi1(){return"http://"+this.device.configuration.ip_address+":7979/rest/devices/battery"},linkRestApi2(){return"http://"+this.device.configuration.ip_address+":7979/rest/devices/battery/M05"},linkJsonApi1(){return"http://"+this.device.configuration.ip_address+"/api/v1/status"},linkJsonApi2(){return"http://"+this.device.configuration.ip_address+"/api/v2/status"}}},k={class:"device-sonnenbatterie"},w={style:{display:"block"}},B=["href"],J=["href"],R=["href"],I=["href"];function P(r,e,x,h,C,t){const d=o("openwb-base-heading"),p=o("openwb-base-alert"),f=o("openwb-base-text-input"),b=o("openwb-base-select-input");return m(),_("div",k,[s(d,null,{default:u(()=>e[2]||(e[2]=[i(" Einstellungen für SonnenBatterie ")])),_:1}),s(p,{subtype:"info"},{default:u(()=>e[3]||(e[3]=[i(' Die Leistung steht nur in den Varianten "Rest-API 2" und "JSON-API" zur Verfügung. ')])),_:1}),s(f,{title:"IP oder Hostname",subtype:"host",required:"","model-value":r.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=a=>r.updateConfiguration(a,"configuration.ip_address"))},null,8,["model-value"]),s(b,{title:"Datenverbindung",required:"","not-selected":"Bitte auswählen",options:[{value:0,text:"Rest-API 1 (z.B. ECO 4)"},{value:2,text:"Rest-API 2 (z.B. ECO 6)"},{value:1,text:"JSON-API v1(z.B. ECO 8 oder 10)"},{value:3,text:"JSON-API v2(z.B. ECO 8 oder 10)"}],"model-value":r.device.configuration.variant,"onUpdate:modelValue":e[1]||(e[1]=a=>r.updateConfiguration(a,"configuration.variant"))},{help:u(()=>[n("span",w,[e[4]||(e[4]=i(" Je nach SonnenBatterie muss die richtige Datenverbindung ausgewählt werden. Folgende URLs werden zum Abruf der Daten genutzt und können auch manuell über einen Browser abgefragt werden, um die richtige Einstellung zu finden:")),e[5]||(e[5]=n("br",null,null,-1)),e[6]||(e[6]=i(" Rest-API 1: ")),n("a",{href:t.linkRestApi1,target:"_blank",rel:"noopener noreferrer"},l(t.linkRestApi1),9,B),e[7]||(e[7]=n("br",null,null,-1)),e[8]||(e[8]=i(" Rest-API 2: ")),n("a",{href:t.linkRestApi2,target:"_blank",rel:"noopener noreferrer"},l(t.linkRestApi2),9,J),e[9]||(e[9]=n("br",null,null,-1)),e[10]||(e[10]=i(" JSON-API v1: ")),n("a",{href:t.linkJsonApi1,target:"_blank",rel:"noopener noreferrer"},l(t.linkJsonApi1),9,R),e[11]||(e[11]=n("br",null,null,-1)),e[12]||(e[12]=i(" JSON-API v2: ")),n("a",{href:t.linkJsonApi2,target:"_blank",rel:"noopener noreferrer"},l(t.linkJsonApi2),9,I)])]),_:1},8,["model-value"])])}const U=g(A,[["render",P],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sonnen/sonnenbatterie/device.vue"]]);export{U as default}; diff --git a/web/settings/assets/device-07487eef.js b/web/settings/assets/device-07487eef.js new file mode 100644 index 0000000000..8e9f9e88d8 --- /dev/null +++ b/web/settings/assets/device-07487eef.js @@ -0,0 +1 @@ +import{D as m}from"./HardwareInstallation-775406e1.js";import{_ as u,u as s,k as p,l,G as t,E as r,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceLG",mixins:[m]},f={class:"device-lg"};function c(n,e,v,b,_,w){const d=s("openwb-base-heading"),o=s("openwb-base-text-input");return p(),l("div",f,[t(d,null,{default:r(()=>e[2]||(e[2]=[a(" Einstellungen für LG ESS V1.0 ")])),_:1}),t(o,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),t(o,{title:"Passwort",subtype:"password",required:"","model-value":n.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=i=>n.updateConfiguration(i,"configuration.password"))},{help:r(()=>e[3]||(e[3]=[a(' Passwort, um sich in den LG ESS V1.0 einzuloggen. Das Passwort ist standardmäßig die Registrierungsnummer, die sich auf einem Aufkleber auf dem PCS (dem Hybridwechselrichter und Batteriemanagementsystem) befindet. Alternativ findet man die Registrierungsnummer in der App unter dem Menüpunkt "Systeminformationen". Mit der Registrierungsnummer kann man sich dann in der Rolle "installer" einloggen. ')])),_:1},8,["model-value"])])}const B=u(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/lg/lg/device.vue"]]);export{B as default}; diff --git a/web/settings/assets/device-0c76d118.js b/web/settings/assets/device-0c76d118.js new file mode 100644 index 0000000000..68fa9001b7 --- /dev/null +++ b/web/settings/assets/device-0c76d118.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as m,u as i,k as v,l as b,G as n,E as s,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceGrowatt",mixins:[p]},g={class:"device-growatt"};function _(o,e,c,w,V,C){const a=i("openwb-base-heading"),d=i("openwb-base-text-input"),r=i("openwb-base-number-input"),l=i("openwb-base-select-input");return v(),b("div",g,[n(a,null,{default:s(()=>e[4]||(e[4]=[u("Einstellungen für Growatt")])),_:1}),n(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),n(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.port"))},null,8,["model-value"]),n(r,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.modbus_id"))},null,8,["model-value"]),n(l,{title:"Version","not-selected":"Bitte auswählen",options:[{value:"MAX",text:"MAX Series"},{value:"TL-X",text:"TL-X Inverter"}],"model-value":o.device.configuration.version,required:"","onUpdate:modelValue":e[3]||(e[3]=t=>o.updateConfiguration(t,"configuration.version"))},{help:s(()=>e[5]||(e[5]=[u(" Die Wahl der API-Version beeinflusst die Auslesung der Speicherleistung und der Import/ Export Werte des Zählers. ")])),_:1},8,["model-value"])])}const X=m(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/growatt/growatt/device.vue"]]);export{X as default}; diff --git a/web/settings/assets/device-0caf2ca7.js b/web/settings/assets/device-0caf2ca7.js new file mode 100644 index 0000000000..de1f6f4c9c --- /dev/null +++ b/web/settings/assets/device-0caf2ca7.js @@ -0,0 +1 @@ +import{D as d}from"./HardwareInstallation-775406e1.js";import{_ as u,u as i,k as p,l,G as t,E as m,y as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceVarta",mixins:[d]},b={class:"device-varta"};function _(o,e,c,g,w,V){const r=i("openwb-base-heading"),s=i("openwb-base-text-input"),a=i("openwb-base-number-input");return p(),l("div",b,[t(r,null,{default:m(()=>e[3]||(e[3]=[v(" Einstellungen für Varta ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=u(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/varta/varta/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-0ff15197.js b/web/settings/assets/device-0ff15197.js new file mode 100644 index 0000000000..b3639fb903 --- /dev/null +++ b/web/settings/assets/device-0ff15197.js @@ -0,0 +1 @@ +import{D as u}from"./HardwareInstallation-775406e1.js";import{_ as d,u as i,k as p,l,G as t,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceZCS",mixins:[u]},f={class:"device-azzurro_zcs"};function b(o,e,v,g,z,w){const a=i("openwb-base-heading"),s=i("openwb-base-text-input"),r=i("openwb-base-number-input");return p(),l("div",f,[t(a,null,{default:m(()=>e[3]||(e[3]=[_(" Einstellungen für Azzurro ZCS ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(r,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const U=d(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/azzurro_zcs/azzurro_zcs/device.vue"]]);export{U as default}; diff --git a/web/settings/assets/device-114f55c5.js b/web/settings/assets/device-114f55c5.js new file mode 100644 index 0000000000..5bdf590c2d --- /dev/null +++ b/web/settings/assets/device-114f55c5.js @@ -0,0 +1 @@ +import{D as m}from"./HardwareInstallation-775406e1.js";import{_ as v,u as t,k as i,l as f,G as a,E as c,y as b,z as u,B as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceAlphaess",mixins:[m]},_={class:"device-alphaess"};function w(e,o,V,C,k,B){const d=t("openwb-base-heading"),r=t("openwb-base-select-input"),p=t("openwb-base-text-input"),l=t("openwb-base-number-input");return i(),f("div",_,[a(d,null,{default:c(()=>o[5]||(o[5]=[b(" Einstellungen für Alpha ESS ")])),_:1}),a(r,{title:"Ausleseart","not-selected":"Bitte auswählen",required:"",options:[{value:0,text:"Alpha ESS-Kit"},{value:1,text:"Hi 5/10"}],"model-value":e.device.configuration.source,"onUpdate:modelValue":o[0]||(o[0]=n=>e.updateConfiguration(n,"configuration.source"))},null,8,["model-value"]),e.device.configuration.source==1?(i(),u(p,{key:0,title:"IP oder Hostname",subtype:"host",required:"","model-value":e.device.configuration.ip_address,"onUpdate:modelValue":o[1]||(o[1]=n=>e.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"])):s("",!0),e.device.configuration.source==1?(i(),u(l,{key:1,title:"Port",subtype:"host",required:"",min:1,max:65535,"model-value":e.device.configuration.port,"onUpdate:modelValue":o[2]||(o[2]=n=>e.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])):s("",!0),e.device.configuration.source==1?(i(),u(l,{key:2,title:"Modbus ID",required:"","model-value":e.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":o[3]||(o[3]=n=>e.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])):s("",!0),a(r,{title:"Firmware Version","not-selected":"Bitte auswählen",required:"",options:[{value:0,text:"EMS älter als 1.23V"},{value:1,text:"EMS 1.23V oder neuer"}],"model-value":e.device.configuration.version,"onUpdate:modelValue":o[4]||(o[4]=n=>e.updateConfiguration(n,"configuration.version"))},null,8,["model-value"])])}const h=v(g,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/alpha_ess/alpha_ess/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-15200209.js b/web/settings/assets/device-15200209.js new file mode 100644 index 0000000000..42fd69794a --- /dev/null +++ b/web/settings/assets/device-15200209.js @@ -0,0 +1 @@ +import{D as d}from"./HardwareInstallation-775406e1.js";import{_ as l,u as i,k as m,l as u,G as n,E as a,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceFems",mixins:[d]},c={class:"device-fems"};function v(o,e,_,b,g,w){const p=i("openwb-base-heading"),s=i("openwb-base-text-input");return m(),u("div",c,[n(p,null,{default:a(()=>e[2]||(e[2]=[r(" Einstellungen für openEMS, Fenecon FEMS, CENTURIO 10, Kaco Hy-Control ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),n(s,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},{help:a(()=>e[3]||(e[3]=[r(" Bei Nutzung von Fenecon FEMS ist das Passwort im Normalfall user, bei Kaco mit Hy-Control ist das Passwort meist admin. ")])),_:1},8,["model-value"])])}const V=l(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fems/fems/device.vue"]]);export{V as default}; diff --git a/web/settings/assets/device-15d1e8a4.js b/web/settings/assets/device-15d1e8a4.js new file mode 100644 index 0000000000..cb73cf2fd6 --- /dev/null +++ b/web/settings/assets/device-15d1e8a4.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as d,u as t,k as u,l,G as i,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceFoxEss",mixins:[a]},f={class:"device-fox_ess"};function b(o,e,v,g,x,w){const s=t("openwb-base-heading"),r=t("openwb-base-text-input"),p=t("openwb-base-number-input");return u(),l("div",f,[i(s,null,{default:m(()=>e[2]||(e[2]=[_("Einstellungen für FoxEss")])),_:1}),i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const F=d(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fox_ess/fox_ess/device.vue"]]);export{F as default}; diff --git a/web/settings/assets/device-172cdb34.js b/web/settings/assets/device-172cdb34.js new file mode 100644 index 0000000000..33250de8d7 --- /dev/null +++ b/web/settings/assets/device-172cdb34.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as d,u as n,k as u,l as m,G as i,E as l,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceMTec",mixins:[a]},f={class:"device-mtec"};function b(o,e,v,g,w,x){const s=n("openwb-base-heading"),r=n("openwb-base-text-input"),p=n("openwb-base-number-input");return u(),m("div",f,[i(s,null,{default:l(()=>e[2]||(e[2]=[c("Einstellungen für M-Tec")])),_:1}),i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.port"))},null,8,["model-value"])])}const q=d(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/mtec/mtec/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-17b568a4.js b/web/settings/assets/device-17b568a4.js new file mode 100644 index 0000000000..eb35feb7e8 --- /dev/null +++ b/web/settings/assets/device-17b568a4.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as d,u as t,k as u,l,G as i,E as m,y as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSigenergy",mixins:[a]},_={class:"device-sigenergy"};function f(o,e,b,v,w,y){const r=t("openwb-base-heading"),s=t("openwb-base-text-input"),p=t("openwb-base-number-input");return u(),l("div",_,[i(r,null,{default:m(()=>e[2]||(e[2]=[g("Einstellungen für Sigenergy")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const N=d(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sigenergy/sigenergy/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-19be8009.js b/web/settings/assets/device-19be8009.js new file mode 100644 index 0000000000..86726ec9f9 --- /dev/null +++ b/web/settings/assets/device-19be8009.js @@ -0,0 +1 @@ +import{D as s}from"./HardwareInstallation-775406e1.js";import{_ as u,u as i,k as p,l,G as t,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceE3dc",mixins:[s]},b={class:"device-e3dc"};function v(o,e,_,g,w,C){const a=i("openwb-base-heading"),r=i("openwb-base-text-input"),d=i("openwb-base-number-input");return p(),l("div",b,[t(a,null,{default:m(()=>e[3]||(e[3]=[c(" Einstellungen für E3DC ")])),_:1}),t(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.address"))},null,8,["model-value"]),t(d,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(d,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=u(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/e3dc/e3dc/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-1bc4846b.js b/web/settings/assets/device-1bc4846b.js new file mode 100644 index 0000000000..d5c6ca775e --- /dev/null +++ b/web/settings/assets/device-1bc4846b.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as d,u as i,k as u,l,G as t,E as m,y as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSaxpower",mixins:[p]},v={class:"device-saxpower"};function _(o,e,c,g,w,x){const r=i("openwb-base-heading"),s=i("openwb-base-text-input"),a=i("openwb-base-number-input");return u(),l("div",v,[t(r,null,{default:m(()=>e[3]||(e[3]=[f(" Einstellungen für Saxpower ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=d(b,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/saxpower/saxpower/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-288b048d.js b/web/settings/assets/device-288b048d.js new file mode 100644 index 0000000000..1dbf45b06b --- /dev/null +++ b/web/settings/assets/device-288b048d.js @@ -0,0 +1 @@ +import{D as u}from"./HardwareInstallation-775406e1.js";import{_ as l,u as n,k as m,l as b,G as t,E as s,y as c,x as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceDeye",mixins:[u]},v={class:"device-deye"};function g(o,e,w,y,x,C){const r=n("openwb-base-heading"),a=n("openwb-base-alert"),p=n("openwb-base-text-input"),d=n("openwb-base-number-input");return m(),b("div",v,[t(r,null,{default:s(()=>e[2]||(e[2]=[c("Einstellungen für Deye")])),_:1}),t(a,{subtype:"info"},{default:s(()=>e[3]||(e[3]=[_("span",{class:"text-danger"}," Deye Wechselrichter verfügen über keine Modbus-TCP Schnittstelle. Für die Auslesung wird ein RS485/LAN-Adapter benötigt. ",-1)])),_:1}),t(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>o.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),t(d,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=i=>o.updateConfiguration(i,"configuration.port"))},null,8,["model-value"])])}const q=l(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/deye/deye/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-2a66c054.js b/web/settings/assets/device-2a66c054.js new file mode 100644 index 0000000000..d93bda5031 --- /dev/null +++ b/web/settings/assets/device-2a66c054.js @@ -0,0 +1 @@ +import{D as l}from"./HardwareInstallation-775406e1.js";import{_ as r,u as a,k as d,l as p,G as i,E as u,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceTesla",mixins:[l]},v={class:"device-tesla"};function c(o,e,g,b,_,w){const s=a("openwb-base-heading"),n=a("openwb-base-text-input");return d(),p("div",v,[i(s,null,{default:u(()=>e[3]||(e[3]=[m(" Einstellungen für Tesla ")])),_:1}),i(n,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),i(n,{title:"E-Mail",subtype:"email",required:"","model-value":o.device.configuration.email,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.email"))},null,8,["model-value"]),i(n,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const D=r(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/tesla/tesla/device.vue"]]);export{D as default}; diff --git a/web/settings/assets/device-2d1936f7.js b/web/settings/assets/device-2d1936f7.js new file mode 100644 index 0000000000..48e7a1c319 --- /dev/null +++ b/web/settings/assets/device-2d1936f7.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as o,k as d,l,G as t,E as u,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceBenning",mixins:[p]},_={class:"device-benning"};function f(n,e,b,g,v,x){const i=o("openwb-base-heading"),s=o("openwb-base-text-input");return d(),l("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[m("Einstellungen für Benning")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=r=>n.updateConfiguration(r,"configuration.url"))},null,8,["model-value"])])}const y=a(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/benning/benning/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-2e356304.js b/web/settings/assets/device-2e356304.js new file mode 100644 index 0000000000..43f79e4311 --- /dev/null +++ b/web/settings/assets/device-2e356304.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as u,u as n,k as m,l as _,G as a,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceSolarwatt",mixins:[p]},v={class:"device-solarwatt"};function c(t,e,w,b,g,x){const s=n("openwb-base-heading"),l=n("openwb-base-text-input"),d=n("openwb-base-select-input");return m(),_("div",v,[a(s,null,{default:i(()=>e[2]||(e[2]=[r(" Einstellungen für Solarwatt/My Reserve ")])),_:1}),a(l,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),a(d,{title:"Abrufmethode","not-selected":"Bitte auswählen",options:[{value:0,text:"Gateway"},{value:1,text:"Energy Manager"}],"model-value":t.device.configuration.energy_manager,required:"","onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.energy_manager"))},{help:i(()=>e[3]||(e[3]=[r(" Wenn beide Abrufmethoden verwendet werden sollen, muss für jede Methode ein Gerät erstellt werden. ")])),_:1},8,["model-value"])])}const D=u(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_watt/solar_watt/device.vue"]]);export{D as default}; diff --git a/web/settings/assets/device-34727394.js b/web/settings/assets/device-34727394.js new file mode 100644 index 0000000000..51c3f64969 --- /dev/null +++ b/web/settings/assets/device-34727394.js @@ -0,0 +1 @@ +import{D as m}from"./HardwareInstallation-775406e1.js";import{_ as l,u as i,k as b,l as f,G as t,E as r,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSiemens",mixins:[m]},v={class:"device-siemens"};function c(o,e,g,w,C,x){const p=i("openwb-base-heading"),d=i("openwb-base-alert"),u=i("openwb-base-text-input"),s=i("openwb-base-number-input");return b(),f("div",v,[t(p,null,{default:r(()=>e[3]||(e[3]=[a(" Einstellungen für Siemens ")])),_:1}),t(d,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[a(" Im Siemens-Speicher muss die Schnittstelle openWB gewählt werden. ")])),_:1}),t(u,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(s,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const I=l(_,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/siemens/siemens/device.vue"]]);export{I as default}; diff --git a/web/settings/assets/device-3c89ec9b.js b/web/settings/assets/device-3c89ec9b.js new file mode 100644 index 0000000000..720b6251f2 --- /dev/null +++ b/web/settings/assets/device-3c89ec9b.js @@ -0,0 +1 @@ +import{D as l}from"./HardwareInstallation-775406e1.js";import{_ as m,u as n,k as b,l as _,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSunnyBoy",mixins:[l]},f={class:"device-sunnyboy"};function v(o,e,w,y,g,x){const a=n("openwb-base-heading"),p=n("openwb-base-alert"),d=n("openwb-base-text-input"),u=n("openwb-base-number-input");return b(),_("div",f,[t(a,null,{default:r(()=>e[2]||(e[2]=[s(" Einstellungen für SMA Sunny Boy/Tripower ")])),_:1}),t(p,{subtype:"info"},{default:r(()=>e[3]||(e[3]=[s(' ModbusTCP muss entweder direkt am Wechselrichter, per Sunny Portal oder über das Tool "Sunny Explorer" aktiviert werden. Dies ist standardmäßig deaktiviert. ')])),_:1}),t(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>o.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),t(u,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=i=>o.updateConfiguration(i,"configuration.port"))},null,8,["model-value"])])}const $=m(c,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-48b233fa.js b/web/settings/assets/device-48b233fa.js new file mode 100644 index 0000000000..108f6b91c0 --- /dev/null +++ b/web/settings/assets/device-48b233fa.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as t,k as l,l as d,G as n,E as m,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSolarLog",mixins:[a]},c={class:"device-solar_log"};function f(o,e,g,v,b,x){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return l(),d("div",c,[n(i,null,{default:m(()=>e[1]||(e[1]=[u(" Einstellungen für Solar-Log ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const y=p(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_log/solar_log/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-61d30aae.js b/web/settings/assets/device-61d30aae.js new file mode 100644 index 0000000000..eb25e81ce7 --- /dev/null +++ b/web/settings/assets/device-61d30aae.js @@ -0,0 +1 @@ +import{D as m}from"./HardwareInstallation-775406e1.js";import{_ as v,u as t,k as b,l as f,G as i,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceGoodWe",mixins:[m]},w={class:"device-goodwe"};function _(o,e,W,c,D,V){const l=t("openwb-base-heading"),a=t("openwb-base-alert"),p=t("openwb-base-text-input"),d=t("openwb-base-number-input"),u=t("openwb-base-select-input");return b(),f("div",w,[i(l,null,{default:r(()=>e[5]||(e[5]=[s("Einstellungen für GoodWe")])),_:1}),i(a,{subtype:"info"},{default:r(()=>e[6]||(e[6]=[s(" GoodWe-Wechselrichter verfügen über 3 Dongle: Den WiFi-Dongle, das Wifi-Lan-Kit und das Wifi-Lan-Kit 2.0. Die Einbindung über dieses Modul ist nur mit den Wifi-Lan-Kits möglich. Welches Kit benötigt wird ist vom Wechselrichter abhängig und kann bei GoodWe erfragt werden. ")])),_:1}),i(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(d,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),i(d,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"]),i(u,{title:"API-Version","not-selected":"Bitte auswählen",options:[{value:"v_1_7",text:"v1.7"},{value:"v_1_1",text:"v1.0/ v1.1"}],"model-value":o.device.configuration.version,required:"","onUpdate:modelValue":e[3]||(e[3]=n=>o.updateConfiguration(n,"configuration.version"))},{help:r(()=>e[7]||(e[7]=[s(" Die Wahl der API-Version beeinflusst die Auslesung der Speicherleistung und der Import/ Export Werte des Zählers. ")])),_:1},8,["model-value"]),i(u,{title:"Firmware","not-selected":"Bitte auswählen",options:[{value:8,text:"ARM < 9.0"},{value:9,text:"ARM ab 9.0"}],"model-value":o.device.configuration.firmware,required:"","onUpdate:modelValue":e[4]||(e[4]=n=>o.updateConfiguration(n,"configuration.firmware"))},{help:r(()=>e[8]||(e[8]=[s(" Die Auswahl der Firmware-Version beeinflusst die Auslesung der Wirkleistung und der Phasenströme des Zählers. ")])),_:1},8,["model-value"])])}const I=v(g,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/good_we/good_we/device.vue"]]);export{I as default}; diff --git a/web/settings/assets/device-64073da7.js b/web/settings/assets/device-64073da7.js new file mode 100644 index 0000000000..62508e2903 --- /dev/null +++ b/web/settings/assets/device-64073da7.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as t,k as d,l as c,G as n,E as m,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const u={name:"DeviceRCT",mixins:[p]},_={class:"device-rct"};function f(o,e,v,b,g,x){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),c("div",_,[n(i,null,{default:m(()=>e[1]||(e[1]=[l(" Einstellungen für RCT ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const h=a(u,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/rct/rct/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-6c4bc3a2.js b/web/settings/assets/device-6c4bc3a2.js new file mode 100644 index 0000000000..18673542e6 --- /dev/null +++ b/web/settings/assets/device-6c4bc3a2.js @@ -0,0 +1 @@ +import{D as u}from"./HardwareInstallation-775406e1.js";import{_ as m,u as i,k as c,l as b,G as t,E as r,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceKostalPlenticore",mixins:[u]},_={class:"device-kostal-plenticore"};function v(o,e,g,w,k,C){const l=i("openwb-base-heading"),p=i("openwb-base-alert"),d=i("openwb-base-text-input"),s=i("openwb-base-number-input");return c(),b("div",_,[t(l,null,{default:r(()=>e[3]||(e[3]=[a(" Einstellungen für Kostal Plenticore ")])),_:1}),t(p,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[a(" Wenn am Kostal Plenticore-Wechselrichter ein EM300 oder Kostal Energy Smart Meter (KSEM) angeschlossen ist, muss eine Zähler-und eine Wechselrichter-Komponente angelegt werden. ")])),_:1}),t(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(s,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const $=m(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_plenticore/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-6e81103e.js b/web/settings/assets/device-6e81103e.js new file mode 100644 index 0000000000..5eb8641468 --- /dev/null +++ b/web/settings/assets/device-6e81103e.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as d,u as t,k as u,l,G as i,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSunnyIsland",mixins:[p]},f={class:"device-sunnyisland"};function b(n,e,v,g,w,x){const s=t("openwb-base-heading"),a=t("openwb-base-text-input"),r=t("openwb-base-number-input");return u(),l("div",f,[i(s,null,{default:m(()=>e[2]||(e[2]=[_(" Einstellungen für Sunny Island ")])),_:1}),i(a,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(r,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.port"))},null,8,["model-value"])])}const q=d(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_island/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-6fdb7208.js b/web/settings/assets/device-6fdb7208.js new file mode 100644 index 0000000000..ffd510fbc0 --- /dev/null +++ b/web/settings/assets/device-6fdb7208.js @@ -0,0 +1 @@ +import{D as d}from"./HardwareInstallation-775406e1.js";import{_ as u,u as i,k as p,l,G as t,E as m,y as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSofar",mixins:[d]},v={class:"device-sofar"};function _(o,e,c,g,w,C){const r=i("openwb-base-heading"),s=i("openwb-base-text-input"),a=i("openwb-base-number-input");return p(),l("div",v,[t(r,null,{default:m(()=>e[3]||(e[3]=[f("Einstellungen für Sofar")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=u(b,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sofar/sofar/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-70884df8.js b/web/settings/assets/device-70884df8.js new file mode 100644 index 0000000000..66b2900ef3 --- /dev/null +++ b/web/settings/assets/device-70884df8.js @@ -0,0 +1 @@ +import{D as m}from"./HardwareInstallation-775406e1.js";import{_ as b,u as i,k as g,l as v,G as t,E as r,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceSungrow",mixins:[m]},w={class:"device-sungrow"};function _(n,e,c,S,D,N){const s=i("openwb-base-heading"),d=i("openwb-base-alert"),a=i("openwb-base-text-input"),l=i("openwb-base-number-input"),p=i("openwb-base-select-input");return g(),v("div",w,[t(s,null,{default:r(()=>e[4]||(e[4]=[u(" Einstellungen für Sungrow ")])),_:1}),t(d,{subtype:"info"},{default:r(()=>e[5]||(e[5]=[u(" Bitte zur Fehlervermeidung die Firmware des Sungrow Wechselrichters und WiNet-S Dongles aktuell halten. ")])),_:1}),t(a,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),t(l,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.port"))},null,8,["model-value"]),t(l,{title:"Modbus ID",required:"","model-value":n.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.modbus_id"))},null,8,["model-value"]),t(p,{title:"Version",options:[{value:0,text:"SH (Hybrid)"},{value:3,text:"SH (Hybrid) über WiNet-S Dongle"},{value:1,text:"SG (kein Hybrid)"},{value:2,text:"SG (kein Hybrid) über WiNet-S Dongle"}],"model-value":n.device.configuration.version,required:"","onUpdate:modelValue":e[3]||(e[3]=o=>n.updateConfiguration(o,"configuration.version"))},{help:r(()=>e[6]||(e[6]=[u(" Die Variante SH sollte möglichst über den internen LAN-Port genutzt werden (befindet sich am Wechselrichter hinter dem WiNet-S Dongle), da nur hier alle Werte vollständig ausgelesen werden können. Den WiNet-S Dongle zusätzlich ins Heimnetz (per LAN oder WLAN) einbinden, um iSolarCloud nutzen zu können. ")])),_:1},8,["model-value"])])}const q=b(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sungrow/sungrow/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-74af41f9.js b/web/settings/assets/device-74af41f9.js new file mode 100644 index 0000000000..ff7b1d8a00 --- /dev/null +++ b/web/settings/assets/device-74af41f9.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as d,u as n,k as u,l,G as i,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceStuder",mixins:[a]},f={class:"device-studer"};function b(o,e,v,g,w,x){const r=n("openwb-base-heading"),s=n("openwb-base-text-input"),p=n("openwb-base-number-input");return u(),l("div",f,[i(r,null,{default:m(()=>e[2]||(e[2]=[c(" Einstellungen für Studer ")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.port"))},null,8,["model-value"])])}const N=d(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/studer/studer/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-76c2a64a.js b/web/settings/assets/device-76c2a64a.js new file mode 100644 index 0000000000..c4121f99f0 --- /dev/null +++ b/web/settings/assets/device-76c2a64a.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as s,k as u,l as m,G as n,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmartMe",mixins:[a]},f={class:"device-smart-me"};function v(o,e,_,b,g,w){const r=s("openwb-base-heading"),i=s("openwb-base-text-input");return u(),m("div",f,[n(r,null,{default:d(()=>e[2]||(e[2]=[l(" Einstellungen für smart-me ")])),_:1}),n(i,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),n(i,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const q=p(c,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/smart_me/smart_me/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-7ebf1222.js b/web/settings/assets/device-7ebf1222.js new file mode 100644 index 0000000000..a1e949ea7a --- /dev/null +++ b/web/settings/assets/device-7ebf1222.js @@ -0,0 +1 @@ +import{D as u}from"./HardwareInstallation-775406e1.js";import{_ as p,u as r,k as d,l as m,G as i,E as s,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceKostalPikoOld",mixins:[u]},v={class:"device-kostal-piko-old"};function c(o,e,g,b,k,w){const a=r("openwb-base-heading"),n=r("openwb-base-text-input");return d(),m("div",v,[i(a,null,{default:s(()=>e[3]||(e[3]=[l(" Einstellungen für Kostal Piko (alte Generation) ")])),_:1}),i(n,{title:"URL",subtype:"url",required:"","model-value":o.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.url"))},{help:s(()=>e[4]||(e[4]=[l(' Es wird eine komplette URL inklusive Protokoll erwartet. Normalerweise ist der Wechselrichter über "http://IP" zu erreichen. ')])),_:1},8,["model-value"]),i(n,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),i(n,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const q=p(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_piko_old/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-7fc9a4c5.js b/web/settings/assets/device-7fc9a4c5.js new file mode 100644 index 0000000000..f7fb276191 --- /dev/null +++ b/web/settings/assets/device-7fc9a4c5.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as d,u as t,k as l,l as u,G as i,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceOpenwbFlex",mixins:[a]},c={class:"device-openwb-flex"};function f(o,e,v,w,g,x){const p=t("openwb-base-heading"),s=t("openwb-base-text-input"),r=t("openwb-base-number-input");return l(),u("div",c,[i(p,null,{default:m(()=>e[2]||(e[2]=[_(" Einstellungen für openWB-Flex ")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const F=d(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/device.vue"]]);export{F as default}; diff --git a/web/settings/assets/device-82678599.js b/web/settings/assets/device-82678599.js new file mode 100644 index 0000000000..d3f81b5065 --- /dev/null +++ b/web/settings/assets/device-82678599.js @@ -0,0 +1 @@ +import{D as l}from"./HardwareInstallation-775406e1.js";import{_ as d,u as t,k as m,l as u,G as i,E as s,y as o,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceJson",mixins:[l]},f={class:"device-json"};function b(n,e,v,g,w,x){const r=t("openwb-base-heading"),a=t("openwb-base-text-input");return m(),u("div",f,[i(r,null,{default:s(()=>e[1]||(e[1]=[o(" Einstellungen für JSON ")])),_:1}),i(a,{title:"URL",subtype:"url",required:"","model-value":n.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=p=>n.updateConfiguration(p,"configuration.url"))},{help:s(()=>e[2]||(e[2]=[o(" Es wird eine komplette URL erwartet mit Angaben zum Protokoll, IP oder Hostnamen, optional einem Port und einem Pfad. Die Antwort muss ein json-Objekt sein."),c("br",null,null,-1),o(" Beispiel: http://192.168.1.1:8080/json?data=1 ")])),_:1},8,["model-value"])])}const $=d(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/json/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-856db98a.js b/web/settings/assets/device-856db98a.js new file mode 100644 index 0000000000..f964005ad0 --- /dev/null +++ b/web/settings/assets/device-856db98a.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as r,k as u,l as d,G as n,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DevicePowerfox",mixins:[a]},c={class:"device-powerfox"};function v(o,e,w,_,b,g){const s=r("openwb-base-heading"),i=r("openwb-base-text-input");return u(),d("div",c,[n(s,null,{default:l(()=>e[2]||(e[2]=[m(" Einstellungen für Powerfox ")])),_:1}),n(i,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),n(i,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const P=p(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerfox/powerfox/device.vue"]]);export{P as default}; diff --git a/web/settings/assets/device-85821cd0.js b/web/settings/assets/device-85821cd0.js new file mode 100644 index 0000000000..71a61d0fa5 --- /dev/null +++ b/web/settings/assets/device-85821cd0.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as s,k as d,l as u,G as n,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceDiscovergy",mixins:[a]},v={class:"device-discovergy"};function f(o,e,g,_,b,w){const r=s("openwb-base-heading"),i=s("openwb-base-text-input");return d(),u("div",v,[n(r,null,{default:l(()=>e[2]||(e[2]=[m(" Einstellungen für Discovergy ")])),_:1}),n(i,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),n(i,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const q=p(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/discovergy/discovergy/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-8c20d3d7.js b/web/settings/assets/device-8c20d3d7.js new file mode 100644 index 0000000000..0a863f9361 --- /dev/null +++ b/web/settings/assets/device-8c20d3d7.js @@ -0,0 +1 @@ +import{D as d}from"./HardwareInstallation-775406e1.js";import{_ as u,u as t,k as c,l as m,G as o,E as s,y as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceKostalPiko",mixins:[d]},f={class:"device-kostal-piko"};function b(n,e,v,g,k,h){const a=t("openwb-base-heading"),r=t("openwb-base-alert"),p=t("openwb-base-text-input");return c(),m("div",f,[o(a,null,{default:s(()=>e[1]||(e[1]=[i(" Einstellungen für Kostal Piko ")])),_:1}),o(r,{subtype:"info"},{default:s(()=>e[2]||(e[2]=[i(" Der Wechselrichter liefert Werte nur, solange er auch PV-Leistung liefert. Nachts geht er in den Standby. Die Hausanschlussüberwachung ist nur aktiv, wenn der Wechselrichter auch aktiv ist. ")])),_:1}),o(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=l=>n.updateConfiguration(l,"configuration.ip_address"))},null,8,["model-value"])])}const B=u(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_piko/device.vue"]]);export{B as default}; diff --git a/web/settings/assets/device-8fd0cfd3.js b/web/settings/assets/device-8fd0cfd3.js new file mode 100644 index 0000000000..684cb03e6f --- /dev/null +++ b/web/settings/assets/device-8fd0cfd3.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as d,u as s,k as u,l as p,G as t,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceBYD",mixins:[a]},v={class:"device-byd"};function b(o,e,c,g,_,w){const r=s("openwb-base-heading"),i=s("openwb-base-text-input");return u(),p("div",v,[t(r,null,{default:l(()=>e[3]||(e[3]=[m(" Einstellungen für BYD ")])),_:1}),t(i,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(i,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.user"))},null,8,["model-value"]),t(i,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.password"))},null,8,["model-value"])])}const E=d(f,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/byd/byd/device.vue"]]);export{E as default}; diff --git a/web/settings/assets/device-9571fc19.js b/web/settings/assets/device-9571fc19.js new file mode 100644 index 0000000000..03fd741554 --- /dev/null +++ b/web/settings/assets/device-9571fc19.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as t,k as d,l,G as n,E as m,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSolarWorld",mixins:[a]},c={class:"device-solar_world"};function f(o,e,v,b,w,g){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),l("div",c,[n(i,null,{default:m(()=>e[1]||(e[1]=[u(" Einstellungen für SolarWorld ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const h=p(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_world/solar_world/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-97849187.js b/web/settings/assets/device-97849187.js new file mode 100644 index 0000000000..0c93c7a955 --- /dev/null +++ b/web/settings/assets/device-97849187.js @@ -0,0 +1 @@ +import{D as l}from"./HardwareInstallation-775406e1.js";import{_ as m,u as i,k as b,l as f,G as t,E as s,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DevicePowerdog",mixins:[l]},v={class:"device-powerdog"};function g(o,e,c,w,C,x){const a=i("openwb-base-heading"),p=i("openwb-base-alert"),u=i("openwb-base-text-input"),r=i("openwb-base-number-input");return b(),f("div",v,[t(a,null,{default:s(()=>e[3]||(e[3]=[d(" Einstellungen für Powerdog ")])),_:1}),t(p,{subtype:"info"},{default:s(()=>e[4]||(e[4]=[d(" ModbusTCP muss aktiviert sein. ")])),_:1}),t(u,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(r,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const M=m(_,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerdog/powerdog/device.vue"]]);export{M as default}; diff --git a/web/settings/assets/device-9bc9bf37.js b/web/settings/assets/device-9bc9bf37.js new file mode 100644 index 0000000000..7185fdc99e --- /dev/null +++ b/web/settings/assets/device-9bc9bf37.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as u,u as n,k as d,l as m,G as i,E as l,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceHuaweiSmartLogger",mixins:[p]},g={class:"device-huawei-smart-logger"};function f(o,e,b,v,w,x){const r=n("openwb-base-heading"),a=n("openwb-base-text-input"),s=n("openwb-base-number-input");return d(),m("div",g,[i(r,null,{default:l(()=>e[2]||(e[2]=[_(" Einstellungen für Huawei SmartLogger ")])),_:1}),i(a,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),i(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.port"))},null,8,["model-value"])])}const q=u(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei_smartlogger/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-9d6e08b7.js b/web/settings/assets/device-9d6e08b7.js new file mode 100644 index 0000000000..82498d87ea --- /dev/null +++ b/web/settings/assets/device-9d6e08b7.js @@ -0,0 +1 @@ +import{D as r}from"./HardwareInstallation-775406e1.js";import{_ as l,u as n,k as u,l as d,G as a,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceTasmota",mixins:[r]},v={class:"device-tasmota"};function f(t,e,b,g,w,x){const i=n("openwb-base-heading"),s=n("openwb-base-text-input"),p=n("openwb-base-select-input");return u(),d("div",v,[a(i,null,{default:m(()=>e[2]||(e[2]=[c("Einstellungen für Tasmota")])),_:1}),a(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),a(p,{title:"Phase","not-selected":"Bitte auswählen",options:[{value:1,text:"1"},{value:2,text:"2"},{value:3,text:"3"}],"model-value":t.device.configuration.phase,required:"","onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.phase"))},null,8,["model-value"])])}const q=l(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/tasmota/tasmota/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-9de767a2.js b/web/settings/assets/device-9de767a2.js new file mode 100644 index 0000000000..a60e332d68 --- /dev/null +++ b/web/settings/assets/device-9de767a2.js @@ -0,0 +1 @@ +import{D as d}from"./HardwareInstallation-775406e1.js";import{_ as u,u as i,k as l,l as p,G as t,E as m,y as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceKostalSEM",mixins:[d]},v={class:"device-kostal-sem"};function _(o,e,c,g,w,k){const s=i("openwb-base-heading"),r=i("openwb-base-text-input"),a=i("openwb-base-number-input");return l(),p("div",v,[t(s,null,{default:m(()=>e[3]||(e[3]=[f(" Einstellungen für Kostal Smart Energy Meter oder TQ EM 410 ")])),_:1}),t(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const B=u(b,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_sem/device.vue"]]);export{B as default}; diff --git a/web/settings/assets/device-9e5e0b35.js b/web/settings/assets/device-9e5e0b35.js new file mode 100644 index 0000000000..83fba98e4a --- /dev/null +++ b/web/settings/assets/device-9e5e0b35.js @@ -0,0 +1 @@ +import{D as u}from"./HardwareInstallation-775406e1.js";import{_ as p,u as i,k as m,l as g,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSolax",mixins:[u]},f={class:"device-solax"};function v(o,e,c,_,x,w){const d=i("openwb-base-heading"),l=i("openwb-base-text-input"),a=i("openwb-base-number-input");return m(),g("div",f,[t(d,null,{default:r(()=>e[3]||(e[3]=[s(" Einstellungen für Solax ")])),_:1}),t(l,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",min:1,max:65535,placeholder:502,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},{help:r(()=>e[4]||(e[4]=[s(" Standardmäßig ist der Port 502. Dieser sollte nur geändert werden, wenn der Solax Wechselrichter auf einen anderen Port konfiguriert wurde. ")])),_:1},8,["model-value"]),t(a,{title:"Modbus-ID",required:"",min:0,max:255,"model-value":o.device.configuration.modbus_id,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},{help:r(()=>e[5]||(e[5]=[s(" Laut der Schnittstellenbeschreibung ist die ID bei Solax ab Werk auf 1 gesetzt. Entgegen der Beschreibung ist meist für Gen4 eine ID größer als 2 eingestellt. Bei Gen3 sogar (gegen jeglicher Modbus Standards) eine 0. ")])),_:1},8,["model-value"])])}const $=p(b,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solax/solax/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-a1acba70.js b/web/settings/assets/device-a1acba70.js new file mode 100644 index 0000000000..6c59326445 --- /dev/null +++ b/web/settings/assets/device-a1acba70.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as r,u as t,k as d,l as m,G as n,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmaWebbox",mixins:[p]},_={class:"device-sma-webbox"};function b(o,e,f,v,x,g){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),m("div",_,[n(i,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für SMA Webbox ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.ip_address"))},null,8,["model-value"])])}const h=r(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_webbox/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-a866f0a5.js b/web/settings/assets/device-a866f0a5.js new file mode 100644 index 0000000000..215697b038 --- /dev/null +++ b/web/settings/assets/device-a866f0a5.js @@ -0,0 +1 @@ +import{D as l}from"./HardwareInstallation-775406e1.js";import{_ as p,u as n,k as m,l as c,G as t,E as r,y as o,x as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceFronius",mixins:[l]},b={class:"device-fronius"};function g(i,e,v,h,w,x){const s=n("openwb-base-heading"),a=n("openwb-base-alert"),d=n("openwb-base-text-input");return m(),c("div",b,[t(s,null,{default:r(()=>e[1]||(e[1]=[o(" Einstellungen für Fronius ")])),_:1}),t(a,{subtype:"info"},{default:r(()=>e[2]||(e[2]=[o(" Die Fronius API muss aktiviert sein."),_("br",null,null,-1),o(" Sind nur Symos in Nutzung, welche über Fronius Solar Net / DATCOM miteinander verbunden sind, muss nur ein Gerät mit einer Komponente Wechselrichter angelegt werden. Sind aber z.B. Symo und Symo Hybrid im Einsatz, muss für jeden Wechselrichter ein Gerät mit einer Komponente Wechselrichter angelegt werden. Die Zähler-Komponente für das Smart-Meter wird in dem Gerät angelegt, dass den Wechselrichter enthält, an den das SmartMeter angeschlossen ist. ")])),_:1}),t(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":i.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=u=>i.updateConfiguration(u,"configuration.ip_address"))},null,8,["model-value"])])}const F=p(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fronius/fronius/device.vue"]]);export{F as default}; diff --git a/web/settings/assets/device-a9050752.js b/web/settings/assets/device-a9050752.js new file mode 100644 index 0000000000..2d2461e7a2 --- /dev/null +++ b/web/settings/assets/device-a9050752.js @@ -0,0 +1 @@ +import{D as r}from"./HardwareInstallation-775406e1.js";import{_ as a,u as t,k as d,l as u,G as n,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceOpenDTU",mixins:[r]},_={class:"device-opendtu"};function f(o,e,v,b,g,x){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),u("div",_,[n(i,null,{default:l(()=>e[1]||(e[1]=[m("Einstellungen für OpenDTU")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=p=>o.updateConfiguration(p,"configuration.url"))},null,8,["model-value"])])}const V=a(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/opendtu/opendtu/device.vue"]]);export{V as default}; diff --git a/web/settings/assets/device-a90d36a5.js b/web/settings/assets/device-a90d36a5.js new file mode 100644 index 0000000000..f98a819a4b --- /dev/null +++ b/web/settings/assets/device-a90d36a5.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as o,k as d,l as m,G as n,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceBatterX",mixins:[a]},_={class:"device-batterx"};function f(t,e,b,v,x,g){const i=o("openwb-base-heading"),s=o("openwb-base-text-input");return d(),m("div",_,[n(i,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für BatterX ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const y=p(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/batterx/batterx/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-abf68242.js b/web/settings/assets/device-abf68242.js new file mode 100644 index 0000000000..4c48220ea1 --- /dev/null +++ b/web/settings/assets/device-abf68242.js @@ -0,0 +1 @@ +import{D as m}from"./HardwareInstallation-775406e1.js";import{_ as l,u as i,k as b,l as f,G as t,E as r,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSiemensSentron",mixins:[m]},v={class:"device-siemens-sentron"};function c(n,e,g,w,C,x){const u=i("openwb-base-heading"),p=i("openwb-base-alert"),d=i("openwb-base-text-input"),s=i("openwb-base-number-input");return b(),f("div",v,[t(u,null,{default:r(()=>e[3]||(e[3]=[a(" Einstellungen für Siemens Sentron ")])),_:1}),t(p,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[a(' Derzeit werden nur Messgeräte vom Typ "7KM PAC2200" mit Ethernet-Schnittstelle unterstützt. ')])),_:1}),t(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.port"))},null,8,["model-value"]),t(s,{title:"Modbus ID",required:"","model-value":n.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.modbus_id"))},null,8,["model-value"])])}const B=l(_,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/siemens/siemens_sentron/device.vue"]]);export{B as default}; diff --git a/web/settings/assets/device-ac8fcd8e.js b/web/settings/assets/device-ac8fcd8e.js new file mode 100644 index 0000000000..c1b70e9479 --- /dev/null +++ b/web/settings/assets/device-ac8fcd8e.js @@ -0,0 +1 @@ +import{D as d}from"./HardwareInstallation-775406e1.js";import{_ as m,u as t,k as l,l as u,G as n,E as i,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceVZLogger",mixins:[d]},c={class:"device-vzlogger"};function _(o,e,v,f,b,w){const r=t("openwb-base-heading"),p=t("openwb-base-text-input");return l(),u("div",c,[n(r,null,{default:i(()=>e[1]||(e[1]=[s(" Einstellungen für VZLogger ")])),_:1}),n(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.ip_address"))},{help:i(()=>e[2]||(e[2]=[s(" Bei Angabe des Ports muss auch das Schema mit angegeben werden: http://ip:port ")])),_:1},8,["model-value"])])}const E=m(g,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/vzlogger/vzlogger/device.vue"]]);export{E as default}; diff --git a/web/settings/assets/device-b0639a26.js b/web/settings/assets/device-b0639a26.js new file mode 100644 index 0000000000..b22240d7b1 --- /dev/null +++ b/web/settings/assets/device-b0639a26.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as l,u as t,k as m,l as d,G as i,E as u,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSolarmax",mixins:[p]},f={class:"device-solarmax"};function b(o,e,v,g,x,w){const a=t("openwb-base-heading"),r=t("openwb-base-text-input"),s=t("openwb-base-number-input");return m(),d("div",f,[i(a,null,{default:u(()=>e[2]||(e[2]=[c(" Einstellungen für Solarmax ")])),_:1}),i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const N=l(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solarmax/solarmax/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-b1969620.js b/web/settings/assets/device-b1969620.js new file mode 100644 index 0000000000..cbe35fe8c6 --- /dev/null +++ b/web/settings/assets/device-b1969620.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as d,u as t,k as l,l as m,G as i,E as s,y as n,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const p={name:"DeviceMqtt",mixins:[a]},u={class:"device-mqtt"};function g(_,e,b,f,h,v){const r=t("openwb-base-heading"),o=t("openwb-base-alert");return l(),m("div",u,[i(r,null,{default:s(()=>e[0]||(e[0]=[n("Einstellungen für MQTT")])),_:1}),i(o,{subtype:"info"},{default:s(()=>e[1]||(e[1]=[n(" Das MQTT Modul stellt keine aktive Verbindung her, sondern erwartet, dass die Daten an die angegebenen Topics im Broker gesendet werden. Da die Daten direkt an den Broker gesendet werden, erfolgt keine Verrechnung bei Hybrid-Systemen und auch keine Berechnung fehlender Werte, z.B. von Phasen-Leistung aus Spannung und Strömen. Beim Logging und im Lastmanagement, z.B. bei verschachtelten Zählern, werden die MQTT-Zähler wie gewohnt berücksichtigt."),c("br",null,null,-1),n(" Alle Daten sind als gültiges JSON zu senden! Zahlen mit Nachkommastellen (Float) müssen einen Punkt als Dezimaltrenner verwenden (internationales Format). ")])),_:1})])}const y=d(p,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/mqtt/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-b24172e8.js b/web/settings/assets/device-b24172e8.js new file mode 100644 index 0000000000..dec9f951ef --- /dev/null +++ b/web/settings/assets/device-b24172e8.js @@ -0,0 +1 @@ +import{D as r}from"./HardwareInstallation-775406e1.js";import{_ as p,u as t,k as d,l,G as n,E as c,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const u={name:"DeviceKostalSteca",mixins:[r]},_={class:"device-kostal-steca"};function f(o,e,v,b,g,k){const s=t("openwb-base-heading"),i=t("openwb-base-text-input");return d(),l("div",_,[n(s,null,{default:c(()=>e[1]||(e[1]=[m(" Einstellungen für Kostal Piko MP oder Steca Grid Coolcept ")])),_:1}),n(i,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.ip_address"))},null,8,["model-value"])])}const h=p(u,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_steca/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-b3827712.js b/web/settings/assets/device-b3827712.js new file mode 100644 index 0000000000..b5116c32e7 --- /dev/null +++ b/web/settings/assets/device-b3827712.js @@ -0,0 +1 @@ +import{D as u}from"./HardwareInstallation-775406e1.js";import{_ as l,u as i,k as p,l as d,G as t,E as m,y as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceSolarView",mixins:[u]},_={class:"device-solar-view"};function c(o,e,b,g,w,V){const a=i("openwb-base-heading"),s=i("openwb-base-text-input"),r=i("openwb-base-number-input");return p(),d("div",_,[t(a,null,{default:m(()=>e[3]||(e[3]=[v(" Einstellungen für SolarView ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(r,{title:"Timeout",required:"","model-value":o.device.configuration.timeout,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.timeout"))},null,8,["model-value"])])}const y=l(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_view/solar_view/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-baa09f51.js b/web/settings/assets/device-baa09f51.js new file mode 100644 index 0000000000..95382696e6 --- /dev/null +++ b/web/settings/assets/device-baa09f51.js @@ -0,0 +1 @@ +import{D as d}from"./HardwareInstallation-775406e1.js";import{_ as l,u as o,k as u,l as m,G as i,E as r,y as t,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceHttp",mixins:[d]},v={class:"device-http"};function _(n,e,b,g,x,w){const s=o("openwb-base-heading"),p=o("openwb-base-text-input");return u(),m("div",v,[i(s,null,{default:r(()=>e[1]||(e[1]=[t(" Einstellungen für Http ")])),_:1}),i(p,{title:"Server-URL",subtype:"url",required:"","model-value":n.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.url"))},{help:r(()=>e[2]||(e[2]=[t(" Hier sind die Verbindungsangaben für den Http-Server einzutragen. Der Pfad für die einzelnen Daten wird in der Komponente hinterlegt."),c("br",null,null,-1),t(" Beispiel: http://mein.server:8080 ")])),_:1},8,["model-value"])])}const N=l(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/http/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-bd5cdb53.js b/web/settings/assets/device-bd5cdb53.js new file mode 100644 index 0000000000..d585d68dba --- /dev/null +++ b/web/settings/assets/device-bd5cdb53.js @@ -0,0 +1 @@ +import{D as d}from"./HardwareInstallation-775406e1.js";import{_ as u,u as i,k as p,l,G as t,E as m,y as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceJanitza",mixins:[d]},v={class:"device-janitza"};function _(o,e,c,g,w,C){const r=i("openwb-base-heading"),s=i("openwb-base-text-input"),a=i("openwb-base-number-input");return p(),l("div",v,[t(r,null,{default:m(()=>e[3]||(e[3]=[f(" Einstellungen für Janitza ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const E=u(b,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/janitza/janitza/device.vue"]]);export{E as default}; diff --git a/web/settings/assets/device-bfbda65d.js b/web/settings/assets/device-bfbda65d.js new file mode 100644 index 0000000000..da00ce6ce8 --- /dev/null +++ b/web/settings/assets/device-bfbda65d.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as m,u as t,k as b,l as f,G as i,E as s,y as r,x as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const w={name:"DeviceHuawei",mixins:[p]},c={class:"device-huawei"};function g(n,e,_,h,D,V){const l=t("openwb-base-heading"),u=t("openwb-base-alert"),d=t("openwb-base-text-input"),a=t("openwb-base-number-input");return b(),f("div",c,[i(l,null,{default:s(()=>e[3]||(e[3]=[r(" Einstellungen für Huawei ")])),_:1}),i(u,{subtype:"info"},{default:s(()=>e[4]||(e[4]=[r(' Die Antwort der Huawei Wechselrichter benötigt sehr viel Zeit. Es wird empfohlen, dass Regelintervall der openWB auf "sehr langsam" zu stellen. ')])),_:1}),i(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.port"))},null,8,["model-value"]),i(a,{title:"Modbus ID",required:"","model-value":n.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.modbus_id"))},{help:s(()=>e[5]||(e[5]=[r(' Sind mehrere Huawei Wechselrichter als "Schwarm" verbunden, dann besitzt der Master vermutlich die ID "16". Über diese ID werden dann alle Daten in Summe zur Verfügung gestellt.'),v("br",null,null,-1),r(" Die IDs 1 bis 15 sind für einzelne Wechselrichter reserviert. ")])),_:1},8,["model-value"])])}const k=m(w,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei/device.vue"]]);export{k as default}; diff --git a/web/settings/assets/device-c391800c.js b/web/settings/assets/device-c391800c.js new file mode 100644 index 0000000000..dc9f044b3f --- /dev/null +++ b/web/settings/assets/device-c391800c.js @@ -0,0 +1 @@ +import{D as r}from"./HardwareInstallation-775406e1.js";import{_ as p,u as i,k as d,l as u,G as t,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSunways",mixins:[r]},f={class:"device-sunways"};function v(o,e,w,_,b,g){const a=i("openwb-base-heading"),s=i("openwb-base-text-input");return d(),u("div",f,[t(a,null,{default:l(()=>e[2]||(e[2]=[m(" Einstellungen für Sunways ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},null,8,["model-value"])])}const q=p(c,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sunways/sunways/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-d43185f2.js b/web/settings/assets/device-d43185f2.js new file mode 100644 index 0000000000..d698f71188 --- /dev/null +++ b/web/settings/assets/device-d43185f2.js @@ -0,0 +1 @@ +import{D as u}from"./HardwareInstallation-775406e1.js";import{_ as m,u as o,k as b,l as c,G as t,E as s,y as r,x as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSolarEdge",mixins:[u]},_={class:"device-solaredge"};function v(n,e,w,h,B,k){const a=o("openwb-base-heading"),d=o("openwb-base-alert"),p=o("openwb-base-text-input"),l=o("openwb-base-number-input");return b(),c("div",_,[t(a,null,{default:s(()=>e[2]||(e[2]=[r(" Einstellungen für SolarEdge ")])),_:1}),t(d,{subtype:"info"},{default:s(()=>e[3]||(e[3]=[r(" ModbusTCP muss im Wechselrichter aktiviert werden und der Wechselrichter per LAN angebunden sein."),f("br",null,null,-1),r(" SolarEdge lässt nur eine ModbusTCP-Verbindung zu. Wenn Sie mit einem weiteren Smarthome-System, wie z.B. ioBroker oder openHAB, den SolarEdge-Wechselrichter abfragen, kann dies die Abfrage durch die openWB stören oder verhindern. ")])),_:1}),t(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),t(l,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=i=>n.updateConfiguration(i,"configuration.port"))},{help:s(()=>e[4]||(e[4]=[r(" Je nach Produktionsdatum und Softwareversion ist 502 oder 1502 ab Werk eingestellt. Bitte im Wechselrichter überprüfen. ")])),_:1},8,["model-value"])])}const $=m(g,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-d65b5a77.js b/web/settings/assets/device-d65b5a77.js new file mode 100644 index 0000000000..9f97a6d87b --- /dev/null +++ b/web/settings/assets/device-d65b5a77.js @@ -0,0 +1 @@ +import{D as r}from"./HardwareInstallation-775406e1.js";import{_ as d,u as i,k as u,l as p,G as t,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceQCells",mixins:[r]},b={class:"device-qcells"};function v(o,e,_,g,w,C){const l=i("openwb-base-heading"),a=i("openwb-base-text-input"),s=i("openwb-base-number-input");return u(),p("div",b,[t(l,null,{default:m(()=>e[3]||(e[3]=[c(" Einstellungen für QCells ESS ")])),_:1}),t(a,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(s,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=d(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/qcells/qcells/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-e20e0d18.js b/web/settings/assets/device-e20e0d18.js new file mode 100644 index 0000000000..68e43579b9 --- /dev/null +++ b/web/settings/assets/device-e20e0d18.js @@ -0,0 +1 @@ +import{D as p}from"./HardwareInstallation-775406e1.js";import{_ as u,u as t,k as d,l as m,G as i,E as c,y as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSolis",mixins:[p]},_={class:"device-solis"};function f(o,e,g,w,h,x){const s=t("openwb-base-heading"),r=t("openwb-base-text-input"),a=t("openwb-base-number-input"),l=t("openwb-base-select-input");return d(),m("div",_,[i(s,null,{default:c(()=>e[3]||(e[3]=[v("Einstellungen für Solis")])),_:1}),i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),i(l,{title:"Version","not-selected":"Bitte auswählen",options:[{value:"inverter",text:"Wechselrichter ohne Speicheranbindung"},{value:"hybrid",text:"Hybridwechselrichter RHI/S Serie"}],"model-value":o.device.configuration.version,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.version"))},null,8,["model-value"])])}const H=u(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solis/solis/device.vue"]]);export{H as default}; diff --git a/web/settings/assets/device-e95d24c3.js b/web/settings/assets/device-e95d24c3.js new file mode 100644 index 0000000000..ef46b945e6 --- /dev/null +++ b/web/settings/assets/device-e95d24c3.js @@ -0,0 +1 @@ +import{D as f}from"./HardwareInstallation-775406e1.js";import{_ as g,u as d,k as t,l as b,G as l,E as a,y as i,z as s,B as u,x as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const w={name:"DeviceEnphase",mixins:[f]},y={class:"device-enphase"};function k(n,e,V,c,E,h){const m=d("openwb-base-heading"),r=d("openwb-base-text-input"),v=d("openwb-base-select-input");return t(),b("div",y,[l(m,null,{default:a(()=>e[6]||(e[6]=[i(" Einstellungen für Enphase Envoy / IQ Gateway ")])),_:1}),l(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.hostname,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.hostname"))},{help:a(()=>e[7]||(e[7]=[i(' Bitte geben Sie die IP-Adresse oder den Hostnamen des Enphase Envoy oder IQ Gateway an. Die Info finden Sie in Ihrem Router. Ab Werk ist der Hostname "envoy" oder "envoy.local". ')])),_:1},8,["model-value"]),l(v,{title:"Version",required:"",options:[{value:1,text:"Firmware < 7.0"},{value:2,text:"Firmware ab 7.0"}],"model-value":n.device.configuration.version,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.version"))},{help:a(()=>e[8]||(e[8]=[i(" Bitte wählen Sie die Version des Enphase Envoy oder IQ Gateway aus. Die Version 1 ist für Geräte mit einer Firmware-Version unter 7.0, die Version 2 für Geräte mit einer Firmware-Version ab 7.0. Ein angebundener Speicher wird nur bei Version 2 unterstützt. ")])),_:1},8,["model-value"]),n.device.configuration.version>1?(t(),s(r,{key:0,title:"Benutzer",subtype:"user","model-value":n.device.configuration.user,required:"","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.user"))},null,8,["model-value"])):u("",!0),n.device.configuration.version>1?(t(),s(r,{key:1,title:"Kennwort",subtype:"password","model-value":n.device.configuration.password,required:"","onUpdate:modelValue":e[3]||(e[3]=o=>n.updateConfiguration(o,"configuration.password"))},null,8,["model-value"])):u("",!0),n.device.configuration.version>1?(t(),s(r,{key:2,title:"Envoy Seriennummer","model-value":n.device.configuration.serial,required:"","onUpdate:modelValue":e[4]||(e[4]=o=>n.updateConfiguration(o,"configuration.serial"))},null,8,["model-value"])):u("",!0),n.device.configuration.version>1?(t(),s(r,{key:3,title:"Token",subtype:"password","model-value":n.device.configuration.token,required:"","onUpdate:modelValue":e[5]||(e[5]=o=>n.updateConfiguration(o,"configuration.token"))},{help:a(()=>e[9]||(e[9]=[i(" Wenn Benutzer, Kennwort und Seriennummer des Envoys angegeben werden, wird das Token automatisch beim Speichern abgerufen. Ebenfalls wird ein abgelaufenes Token (derzeit nach einem Jahr) automatisch erneuert."),p("br",null,null,-1),i(" Wenn Sie ein Token manuell erstellen möchten, können Sie dies auf der "),p("a",{href:"https://developer.enphase.com/docs/quickstart.html",target:"_blank",rel:"noopener"}," Enphase-Webseite ",-1),i(" erledigen. ")])),_:1},8,["model-value"])):u("",!0)])}const T=g(w,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/enphase/enphase/device.vue"]]);export{T as default}; diff --git a/web/settings/assets/device-eae80546.js b/web/settings/assets/device-eae80546.js new file mode 100644 index 0000000000..29235dc126 --- /dev/null +++ b/web/settings/assets/device-eae80546.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as t,k as d,l as m,G as n,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmartfox",mixins:[a]},f={class:"device-smartfox"};function _(o,e,v,x,b,g){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),m("div",f,[n(i,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für Smartfox ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const y=p(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/smartfox/smartfox/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-ebb040e8.js b/web/settings/assets/device-ebb040e8.js new file mode 100644 index 0000000000..1c8c69d35c --- /dev/null +++ b/web/settings/assets/device-ebb040e8.js @@ -0,0 +1 @@ +import{D as d}from"./HardwareInstallation-775406e1.js";import{_ as u,u as t,k as l,l as p,G as i,E as m,y as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceCarloGavazzi",mixins:[d]},f={class:"device-carlogavazzi"};function _(o,e,b,g,z,w){const r=t("openwb-base-heading"),s=t("openwb-base-text-input"),a=t("openwb-base-number-input");return l(),p("div",f,[i(r,null,{default:m(()=>e[3]||(e[3]=[v(" Einstellungen für Carlo Gavazzi ")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),i(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const G=u(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/carlo_gavazzi/carlo_gavazzi/device.vue"]]);export{G as default}; diff --git a/web/settings/assets/device-f06c661b.js b/web/settings/assets/device-f06c661b.js new file mode 100644 index 0000000000..668770c1a5 --- /dev/null +++ b/web/settings/assets/device-f06c661b.js @@ -0,0 +1 @@ +import{D as r}from"./HardwareInstallation-775406e1.js";import{_ as a,u as t,k as d,l,G as s,E as u,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceYouless",mixins:[r]},_={class:"device-youless"};function f(o,e,v,b,g,x){const n=t("openwb-base-heading"),i=t("openwb-base-text-input");return d(),l("div",_,[s(n,null,{default:u(()=>e[1]||(e[1]=[m(" Einstellungen für Youless ")])),_:1}),s(i,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=p=>o.updateConfiguration(p,"configuration.ip_address"))},null,8,["model-value"])])}const h=a(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/youless/youless/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-f1b7bd09.js b/web/settings/assets/device-f1b7bd09.js new file mode 100644 index 0000000000..a35baea41e --- /dev/null +++ b/web/settings/assets/device-f1b7bd09.js @@ -0,0 +1 @@ +import{D as u}from"./HardwareInstallation-775406e1.js";import{_ as m,u as n,k as c,l as f,G as o,E as l,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceShelly",mixins:[u]},v={class:"device-shelly"};function b(t,e,g,h,w,y){const r=n("openwb-base-heading"),a=n("openwb-base-alert"),p=n("openwb-base-text-input"),d=n("openwb-base-select-input");return c(),f("div",v,[o(r,null,{default:l(()=>e[2]||(e[2]=[s(" Einstellungen für Shelly ")])),_:1}),o(a,{subtype:"info"},{default:l(()=>e[3]||(e[3]=[s(" Unterstützt werden theoretisch alle ein- und dreiphasigen Shellys der Generation 1-3. Getestete Modelle sind Shelly 1pm, 1pm plus, Pro Pro 3EM, Plug S. ")])),_:1}),o(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>t.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),o(d,{title:"Vorzeichen invertieren","not-selected":"Bitte auswählen",options:[{value:-1,text:"ja"},{value:1,text:"nein"}],"model-value":t.device.configuration.factor,required:"","onUpdate:modelValue":e[1]||(e[1]=i=>t.updateConfiguration(i,"configuration.factor"))},{help:l(()=>e[4]||(e[4]=[s(" Einige Shelly Modelle liefern die Leistung mit umgedrehtem Vorzeichen. Falls dies der Fall sein sollte, das Vorzeichen invertieren. ")])),_:1},8,["model-value"])])}const $=m(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/shelly/shelly/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-f758f462.js b/web/settings/assets/device-f758f462.js new file mode 100644 index 0000000000..1985044390 --- /dev/null +++ b/web/settings/assets/device-f758f462.js @@ -0,0 +1 @@ +import{D as a}from"./HardwareInstallation-775406e1.js";import{_ as d,u as t,k as u,l,G as i,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceVictron",mixins:[a]},v={class:"device-victron"};function f(o,e,b,g,w,x){const r=t("openwb-base-heading"),s=t("openwb-base-text-input"),p=t("openwb-base-number-input");return u(),l("div",v,[i(r,null,{default:m(()=>e[2]||(e[2]=[c(" Einstellungen für Victron ")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const N=d(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/victron/victron/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/displayTheme-539928b9.js b/web/settings/assets/displayTheme-539928b9.js new file mode 100644 index 0000000000..f78ce2bb61 --- /dev/null +++ b/web/settings/assets/displayTheme-539928b9.js @@ -0,0 +1 @@ +import{D as g}from"./OptionalComponents-795ca136.js";import{_ as m,u as i,k as d,l as f,G as a,E as l,y as u,z as r,B as b}from"./vendor-06e11d0e.js";import"./index-beac009d.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DisplayThemeCards",mixins:[g]},c={class:"display-theme-cards"};function v(n,e,V,h,y,w){const s=i("openwb-base-heading"),o=i("openwb-base-button-group-input"),p=i("openwb-base-text-input");return d(),f("div",c,[a(s,null,{default:l(()=>e[13]||(e[13]=[u("Bediensperre")])),_:1}),a(o,{title:"Bedienung sperren","model-value":n.displayTheme.configuration.lock_changes,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[0]||(e[0]=t=>n.updateConfiguration(t,"configuration.lock_changes"))},{help:l(()=>e[14]||(e[14]=[u(' Die Bedienung wird automatisch nach der eingestellten Ausschaltzeit (siehe "Display Standby") wieder gesperrt. ')])),_:1},8,["model-value"]),n.displayTheme.configuration.lock_changes?(d(),r(p,{key:0,title:"PIN zur Freigabe",subtype:"password",required:"",pattern:"[0-9]{4,10}","model-value":n.displayTheme.configuration.lock_changes_code,"onUpdate:modelValue":e[1]||(e[1]=t=>n.updateConfiguration(t,"configuration.lock_changes_code"))},{help:l(()=>e[15]||(e[15]=[u(" Der PIN muss aus 4 bis 10 Zahlen bestehen. ")])),_:1},8,["model-value"])):b("",!0),a(s,null,{default:l(()=>e[16]||(e[16]=[u("Ansichten")])),_:1}),a(o,{title:"Übersicht anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[2]||(e[2]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_view"))},null,8,["model-value"]),a(o,{title:"Energiefluss anzeigen","model-value":n.displayTheme.configuration.enable_energy_flow_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[3]||(e[3]=t=>n.updateConfiguration(t,"configuration.enable_energy_flow_view"))},null,8,["model-value"]),a(o,{title:"Ladepunkte anzeigen","model-value":n.displayTheme.configuration.enable_charge_points_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[4]||(e[4]=t=>n.updateConfiguration(t,"configuration.enable_charge_points_view"))},null,8,["model-value"]),n.displayTheme.configuration.enable_charge_points_view==!0?(d(),r(o,{key:1,title:"Einfache Ansicht der Ladepunkte","model-value":n.displayTheme.configuration.simple_charge_point_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[5]||(e[5]=t=>n.updateConfiguration(t,"configuration.simple_charge_point_view"))},null,8,["model-value"])):b("",!0),a(o,{title:"Status anzeigen","model-value":n.displayTheme.configuration.enable_status_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[6]||(e[6]=t=>n.updateConfiguration(t,"configuration.enable_status_view"))},null,8,["model-value"]),a(s,null,{help:l(()=>e[17]||(e[17]=[u(' Hier kann festgelegt werden, welche Daten in den Ansichten "Übersicht" und "Energiefluss" angezeigt werden. ')])),default:l(()=>[e[18]||(e[18]=u(" Datenauswahl "))]),_:1}),a(o,{title:"EVU anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_grid,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[7]||(e[7]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_grid"))},null,8,["model-value"]),a(o,{title:"Hausverbrauch anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_home_consumption,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[8]||(e[8]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_home_consumption"))},null,8,["model-value"]),a(o,{title:"PV anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_inverter_sum,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[9]||(e[9]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_inverter_sum"))},null,8,["model-value"]),a(o,{title:"Batteriespeicher anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_battery_sum,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[10]||(e[10]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_battery_sum"))},null,8,["model-value"]),a(o,{title:"Ladepunkte anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_charge_point_sum,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[11]||(e[11]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_charge_point_sum"))},null,8,["model-value"]),a(o,{title:"Fahrzeuge anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_vehicles,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[12]||(e[12]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_vehicles"))},null,8,["model-value"])])}const x=m(_,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/display_themes/cards/displayTheme.vue"]]);export{x as default}; diff --git a/web/settings/assets/electricity_tariff-03647be7.js b/web/settings/assets/electricity_tariff-03647be7.js new file mode 100644 index 0000000000..3bf0820bea --- /dev/null +++ b/web/settings/assets/electricity_tariff-03647be7.js @@ -0,0 +1 @@ +import{E as c}from"./GeneralChargeConfig-f0122900.js";import{_ as p,u as r,k as d,l as f,G as i,E as o,y as s,x as m}from"./vendor-06e11d0e.js";import"./index-beac009d.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"ElectricityTariffEnergyCharts",mixins:[c]},h={class:"electricity-tariff-energycharts"};function b(t,e,y,_,w,v){const a=r("openwb-base-alert"),l=r("openwb-base-select-input"),u=r("openwb-base-number-input");return d(),f("div",h,[i(a,{subtype:"info"},{default:o(()=>e[2]||(e[2]=[s(" Börsenstrompreise von Energy Charts (energy-charts.info)"),m("br",null,null,-1),s(" Die Rohdaten werden von Wissenschaftlern des Fraunhofer-Instituts für Solare Energiesysteme ISE aus zahlreichen Quellen stündlich oder täglich abgerufen und für die Darstellung aufbereitet. ")])),_:1}),i(l,{title:"Land","not-selected":"Bitte auswählen",options:[{value:"DE-LU",text:"Deutschland"},{value:"AT",text:"Österreich"},{value:"CH",text:"Schweiz"}],"model-value":t.electricityTariff.configuration.country,"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateConfiguration(n,"configuration.country"))},null,8,["model-value"]),i(u,{title:"Aufschlag zum Börsenstrompreis",min:0,step:.001,precision:3,required:"",unit:"ct/kWh","model-value":t.electricityTariff.configuration.surcharge,"onUpdate:modelValue":e[1]||(e[1]=n=>t.updateConfiguration(parseFloat(n.toFixed(3)),"configuration.surcharge"))},{help:o(()=>e[3]||(e[3]=[s(" Die Auswahl (Energy-Charts) kann für alle Stromanbieter ausgewählt werden, die die Börsenstrompreise in einem variablen/dynamischen Tarif an die Kunden weitergeben. Das Modul soll es ermöglichen, dass zu tagesaktuellen Strompreisen unter Berücksichtigung eines Aufschlags zu günstigen Zeiten automatisch geladen werden kann und somit die Preisschwankungen an der Börse optimal ausgenutzt werden. ")])),_:1},8,["model-value"])])}const V=p(g,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/energycharts/electricity_tariff.vue"]]);export{V as default}; diff --git a/web/settings/assets/electricity_tariff-23e4686c.js b/web/settings/assets/electricity_tariff-23e4686c.js new file mode 100644 index 0000000000..0c5129d8fa --- /dev/null +++ b/web/settings/assets/electricity_tariff-23e4686c.js @@ -0,0 +1 @@ +import{E as s}from"./GeneralChargeConfig-f0122900.js";import{_ as l,u as r,k as c,l as p,G as n,E as u,y as f}from"./vendor-06e11d0e.js";import"./index-beac009d.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"ElectricityTariffRabot",mixins:[s]},m={class:"electricity-tariff-rabot"};function _(t,e,b,y,g,v){const a=r("openwb-base-alert"),o=r("openwb-base-text-input");return c(),p("div",m,[n(a,{subtype:"info"},{default:u(()=>e[2]||(e[2]=[f(" Ihre persönlichen Zugangsdaten (Client-ID und Client-Secret) erhalten Sie direkt von Rabot. Behandeln Sie diese Daten wie ein Passwort, da sich darüber auch persönliche Daten aus Ihrem Rabot-Account abfragen lassen! ")])),_:1}),n(o,{title:"Client-ID",subtype:"user",required:"","model-value":t.electricityTariff.configuration.client_id,"onUpdate:modelValue":e[0]||(e[0]=i=>t.updateConfiguration(i,"configuration.client_id"))},null,8,["model-value"]),n(o,{title:"Client-Secret",subtype:"password",required:"","model-value":t.electricityTariff.configuration.client_secret,"onUpdate:modelValue":e[1]||(e[1]=i=>t.updateConfiguration(i,"configuration.client_secret"))},null,8,["model-value"])])}const I=l(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/rabot/electricity_tariff.vue"]]);export{I as default}; diff --git a/web/settings/assets/electricity_tariff-29ddb8c1.js b/web/settings/assets/electricity_tariff-29ddb8c1.js new file mode 100644 index 0000000000..94d99d67b3 --- /dev/null +++ b/web/settings/assets/electricity_tariff-29ddb8c1.js @@ -0,0 +1 @@ +import{E as m}from"./GeneralChargeConfig-f0122900.js";import{_ as g,u as s,k as h,l as _,G as n,E as y,y as l,x as T}from"./vendor-06e11d0e.js";import"./index-beac009d.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const k={name:"ElectricityTariffTibber",mixins:[m],data(){return{tibberAPI:"https://api.tibber.com/v1-beta/gql",tibberHomeList:[]}},methods:{async getTibberHomeList(){if(this.electricityTariff.configuration.token===null)return;const i='{ "query": "{viewer {homes{id address{address1 address2 address3 postalCode city country}}}}" }';try{const e=await this.axios.post(this.tibberAPI,i,{headers:{Authorization:"Bearer "+this.electricityTariff.configuration.token,"Content-Type":"application/json"}});this.tibberHomeList=e.data.data.viewer.homes.map(t=>{let r=t.address.address1;return t.address.address2&&(r=r+", "+t.address.address2),t.address.address3&&(r=r+", "+t.address.address3),r=r+`, ${t.address.postalCode} ${t.address.city}, ${t.address.country}`,{value:t.id,text:r}}),this.electricityTariff.configuration.home_id||this.updateConfiguration(this.tibberHomeList[0].value,"configuration.home_id"),this.$root.postClientMessage("Home IDs erfolgreich abgerufen.","success")}catch(e){console.error(e),this.$root.postClientMessage("Beim Abfragen der Tibber API ist ein Fehler aufgetreten!
"+e+"
","danger")}}}},v={class:"electricity-tariff-tibber"};function w(i,e,t,r,u,c){var d;const b=s("openwb-base-alert"),a=s("openwb-base-text-input"),p=s("openwb-base-button-input"),f=s("openwb-base-select-input");return h(),_("div",v,[n(b,{subtype:"info"},{default:y(()=>e[3]||(e[3]=[l(" Ihren persönlichen Tibber-Token erhalten Sie über die "),T("a",{href:"https://developer.tibber.com/explorer",target:"_blank",rel:"noopener noreferrer"}," Tibber-Developer-Seite ",-1),l(" . Behandeln Sie Ihren Token wie ein Passwort, da sich darüber auch persönliche Daten aus Ihrem Tibber-Account abfragen lassen! Die Home-ID können Sie (wenn bekannt) in das Eingabefeld selbst eintragen oder nach Eingabe Ihres Token durch Klick auf den Button von der openWB ermitteln lassen. Unerlaubte Zeichen werden aus dem Token und der Home-ID automatisch gelöscht. ")])),_:1}),n(a,{ref:"tokenInput",title:"Token",required:"","model-value":i.electricityTariff.configuration.token,"onUpdate:modelValue":e[0]||(e[0]=o=>i.updateConfiguration(o,"configuration.token"))},null,8,["model-value"]),n(p,{title:"Home-IDs abrufen","button-text":"Jetzt abrufen",subtype:"success",disabled:!((d=i.electricityTariff.configuration.token)!=null&&d.length),onButtonClicked:c.getTibberHomeList},null,8,["disabled","onButtonClicked"]),n(f,{title:"Verfügbare Home-IDs",options:u.tibberHomeList,"model-value":i.electricityTariff.configuration.home_id,"onUpdate:modelValue":e[1]||(e[1]=o=>i.updateConfiguration(o,"configuration.home_id"))},null,8,["options","model-value"]),n(a,{title:"Home-ID",required:"","model-value":i.electricityTariff.configuration.home_id,"onUpdate:modelValue":e[2]||(e[2]=o=>i.updateConfiguration(o,"configuration.home_id"))},null,8,["model-value"])])}const A=g(k,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/tibber/electricity_tariff.vue"]]);export{A as default}; diff --git a/web/settings/assets/electricity_tariff-68a76ca0.js b/web/settings/assets/electricity_tariff-68a76ca0.js new file mode 100644 index 0000000000..b362376ec1 --- /dev/null +++ b/web/settings/assets/electricity_tariff-68a76ca0.js @@ -0,0 +1 @@ +import{E as l}from"./GeneralChargeConfig-f0122900.js";import{_ as s,u as r,k as c,l as p,G as o,E as u,y as f}from"./vendor-06e11d0e.js";import"./index-beac009d.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"ElectricityTariffVoltego",mixins:[l]},m={class:"electricity-tariff-voltego"};function _(t,e,g,b,y,v){const a=r("openwb-base-alert"),n=r("openwb-base-text-input");return c(),p("div",m,[o(a,{subtype:"info"},{default:u(()=>e[2]||(e[2]=[f(" Ihre persönlichen Zugangsdaten (Client-ID und Client-Secret) erhalten Sie direkt von Voltego. Behandeln Sie diese Daten wie ein Passwort, da sich darüber auch persönliche Daten aus Ihrem Voltego-Account abfragen lassen! ")])),_:1}),o(n,{title:"Client-ID",subtype:"user",required:"","model-value":t.electricityTariff.configuration.client_id,"onUpdate:modelValue":e[0]||(e[0]=i=>t.updateConfiguration(i,"configuration.client_id"))},null,8,["model-value"]),o(n,{title:"Client-Secret",subtype:"password",required:"","model-value":t.electricityTariff.configuration.client_secret,"onUpdate:modelValue":e[1]||(e[1]=i=>t.updateConfiguration(i,"configuration.client_secret"))},null,8,["model-value"])])}const D=s(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/voltego/electricity_tariff.vue"]]);export{D as default}; diff --git a/web/settings/assets/electricity_tariff-d7a471dd.js b/web/settings/assets/electricity_tariff-d7a471dd.js new file mode 100644 index 0000000000..ede2251c6f --- /dev/null +++ b/web/settings/assets/electricity_tariff-d7a471dd.js @@ -0,0 +1 @@ +import{E as o}from"./GeneralChargeConfig-f0122900.js";import{_ as a,u as n,k as s,l as c,G as l,E as p,y as f}from"./vendor-06e11d0e.js";import"./index-beac009d.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"ElectricityTariffAwattar",mixins:[o]},u={class:"electricity-tariff-awattar"};function m(t,e,_,w,y,b){const i=n("openwb-base-select-input");return s(),c("div",u,[l(i,{title:"Land","not-selected":"Bitte auswählen",options:[{value:"de",text:"Deutschland"},{value:"at",text:"Österreich"}],"model-value":t.electricityTariff.configuration.country,"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateConfiguration(r,"configuration.country"))},{help:p(()=>e[1]||(e[1]=[f(" Es werden die abgefragten Börsenpreise verwendet, die aWATTar bereitstellt. aWATTar-Gebühren oder Steuern werden nicht berücksichtigt. ")])),_:1},8,["model-value"])])}const $=a(d,[["render",m],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/awattar/electricity_tariff.vue"]]);export{$ as default}; diff --git a/web/settings/assets/external_inverter-253f52e7.js b/web/settings/assets/external_inverter-253f52e7.js new file mode 100644 index 0000000000..78ddba30bb --- /dev/null +++ b/web/settings/assets/external_inverter-253f52e7.js @@ -0,0 +1 @@ +import{C as m}from"./HardwareInstallation-775406e1.js";import{_ as p,u as i,k as g,l as f,G as o,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSolaredgeExternalInverter",mixins:[m]},c={class:"device-solaredge-external-inverter"};function v(n,e,_,w,x,E){const l=i("openwb-base-heading"),u=i("openwb-base-alert"),a=i("openwb-base-number-input"),d=i("openwb-base-select-input");return g(),f("div",c,[o(l,null,{default:r(()=>e[3]||(e[3]=[s(" Einstellungen für SolarEdge externen Wechselrichter ")])),_:1}),o(u,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[s(' Diese Komponente nur konfigurieren, wenn ein weiteres Solaredge SmartMeter verbaut ist, welches z.B. die Leistung einer vorhandenen Bestands-PV-Anlage erfasst. Dieses zusätzliche SmartMeter muss dann als "Zähler 2" / "Position 2" im Wechselrichter-Konfigurationsmenü konfiguriert sein. ')])),_:1}),o(a,{title:"SolarEdge-Geräte-ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=t=>n.updateConfiguration(t,"configuration.modbus_id"))},null,8,["model-value"]),o(a,{title:"SolarEdge-Meter-ID","model-value":n.component.configuration.meter_id,min:"1",max:"255",required:"","onUpdate:modelValue":e[1]||(e[1]=t=>n.updateConfiguration(t,"configuration.meter_id"))},null,8,["model-value"]),o(d,{title:"Leistung invertieren","not-selected":"Bitte auswählen",options:[{value:1,text:"nein"},{value:-1,text:"ja"}],"model-value":n.component.configuration.factor,"onUpdate:modelValue":e[2]||(e[2]=t=>n.updateConfiguration(t,"configuration.factor"))},{help:r(()=>e[5]||(e[5]=[s(" Einige externe SolarEdge Wechselrichter liefern die Leistung mit falschem Vorzeichen. In diesem Fall ist die Leistung zu invertieren. ")])),_:1},8,["model-value"])])}const L=p(b,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/external_inverter.vue"]]);export{L as default}; diff --git a/web/settings/assets/index-beac009d.js b/web/settings/assets/index-beac009d.js new file mode 100644 index 0000000000..2b20dee0aa --- /dev/null +++ b/web/settings/assets/index-beac009d.js @@ -0,0 +1 @@ +import{_ as y,k as l,l as u,m as b,q as O,u as g,x as a,y as p,z as h,A as E,B as f,D as V,E as c,F as v,G as m,I as B,J as T,K as S,L as X,M as q,N as I,O as ee,P as te,Q as ne,T as F,R as se,S as R,U as oe,V as ae,W as ie,X as le,Y as re,Z as de,$ as ue}from"./vendor-06e11d0e.js";import{l as C,f as H,a as U,F as $,b as ce,c as pe,d as z,e as me,g as L,h as fe,i as _e,j as be,k as ge,m as he,n as ve,o as ye,p as we,q as ke,r as G,s as Se,t as Be,u as Oe,v as Ce,w as J,x as $e,y as Te,z as Ie,A as xe,B as Me,C as Ve,D as Ae,E as Pe,G as qe,H as De,I as Ee,J as Le}from"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import{p as je,a as We}from"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-jquery-9fc083b4.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))d(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&d(o)}).observe(document,{childList:!0,subtree:!0});function n(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function d(i){if(i.ep)return;i.ep=!0;const s=n(i);fetch(i.href,s)}})();const Re={name:"OpenwbAlert",props:{subtype:{validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark"].indexOf(t)!==-1},default:"secondary"}}};function Ne(t,e,n,d,i,s){return l(),u("div",{class:O(["card-text alert","alert-"+n.subtype])},[b(t.$slots,"default")],2)}const Fe=y(Re,[["render",Ne],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseAlert.vue"]]),He=Object.freeze(Object.defineProperty({__proto__:null,default:Fe},Symbol.toStringTag,{value:"Module"}));C.add(H,U);const Ue={name:"OpenwbBaseSettingElement",components:{FontAwesomeIcon:$},data(){return{showHelp:!1}},methods:{toggleHelp(){this.showHelp=!this.showHelp&&this.$slots.help!==void 0}}},ze={class:"form-row mb-1"},Ge={class:"col-md-4 col-form-label"},Je={class:"col-md-8"},Ke={class:"form-row"},Qe={class:"form-row"},Ye={key:0,class:"form-text alert alert-info my-1 small flex-fill"};function Ze(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u("div",ze,[a("label",Ge,[b(t.$slots,"title",{},()=>[e[0]||(e[0]=p("*TITLE*"))]),t.$slots.help?(l(),h(o,{key:0,icon:i.showHelp?["fas","question-circle"]:["far","question-circle"],class:O(["clickable ml-1",i.showHelp?"text-info":""]),onClick:E(s.toggleHelp,["stop"])},null,8,["icon","class","onClick"])):f("",!0)]),a("div",Je,[a("div",Ke,[b(t.$slots,"default",{},()=>[e[1]||(e[1]=p("*ELEMENT MISSING*"))])]),a("div",Qe,[i.showHelp?(l(),u("span",Ye,[b(t.$slots,"help")])):f("",!0)])])])}const M=y(Ue,[["render",Ze],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseSettingElement.vue"]]),Xe=Object.freeze(Object.defineProperty({__proto__:null,default:M},Symbol.toStringTag,{value:"Module"}));C.add(ce,pe,z,me);const et={name:"OpenwbArrayInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!0,default:"#TITLE#"},modelValue:{type:Array,default:()=>[]},noElementsMessage:{type:String,default:()=>"Keine Elemente zugeordnet."}},emits:["update:modelValue"],data(){return{newTag:"",showHelp:!1}},computed:{value:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},newTagValid:{get(){return this.newTag.length>0&&!this.value.includes(this.newTag)}}},methods:{addTag(){if(this.newTagValid){const t=[...this.value,this.newTag].sort();this.value=t,this.newTag=""}this.$refs.tagInput.focus()},removeTag(t){let e=[...this.value];e.splice(t,1),this.value=e}}},tt={class:"w-100"},nt={class:"input-group"},st={class:"input-group-prepend"},ot={class:"input-group-text"},at={class:"input-group-append"},it={class:"tagList mt-1 w-100"},lt={key:0,class:"noTag"};function rt(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",tt,[a("div",nt,[a("div",st,[a("div",ot,[b(t.$slots,"input-prefix",{},()=>[m(o,{"fixed-width":"",icon:["fas","tag"]})],!0)])]),B(a("input",S({ref:"tagInput","onUpdate:modelValue":e[0]||(e[0]=r=>i.newTag=r),type:"text",class:"form-control"},t.$attrs,{onKeyup:e[1]||(e[1]=X((...r)=>s.addTag&&s.addTag(...r),["enter"]))}),null,16),[[T,i.newTag]]),a("div",at,[a("div",{class:O(["input-group-text",s.newTagValid?"bg-success clickable":"not-clickable"]),onClick:e[2]||(e[2]=(...r)=>s.addTag&&s.addTag(...r))},[b(t.$slots,"input-add",{},()=>[m(o,{"fixed-width":"",icon:["fas","plus"]})],!0)],2)])])]),a("div",it,[s.value.length==0?(l(),u("span",lt,[m(o,{icon:["fas","info-circle"]}),p(" "+v(n.noElementsMessage),1)])):f("",!0),(l(!0),u(I,null,q(s.value,(r,k)=>(l(),u("span",{key:k,class:"tag"},[b(t.$slots,"element-prefix",{},()=>[m(o,{icon:["fas","tag"]})],!0),p(" "+v(r)+" ",1),m(o,{class:"clickable remove-element",icon:["fas","times-circle"],onClick:x=>s.removeTag(k)},null,8,["onClick"])]))),128))])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const dt=y(et,[["render",rt],["__scopeId","data-v-9de93d37"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseArrayInput.vue"]]),ut=Object.freeze(Object.defineProperty({__proto__:null,default:dt},Symbol.toStringTag,{value:"Module"}));const ct={name:"OpenwbAvatar"},pt={class:"avatar"};function mt(t,e,n,d,i,s){return l(),u("div",pt,[b(t.$slots,"default",{},()=>[e[0]||(e[0]=p("?"))],!0)])}const ft=y(ct,[["render",mt],["__scopeId","data-v-06082a1a"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseAvatar.vue"]]),_t=Object.freeze(Object.defineProperty({__proto__:null,default:ft},Symbol.toStringTag,{value:"Module"}));C.add(L);const bt={name:"OpenwbButtonGroupInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:[String,Number,Boolean],default:void 0},buttons:{type:Array,required:!0}},emits:["update:modelValue"],computed:{value:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}}}},gt={class:"btn-group btn-block btn-group-toggle"},ht=["value"];function vt(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)])]),default:c(()=>[a("div",gt,[(l(!0),u(I,null,q(n.buttons,r=>(l(),u("label",{key:r.value,class:O(["btn",[s.value==r.buttonValue?"active":"",r.class?r.class:"btn-outline-info"]])},[B(a("input",S({"onUpdate:modelValue":e[0]||(e[0]=k=>s.value=k),type:"radio",value:r.buttonValue,ref_for:!0},t.$attrs),null,16,ht),[[ee,s.value]]),b(t.$slots,"label-"+r.buttonValue,{},()=>[p(v(r.text),1)]),m(o,{"fixed-width":"",icon:["fas","check"],style:te([s.value==r.buttonValue?"visibility: visible":"visibility: hidden"])},null,8,["style"])],2))),128))])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help")]),key:"0"}:void 0]),1024)}const yt=y(bt,[["render",vt],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseButtonGroupInput.vue"]]),wt=Object.freeze(Object.defineProperty({__proto__:null,default:yt},Symbol.toStringTag,{value:"Module"}));const kt={name:"OpenwbClickButton",props:{title:{type:String,required:!1,default:""}},emits:["buttonClicked"],methods:{click(t){this.$emit("buttonClicked",t)}}};function St(t,e,n,d,i,s){return l(),u("button",{type:"button",class:"btn btn-block",onClick:e[0]||(e[0]=E((...o)=>s.click&&s.click(...o),["prevent"]))},[b(t.$slots,"default",{},()=>[p(v(n.title),1)],!0)])}const K=y(kt,[["render",St],["__scopeId","data-v-2e9c095b"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseClickButton.vue"]]),Bt=Object.freeze(Object.defineProperty({__proto__:null,default:K},Symbol.toStringTag,{value:"Module"})),Ot={name:"OpenwbButtonInput",components:{OpenwbBaseSettingElement:M,OpenwbBaseClickButton:K},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},buttonText:{type:String,required:!1,default:void 0},disabled:{type:Boolean,default:!1},subtype:{type:String,validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark"].indexOf(t)!==-1},default:"secondary"}},emits:["buttonClicked"],methods:{handleClick(t){this.$emit("buttonClicked",t)}}};function Ct(t,e,n,d,i,s){const o=g("openwb-base-click-button"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)])]),default:c(()=>[m(o,S({class:(n.disabled?"btn-outline-":"btn-")+n.subtype,disabled:n.disabled},t.$attrs,{onButtonClicked:s.handleClick}),{default:c(()=>[p(v(n.buttonText),1)]),_:1},16,["class","disabled","onButtonClicked"])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help")]),key:"0"}:void 0]),1024)}const $t=y(Ot,[["render",Ct],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseButtonInput.vue"]]),Tt=Object.freeze(Object.defineProperty({__proto__:null,default:$t},Symbol.toStringTag,{value:"Module"}));C.add(fe,_e);const It={name:"OpenwbCard",components:{FontAwesomeIcon:$},inheritAttrs:!1,props:{title:{type:String,default:"# no title set #"},subtype:{validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark","pink"].indexOf(t)!==-1},default:"secondary"},collapsible:{type:Boolean,default:!1},collapsed:{type:Boolean,default:!1}},data(){return{isCollapsed:this.collapsible&&this.collapsed}},methods:{toggleBody(){this.collapsible===!0&&(this.isCollapsed=!this.isCollapsed)}}},xt={class:"form-group mb-0"},Mt={class:"form-row vaRow mb-0 py-2"},Vt={class:"col"},At={class:"card-actions ml-4"},Pt={key:0,class:"card-actions mr-4"},qt={key:1,class:"card-footer"};function Dt(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u("div",{class:O(["card","border-"+n.subtype])},[a("div",{class:O(["card-header py-1","bg-"+n.subtype]),onClick:e[0]||(e[0]=(..._)=>s.toggleBody&&s.toggleBody(..._))},[a("div",xt,[a("div",Mt,[a("div",Vt,[b(t.$slots,"header",{collapsed:i.isCollapsed},()=>[p(v(n.title),1)])])])]),a("span",At,[t.$slots.actions?(l(),u("span",Pt,[b(t.$slots,"actions",{collapsed:i.isCollapsed})])):f("",!0),n.collapsible?(l(),h(o,{key:1,"fixed-width":"",icon:i.isCollapsed?["fas","chevron-right"]:["fas","chevron-down"]},null,8,["icon"])):f("",!0)])],2),i.isCollapsed===!1?(l(),u("div",S({key:0,class:"card-body"},t.$attrs),[b(t.$slots,"default")],16)):f("",!0),t.$slots.footer&&i.isCollapsed===!1?(l(),u("div",qt,[b(t.$slots,"footer")])):f("",!0)],2)}const Et=y(It,[["render",Dt],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseCard.vue"]]),Lt=Object.freeze(Object.defineProperty({__proto__:null,default:Et},Symbol.toStringTag,{value:"Module"})),jt={name:"OpenwbCheckboxInput",components:{OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:Boolean}},emits:["update:modelValue"],computed:{value:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}}}},Wt={class:"col-md-8"};function Rt(t,e,n,d,i,s){const o=g("openwb-base-setting-element");return l(),h(o,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)])]),default:c(()=>[a("div",Wt,[B(a("input",S({"onUpdate:modelValue":e[0]||(e[0]=_=>s.value=_),class:"form-control",type:"checkbox"},t.$attrs),null,16),[[ne,s.value]])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help")]),key:"0"}:void 0]),1024)}const Nt=y(jt,[["render",Rt],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseCheckboxInput.vue"]]),Ft=Object.freeze(Object.defineProperty({__proto__:null,default:Nt},Symbol.toStringTag,{value:"Module"}));C.add(be,ge);const Ht={name:"OpenwbCopyToClipboard",components:{FontAwesomeIcon:$},props:{tooltip:{type:String,default:"Wert kopieren"}},data(){return{clipboardApiAvailable:navigator.clipboard!=null,isCopied:!1}},methods:{click(){if(console.debug(this.$refs["slot-wrapper"].innerText),this.clipboardApiAvailable)navigator.clipboard.writeText(this.$refs["slot-wrapper"].innerText).then(()=>{this.isCopied=!0},()=>{console.error("copy to clipboard failed")});else{if(console.debug("clipboard api not supported/enabled, fallback to select"),window.getSelection){console.debug("using 'window.getSelection'");const t=window.getSelection(),e=document.createRange();e.selectNodeContents(this.$refs["slot-wrapper"]),t.removeAllRanges(),t.addRange(e);return}if(document.body.createTextRange){console.debug("using 'document.body.createTextRange'");const t=document.body.createTextRange();t.moveToElementText(this.$refs["slot-wrapper"]),t.select()}else console.warn("could not select text, unsupported browser")}}}},Ut=["title"];function zt(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u("span",{ref:"slot-wrapper",title:n.tooltip,class:"copy-me",onClick:e[0]||(e[0]=(..._)=>s.click&&s.click(..._))},[b(t.$slots,"default",{},void 0,!0),m(o,{"fixed-width":"",icon:i.isCopied?["fas","clipboard-check"]:["fas","clipboard"]},null,8,["icon"])],8,Ut)}const Gt=y(Ht,[["render",zt],["__scopeId","data-v-81826ebe"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseCopyToClipboard.vue"]]),Jt=Object.freeze(Object.defineProperty({__proto__:null,default:Gt},Symbol.toStringTag,{value:"Module"}));C.add(H,U,L);const Kt={name:"OpenwbHeading",components:{FontAwesomeIcon:$},inheritAttrs:!1,data(){return{showHelp:!1}},methods:{toggleHelp(){this.showHelp=!this.showHelp&&this.$slots.help!==void 0}}},Qt={class:"heading-text"},Yt={key:0,class:"actions"},Zt={class:""},Xt={key:0,class:"form-row alert alert-info small flex-fill"};function en(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u(I,null,[a("div",S({class:"card-text card-text-heading"},t.$attrs),[a("div",Qt,[b(t.$slots,"default",{},void 0,!0),t.$slots.help?(l(),h(o,{key:0,icon:i.showHelp?["fas","question-circle"]:["far","question-circle"],class:O(["clickable",i.showHelp?"text-info":""]),onClick:E(s.toggleHelp,["stop"])},null,8,["icon","class","onClick"])):f("",!0)]),t.$slots.actions?(l(),u("span",Yt,[b(t.$slots,"actions",{},void 0,!0)])):f("",!0)],16),a("div",Zt,[i.showHelp?(l(),u("span",Xt,[b(t.$slots,"help",{},void 0,!0)])):f("",!0)])],64)}const tn=y(Kt,[["render",en],["__scopeId","data-v-cbe4e96e"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseHeading.vue"]]),nn=Object.freeze(Object.defineProperty({__proto__:null,default:tn},Symbol.toStringTag,{value:"Module"})),sn={name:"OpenwbModalDialog",props:{title:{type:String,required:!1,default:""},subtype:{type:String,validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark"].indexOf(t)!==-1},default:"secondary"},buttons:{type:Array,default:void 0},footerAlignment:{type:String,validator:function(t){return["around","between","center","end","start"].indexOf(t)!==-1},default:"end"},preventClose:{type:Boolean,default:!1},show:{type:Boolean,default:!1}},emits:["modal-result"],computed:{myButtons(){var t=[];return this.buttons!==void 0&&(t=this.buttons),this.preventClose||t.push({text:"Schließen",event:"close"}),t}},methods:{handleClick(t){t.stopPropagation();let e=t.target.getAttribute("data-event");e===null&&(e="close"),(e!="close"||!this.preventClose)&&this.$emit("modal-result",e)}}},on={class:"modal-dialog modal-dialog-centered modal-dialog-scrollable",role:"document"},an={class:"modal-content"},ln={class:"modal-title"},rn={class:"modal-body"},dn=["data-event"];function un(t,e,n,d,i,s){return n.show?(l(),h(F,{key:0,to:"body"},[e[4]||(e[4]=a("div",{class:"modal-backdrop fade show"},null,-1)),a("div",{class:"modal fade d-block show",role:"dialog",onClick:e[2]||(e[2]=(...o)=>s.handleClick&&s.handleClick(...o))},[a("div",on,[a("div",an,[a("div",{class:O(["modal-header","bg-"+n.subtype])},[a("h4",ln,v(n.title),1),n.preventClose?f("",!0):(l(),u("button",{key:0,type:"button",class:"close",onClick:e[0]||(e[0]=(...o)=>s.handleClick&&s.handleClick(...o))}," × "))],2),a("div",rn,[b(t.$slots,"default",{},()=>[e[3]||(e[3]=p("# Body #"))])]),s.myButtons.length>0?(l(),u("div",{key:0,class:O(["modal-footer d-flex","justify-content-"+n.footerAlignment])},[(l(!0),u(I,null,q(s.myButtons,o=>(l(),u("button",{key:o.text,type:"button",class:O(["btn",o.subtype?"btn-"+o.subtype:"btn-secondary"]),"data-dismiss":"modal","data-event":o.event?o.event:"close",onClick:e[1]||(e[1]=(..._)=>s.handleClick&&s.handleClick(..._))},v(o.text),11,dn))),128))],2)):f("",!0)])])])])):f("",!0)}const cn=y(sn,[["render",un],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseModalDialog.vue"]]),pn=Object.freeze(Object.defineProperty({__proto__:null,default:cn},Symbol.toStringTag,{value:"Module"}));C.add(he);const mn={name:"OpenwbNumberInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:Number,required:!1,default:void 0},unit:{type:String,required:!1,default:void 0},precision:{type:Number,default:void 0},emptyValue:{type:[Number,null],required:!1,default:null}},emits:["update:modelValue"],computed:{value:{get(){return this.precision!==void 0?parseFloat(Math.round(this.modelValue*Math.pow(10,this.precision))/Math.pow(10,this.precision)):this.modelValue},set(t){(isNaN(t)||typeof t!="number")&&(t=this.emptyValue),this.$emit("update:modelValue",t)}}}},fn={class:"input-group"},_n={class:"input-group-prepend"},bn={class:"input-group-text"},gn={key:0,class:"input-group-append"},hn={class:"input-group-text"};function vn(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",fn,[a("div",_n,[a("div",bn,[m(o,{"fixed-width":"",icon:["fas","calculator"]})])]),B(a("input",S({"onUpdate:modelValue":e[0]||(e[0]=r=>s.value=r),type:"number",class:"form-control"},t.$attrs),null,16),[[T,s.value,void 0,{number:!0}]]),n.unit?(l(),u("div",gn,[a("div",hn,v(n.unit),1)])):f("",!0)])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const yn=y(mn,[["render",vn],["__scopeId","data-v-c2fb7eef"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseNumberInput.vue"]]),wn=Object.freeze(Object.defineProperty({__proto__:null,default:yn},Symbol.toStringTag,{value:"Module"}));C.add(ve,ye);const kn={name:"OpenwbRangeInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:Number,required:!1,default:void 0},unit:{type:String,required:!1,default:void 0},min:{type:Number,required:!0,default:0},max:{type:Number,required:!0,default:100},step:{type:Number,required:!1,default:1},labels:{type:Array,required:!1,default:void 0}},emits:["update:modelValue"],computed:{label(){var t;return this.labels&&this.sliderValue!=null?this.sliderValue[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",Sn,[a("div",Bn,[s.label?(l(),u("label",On,v(s.label),1)):f("",!0),a("button",{class:"col-1 btn btn-block btn-info",type:"button",onClick:e[0]||(e[0]=(...r)=>s.decrement&&s.decrement(...r))},[m(o,{icon:["fas","step-backward"]})]),a("div",Cn,[B(a("input",S({"onUpdate:modelValue":e[1]||(e[1]=r=>s.sliderValue=r),type:"range",class:"form-control-range rangeInput",min:n.min,max:n.max,step:n.step},t.$attrs),null,16,$n),[[T,s.sliderValue,void 0,{number:!0}]])]),a("button",{class:"col-1 btn btn-block btn-info",type:"button",onClick:e[2]||(e[2]=(...r)=>s.increment&&s.increment(...r))},[m(o,{icon:["fas","step-forward"]})])])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const In=y(kn,[["render",Tn],["__scopeId","data-v-449fb0a5"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseRangeInput.vue"]]),xn=Object.freeze(Object.defineProperty({__proto__:null,default:In},Symbol.toStringTag,{value:"Module"}));C.add(z);const Mn={name:"OpenwbSelectInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:[String,Number,Array,null],required:!1,default:void 0},groups:{type:Array,required:!1,default:void 0},options:{type:Array,required:!1,default:void 0},notSelected:{type:String,default:void 0},addButton:{type:Boolean,default:!1}},emits:["update:modelValue","input:add"],computed:{value:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},addDisabled:{get(){return this.value===void 0}}},methods:{addClicked(){this.addDisabled||this.$emit("input:add")}}},Vn={class:"w-100"},An={class:"input-group"},Pn={key:0,class:"input-group-prepend"},qn={class:"input-group-text"},Dn={key:0,value:void 0,disabled:""},En=["value"],Ln=["label"],jn=["value"],Wn={key:1,class:"input-group-append"};function Rn(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)])]),default:c(()=>[a("div",Vn,[a("div",An,[t.$slots.prefix?(l(),u("div",Pn,[a("div",qn,[b(t.$slots,"prefix")])])):f("",!0),B(a("select",S({"onUpdate:modelValue":e[0]||(e[0]=r=>s.value=r),class:"col form-control"},t.$attrs),[n.notSelected!==void 0?(l(),u("option",Dn," -- "+v(n.notSelected)+" -- ",1)):f("",!0),(l(!0),u(I,null,q(n.options,r=>(l(),u("option",{key:r.value,value:r.value},v(r.text),9,En))),128)),(l(!0),u(I,null,q(n.groups,r=>(l(),u("optgroup",{key:r.label,label:r.label},[(l(!0),u(I,null,q(r.options,k=>(l(),u("option",{key:k.value,value:k.value},v(k.text),9,jn))),128))],8,Ln))),128))],16),[[se,s.value]]),n.addButton?(l(),u("div",Wn,[a("div",{class:O(["input-group-text",s.addDisabled?"not-clickable":"bg-success clickable"]),onClick:e[1]||(e[1]=r=>s.addClicked())},[b(t.$slots,"inputAdd",{},()=>[m(o,{"fixed-width":"",icon:["fas","plus"]})])],2)])):f("",!0)])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help")]),key:"0"}:void 0]),1024)}const Nn=y(Mn,[["render",Rn],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseSelectInput.vue"]]),Fn=Object.freeze(Object.defineProperty({__proto__:null,default:Nn},Symbol.toStringTag,{value:"Module"}));C.add(L,we,ke);const Hn={name:"OpenwbSubmitButtons",components:{FontAwesomeIcon:$},props:{formName:{type:String,default:void 0},hideReset:{type:Boolean,default:!1},hideDefaults:{type:Boolean,default:!0}},emits:["reset","defaults","save"],data(){return{showModalReset:!1,showModalDefaults:!1}},computed:{showModalSave(){return this.$store.state.local.savingData}},methods:{showResetModal(){this.showModalReset=!0},handleModalReset(t){this.showModalReset=!1,t=="confirm"&&this.$emit("reset")},showDefaultsModal(){this.showModalDefaults=!0},handleModalDefaults(t){this.showModalDefaults=!1,t=="confirm"&&this.$emit("defaults")},saveSettings(){if(this.formName){if(!document.forms[this.formName].reportValidity()){console.debug("form invalid");return}}else console.debug("no form to validate");this.$emit("save")}}},Un={class:"row justify-content-center mb-1"},zn={class:"col-md-4 d-flex py-1 justify-content-center"},Gn={key:0,class:"col-md-4 d-flex py-1 justify-content-center"},Jn={key:1,class:"col-md-4 d-flex py-1 justify-content-center"};function Kn(t,e,n,d,i,s){const o=g("openwb-base-modal-dialog"),_=g("font-awesome-icon");return l(),u(I,null,[m(o,{show:s.showModalSave,title:"Speichern",subtype:"success","prevent-close":!0},{default:c(()=>e[3]||(e[3]=[p(" Einstellungen werden gespeichert... ")])),_:1},8,["show"]),m(o,{show:i.showModalReset,title:"Änderungen verwerfen",subtype:"warning",buttons:[{text:"Ok",event:"confirm",subtype:"warning"}],onModalResult:s.handleModalReset},{default:c(()=>e[4]||(e[4]=[p(" Wollen Sie die nicht gespeicherten Änderungen wirklich verwerfen? ")])),_:1},8,["show","onModalResult"]),m(o,{show:i.showModalDefaults,title:"Werkseinstellungen",subtype:"danger",buttons:[{text:"Ok",event:"confirm",subtype:"danger"}],onModalResult:s.handleModalDefaults},{default:c(()=>e[5]||(e[5]=[p(" Wollen Sie wirklich alle Werte dieser Seite auf die Werkseinstellungen zurücksetzen? ")])),_:1},8,["show","onModalResult"]),a("div",Un,[a("div",zn,[a("button",{id:"saveSettingsBtn",type:"button",class:"btn btn-block btn-success",onClick:e[0]||(e[0]=(...r)=>s.saveSettings&&s.saveSettings(...r))},[e[6]||(e[6]=p(" Speichern ")),m(_,{"fixed-width":"",icon:["fas","check"]})])]),n.hideReset?f("",!0):(l(),u("div",Gn,[a("button",{id:"modalResetBtn",type:"button",class:"btn btn-block btn-warning",onClick:e[1]||(e[1]=(...r)=>s.showResetModal&&s.showResetModal(...r))},[e[7]||(e[7]=p(" Änderungen verwerfen ")),m(_,{"fixed-width":"",icon:["fas","undo"]})])])),n.hideDefaults?f("",!0):(l(),u("div",Jn,[a("button",{id:"modalDefaultsBtn",type:"button",class:"btn btn-block btn-danger",onClick:e[2]||(e[2]=(...r)=>s.showDefaultsModal&&s.showDefaultsModal(...r))},[e[8]||(e[8]=p(" Werkseinstellungen ")),m(_,{"fixed-width":"",icon:["fas","times"]})])]))])],64)}const Qn=y(Hn,[["render",Kn],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseSubmitButtons.vue"]]),Yn=Object.freeze(Object.defineProperty({__proto__:null,default:Qn},Symbol.toStringTag,{value:"Module"}));C.add(G,Se,Be,Oe,Ce,J,$e,Te,Ie,xe,Me,Ve);const Zn={name:"OpenwbTextInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:[String,Object],required:!1,default:void 0},subtype:{validator:function(t){return["text","email","host","url","user","json","password","time","date","month","year"].indexOf(t)!==-1},default:"text"},pattern:{type:String,required:!1,default:void 0},unit:{type:String,required:!1,default:void 0},emptyValue:{type:[String,Object,null],required:!1,default:null},showQuickButtons:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{showPassword:!1,inputInvalid:!1,tempValue:this.modelValue}},computed:{value:{get(){return this.subtype=="json"?this.inputInvalid?(console.warn("returning invalid String"),this.tempValue):JSON.stringify(this.tempValue):this.modelValue},set(t){if(this.subtype=="json")try{let e=JSON.parse(t);this.inputInvalid=!1,this.$refs.jsonInput.setCustomValidity(""),this.tempValue=e,this.$emit("update:modelValue",e)}catch(e){console.error("parsing JSON failed: "+t,e),this.inputInvalid=!0,this.$refs.jsonInput.setCustomValidity("Ungültiger JSON Ausdruck!"),this.tempValue=t}else t==""&&(t=this.emptyValue),this.$emit("update:modelValue",t)}},inputRef(){switch(this.subtype){case"json":return this.$refs.jsonInput;case"password":return this.$refs.passwordInput;case"host":return this.$refs.hostInput;case"email":case"url":return this.$refs.urlInput;case"time":return this.$refs.timeInput;case"date":return this.$refs.dateInput;case"month":return this.$refs.monthInput;case"year":return this.$refs.yearInput}return this.$refs.textInput}},methods:{togglePassword(){this.showPassword=!this.showPassword},modify(t){var e,n=new Date(this.modelValue);switch(this.subtype){case"date":n.setDate(n.getDate()+t),e=String(n.getFullYear())+"-"+String(n.getMonth()+1).padStart(2,"0")+"-"+String(n.getDate()).padStart(2,"0");break;case"month":n.setMonth(n.getMonth()+t),e=String(n.getFullYear())+"-"+String(n.getMonth()+1).padStart(2,"0");break;case"year":n.setYear(n.getFullYear()+t),e=String(n.getFullYear());break;default:console.warn(`cannot modify input of subtype '${this.subtype}'`);return}e>this.inputRef.max||e[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",Xn,[a("div",es,[a("div",ts,[a("div",ns,[n.subtype=="text"?(l(),h(o,{key:0,"fixed-width":"",icon:["fas","keyboard"]})):f("",!0),n.subtype=="email"?(l(),h(o,{key:1,"fixed-width":"",icon:["fas","envelope"]})):f("",!0),n.subtype=="host"?(l(),h(o,{key:2,"fixed-width":"",icon:["fas","network-wired"]})):f("",!0),n.subtype=="url"?(l(),h(o,{key:3,"fixed-width":"",icon:["fas","globe"]})):f("",!0),n.subtype=="user"?(l(),h(o,{key:4,"fixed-width":"",icon:["fas","user"]})):f("",!0),n.subtype=="json"?(l(),h(o,{key:5,"fixed-width":"",icon:["fas","code"]})):f("",!0),n.subtype=="password"?(l(),h(o,{key:6,"fixed-width":"",icon:i.showPassword?["fas","unlock"]:["fas","lock"]},null,8,["icon"])):f("",!0),n.subtype=="time"?(l(),h(o,{key:7,"fixed-width":"",icon:["fas","clock"]})):f("",!0),n.subtype=="date"||n.subtype=="month"||n.subtype=="year"?(l(),h(o,{key:8,"fixed-width":"",icon:["fas","calendar-day"]})):f("",!0)])]),["text","user"].includes(n.subtype)?B((l(),u("input",S({key:0,ref:"textInput","onUpdate:modelValue":e[0]||(e[0]=r=>s.value=r),type:"text",class:["form-control",{invalid:i.inputInvalid}]},t.$attrs,{pattern:n.pattern}),null,16,ss)),[[T,s.value]]):f("",!0),n.subtype=="json"?B((l(),u("input",S({key:1,ref:"jsonInput","onUpdate:modelValue":e[1]||(e[1]=r=>s.value=r),type:"text",class:"form-control"},t.$attrs,{pattern:n.pattern}),null,16,os)),[[T,s.value]]):f("",!0),n.subtype=="password"?B((l(),u("input",S({key:2,ref:"passwordInput","onUpdate:modelValue":e[2]||(e[2]=r=>s.value=r),type:i.showPassword?"text":"password",class:"form-control"},t.$attrs,{pattern:n.pattern}),null,16,as)),[[R,s.value]]):f("",!0),n.subtype=="host"?B((l(),u("input",S({key:3,ref:"hostInput","onUpdate:modelValue":e[3]||(e[3]=r=>s.value=r),type:"text",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),["email","url"].includes(n.subtype)?B((l(),u("input",S({key:4,"onUpdate:modelValue":e[4]||(e[4]=r=>s.value=r),refs:"urlInput",type:n.subtype,class:"form-control"},t.$attrs),null,16,is)),[[R,s.value]]):f("",!0),n.subtype=="time"?B((l(),u("input",S({key:5,ref:"timeInput","onUpdate:modelValue":e[5]||(e[5]=r=>s.value=r),type:"time",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),n.subtype=="date"?B((l(),u("input",S({key:6,ref:"dateInput","onUpdate:modelValue":e[6]||(e[6]=r=>s.value=r),type:"date",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),n.subtype=="month"?B((l(),u("input",S({key:7,ref:"monthInput","onUpdate:modelValue":e[7]||(e[7]=r=>s.value=r),type:"month",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),n.subtype=="year"?B((l(),u("input",S({key:8,ref:"yearInput","onUpdate:modelValue":e[8]||(e[8]=r=>s.value=r),type:"number",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),n.unit?(l(),u("div",ls,[a("div",rs,v(n.unit),1)])):f("",!0),n.subtype=="password"?(l(),u("div",{key:10,class:"input-group-append clickable",onClick:e[9]||(e[9]=(...r)=>s.togglePassword&&s.togglePassword(...r))},[a("div",ds,[m(o,{"fixed-width":"",icon:i.showPassword?["far","eye"]:["far","eye-slash"]},null,8,["icon"])])])):f("",!0),n.showQuickButtons&&(n.subtype=="date"||n.subtype=="month"||n.subtype=="year")?(l(),u("div",{key:11,class:"input-group-append clickable",onClick:e[10]||(e[10]=r=>s.modify(-1))},e[12]||(e[12]=[a("div",{class:"input-group-text"},"-",-1)]))):f("",!0),n.showQuickButtons&&(n.subtype=="date"||n.subtype=="month"||n.subtype=="year")?(l(),u("div",{key:12,class:"input-group-append clickable",onClick:e[11]||(e[11]=r=>s.modify(1))},e[13]||(e[13]=[a("div",{class:"input-group-text"},"+",-1)]))):f("",!0)])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const cs=y(Zn,[["render",us],["__scopeId","data-v-6927d479"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseTextInput.vue"]]),ps=Object.freeze(Object.defineProperty({__proto__:null,default:cs},Symbol.toStringTag,{value:"Module"}));C.add(G,J);const ms={name:"OpenwbTextareaInput",components:{OpenwbBaseSettingElement:M,FontAwesomeIcon:$},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:[String,Object],required:!1,default:void 0},subtype:{validator:function(t){return["text","json"].indexOf(t)!==-1},default:"text"}},emits:["update:modelValue"],data(){return{inputInvalid:!1,tempValue:this.modelValue}},computed:{value:{get(){return this.subtype=="json"?this.inputInvalid?(console.debug("returning invalid String"),this.tempValue):JSON.stringify(this.tempValue,void 0,2):this.modelValue},set(t){if(this.subtype=="json")try{let e=JSON.parse(t);this.inputInvalid=!1,this.$refs.jsonInput.setCustomValidity(""),this.tempValue=e,this.$emit("update:modelValue",e)}catch(e){console.warn("parsing JSON failed: "+t,e),this.inputInvalid=!0,this.$refs.jsonInput.setCustomValidity("Ungültiger JSON Ausdruck!"),this.tempValue=t}else this.$emit("update:modelValue",t)}},length:{get(){return this.value!==void 0?this.value.length:0}}}},fs={class:"w-100"},_s={class:"input-group"},bs={class:"input-group-prepend"},gs={class:"input-group-text"},hs={key:2,class:"input-group-append"},vs={class:"input-group-text"},ys={class:"form-text text-muted text-right"};function ws(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",fs,[a("div",_s,[a("div",bs,[a("div",gs,[n.subtype=="text"?(l(),h(o,{key:0,"fixed-width":"",icon:["fas","keyboard"]})):f("",!0),n.subtype=="json"?(l(),h(o,{key:1,"fixed-width":"",icon:["fas","code"]})):f("",!0)])]),n.subtype==="json"?B((l(),u("textarea",S({key:0,ref:"jsonInput","onUpdate:modelValue":e[0]||(e[0]=r=>s.value=r),class:"form-control"},t.$attrs),null,16)),[[T,s.value,void 0,{lazy:!0}]]):B((l(),u("textarea",S({key:1,"onUpdate:modelValue":e[1]||(e[1]=r=>s.value=r),class:"form-control"},t.$attrs),null,16)),[[T,s.value]]),t.$attrs.maxlength?(l(),u("div",hs,[a("div",vs,[a("small",ys,v(s.length)+" / "+v(t.$attrs.maxlength),1)])])):f("",!0)])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const ks=y(ms,[["render",ws],["__scopeId","data-v-3d93046b"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseTextarea.vue"]]),Ss=Object.freeze(Object.defineProperty({__proto__:null,default:ks},Symbol.toStringTag,{value:"Module"}));const Bs={name:"OpenwbToast",props:{topic:{type:String,required:!0},subtype:{validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark"].indexOf(t)!==-1},default:"secondary"},source:{type:String,required:!0,validator:function(t){return["system","client","command"].indexOf(t)!==-1}},timestamp:{type:Number,required:!0}},emits:["dismiss","hide"],data(){return{handle:void 0,relativeTime:void 0,hidden:!1}},mounted(){this.handle=window.setInterval(this.updateRelativeTime,1e3)},unmounted(){window.clearInterval(this.handle)},methods:{dismiss(){this.$emit("dismiss",{topic:this.topic})},updateRelativeTime(){const t={year:31536e6,month:2628e6,day:864e5,hour:36e5,minute:6e4,second:1e3};var e=new Intl.RelativeTimeFormat("de",{numeric:"auto"});const d=new Date-this.timestamp*1e3;for(var i in t)if(Math.abs(d)>t[i]){this.relativeTime=e.format(Math.round(-d/t[i]),i);break}d>10*1e3&&!this.hidden&&(this.hidden=!0,this.$emit("hide",{topic:this.topic}))}}},Os={key:0,class:"time-diff"},Cs={class:"toast-body"};function $s(t,e,n,d,i,s){return l(),u("div",{class:O(["toast","border-"+n.subtype]),role:"alert"},[a("div",{class:O(["toast-header","bg-"+n.subtype])},[e[2]||(e[2]=a("strong",{class:"pr-2 mr-auto"},"openWB",-1)),n.timestamp?(l(),u("small",Os,v(i.relativeTime),1)):f("",!0),a("button",{type:"button",class:"ml-2 mb-1 close","data-dismiss":"toast","aria-label":"Close",onClick:e[0]||(e[0]=(...o)=>s.dismiss&&s.dismiss(...o))},e[1]||(e[1]=[a("span",{"aria-hidden":"true"},"×",-1)]))],2),a("div",Cs,[b(t.$slots,"default",{},void 0,!0)])],2)}const Ts=y(Bs,[["render",$s],["__scopeId","data-v-c51b5764"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseToast.vue"]]),Is=Object.freeze(Object.defineProperty({__proto__:null,default:Ts},Symbol.toStringTag,{value:"Module"}));C.add(Ae);const xs={name:"OpenwbNavBar",components:{FontAwesomeIcon:$},computed:{nodeEnv(){return"development"}},watch:{$route(){this.$refs.collapsibleNavbar.classList.remove("show"),this.$refs.navbarButton.classList.add("collapsed"),this.$refs.navbarButton.setAttribute("aria-expanded",!1)}}},Ms={class:"navbar navbar-expand-lg bg-dark navbar-dark fixed-top"},Vs={ref:"navbarButton",class:"navbar-toggler mr-5",type:"button","data-toggle":"collapse","data-target":"#collapsibleNavbar"},As={id:"collapsibleNavbar",ref:"collapsibleNavbar",class:"collapse navbar-collapse navbar-nav-scroll"},Ps={class:"navbar-nav"},qs={class:"nav-item"},Ds={class:"nav-item dropdown nav-separator-after"},Es={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},Ls={class:"nav-item dropdown"},js={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},Ws={class:"nav-item dropdown"},Rs={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},Ns={class:"nav-item dropdown"},Fs={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},Hs={class:"nav-item dropdown"},Us={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},zs={class:"nav-item nav-separator-before"},Gs={class:"nav-link",href:"https://github.com/openWB/core/wiki",target:"_blank"};function Js(t,e,n,d,i,s){const o=g("router-link"),_=g("font-awesome-icon");return l(),u("nav",Ms,[e[31]||(e[31]=a("a",{class:"navbar-brand",href:"/openWB/web/"},[a("span",null,"openWB")],-1)),a("button",Vs,e[0]||(e[0]=[a("span",{class:"navbar-toggler-icon"},null,-1)]),512),a("div",As,[a("ul",Ps,[a("li",qs,[m(o,{to:"/Status",class:"nav-link","active-class":"active disabled"},{default:c(()=>e[1]||(e[1]=[p(" Status ")])),_:1})]),a("li",Ds,[e[4]||(e[4]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," Auswertungen ",-1)),a("div",Es,[m(o,{to:"/Logging/ChargeLog",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[2]||(e[2]=[p(" Ladeprotokoll ")])),_:1}),m(o,{to:"/Logging/Chart",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[3]||(e[3]=[p(" Diagramme ")])),_:1})])]),a("li",Ls,[e[7]||(e[7]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," Einstellungen ",-1)),a("div",js,[m(o,{to:"/GeneralConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[5]||(e[5]=[p(" Allgemein ")])),_:1}),m(o,{to:"/OptionalComponents",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[6]||(e[6]=[p(" Optionale Hardware ")])),_:1})])]),a("li",Ws,[e[13]||(e[13]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," Ladeeinstellungen ",-1)),a("div",Rs,[m(o,{to:"/GeneralChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[8]||(e[8]=[p(" Übergreifendes ")])),_:1}),m(o,{to:"/InstantChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[9]||(e[9]=[p(" Sofortladen ")])),_:1}),m(o,{to:"/PVChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[10]||(e[10]=[p(" PV-Laden ")])),_:1}),m(o,{to:"/TimeChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[11]||(e[11]=[p(" Zeitladen ")])),_:1}),m(o,{to:"/ScheduledChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[12]||(e[12]=[p(" Zielladen ")])),_:1})])]),a("li",Ns,[e[20]||(e[20]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," Konfiguration ",-1)),a("div",Fs,[m(o,{to:"/HardwareInstallation",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[14]||(e[14]=[p(" Geräte und Komponenten ")])),_:1}),m(o,{to:"/LoadManagementConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[15]||(e[15]=[p(" Lastmanagement ")])),_:1}),m(o,{to:"/ChargePointInstallation",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[16]||(e[16]=[p(" Ladepunkte ")])),_:1}),m(o,{to:"/VehicleConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[17]||(e[17]=[p(" Fahrzeuge ")])),_:1}),e[18]||(e[18]=a("div",{class:"dropdown-divider"},null,-1)),e[19]||(e[19]=a("a",{href:"modules/legacy_smart_home/smarthomeconfig.php",class:"dropdown-item",target:"_blank"}," SmartHome ",-1))])]),a("li",Hs,[e[29]||(e[29]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," System ",-1)),a("div",Us,[m(o,{to:"/System/InstallAssistant",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[21]||(e[21]=[p(" Einrichtungsassistent ")])),_:1}),m(o,{to:"/System/CloudConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[22]||(e[22]=[p(" openWB Cloud ")])),_:1}),m(o,{to:"/System/MqttBridgeConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[23]||(e[23]=[p(" MQTT-Brücken ")])),_:1}),m(o,{to:"/System/DebugConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[24]||(e[24]=[p(" Fehlersuche ")])),_:1}),m(o,{to:"/System/Support",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[25]||(e[25]=[p(" Support ")])),_:1}),m(o,{to:"/System/DataManagement",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[26]||(e[26]=[p(" Datenverwaltung ")])),_:1}),m(o,{to:"/System/SystemConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[27]||(e[27]=[p(" System ")])),_:1}),m(o,{to:"/System/LegalSettings",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[28]||(e[28]=[p(" Rechtliches ")])),_:1})])]),a("li",zs,[a("a",Gs,[e[30]||(e[30]=p(" Wiki ")),m(_,{"fixed-width":"",icon:["fas","external-link-alt"]})])])])],512)])}const Ks=y(xs,[["render",Js],["__scopeId","data-v-e7a6d0c0"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageNavbar.vue"]]);const Qs={name:"OpenwbPageFooter"},Ys={id:"footer",class:"footer bg-dark text-light font-small"},Zs={class:"container text-center"};function Xs(t,e,n,d,i,s){return l(),u("footer",Ys,[a("div",Zs,[a("small",null," Sie befinden sich hier: Einstellungen / "+v(t.$route.meta.heading),1)])])}const eo=y(Qs,[["render",Xs],["__scopeId","data-v-3c9a239a"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageFooter.vue"]]);C.add(Pe);const to={name:"OpenwbDonationBanner",components:{FontAwesomeIcon:$}},no={class:"mt-3 alert alert-dark text-center"},so={action:"https://www.paypal.com/cgi-bin/webscr",method:"post",target:"_blank"},oo={type:"submit",class:"btn btn-primary"};function ao(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u("div",no,[e[3]||(e[3]=p(" Open Source made with love!")),e[4]||(e[4]=a("br",null,null,-1)),e[5]||(e[5]=p(" Jede Spende hilft die Weiterentwicklung von openWB voranzutreiben")),e[6]||(e[6]=a("br",null,null,-1)),a("form",so,[e[1]||(e[1]=a("input",{type:"hidden",name:"cmd",value:"_s-xclick"},null,-1)),e[2]||(e[2]=a("input",{type:"hidden",name:"hosted_button_id",value:"2K8C4Y2JTGH7U"},null,-1)),a("button",oo,[e[0]||(e[0]=p(" Spenden ")),m(o,{icon:["fab","paypal"]})])])])}const io=y(to,[["render",ao],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageDonationBanner.vue"]]),lo={name:"ComponentState",emits:["reset","defaults","save"],data(){return{mqttTopicsToSubscribe:[]}},computed:{weekdays(){return["Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag"]},chargeModes(){return["instant_charging","pv_charging","scheduled_charging","time_charging","standby","stop"]}},mounted(){this.mqttTopicsToSubscribe.length>0&&this.$root.doSubscribe(this.mqttTopicsToSubscribe)},unmounted(){this.mqttTopicsToSubscribe.length>0&&this.$root.doUnsubscribe(this.mqttTopicsToSubscribe)},methods:{updateState(t,e,n=void 0){console.debug("updateState:",t,e,n),this.$store.commit({type:"updateTopic",topic:t,objectPath:n,payload:e})},ac_current2dc_power(t){return parseFloat((t*3*230/1e3).toFixed(2))},dc_power2ac_current(t){return parseFloat((t*1e3/230/3).toFixed(2))},getWildcardIndexList(t,e=!1){let n=t;e||(n="^"+t.replaceAll("/","\\/").replaceAll("+","[^+/]+").replaceAll("#","[^#/]+")+"$");let d=Object.keys(this.$store.state.mqtt).filter(i=>i.match(n));return d.forEach((i,s,o)=>{o[s]=parseInt(i.match(/(?:\/)([0-9]+)(?=\/)*/g)[0].replace(/[^0-9]+/g,""))}),d},getWildcardTopics(t,e=!1){let n=t;return e||(n="^"+t.replaceAll("/","\\/").replaceAll("+","[^+/]+").replaceAll("#","[^#/]+")+"$"),Object.keys(this.$store.state.mqtt).filter(d=>d.match(n)).reduce((d,i)=>({...d,[i]:this.$store.state.mqtt[i]}),{})},formatDate(t,e={year:"numeric",month:"2-digit",day:"2-digit"}){return new Date(t).toLocaleDateString(void 0,e)},formatNumber(t,e=0,n=e,d=1){if(!(t==null||isNaN(t)))return(t*d).toLocaleString(void 0,{minimumFractionDigits:e,maximumFractionDigits:n})},formatNumberTopic(t,e=0,n=e,d=1){return this.$store.state.mqtt[t]?this.formatNumber(this.$store.state.mqtt[t],e,n,d):"-"},formatPhaseArrayNumberTopic(t,e=0,n=e,d=1){return this.$store.state.mqtt[t]?this.$store.state.mqtt[t].map(i=>this.formatNumber(i,e,n,d)).join(" / "):"- / - / -"},translateChargeMode(t){switch(t){case"instant_charging":return"Sofort";case"pv_charging":return"PV";case"scheduled_charging":return"Zielladen";case"time_charging":return"Zeitladen";case"standby":return"Standby";case"stop":return"Stop";default:return console.warn("unknown charge mode:",t),t}}}},Q=y(lo,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/mixins/ComponentState.vue"]]);C.add(qe,De);const ro={name:"OpenwbPageMessages",components:{FontAwesomeIcon:$,FontAwesomeLayers:Ee,FontAwesomeLayersText:Le},mixins:[Q],data(){return{mqttTopicsToSubscribe:["openWB/system/messages/+","openWB/command/"+this.$root.mqttClientId+"/messages/+"],showAllMessages:!1,hiddenMessages:[]}},computed:{alertLevel(){return this.messages.reduce((e,n)=>((e=="light"&&["info","success","warning","danger"].includes(n.type)||e=="info"&&["success","warning","danger"].includes(n.type)||e=="success"&&["warning","danger"].includes(n.type)||e=="warning"&&n.type=="danger")&&(e=n.type),e),"light")},messages(){const t=[];return this.systemMessages.forEach(e=>{t.push(e)}),this.clientMessages.forEach(e=>{t.push(e)}),t.sort(this.compareMessagesByTimestamp),t},recentMessages(){return this.showAllMessages?this.messages:this.messages.filter(t=>!this.hiddenMessages.includes(t.topic))},messageIndicatorClass(){return"text-"+this.alertLevel},systemMessages(){let t=this.getWildcardTopics("openWB/system/messages/+");var e=[];for(const[n,d]of Object.entries(t))e.push({topic:n,...d});return e},clientMessages(){let t=this.getWildcardTopics("openWB/command/"+this.$root.mqttClientId+"/messages/+");var e=[];for(const[n,d]of Object.entries(t))e.push({topic:n,...d});return e}},methods:{toggleAllMessages(){this.showAllMessages=!this.showAllMessages},compareMessagesByTimestamp(t,e){return e.timestamp-t.timestamp},clearTopic(t){this.$root.doPublish(t,void 0)},dismissMessage(t){this.clearTopic(t.topic);var e=this.hiddenMessages.indexOf(t.topic);e>-1&&this.hiddenMessages.splice(e,1)},dismissAllMessages(){this.messages.forEach(t=>{this.clearTopic(t.topic)}),this.hiddenMessages=[],this.toggleAllMessages()},hideMessage(t){this.hiddenMessages.includes(t.topic)||this.hiddenMessages.push(t.topic)}}},uo=["innerHTML"];function co(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("font-awesome-layers-text"),r=g("font-awesome-layers"),k=g("openwb-base-alert"),x=g("openwb-base-click-button"),A=g("openwb-base-toast");return l(),u(I,null,[(l(),h(F,{to:"body"},[a("div",{id:"message-indicator",class:O(["text-light mt-1 p-2 mr-1 clickable",i.showAllMessages?"active":""]),onClick:e[0]||(e[0]=(...P)=>s.toggleAllMessages&&s.toggleAllMessages(...P))},[m(r,{"full-width":"",style:{"font-size":"175%"}},{default:c(()=>[m(o,{"fixed-width":"",icon:i.showAllMessages?["fas","bell"]:["far","bell"],class:O(s.messageIndicatorClass)},null,8,["icon","class"]),s.messages.length>0?(l(),h(_,{key:0,counter:"",value:s.messages.length,position:"top-right",class:"message-counter bg-light text-dark"},null,8,["value"])):f("",!0)]),_:1})],2)])),s.recentMessages.length>0||i.showAllMessages?(l(),u("div",{key:0,class:O(["openwb-toast-container",i.showAllMessages?"full-height":""])},[s.recentMessages.length==0?(l(),h(k,{key:0,subtype:"info"},{default:c(()=>e[1]||(e[1]=[p(" Keine Nachrichten vorhanden. ")])),_:1})):i.showAllMessages?(l(),h(x,{key:1,class:"btn-sm btn-secondary mb-1",onButtonClicked:s.dismissAllMessages},{default:c(()=>e[2]||(e[2]=[p(" Alle Nachrichten löschen ")])),_:1},8,["onButtonClicked"])):f("",!0),(l(!0),u(I,null,q(s.recentMessages,P=>(l(),h(A,{key:P.topic,topic:P.topic,source:P.source,subtype:P.type,timestamp:P.timestamp,onDismiss:s.dismissMessage,onHide:s.hideMessage},{default:c(()=>[a("span",{innerHTML:P.message},null,8,uo)]),_:2},1032,["topic","source","subtype","timestamp","onDismiss","onHide"]))),128))],2)):f("",!0)],64)}const po=y(ro,[["render",co],["__scopeId","data-v-2c25f0d0"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageMessages.vue"]]),mo={name:"OpenwbPageBlocker",mixins:[Q],data(){return{mqttTopicsToSubscribe:["openWB/system/boot_done","openWB/system/update_in_progress"]}},computed:{title(){return this.bootInProgress||this.updateInProgress?"openWB ist noch nicht bereit":this.reloadRequired?"Neues Laden der Seite erforderlich":"???"},myButtons(){return!(this.bootInProgress||this.updateInProgress)&&this.reloadRequired?[{text:"Jetzt neu laden",subtype:"success",event:"reload"}]:[]},bootInProgress(){return this.$store.state.mqtt["openWB/system/boot_done"]==null?!0:!this.$store.state.mqtt["openWB/system/boot_done"]},updateInProgress(){return this.$store.state.mqtt["openWB/system/update_in_progress"]==null?!1:this.$store.state.mqtt["openWB/system/update_in_progress"]},reloadRequired(){return this.$store.state.local.reloadRequired},showModalBlocker(){return this.bootInProgress||this.updateInProgress||this.reloadRequired}},methods:{handleModalResult(t){t=="reload"?location.reload():console.warn("unknown event",t)}}},fo={class:"openwb-blocker"},_o={key:0},bo={key:1},go={key:2},ho={key:3};function vo(t,e,n,d,i,s){const o=g("openwb-base-modal-dialog");return l(),u("div",fo,[m(o,{show:s.showModalBlocker,title:s.title,subtype:"dark","prevent-close":!0,buttons:s.myButtons,onModalResult:e[0]||(e[0]=_=>s.handleModalResult(_))},{default:c(()=>[s.bootInProgress?(l(),u("p",_o,"Der Systemstart ist noch nicht abgeschlossen.")):f("",!0),s.updateInProgress?(l(),u("p",bo,"Es wird eine Systemaktualisierung ausgeführt.")):f("",!0),!(s.bootInProgress||s.updateInProgress)&&s.reloadRequired?(l(),u("p",go,"Bitte die Seite neu laden.")):(l(),u("p",ho,"Bitte warten..."))]),_:1},8,["show","title","buttons"])])}const yo=y(mo,[["render",vo],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageBlocker.vue"]]);const wo={name:"OpenwbSettingsApp",components:{NavBar:Ks,PageFooter:eo,DonationBanner:io,Messages:po,Blocker:yo},data(){return{client:{connected:!1},connection:{protocol:location.protocol=="https:"?"wss":"ws",host:location.hostname,port:parseInt(location.port)||(location.protocol=="https:"?443:80),endpoint:"/ws",connectTimeout:4e3,reconnectPeriod:4e3}}},computed:{mqttClientId(){try{return this.client.options.clientId}catch(t){console.error("mqttClientId error",t);return}},topicList(){return Object.keys(this.$store.state.mqtt)}},created(){this.createConnection()},methods:{async saveValues(t=void 0){function e(d){return new Promise(i=>setTimeout(i,d))}console.debug("saving values..."),this.$store.state.local.savingData=!0;let n={};t===void 0?(console.debug("no topics defined, so save everything we have in store"),n=this.$store.state.mqtt):Array.isArray(t)?t.forEach(d=>{n[d]=this.$store.state.mqtt[d]}):console.error("expected array, got ",typeof t);for(const[d,i]of Object.entries(n)){let s=d.replace("openWB/","openWB/set/");console.debug("saving data:",s,i),this.doPublish(s,i),await e(100)}console.debug("done saving data"),this.$store.state.local.savingData=!1},resetValues(t=this.topicList){console.debug("resetting values..."),console.debug("topics: ",t),this.doUnsubscribe(t),this.doSubscribe(t)},setDefaultValues(){console.debug("setting default values... (ToDo)")},sendCommand(t){this.doPublish("openWB/set/command/"+this.client.options.clientId+"/todo",t,!1)},createConnection(){const{protocol:t,host:e,port:n,endpoint:d,...i}=this.connection,s=`${t}://${e}:${n}${d}`;console.debug("connecting to broker:",s);try{this.client=oe.connect(s,i)}catch(o){console.error("mqtt.connect error",o)}this.client.on("connect",()=>{console.debug("Connection succeeded! ClientId: ",this.client.options.clientId),this.doSubscribe(["openWB/system/usage_terms_acknowledged"]),this.doSubscribe(["openWB/system/installAssistantDone"])}),this.client.on("error",o=>{console.error("Connection failed",o)}),this.client.on("message",(o,_)=>{if(_.toString().length>0){let r;try{r=JSON.parse(_.toString())}catch(k){console.debug("Json parsing failed, fallback to string: ",o,k),r=_.toString()}this.$store.commit("updateTopic",{topic:o,payload:r})}else this.$store.commit("removeTopic",o)})},doSubscribe(t){console.debug("doSubscribe",t),t.forEach(e=>{this.$store.commit("addSubscription",e),this.$store.getters.subscriptionCount(e)==1?(e.includes("#")||e.includes("+")?console.debug("skipping init of wildcard topic:",e):this.$store.commit("addTopic",{topic:e,payload:void 0}),this.client.subscribe(e,{},n=>{if(n){console.error("Subscribe to topics error",n);return}})):console.debug("Already subscribed to topic: ",e)})},doUnsubscribe(t){console.debug("doUnsubscribe",t),t.forEach(e=>{this.$store.commit("removeSubscription",e),this.$store.getters.subscriptionCount(e)==0?(this.client.unsubscribe(e,n=>{n&&console.error("Unsubscribe error",n)}),e.includes("#")||e.includes("+")?(console.debug("expanding wildcard topic:",e),Object.keys(this.getWildcardTopics(e)).forEach(n=>{console.debug("removing wildcardTopic:",n),this.$store.commit("removeTopic",n)})):(console.debug("removing topic:",e),this.$store.commit("removeTopic",e))):console.debug("Still subscribed to topic: ",e)})},doPublish(t,e,n=!0,d=2){let i={qos:d,retain:n};this.client.publish(t,JSON.stringify(e),i,s=>{s&&console.error("Publish error",s)})},postClientMessage(t,e="secondary"){console.debug("postMessage:",t,e);const n=Date.now(),d="openWB/command/"+this.mqttClientId+"/messages/"+n;this.$store.commit({type:"addTopic",topic:d,payload:{message:t,type:e,source:"client",timestamp:Math.floor(n/1e3)}})},getWildcardTopics(t,e=!1){let n=t;return e||(n="^"+t.replaceAll("/","\\/").replaceAll("+","[^+/]+").replaceAll("#","[^#/]+")+"$"),Object.keys(this.$store.state.mqtt).filter(d=>d.match(n)).reduce((d,i)=>({...d,[i]:this.$store.state.mqtt[i]}),{})}}},ko={role:"main",class:"container"},So={id:"content"};function Bo(t,e,n,d,i,s){const o=g("nav-bar"),_=g("router-view"),r=g("donation-banner"),k=g("page-footer"),x=g("messages"),A=g("blocker");return l(),u(I,null,[a("header",null,[m(o)]),a("div",ko,[a("div",So,[a("h1",null,v(t.$route.meta.heading),1),m(_,{onSave:s.saveValues,onReset:s.resetValues,onDefaults:s.setDefaultValues,onSendCommand:s.sendCommand},null,8,["onSave","onReset","onDefaults","onSendCommand"])]),m(r)]),m(k),m(x),m(A)],64)}const Oo=y(wo,[["render",Bo],["__file","/opt/openWB-dev/openwb-ui-settings/src/App.vue"]]),Co="modulepreload",$o=function(t){return"/openWB/web/settings/"+t},N={},w=function(e,n,d){if(!n||n.length===0)return e();const i=document.getElementsByTagName("link");return Promise.all(n.map(s=>{if(s=$o(s),s in N)return;N[s]=!0;const o=s.endsWith(".css"),_=o?'[rel="stylesheet"]':"";if(!!d)for(let x=i.length-1;x>=0;x--){const A=i[x];if(A.href===s&&(!o||A.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${s}"]${_}`))return;const k=document.createElement("link");if(k.rel=o?"stylesheet":Co,o||(k.as="script",k.crossOrigin=""),k.href=s,document.head.appendChild(k),o)return new Promise((x,A)=>{k.addEventListener("load",x),k.addEventListener("error",()=>A(new Error(`Unable to preload CSS for ${s}`)))})})).then(()=>e()).catch(s=>{const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=s,window.dispatchEvent(o),!o.defaultPrevented)throw s})};let Y={mqtt:{},mqttSubscriptions:{},local:{reloadRequired:!1,savingData:!1},text:{rfidWiki:'Bitte auch hiervon abhängige Einstellungen beachten. Eine Übersicht gibt es im Wiki.'}};Y.examples={text1:"Text...",text2:"mail@domain.com",text3:"openwb.local",text4:"http://www.openwb.de",text5:"Benutzername",text6:"12:34",text7:"2021-10-31",number1:5,number2:10,number3:28e-5,password1:"GeHeiM!",textarea1:"Langer Text...",range1:6,range2:10,select1:1,select2:void 0,buttonGroup1:1,checkbox1:!0,json1:{text:"Text",number:123},hierarchy1:[{id:0,type:"counter",children:[{id:3,type:"inverter",children:[]},{id:4,type:"bat",children:[]},{id:1,type:"cp",children:[]},{id:2,type:"cp",children:[]}]}],hierarchy1Labels:{0:"EVU",1:"Ladepunkt 1",2:"Ladepunkt 2",3:"Wechselrichter",4:"Batteriespeicher"},tags:["1234","2345","3456"]};const D=ae({state:Y,mutations:{storeLocal(t,e){t.local[e.name]=e.value},addTopic(t,e){Object.keys(t.mqtt).includes(e.topic)?console.warn("topic already exists: ",e.topic):t.mqtt[e.topic]=e.payload},removeTopic(t,e){delete t.mqtt[e]},updateTopic(t,e){const n=(d,i,s)=>i.split(".").reduce((o,_,r)=>o[_]=i.split(".").length===++r?s:o[_]||{},d);e.topic in t.mqtt||!(e.topic in t.examples)?e.objectPath!=null?n(t.mqtt[e.topic],e.objectPath,e.payload):t.mqtt[e.topic]=e.payload:(console.debug("topic not found in state.mqtt: ",e.topic),e.topic in t.examples?e.objectPath!=null?n(t.examples[e.topic],e.objectPath,e.payload):t.examples[e.topic]=e.payload:console.warn("topic not found in state: ",e.topic," giving up"))},addSubscription(t,e){e in t.mqttSubscriptions?t.mqttSubscriptions[e]+=1:t.mqttSubscriptions[e]=1,console.debug("subscription count: ",e,t.mqttSubscriptions[e])},removeSubscription(t,e){e in t.mqttSubscriptions&&(t.mqttSubscriptions[e]-=1,t.mqttSubscriptions[e]<=0&&delete t.mqttSubscriptions[e])}},actions:{},modules:{},getters:{usageTermsAcknowledged(t){return new Promise(e=>{if(t.mqtt["openWB/system/usage_terms_acknowledged"]!==void 0)e(t.mqtt["openWB/system/usage_terms_acknowledged"]);else{var n,d;n=setTimeout(()=>{clearInterval(d),e(!1)},5e3),d=setInterval(()=>{t.mqtt["openWB/system/usage_terms_acknowledged"]!==void 0&&(clearTimeout(n),clearInterval(d),e(t.mqtt["openWB/system/usage_terms_acknowledged"]))},100)}})},installAssistantDone(t){return new Promise(e=>{if(t.mqtt["openWB/system/installAssistantDone"]!==void 0)e(t.mqtt["openWB/system/installAssistantDone"]);else{var n,d;n=setTimeout(()=>{clearInterval(d),e(!1)},5e3),d=setInterval(()=>{t.mqtt["openWB/system/installAssistantDone"]!==void 0&&(clearTimeout(n),clearInterval(d),e(t.mqtt["openWB/system/installAssistantDone"]))},100)}})},subscriptionCount:t=>e=>t.mqttSubscriptions[e]||0}}),Z=[{path:"/",redirect:"/GeneralConfig"},{path:"/Status",name:"Status",meta:{heading:"Status"},component:()=>w(()=>import("./Status-a010f0c2.js"),["assets/Status-a010f0c2.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-chartjs-888a84c2.js","assets/vendor-luxon-8ddd27a0.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/Status-1500a80b.css"])},{path:"/Logging/ChargeLog",name:"ChargeLog",meta:{heading:"Auswertungen - Ladeprotokoll"},component:()=>w(()=>import("./ChargeLog-67edf557.js"),["assets/ChargeLog-67edf557.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/ChargeLog-1fb3fa68.css"])},{path:"/Logging/Chart/:chartRange?/:initialDate?",name:"DailyChart",meta:{heading:"Auswertungen - Diagramme"},component:()=>w(()=>import("./Chart-698f43ef.js"),["assets/Chart-698f43ef.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-chartjs-888a84c2.js","assets/vendor-luxon-8ddd27a0.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/Chart-e20451b4.css"])},{path:"/GeneralConfig",name:"GeneralConfig",meta:{heading:"Einstellungen - Allgemein"},component:()=>w(()=>import("./GeneralConfig-58412dab.js").then(t=>t.a),["assets/GeneralConfig-58412dab.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js"])},{path:"/OptionalComponents",name:"OptionalComponents",meta:{heading:"Einstellungen - Optionale Hardware"},component:()=>w(()=>import("./OptionalComponents-795ca136.js").then(t=>t.O),["assets/OptionalComponents-795ca136.js","assets/dynamic-import-helper-be004503.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css"])},{path:"/GeneralChargeConfig",name:"GeneralChargeConfig",meta:{heading:"Ladeeinstellungen - Übergreifendes"},component:()=>w(()=>import("./GeneralChargeConfig-f0122900.js").then(t=>t.G),["assets/GeneralChargeConfig-f0122900.js","assets/dynamic-import-helper-be004503.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css"])},{path:"/InstantChargeConfig",name:"InstantChargeConfig",meta:{heading:"Ladeeinstellungen - Sofortladen"},component:()=>w(()=>import("./InstantChargeConfig-3d737f28.js"),["assets/InstantChargeConfig-3d737f28.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/PVChargeConfig",name:"PVChargeConfig",meta:{heading:"Ladeeinstellungen - PV-Laden"},component:()=>w(()=>import("./PVChargeConfig-a702e029.js"),["assets/PVChargeConfig-a702e029.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/TimeChargeConfig",name:"TimeChargeConfig",meta:{heading:"Ladeeinstellungen - Zeitladen"},component:()=>w(()=>import("./TimeChargeConfig-b8348c00.js"),["assets/TimeChargeConfig-b8348c00.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/ScheduledChargeConfig",name:"ScheduledChargeConfig",meta:{heading:"Ladeeinstellungen - Zielladen"},component:()=>w(()=>import("./ScheduledChargeConfig-305ec289.js"),["assets/ScheduledChargeConfig-305ec289.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/HardwareInstallation",name:"HardwareInstallation",meta:{heading:"Konfiguration - Geräte und Komponenten"},component:()=>w(()=>import("./HardwareInstallation-775406e1.js").then(t=>t.a),["assets/HardwareInstallation-775406e1.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js"])},{path:"/LoadManagementConfiguration",name:"LoadManagementConfiguration",meta:{heading:"Konfiguration - Lastmanagement"},component:()=>w(()=>import("./LoadManagementConfig-ae3a8b6c.js"),["assets/LoadManagementConfig-ae3a8b6c.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/OpenwbSortableList-dbb3f422.js","assets/OpenwbSortableList-7ba533e4.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/ChargePointInstallation",name:"ChargePointInstallation",meta:{heading:"Konfiguration - Ladepunkte"},component:()=>w(()=>import("./ChargePointInstallation-a0c18822.js").then(t=>t.c),["assets/ChargePointInstallation-a0c18822.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js","assets/ChargePointInstallation-7b9399a8.css"])},{path:"/VehicleConfiguration/:section?/:section_index?/:section_part?/:action?",name:"VehicleConfiguration",meta:{heading:"Konfiguration - Fahrzeuge"},component:()=>w(()=>import("./VehicleConfig-37a300a0.js").then(t=>t.b),["assets/VehicleConfig-37a300a0.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js"])},{path:"/System/CloudConfiguration",name:"CloudConfig",meta:{heading:"System - openWB Cloud"},component:()=>w(()=>import("./CloudConfig-0179d1fa.js"),["assets/CloudConfig-0179d1fa.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/System/MqttBridgeConfiguration",name:"MqttBridgeConfig",meta:{heading:"System - MQTT-Brücken"},component:()=>w(()=>import("./MqttBridgeConfig-8e19a90f.js"),["assets/MqttBridgeConfig-8e19a90f.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/System/DebugConfiguration",name:"Debugging",meta:{heading:"System - Fehlersuche"},component:()=>w(()=>import("./DebugConfig-cfbd3f0e.js"),["assets/DebugConfig-cfbd3f0e.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/DebugConfig-e21ab72c.css"])},{path:"/System/Support",name:"Support",meta:{heading:"System - Support"},component:()=>w(()=>import("./Support-0d2ea797.js"),["assets/Support-0d2ea797.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/System/LegalSettings",name:"LegalSettings",meta:{heading:"System - Rechtliches"},component:()=>w(()=>import("./LegalSettings-e785d18b.js"),["assets/LegalSettings-e785d18b.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/System/SystemConfiguration",name:"SystemConfig",meta:{heading:"System - System"},component:()=>w(()=>import("./System-b84edc7f.js"),["assets/System-b84edc7f.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/System-0f1d217b.css"])},{path:"/System/DataManagement",name:"DataManagement",meta:{heading:"System - Datenverwaltung"},component:()=>w(()=>import("./DataManagement-c0d34f05.js").then(t=>t.a),["assets/DataManagement-c0d34f05.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js"])},{path:"/System/InstallAssistant",name:"InstallAssistant",meta:{heading:"System - Einrichtungsassistent"},component:()=>w(()=>import("./InstallAssistant-15ca0748.js"),["assets/InstallAssistant-15ca0748.js","assets/dynamic-import-helper-be004503.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])}];Z.push({path:"/TestingStore",name:"VUEX Store",meta:{heading:"Beispiele - VUEX Store"},component:()=>w(()=>import("./TestingStore-db84111b.js"),["assets/TestingStore-db84111b.js","assets/OpenwbSortableList-dbb3f422.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/OpenwbSortableList-7ba533e4.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])});const j=ie({history:le(),routes:Z});j.beforeEach(async t=>{if(await D.getters.usageTermsAcknowledged){if(!await D.getters.installAssistantDone&&t.name!=="InstallAssistant")return{name:"InstallAssistant"}}else if(t.name!=="LegalSettings")return{name:"LegalSettings"}});j.afterEach(t=>{t.meta.heading?document.title="openWB | "+t.meta.heading:document.title="openWB"});const W=re(Oo);W.use(D).use(j).use(je,We);const To=Object.assign({"./components/OpenwbBaseAlert.vue":He,"./components/OpenwbBaseArrayInput.vue":ut,"./components/OpenwbBaseAvatar.vue":_t,"./components/OpenwbBaseButtonGroupInput.vue":wt,"./components/OpenwbBaseButtonInput.vue":Tt,"./components/OpenwbBaseCard.vue":Lt,"./components/OpenwbBaseCheckboxInput.vue":Ft,"./components/OpenwbBaseClickButton.vue":Bt,"./components/OpenwbBaseCopyToClipboard.vue":Jt,"./components/OpenwbBaseHeading.vue":nn,"./components/OpenwbBaseModalDialog.vue":pn,"./components/OpenwbBaseNumberInput.vue":wn,"./components/OpenwbBaseRangeInput.vue":xn,"./components/OpenwbBaseSelectInput.vue":Fn,"./components/OpenwbBaseSettingElement.vue":Xe,"./components/OpenwbBaseSubmitButtons.vue":Yn,"./components/OpenwbBaseTextInput.vue":ps,"./components/OpenwbBaseTextarea.vue":Ss,"./components/OpenwbBaseToast.vue":Is});Object.entries(To).forEach(([t,e])=>{const n=de(ue(t.split("/").pop().replace(/\.\w+$/,"")));W.component(n,e.default)});W.mount("#app");export{Q as C,M as O,w as _}; diff --git a/web/settings/assets/inverter-0b21264e.js b/web/settings/assets/inverter-0b21264e.js new file mode 100644 index 0000000000..86134529a3 --- /dev/null +++ b/web/settings/assets/inverter-0b21264e.js @@ -0,0 +1 @@ +import{C as l}from"./HardwareInstallation-775406e1.js";import{_ as u,u as n,k as d,l as c,G as o,E as r,y as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSmahmInverter",mixins:[l]},f={class:"device-smahm-inverter"};function b(t,e,v,g,h,w){const s=n("openwb-base-heading"),a=n("openwb-base-alert"),m=n("openwb-base-number-input");return d(),c("div",f,[o(s,null,{default:r(()=>e[1]||(e[1]=[i(" Einstellungen für SMA-HM/EM Wechselrichter ")])),_:1}),o(a,{subtype:"info"},{default:r(()=>e[2]||(e[2]=[i(' Dies ist nur die richtige Komponente, wenn ein extra EnergyMeter ausschließlich für die PV-Messung vorhanden ist. Wenn nur ein HomeManager vorhanden ist, muss ein Gerät "SMA Sunny Boy" mit der entsprechenden Wechselrichter-Komponente angelegt werden. ')])),_:1}),o(m,{title:"Seriennummer",required:"","model-value":t.component.configuration.serials,"onUpdate:modelValue":e[0]||(e[0]=p=>t.updateConfiguration(p,"configuration.serials"))},null,8,["model-value"])])}const $=u(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_shm/inverter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/inverter-1869ed40.js b/web/settings/assets/inverter-1869ed40.js new file mode 100644 index 0000000000..49795c07b5 --- /dev/null +++ b/web/settings/assets/inverter-1869ed40.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as t,k as u,l,G as n,E as c,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceKostalPikoInverter",mixins:[a]},_={class:"device-kostal-piko-inverter"};function f(o,e,b,v,g,k){const i=t("openwb-base-heading"),r=t("openwb-base-button-group-input");return u(),l("div",_,[n(i,null,{default:c(()=>e[1]||(e[1]=[m(" Einstellungen für Kostal Piko Wechselrichter ")])),_:1}),n(r,{title:"Speicher",buttons:[{buttonValue:!1,text:"nicht vorhanden"},{buttonValue:!0,text:"vorhanden"}],"model-value":o.component.configuration.bat_configured,"onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.bat_configured"))},null,8,["model-value"])])}const N=p(d,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_piko/inverter.vue"]]);export{N as default}; diff --git a/web/settings/assets/inverter-1976d65e.js b/web/settings/assets/inverter-1976d65e.js new file mode 100644 index 0000000000..2de6e9afb4 --- /dev/null +++ b/web/settings/assets/inverter-1976d65e.js @@ -0,0 +1 @@ +import{C as m}from"./HardwareInstallation-775406e1.js";import{_ as d,u as o,k as u,l,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSigenergyInverter",mixins:[m]},_={class:"device-sigenergy-inverter"};function c(n,e,b,f,v,y){const s=o("openwb-base-heading"),p=o("openwb-base-number-input");return u(),l("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für Sigenergy Wechselrichter ")])),_:1}),t(p,{title:"Modbus ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[r(" Die Standard-Modbus-ID von Sigenergy ist 247 ")])),_:1},8,["model-value"])])}const I=d(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sigenergy/sigenergy/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-28b3115f.js b/web/settings/assets/inverter-28b3115f.js new file mode 100644 index 0000000000..0c2edd6ffd --- /dev/null +++ b/web/settings/assets/inverter-28b3115f.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as p,u as o,k as l,l as u,G as n,E as c,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceKostalStecaInverter",mixins:[r]},_={class:"device-kostal-steca-inverter"};function f(t,e,v,b,g,k){const a=o("openwb-base-heading"),i=o("openwb-base-button-group-input");return l(),u("div",_,[n(a,null,{default:c(()=>e[1]||(e[1]=[m(" Einstellungen für Kostal Piko MP oder Steca Grid Coolcept Wechselrichter ")])),_:1}),n(i,{title:"Variante",buttons:[{buttonValue:!1,text:"Kostal Piko MP (non-plus)"},{buttonValue:!0,text:"Kostal Piko MP oder Steca Grid Coolcept"}],"model-value":t.component.configuration.variant_steca,"onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.variant_steca"))},null,8,["model-value"])])}const B=p(d,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_steca/inverter.vue"]]);export{B as default}; diff --git a/web/settings/assets/inverter-2bb2e6d2.js b/web/settings/assets/inverter-2bb2e6d2.js new file mode 100644 index 0000000000..b608cfb2b6 --- /dev/null +++ b/web/settings/assets/inverter-2bb2e6d2.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as m,u as n,k as p,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceHuaweiSmartLoggerInverter",mixins:[a]},_={class:"device-huawei-smart-logger-inverter"};function g(o,e,b,f,v,w){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return p(),u("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Huawei SmartLogger Wechselrichter ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const H=m(c,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei_smartlogger/inverter.vue"]]);export{H as default}; diff --git a/web/settings/assets/inverter-48093851.js b/web/settings/assets/inverter-48093851.js new file mode 100644 index 0000000000..6c88800118 --- /dev/null +++ b/web/settings/assets/inverter-48093851.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceFoxEssInverter",mixins:[p]},c={class:"device-fox_ess-inverter"};function f(o,e,b,v,x,g){const s=n("openwb-base-heading"),i=n("openwb-base-number-input");return m(),u("div",c,[t(s,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für FoxEss Wechselrichter ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const F=a(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fox_ess/fox_ess/inverter.vue"]]);export{F as default}; diff --git a/web/settings/assets/inverter-54331cae.js b/web/settings/assets/inverter-54331cae.js new file mode 100644 index 0000000000..809af27d5b --- /dev/null +++ b/web/settings/assets/inverter-54331cae.js @@ -0,0 +1 @@ +import{C as d}from"./HardwareInstallation-775406e1.js";import{_ as m,u as r,k as u,l as c,G as n,E as i,y as o,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const v={name:"DeviceDiscovergyInverter",mixins:[d]},f={class:"device-discovergy-inverter"};function g(t,e,_,b,w,x){const s=r("openwb-base-heading"),a=r("openwb-base-text-input");return u(),c("div",f,[n(s,null,{default:i(()=>e[1]||(e[1]=[o(" Einstellungen für Discovergy Wechselrichter ")])),_:1}),n(a,{title:"Meter-ID",required:"","model-value":t.component.configuration.meter_id,"onUpdate:modelValue":e[0]||(e[0]=p=>t.updateConfiguration(p,"configuration.meter_id"))},{help:i(()=>e[2]||(e[2]=[o(" Um die ID herauszufinden mit dem Browser die Adresse "),l("a",{href:"https://api.discovergy.com/public/v1/meters",target:"_blank",rel:"noopener noreferrer"}," https://api.discovergy.com/public/v1/meters ",-1),o(" aufrufen und dort Benutzername und Passwort eingeben. Hier wird nun u.a. die ID des Zählers angezeigt. ")])),_:1},8,["model-value"])])}const z=m(v,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/discovergy/discovergy/inverter.vue"]]);export{z as default}; diff --git a/web/settings/assets/inverter-572d72b8.js b/web/settings/assets/inverter-572d72b8.js new file mode 100644 index 0000000000..f93cb79b82 --- /dev/null +++ b/web/settings/assets/inverter-572d72b8.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as m,u as o,k as p,l,G as n,E as d,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmartMeInverter",mixins:[a]},_={class:"device-smart-me-inverter"};function f(t,e,v,b,g,x){const r=o("openwb-base-heading"),i=o("openwb-base-text-input");return p(),l("div",_,[n(r,null,{default:d(()=>e[1]||(e[1]=[u(" Einstellungen für smart-me Wechselrichter ")])),_:1}),n(i,{title:"Geräte-ID",required:"","model-value":t.component.configuration.id,"onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.id"))},null,8,["model-value"])])}const G=m(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/smart_me/smart_me/inverter.vue"]]);export{G as default}; diff --git a/web/settings/assets/inverter-59227078.js b/web/settings/assets/inverter-59227078.js new file mode 100644 index 0000000000..ab7e8a2832 --- /dev/null +++ b/web/settings/assets/inverter-59227078.js @@ -0,0 +1 @@ +import{C as s}from"./HardwareInstallation-775406e1.js";import{_ as a,u as t,k as u,l as m,G as i,E as d,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const v={name:"DeviceOpenwbFlexInverter",mixins:[s]},b={class:"device-openwb-flex-inverter"};function f(o,e,_,w,x,g){const r=t("openwb-base-heading"),l=t("openwb-base-select-input"),p=t("openwb-base-number-input");return u(),m("div",b,[i(r,null,{default:d(()=>e[2]||(e[2]=[c(" Einstellungen für openWB-Flex Wechselrichter ")])),_:1}),i(l,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"Lovato"},{value:2,text:"SDM630/SDM72D-M"},{value:3,text:"SDM120"}],"model-value":o.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.version"))},null,8,["model-value"]),i(p,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":o.component.configuration.id,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.id"))},null,8,["model-value"])])}const S=a(v,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/inverter.vue"]]);export{S as default}; diff --git a/web/settings/assets/inverter-5a60dd29.js b/web/settings/assets/inverter-5a60dd29.js new file mode 100644 index 0000000000..df9f3ca49e --- /dev/null +++ b/web/settings/assets/inverter-5a60dd29.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as p,u as n,k as d,l as m,G as t,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolaredgeInverter",mixins:[a]},_={class:"device-solaredge-inverter"};function f(o,e,g,b,v,w){const r=n("openwb-base-heading"),i=n("openwb-base-number-input");return d(),m("div",_,[t(r,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für SolarEdge Wechselrichter ")])),_:1}),t(i,{title:"SolarEdge-Geräte-ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const D=p(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/inverter.vue"]]);export{D as default}; diff --git a/web/settings/assets/inverter-5eb731c0.js b/web/settings/assets/inverter-5eb731c0.js new file mode 100644 index 0000000000..198effc024 --- /dev/null +++ b/web/settings/assets/inverter-5eb731c0.js @@ -0,0 +1 @@ +import{C as s}from"./HardwareInstallation-775406e1.js";import{_ as a,u as t,k as m,l,G as i,E as d,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceVictronInverter",mixins:[s]},_={class:"device-victron-inverter"};function f(o,e,v,g,w,V){const r=t("openwb-base-heading"),p=t("openwb-base-number-input"),u=t("openwb-base-button-group-input");return m(),l("div",_,[i(r,null,{default:d(()=>e[2]||(e[2]=[c(" Einstellungen für Victron Wechselrichter ")])),_:1}),i(p,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"]),i(u,{title:"MPPT",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":o.component.configuration.mppt,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.mppt"))},null,8,["model-value"])])}const I=a(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/victron/victron/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-67b94bcc.js b/web/settings/assets/inverter-67b94bcc.js new file mode 100644 index 0000000000..40157bee47 --- /dev/null +++ b/web/settings/assets/inverter-67b94bcc.js @@ -0,0 +1 @@ +import{C as d}from"./HardwareInstallation-775406e1.js";import{_ as u,u as a,k as p,l as m,G as r,E as i,y as t,x as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const w={name:"DeviceJsonInverter",mixins:[d]},f={class:"device-json-inverter"};function b(n,e,c,v,_,h){const l=a("openwb-base-heading"),s=a("openwb-base-text-input");return p(),m("div",f,[r(l,null,{default:i(()=>e[2]||(e[2]=[t(" Einstellungen für JSON Wechselrichter ")])),_:1}),r(s,{title:"Abfrage für Leistung",subtype:"text",required:"","model-value":n.component.configuration.jq_power,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.jq_power"))},{help:i(()=>e[3]||(e[3]=[t(' Zur Analyse der Werte aus dem json-Objekt wird jq benutzt. Ist die Json Antwort z.B. {"PowerInstalledPeak":4655, "PowerProduced":132, "PowerOut":897.08172362555717, "PowerSelfSupplied":234.9182763744428} So muss hier .PowerOut eingetragen werden. '),g("br",null,null,-1),t(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. Produzierte Leistung muss ein negatives Vorzeichen haben. (In bestimmten Konstellationen, z.B. wenn ein Hybridsystem über einen zweiten Wechselrichter geladen wird, hat die Leistung ein positives Vorzeichen.) ")])),_:1},8,["model-value"]),r(s,{title:"Abfrage für Zählerstand",subtype:"text","model-value":n.component.configuration.jq_exported,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.jq_exported"))},{help:i(()=>e[4]||(e[4]=[t(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"])])}const B=u(w,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/json/inverter.vue"]]);export{B as default}; diff --git a/web/settings/assets/inverter-6fcce756.js b/web/settings/assets/inverter-6fcce756.js new file mode 100644 index 0000000000..3e6dafebcd --- /dev/null +++ b/web/settings/assets/inverter-6fcce756.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as o,k as l,l as u,G as n,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbEvukitInverter",mixins:[p]},v={class:"device-openwb-evukit-inverter"};function _(t,e,f,b,w,g){const i=o("openwb-base-heading"),r=o("openwb-base-select-input");return l(),u("div",v,[n(i,null,{default:m(()=>e[1]||(e[1]=[c(" Einstellungen für openWB EVU-Kit Wechselrichter ")])),_:1}),n(r,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"Lovato"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":t.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.version"))},null,8,["model-value"])])}const $=a(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_evu_kit/inverter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/inverter-7cf8493f.js b/web/settings/assets/inverter-7cf8493f.js new file mode 100644 index 0000000000..00145fae63 --- /dev/null +++ b/web/settings/assets/inverter-7cf8493f.js @@ -0,0 +1 @@ +import{C as m}from"./HardwareInstallation-775406e1.js";import{_ as d,u as o,k as u,l,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceEnphaseInverter",mixins:[m]},_={class:"device-enphase-inverter"};function f(n,e,v,b,g,E){const s=o("openwb-base-heading"),p=o("openwb-base-number-input");return u(),l("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für Enphase Envoy / IQ Gateway Wechselrichter ")])),_:1}),t(p,{title:"EID",required:"","model-value":n.component.configuration.eid,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.eid"))},{help:i(()=>e[2]||(e[2]=[r(' EID für "production" ')])),_:1},8,["model-value"])])}const D=d(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/enphase/enphase/inverter.vue"]]);export{D as default}; diff --git a/web/settings/assets/inverter-8660cadd.js b/web/settings/assets/inverter-8660cadd.js new file mode 100644 index 0000000000..a704262df0 --- /dev/null +++ b/web/settings/assets/inverter-8660cadd.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as d,u as n,k as u,l as c,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceMTecInverter",mixins:[a]},_={class:"device-mtec-inverter"};function b(o,e,f,v,g,w){const s=n("openwb-base-heading"),p=n("openwb-base-number-input");return u(),c("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für M-Tec Wechselrichter ")])),_:1}),t(p,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=m=>o.updateConfiguration(m,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[r(" Die Standard-Modbus-ID von M-Tec ist 247 ")])),_:1},8,["model-value"])])}const I=d(l,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/mtec/mtec/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-86f1d614.js b/web/settings/assets/inverter-86f1d614.js new file mode 100644 index 0000000000..760169f4f7 --- /dev/null +++ b/web/settings/assets/inverter-86f1d614.js @@ -0,0 +1 @@ +import{C as a}from"./HardwareInstallation-775406e1.js";import{_ as m,u as n,k as p,l,G as t,E as u,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolarmaxInverter",mixins:[a]},_={class:"device-solarmax-inverter"};function b(o,e,f,v,x,g){const r=n("openwb-base-heading"),i=n("openwb-base-number-input");return p(),l("div",_,[t(r,null,{default:u(()=>e[1]||(e[1]=[d(" Einstellungen für Solarmax Wechselrichter ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const I=m(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solarmax/solarmax/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-945da1b4.js b/web/settings/assets/inverter-945da1b4.js new file mode 100644 index 0000000000..87f4d10bd7 --- /dev/null +++ b/web/settings/assets/inverter-945da1b4.js @@ -0,0 +1 @@ +import{C as u}from"./HardwareInstallation-775406e1.js";import{_ as a,u as t,k as p,l,G as n,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceYoulessInverter",mixins:[u]},d={class:"device-youless-inverter"};function f(o,e,b,v,g,x){const s=t("openwb-base-heading"),i=t("openwb-base-button-group-input");return p(),l("div",d,[n(s,null,{default:m(()=>e[1]||(e[1]=[c(" Einstellungen für Youless LS120 Wechselrichter ")])),_:1}),n(i,{title:"S0-Eingang auslesen",buttons:[{buttonValue:!1,text:"nein"},{buttonValue:!0,text:"ja"}],"model-value":o.component.configuration.source_s0,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.source_s0"))},null,8,["model-value"])])}const N=a(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/youless/youless/inverter.vue"]]);export{N as default}; diff --git a/web/settings/assets/inverter-9fab6b51.js b/web/settings/assets/inverter-9fab6b51.js new file mode 100644 index 0000000000..eecbe56d84 --- /dev/null +++ b/web/settings/assets/inverter-9fab6b51.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as n,k as m,l as d,G as t,E as u,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceDeyeInverter",mixins:[p]},_={class:"device-deye-inverter"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),d("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[l(" Einstellungen für Deye Wechselrichter ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const V=a(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/deye/deye/inverter.vue"]]);export{V as default}; diff --git a/web/settings/assets/inverter-ac0cd8b2.js b/web/settings/assets/inverter-ac0cd8b2.js new file mode 100644 index 0000000000..b5e526b39b --- /dev/null +++ b/web/settings/assets/inverter-ac0cd8b2.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as o,k as l,l as m,G as n,E as u,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbPvkitInverter",mixins:[p]},v={class:"device-openwb-pvkit-inverter"};function _(t,e,f,b,w,g){const i=o("openwb-base-heading"),r=o("openwb-base-select-input");return l(),m("div",v,[n(i,null,{default:u(()=>e[1]||(e[1]=[c(" Einstellungen für openWB PV-Kit Wechselrichter ")])),_:1}),n(r,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"Lovato"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":t.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.version"))},null,8,["model-value"])])}const $=a(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_pv_kit/inverter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/inverter-b7df71a8.js b/web/settings/assets/inverter-b7df71a8.js new file mode 100644 index 0000000000..ea56f1b645 --- /dev/null +++ b/web/settings/assets/inverter-b7df71a8.js @@ -0,0 +1 @@ +import{C as u}from"./HardwareInstallation-775406e1.js";import{_ as d,u as r,k as m,l as g,G as o,E as l,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceVZLoggerInverter",mixins:[u]},_={class:"device-vzlogger-inverter"};function c(n,e,v,b,w,Z){const a=r("openwb-base-heading"),p=r("openwb-base-alert"),i=r("openwb-base-number-input");return m(),g("div",_,[o(a,null,{default:l(()=>e[2]||(e[2]=[s(" Einstellungen für VZLogger Wechselrichter ")])),_:1}),o(p,{subtype:"info"},{default:l(()=>e[3]||(e[3]=[s(' Bitte auf der Shell ausführen: "curl -s IPdesVZLogger:Port | jq .|cat -n" Zählen, in welcher Zeile der gesuchte Wert steht. Bei der ersten Zeile mit 1 anfangen zu zählen. ')])),_:1}),o(i,{title:"Zeile der Leistung",required:"",min:0,"model-value":n.component.configuration.line_power,"onUpdate:modelValue":e[0]||(e[0]=t=>n.updateConfiguration(t,"configuration.line_power"))},null,8,["model-value"]),o(i,{title:"Zeile der exportierten Energie (Ertrag)",min:0,"model-value":n.component.configuration.line_exported,"onUpdate:modelValue":e[1]||(e[1]=t=>n.updateConfiguration(t,"configuration.line_exported"))},null,8,["model-value"])])}const k=d(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/vzlogger/vzlogger/inverter.vue"]]);export{k as default}; diff --git a/web/settings/assets/inverter-b81ebeaa.js b/web/settings/assets/inverter-b81ebeaa.js new file mode 100644 index 0000000000..5335f5b3fb --- /dev/null +++ b/web/settings/assets/inverter-b81ebeaa.js @@ -0,0 +1 @@ +import{C as r}from"./HardwareInstallation-775406e1.js";import{_ as n,u as s,k as o,l as i,G as a,E as p,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceVartaInverter",mixins:[r]},d={class:"varta-inverter"};function _(l,e,u,v,f,b){const t=s("openwb-base-alert");return o(),i("div",d,[a(t,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[c(" Die Leistung des Wechselrichters ist nur verfügbar, wenn dieser über Sensor an Varta angebunden ist. Wechselrichter die per Modbus mit dem Speicher kommunizieren lassen sich nicht über den Varta PV-Sensor auslesen. ")])),_:1})])}const S=n(m,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/varta/varta/inverter.vue"]]);export{S as default}; diff --git a/web/settings/assets/inverter-bd9ab223.js b/web/settings/assets/inverter-bd9ab223.js new file mode 100644 index 0000000000..d2cbc1839d --- /dev/null +++ b/web/settings/assets/inverter-bd9ab223.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as a,u as n,k as m,l,G as t,E as u,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolisInverter",mixins:[p]},_={class:"device-solis-inverter"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),l("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[d(" Einstellungen für Solis Wechselrichter ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const I=a(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solis/solis/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-be36808f.js b/web/settings/assets/inverter-be36808f.js new file mode 100644 index 0000000000..7a185fadbe --- /dev/null +++ b/web/settings/assets/inverter-be36808f.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as u,u as l,k as m,l as g,G as r,E as o,y as n,x as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const h={name:"DeviceHttpInverter",mixins:[p]},c={class:"device-http-inverter"};function b(t,e,v,f,w,_){const d=l("openwb-base-heading"),s=l("openwb-base-text-input");return m(),g("div",c,[r(d,null,{default:o(()=>e[2]||(e[2]=[n(" Einstellungen für Http Wechselrichter ")])),_:1}),r(s,{title:"Pfad für Leistung",subtype:"text",required:"",pattern:"^/[-a-zA-Z0-9@:%_\\+.~#?&/=]*","model-value":t.component.configuration.power_path,"onUpdate:modelValue":e[0]||(e[0]=i=>t.updateConfiguration(i,"configuration.power_path"))},{help:o(()=>e[3]||(e[3]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),a("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. Produzierte Leistung muss ein negatives Vorzeichen haben. (In bestimmten Konstellationen, z.B. wenn ein Hybridsystem über einen zweiten Wechselrichter geladen wird, hat die Leistung ein positives Vorzeichen.) ")])),_:1},8,["model-value"]),r(s,{title:"Pfad für Zählerstand Erzeugung",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.exported_path,"onUpdate:modelValue":e[1]||(e[1]=i=>t.updateConfiguration(i,"configuration.exported_path"))},{help:o(()=>e[4]||(e[4]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),a("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt."),a("br",null,null,-1),n(" Wird dieses Feld leer gelassen, wird der Zählerstand intern simuliert. ")])),_:1},8,["model-value"])])}const W=u(h,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/http/inverter.vue"]]);export{W as default}; diff --git a/web/settings/assets/inverter-c408a546.js b/web/settings/assets/inverter-c408a546.js new file mode 100644 index 0000000000..f191ed16c1 --- /dev/null +++ b/web/settings/assets/inverter-c408a546.js @@ -0,0 +1 @@ +import{C as p}from"./HardwareInstallation-775406e1.js";import{_ as l,u as n,k as d,l as c,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const u={name:"DeviceSolarViewInverter",mixins:[p]},_={class:"device-solar-view-inverter"};function f(o,e,v,g,w,b){const s=n("openwb-base-heading"),a=n("openwb-base-text-input");return d(),c("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für SolarView Wechselrichter ")])),_:1}),t(a,{title:"Kommando für die Abfrage",required:"","model-value":o.component.configuration.command,"onUpdate:modelValue":e[0]||(e[0]=m=>o.updateConfiguration(m,"configuration.command"))},{help:i(()=>e[2]||(e[2]=[r(" Kommandos gemäß SolarView-Dokumentation, z.B.: 00* (gesamte Anlage), 01* (Wechselrichter 1), 02* (Wechselrichter 2) ")])),_:1},8,["model-value"])])}const S=l(u,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_view/solar_view/inverter.vue"]]);export{S as default}; diff --git a/web/settings/assets/inverter-d3107610.js b/web/settings/assets/inverter-d3107610.js new file mode 100644 index 0000000000..c92b778072 --- /dev/null +++ b/web/settings/assets/inverter-d3107610.js @@ -0,0 +1 @@ +import{C as s}from"./HardwareInstallation-775406e1.js";import{_ as d,u as n,k as m,l as c,G as r,E as i,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceStuderInverter",mixins:[s]},b={class:"device-studer-inverter"};function v(t,e,f,g,V,S){const u=n("openwb-base-heading"),p=n("openwb-base-button-group-input"),l=n("openwb-base-number-input");return m(),c("div",b,[r(u,null,{default:i(()=>e[2]||(e[2]=[a(" Einstellungen für Studer Wechselrichter ")])),_:1}),r(p,{title:"Typ der MPPT Solarladeregler",buttons:[{buttonValue:"VT",text:"Variotrack (VT-40/VT-65/VT-80)"},{buttonValue:"VS",text:"VarioString (VS-70/VS-120)"}],"model-value":t.component.configuration.vc_type,required:"","onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.vc_type"))},null,8,["model-value"]),r(l,{title:"Anzahl MPPT Solarladeregler",required:"",min:1,max:9,"model-value":t.component.configuration.vc_count,"onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.vc_count"))},{help:i(()=>e[3]||(e[3]=[a(" Anzahl (1-9) der Studer MPPT Solarladeregler im System (VS/VT) ")])),_:1},8,["model-value"])])}const B=d(_,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/studer/studer/inverter.vue"]]);export{B as default}; diff --git a/web/settings/assets/inverter-ebe90299.js b/web/settings/assets/inverter-ebe90299.js new file mode 100644 index 0000000000..f0b3e93eb5 --- /dev/null +++ b/web/settings/assets/inverter-ebe90299.js @@ -0,0 +1 @@ +import{C as u}from"./HardwareInstallation-775406e1.js";import{_ as l,u as t,k as m,l as c,G as r,E as i,y as n,x as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DevicePowerfoxInverter",mixins:[u]},b={class:"device-powerfox-inverter"};function g(o,e,v,w,x,_){const a=t("openwb-base-heading"),p=t("openwb-base-text-input");return m(),c("div",b,[r(a,null,{default:i(()=>e[1]||(e[1]=[n(" Einstellungen für Powerfox Wechselrichter ")])),_:1}),r(p,{title:"ID",required:"","model-value":o.component.configuration.id,"onUpdate:modelValue":e[0]||(e[0]=d=>o.updateConfiguration(d,"configuration.id"))},{help:i(()=>e[2]||(e[2]=[n(" Um die ID herauszufinden mit dem Browser die Adresse "),s("a",{href:"https://backend.powerfox.energy/api/2.0/my/all/devices",target:"_blank",rel:"noopener noreferrer"}," https://backend.powerfox.energy/api/2.0/my/all/devices ",-1),n(" aufrufen und dort Benutzername und Passwort eingeben. Die DeviceID ist exakt so einzutragen, wie in der Antwort des Servers. Das bedeutet insbesondere auch, die Groß-/Kleinschreibung ist zu beachten! In dem Feld ist nur die Zeichenfolge direkt hinter "),s("span",{class:"font-weight-bold text-monospace",style:{display:"contents"}},' "DeviceID" ',-1),n(" ohne den Doppelpunkt und Anführungszeichen einzutragen. ")])),_:1},8,["model-value"])])}const $=l(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerfox/powerfox/inverter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/inverter-f770832e.js b/web/settings/assets/inverter-f770832e.js new file mode 100644 index 0000000000..eef4cf2bfc --- /dev/null +++ b/web/settings/assets/inverter-f770832e.js @@ -0,0 +1 @@ +import{C as l}from"./HardwareInstallation-775406e1.js";import{_ as m,u as t,k as b,l as v,G as r,E as i,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceSunnyBoyInverter",mixins:[l]},_={class:"device-sunnyboy-inverter"};function g(n,e,y,c,w,C){const s=t("openwb-base-heading"),u=t("openwb-base-button-group-input"),d=t("openwb-base-select-input"),p=t("openwb-base-number-input");return b(),v("div",_,[r(s,null,{default:i(()=>e[3]||(e[3]=[a(" Einstellungen für SMA Sunny Boy/Tripower Wechselrichter ")])),_:1}),r(u,{title:"Hybrid-System",buttons:[{buttonValue:!1,text:"nicht vorhanden"},{buttonValue:!0,text:"vorhanden"}],"model-value":n.component.configuration.hybrid,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.hybrid"))},{help:i(()=>e[4]||(e[4]=[a(" Diese Option aktivieren, wenn ein Tripower Smart Energy, Sunny Boy Smart Energy oder ein anderes Hybrid-System verbaut ist. ")])),_:1},8,["model-value"]),r(d,{title:"Version","not-selected":"Bitte auswählen",options:[{value:0,text:"Standard"},{value:1,text:"Core-2"},{value:2,text:"Data Manager/Cluster Controller"}],"model-value":n.component.configuration.version,required:"","onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.version"))},null,8,["model-value"]),r(p,{title:"Modbus ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.modbus_id"))},{help:i(()=>e[5]||(e[5]=[a(" Für die Standardversion ist die Standardmodbus-ID 3, für Core-2 ist sie 1 und für Data Manager/Cluster Controller 2. Wurde eine abweichende Modbus ID konfiguriert, entsprechend anpassen. ")])),_:1},8,["model-value"])])}const I=m(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-ffd19b83.js b/web/settings/assets/inverter-ffd19b83.js new file mode 100644 index 0000000000..70505fe285 --- /dev/null +++ b/web/settings/assets/inverter-ffd19b83.js @@ -0,0 +1 @@ +import{C as u}from"./HardwareInstallation-775406e1.js";import{_ as d,u as s,k as b,l as f,G as o,E as i,y as t,x as n,F as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceMqttInverter",mixins:[u]},v={class:"device-mqtt-inverter"};function w(r,e,c,x,z,B){const a=s("openwb-base-heading"),l=s("openwb-base-copy-to-clipboard"),m=s("openwb-base-alert");return b(),f("div",v,[o(a,null,{default:i(()=>e[0]||(e[0]=[t(" Einstellungen für MQTT Wechselrichter ")])),_:1}),o(m,{subtype:"info"},{default:i(()=>[e[9]||(e[9]=t(" Die folgenden Topics sind für einen reibungslosen Betrieb unbedingt erforderlich: ")),n("ul",null,[n("li",null,[o(l,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/pv/"+p(r.component.id)+"/get/power ",1)]),_:1}),e[1]||(e[1]=n("br",null,null,-1)),e[2]||(e[2]=t(" PV-Leistung in Watt als Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen. Produzierte Leistung muss ein negatives Vorzeichen haben. (In bestimmten Konstellationen, z.B. wenn ein Hybridsystem über einen zweiten Wechselrichter geladen wird, hat die Leistung ein positives Vorzeichen.) Beispiel: ")),e[3]||(e[3]=n("span",{class:"text-info"},"-123",-1))]),n("li",null,[o(l,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/pv/"+p(r.component.id)+"/get/exported ",1)]),_:1}),e[4]||(e[4]=n("br",null,null,-1)),e[5]||(e[5]=t(" Erzeugte Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),e[6]||(e[6]=n("br",null,null,-1)),e[7]||(e[7]=t(" Beispiel: ")),e[8]||(e[8]=n("span",{class:"text-info"},"123.45",-1))])])]),_:1})])}const N=d(g,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/mqtt/inverter.vue"]]);export{N as default}; diff --git a/web/settings/assets/inverter_secondary-da829b18.js b/web/settings/assets/inverter_secondary-da829b18.js new file mode 100644 index 0000000000..0fa6ab2c63 --- /dev/null +++ b/web/settings/assets/inverter_secondary-da829b18.js @@ -0,0 +1 @@ +import{C as u}from"./HardwareInstallation-775406e1.js";import{_ as m,u as t,k as f,l as c,G as i,E as s,y as n,x as a,F as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const w={name:"DeviceFroniusInverterSecondary",mixins:[u],computed:{powerFlowUrl:{get(){return`http://${this.device.configuration.ip_address}/solar_api/v1/GetPowerFlowRealtimeData.fcgi?Scope=System`}}}},_={class:"device-fronius-inverter-secondary"},v=["href"];function b(r,e,D,k,h,o){const d=t("openwb-base-heading"),l=t("openwb-base-number-input");return f(),c("div",_,[i(d,null,{default:s(()=>e[1]||(e[1]=[n(" Einstellungen für einen sekundären Wechselrichter ")])),_:1}),i(l,{title:"ID","model-value":r.component.configuration.id,min:"0",required:"","onUpdate:modelValue":e[0]||(e[0]=p=>r.updateConfiguration(p,"configuration.id"))},{help:s(()=>[e[2]||(e[2]=n(" Die ID des sekundären Wechselrichters. Diese ist für jede Installation individuell und muss ermittelt werden. Dafür kann der folgende Link verwendet werden. Die ID kann den zurückgegebenen JSON entnommen werden. ")),a("a",{href:o.powerFlowUrl,target:"_blank",rel:"noopener noreferrer"},g(o.powerFlowUrl),9,v),e[3]||(e[3]=a("br",null,null,-1)),e[4]||(e[4]=n(' Im Abschnitt "Body" -> "Data" -> "SecondaryMeters" werden die installierten Zähler angezeigt. Die ID ist die Zahl vor dem Doppelpunkt und den zugehörigen Daten. '))]),_:1},8,["model-value"])])}const V=m(w,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fronius/fronius/inverter_secondary.vue"]]);export{V as default}; diff --git a/web/settings/assets/ripple_control_receiver-1a152476.js b/web/settings/assets/ripple_control_receiver-1a152476.js new file mode 100644 index 0000000000..96e95fd016 --- /dev/null +++ b/web/settings/assets/ripple_control_receiver-1a152476.js @@ -0,0 +1 @@ +import{R as s}from"./GeneralConfig-58412dab.js";import{_ as a,u as i,k as d,l as u,G as t,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"RippleControlReceiverDimmKit",mixins:[s]},c={class:"ripple-control-receiver-dimm-kit"};function b(o,e,v,g,w,C){const p=i("openwb-base-alert"),l=i("openwb-base-text-input"),r=i("openwb-base-number-input");return d(),u("div",c,[t(p,{subtype:"info"},{default:m(()=>e[3]||(e[3]=[_(" In der aktuellen Implementierung werden Kontakt 1 und 2 des Dimm-Kits ausgewertet. Wenn mindestens ein Kontakt offen ist, wird die Ladung gesperrt. Wenn beide Kontakte geschlossen sind, darf geladen werden. ")])),_:1}),t(l,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.rippleControlReceiver.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(r,{title:"Port",required:"","model-value":o.rippleControlReceiver.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(r,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":o.rippleControlReceiver.configuration.modbus_id,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const B=a(f,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/dimm_kit/ripple_control_receiver.vue"]]);export{B as default}; diff --git a/web/settings/assets/ripple_control_receiver-d28e8e3f.js b/web/settings/assets/ripple_control_receiver-d28e8e3f.js new file mode 100644 index 0000000000..336e98fb2a --- /dev/null +++ b/web/settings/assets/ripple_control_receiver-d28e8e3f.js @@ -0,0 +1 @@ +import{R as t}from"./GeneralConfig-58412dab.js";import{_ as r,u as n,k as i,l as p,G as s,E as a,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"RippleControlReceiverGpio",mixins:[t]},_={class:"ripple-control-receiver-gpio"};function d(m,e,f,u,v,g){const o=n("openwb-base-alert");return i(),p("div",_,[s(o,{subtype:"info"},{default:a(()=>e[0]||(e[0]=[c(" Wenn mindestens ein Kontakt geschlossen ist, wird die Ladung gesperrt. Wenn beide Kontakte offen sind, darf geladen werden. ")])),_:1})])}const h=r(l,[["render",d],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/gpio/ripple_control_receiver.vue"]]);export{h as default}; diff --git a/web/settings/assets/vehicle-0290d9e7.js b/web/settings/assets/vehicle-0290d9e7.js new file mode 100644 index 0000000000..f53ab59045 --- /dev/null +++ b/web/settings/assets/vehicle-0290d9e7.js @@ -0,0 +1 @@ +import{V as r}from"./VehicleConfig-37a300a0.js";import{_ as l,u as s,k as a,l as u,G as i,E as p,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocSmartHello",mixins:[r]},f={class:"vehicle-soc-smart-hello"};function v(o,e,c,g,h,V){const n=s("openwb-base-text-input");return a(),u("div",f,[i(n,{title:"Benutzername",subtype:"text",required:"","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.user_id"))},null,8,["model-value"]),i(n,{title:"Kennwort",subtype:"password",required:"","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"]),i(n,{title:"VIN",subtype:"text","model-value":o.vehicle.configuration.VIN,"onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.VIN"))},{help:p(()=>e[3]||(e[3]=[d(" Fahrgestellnummer (VIN) des Fahrzeugs. Notwendig falls mehrere Fahrzeuge im Account des Herstellers vorhanden sind. ")])),_:1},8,["model-value"])])}const $=l(m,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/smarthello/vehicle.vue"]]);export{$ as default}; diff --git a/web/settings/assets/vehicle-090faaf2.js b/web/settings/assets/vehicle-090faaf2.js new file mode 100644 index 0000000000..ee7cddc8fa --- /dev/null +++ b/web/settings/assets/vehicle-090faaf2.js @@ -0,0 +1 @@ +import{V as s}from"./VehicleConfig-37a300a0.js";import{_ as p,u,k as d,l as v,G as a,E as n,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocEVCC",mixins:[s]},g={class:"vehicle-soc-evcc"};function x(t,e,f,V,w,b){const i=u("openwb-base-text-input"),r=u("openwb-base-select-input");return d(),v("div",g,[a(i,{title:"EVCC Sponsor Token",subtype:"password",required:"","model-value":t.vehicle.configuration.sponsor_token,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.sponsor_token"))},{help:n(()=>e[5]||(e[5]=[l(" EVCC Sponsor Token angeben, dies ist notwendig um SoC über EVCC abrufen zu können. https://sponsor.evcc.io/ ")])),_:1},8,["model-value"]),a(i,{title:"Benutzername",subtype:"text",required:"","model-value":t.vehicle.configuration.user_id,"onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.user_id"))},{help:n(()=>e[6]||(e[6]=[l(" Benutzername beim Fahrzeughersteller. ")])),_:1},8,["model-value"]),a(i,{title:"Kennwort",subtype:"password",required:"","model-value":t.vehicle.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=o=>t.updateConfiguration(o,"configuration.password"))},{help:n(()=>e[7]||(e[7]=[l(" Kennwort beim Fahrzeughersteller. ")])),_:1},8,["model-value"]),a(r,{title:"Marke",required:"","not-selected":"Bitte auswählen",options:[{value:"aiways",text:"Aiways"},{value:"audi",text:"Audi"},{value:"etron",text:"Audi e-tron"},{value:"bmw",text:"BMW"},{value:"dacia",text:"Dacia"},{value:"fiat",text:"Fiat"},{value:"ford",text:"Ford"},{value:"hyundai",text:"Hyundai"},{value:"jaguar",text:"Jaguar"},{value:"kia",text:"Kia"},{value:"landrover",text:"Landrover"},{value:"mg",text:"Mg"},{value:"mini",text:"Mini"},{value:"nissan",text:"Nissan"},{value:"carwings",text:"Nissan (Leaf pre 2019)"},{value:"ovms",text:"OVMS"},{value:"polestar",text:"Polestar"},{value:"porsche",text:"Porsche"},{value:"renault",text:"Renault"},{value:"seat",text:"Seat"},{value:"cupra",text:"Seat Cupra"},{value:"skoda",text:"Škoda"},{value:"enyaq",text:"Škoda Enyaq"},{value:"smart",text:"Smart"},{value:"smart-hello",text:"Smart-Hello"},{value:"template",text:"Template"},{value:"volvo",text:"Volvo"},{value:"volvo-connected",text:"Volvo-Connected"},{value:"vw",text:"VW"},{value:"id",text:"VW ID"}],"model-value":t.vehicle.configuration.vehicle_type,"onUpdate:modelValue":e[3]||(e[3]=o=>t.updateConfiguration(o,"configuration.vehicle_type"))},{help:n(()=>e[8]||(e[8]=[l(" Marke aus des Fahrzeugs. ")])),_:1},8,["model-value"]),a(i,{title:"VIN",subtype:"text","model-value":t.vehicle.configuration.VIN,"onUpdate:modelValue":e[4]||(e[4]=o=>t.updateConfiguration(o,"configuration.VIN"))},{help:n(()=>e[9]||(e[9]=[l(" Fahrgestellnummer (VIN) des Fahrzeugs. Notwendig falls mehrere Fahrzeuge im Account des Herstellers vorhanden sind. ")])),_:1},8,["model-value"])])}const B=p(m,[["render",x],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/evcc/vehicle.vue"]]);export{B as default}; diff --git a/web/settings/assets/vehicle-1a3ca9c8.js b/web/settings/assets/vehicle-1a3ca9c8.js new file mode 100644 index 0000000000..cc2184d973 --- /dev/null +++ b/web/settings/assets/vehicle-1a3ca9c8.js @@ -0,0 +1 @@ +import{V as a}from"./VehicleConfig-37a300a0.js";import{_ as d,u,k as p,l as g,G as o,E as l,y as i,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocTronity",mixins:[a]},f={class:"vehicle-soc-tronity"};function b(n,e,v,C,w,h){const r=u("openwb-base-text-input"),s=u("openwb-base-button-group-input");return p(),g("div",f,[o(r,{title:"Vehicle ID",subtype:"text",required:"","model-value":n.vehicle.configuration.vehicle_id,"onUpdate:modelValue":e[0]||(e[0]=t=>n.updateConfiguration(t,"configuration.vehicle_id"))},{help:l(()=>e[4]||(e[4]=[i(' Vehicle ID aus Tronity angeben. Diese ist in den "Assigned Vehicles" zu finden. ')])),_:1},8,["model-value"]),o(r,{title:"Client ID",subtype:"text",required:"","model-value":n.vehicle.configuration.client_id,"onUpdate:modelValue":e[1]||(e[1]=t=>n.updateConfiguration(t,"configuration.client_id"))},{help:l(()=>e[5]||(e[5]=[i(' Client ID aus Tronity angeben. Diese ist in den "Application Settings" zu finden. ')])),_:1},8,["model-value"]),o(r,{title:"Client Secret",subtype:"password",required:"","model-value":n.vehicle.configuration.client_secret,"onUpdate:modelValue":e[2]||(e[2]=t=>n.updateConfiguration(t,"configuration.client_secret"))},{help:l(()=>e[6]||(e[6]=[i(' Client Secret aus Tronity angeben. Diese ist in den "Application Settings" zu finden. Das Client Secret kann nur einmalig abgerufen werden. Ggf. neu erzeugen, womit frühere Client Secrets ungültig werden. ')])),_:1},8,["model-value"]),o(s,{title:"SoC während der Ladung berechnen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.vehicle.configuration.calculate_soc,"onUpdate:modelValue":e[3]||(e[3]=t=>n.updateConfiguration(t,"configuration.calculate_soc"))},{help:l(()=>e[7]||(e[7]=[i(" Berechnet den Ladestand (SoC) während der Ladung. Dies ist notwendig, wenn der SoC nicht über die Schnittstelle des Fahrzeugs abgerufen werden kann. Die Berechnung erfolgt über die Ladeleistung und die Ladedauer. "),c("br",null,null,-1),i(" Derzeit notwendig für Peugeot, Opel, Citroen und DS. ")])),_:1},8,["model-value"])])}const L=d(m,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/tronity/vehicle.vue"]]);export{L as default}; diff --git a/web/settings/assets/vehicle-275590b2.js b/web/settings/assets/vehicle-275590b2.js new file mode 100644 index 0000000000..1e172f907b --- /dev/null +++ b/web/settings/assets/vehicle-275590b2.js @@ -0,0 +1 @@ +import{V as a}from"./VehicleConfig-37a300a0.js";import{_ as u,u as l,k as p,l as s,G as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocEvnotify",mixins:[a]},d={class:"vehicle-soc-evnotify"};function f(e,o,c,v,b,g){const r=l("openwb-base-number-input"),t=l("openwb-base-text-input");return p(),s("div",d,[i(r,{title:"ID",required:"",min:0,"model-value":e.vehicle.configuration.id,"onUpdate:modelValue":o[0]||(o[0]=n=>e.updateConfiguration(n,"configuration.id"))},null,8,["model-value"]),i(t,{title:"AKey",required:"","model-value":e.vehicle.configuration.akey,"onUpdate:modelValue":o[1]||(o[1]=n=>e.updateConfiguration(n,"configuration.akey"))},null,8,["model-value"]),i(t,{title:"Token",required:"","model-value":e.vehicle.configuration.token,"onUpdate:modelValue":o[2]||(o[2]=n=>e.updateConfiguration(n,"configuration.token"))},null,8,["model-value"])])}const B=u(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/evnotify/vehicle.vue"]]);export{B as default}; diff --git a/web/settings/assets/vehicle-2a15ca13.js b/web/settings/assets/vehicle-2a15ca13.js new file mode 100644 index 0000000000..b7826d6708 --- /dev/null +++ b/web/settings/assets/vehicle-2a15ca13.js @@ -0,0 +1 @@ +import{V as m}from"./VehicleConfig-37a300a0.js";import{_ as b,u as s,k as g,l as v,G as i,E as o,y as n,x as u,F as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"VehicleSocMercedesEq",mixins:[m],computed:{callback_url(){return`${location.origin}/openWB/web/settings/modules/vehicles/mercedeseq/callback_vehicle.php`},login_url(){return`https://ssoalpha.dvb.corpinter.net/v1/auth?response_type=code&state=${this.vehicleId}&client_id=${this.vehicle.configuration.client_id}&redirect_uri=${this.callback_url}&scope=mb:vehicle:mbdata:evstatus%20offline_access%20openid`},input_complete(){return this.vehicle.configuration.client_id&&this.vehicle.configuration.client_secret&&this.vehicle.configuration.vin}},methods:{login_window(){console.debug("callback url",this.callback_url),console.debug("login url",this.login_url);var t=window.open(this.login_url,"MercedesLogin","width=800,height=600,status=yes,scrollbars=yes,resizable=yes");t.focus()}}},h={class:"vehicle-soc-mercedeseq"};function w(t,e,k,C,y,r){const a=s("openwb-base-text-input"),d=s("openwb-base-copy-to-clipboard"),p=s("openwb-base-alert"),c=s("openwb-base-button-input");return g(),v("div",h,[i(a,{title:"Client-ID",required:"",subtype:"user","model-value":t.vehicle.configuration.client_id,"onUpdate:modelValue":e[0]||(e[0]=l=>t.updateConfiguration(l,"configuration.client_id"))},{help:o(()=>e[3]||(e[3]=[n(" Die im Developer Portal angelegte Client-ID. ")])),_:1},8,["model-value"]),i(a,{title:"Client Secret",required:"",subtype:"password","model-value":t.vehicle.configuration.client_secret,"onUpdate:modelValue":e[1]||(e[1]=l=>t.updateConfiguration(l,"configuration.client_secret"))},{help:o(()=>e[4]||(e[4]=[n(" Das im Developer Portal angelegte Client Secret. ")])),_:1},8,["model-value"]),i(a,{title:"VIN",required:"","model-value":t.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=l=>t.updateConfiguration(l,"configuration.vin"))},{help:o(()=>e[5]||(e[5]=[n(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"]),i(p,{subtype:"info"},{default:o(()=>[e[6]||(e[6]=n(" Vor dem Anmelden bitte die Angaben speichern.")),e[7]||(e[7]=u("br",null,null,-1)),e[8]||(e[8]=n(" Die Callback-URL für die Anmeldung lautet:")),e[9]||(e[9]=u("br",null,null,-1)),i(d,{class:"text-info",tooltip:"URL kopieren"},{default:o(()=>[n(_(r.callback_url),1)]),_:1})]),_:1}),i(c,{title:"Anmelden","button-text":"Bei Mercedes Anmelden",subtype:"success",disabled:!r.input_complete,onButtonClicked:r.login_window},{help:o(()=>e[10]||(e[10]=[n(" Es wird ein neues Browserfenster geöffnet, in dem Sie sich bei Mercedes mit Ihren Zugangsdaten anmelden können."),u("br",null,null,-1)])),_:1},8,["disabled","onButtonClicked"])])}const U=b(f,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/mercedeseq/vehicle.vue"]]);export{U as default}; diff --git a/web/settings/assets/vehicle-32887c99.js b/web/settings/assets/vehicle-32887c99.js new file mode 100644 index 0000000000..332b56d9be --- /dev/null +++ b/web/settings/assets/vehicle-32887c99.js @@ -0,0 +1 @@ +import{V as u}from"./VehicleConfig-37a300a0.js";import{_ as a,u as s,k as d,l as p,G as i,E as r,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocRenault",mixins:[u]},f={class:"vehicle-soc-renault"};function v(n,e,g,V,w,b){const t=s("openwb-base-text-input");return d(),p("div",f,[i(t,{title:"Benutzername",required:"",subtype:"user","model-value":n.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.user_id"))},{help:r(()=>e[4]||(e[4]=[l(" Der Benutzername für die Anmeldung an den Renault-Servern. ")])),_:1},8,["model-value"]),i(t,{title:"Kennwort",required:"",subtype:"password","model-value":n.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.password"))},{help:r(()=>e[5]||(e[5]=[l(" Das Passwort für die Anmeldung an den Renault-Servern. ")])),_:1},8,["model-value"]),i(t,{title:"Land",required:"","model-value":n.vehicle.configuration.country,"onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.country"))},{help:r(()=>e[6]||(e[6]=[l(" Land des Fahrzeugs, z.b. DE für Deutschland. ")])),_:1},8,["model-value"]),i(t,{title:"VIN","model-value":n.vehicle.configuration.vin,"onUpdate:modelValue":e[3]||(e[3]=o=>n.updateConfiguration(o,"configuration.vin"))},{help:r(()=>e[7]||(e[7]=[l(" Die Fahrgestellnummer des Fahrzeugs falls mehrere Fahrzeuge im Account vorhanden sind. ")])),_:1},8,["model-value"])])}const $=a(m,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/renault/vehicle.vue"]]);export{$ as default}; diff --git a/web/settings/assets/vehicle-3d582767.js b/web/settings/assets/vehicle-3d582767.js new file mode 100644 index 0000000000..ed860b6443 --- /dev/null +++ b/web/settings/assets/vehicle-3d582767.js @@ -0,0 +1 @@ +import{V as o}from"./VehicleConfig-37a300a0.js";import{_ as i,u as r,k as s,l as a,G as c,E as p,y as n,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"VehicleSocPSA",mixins:[o]},m={class:"vehicle-soc-psa"};function u(f,e,_,h,b,g){const t=r("openwb-base-alert");return s(),a("div",m,[c(t,{subtype:"danger"},{default:p(()=>e[0]||(e[0]=[n(" Diese Modul ist seit Änderungen der Schnittstellen durch PSA nicht mehr funktionsfähig und wird in einer zukünftigen Version entfernt. Bitte auf einen anderen Anbieter wechseln, z.B. Tronity."),l("br",null,null,-1),n(" Bei vorhandener PSA-Integration in Heimautomation kann der SoC ggf. auch per MQTT übergeben werden. ")])),_:1})])}const T=i(d,[["render",u],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/psa/vehicle.vue"]]);export{T as default}; diff --git a/web/settings/assets/vehicle-4bbaa506.js b/web/settings/assets/vehicle-4bbaa506.js new file mode 100644 index 0000000000..0c0fb7ebdf --- /dev/null +++ b/web/settings/assets/vehicle-4bbaa506.js @@ -0,0 +1 @@ +import{_ as h,a4 as c,a5 as _,a6 as f,u as r,k as b,l as k,G as i,E as a,y as s,x as v}from"./vendor-06e11d0e.js";import{a as w}from"./vendor-axios-22b906fb.js";import{C as y}from"./index-beac009d.js";import{V as C}from"./VehicleConfig-37a300a0.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./dynamic-import-helper-be004503.js";const T={name:"VehicleSocTesla",mixins:[y,C],data(){return{tesla_api_oauth2:"https://auth.tesla.com/oauth2/v3",tesla_api_redirect:"https://auth.tesla.com/void/callback",tesla_api_owners:"https://owner-api.teslamotors.com/oauth/token",user_agent:"Mozilla/5.0 (iPhone; CPU iPhone OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148",code_challenge:null,code_verifier:null,page_not_found_url:null}},methods:{tesla_login_window(){this.tesla_gen_challenge();var e=window.open(this.tesla_gen_url(),"TeslaLogin","width=800,height=600,status=yes,scrollbars=yes,resizable=yes");e.focus()},tesla_gen_challenge(){this.code_verifier=c.encode(_.randomBytes(86)).replace(/[^a-zA-Z0-9]/gi,"").substring(0,86);const e=_.createHash("sha256").update(this.code_verifier).digest();this.code_challenge=c.encode(e),console.debug(this.code_verifier,this.code_verifier.length,this.code_challenge,this.code_challenge.length)},tesla_gen_url(){const e=new URL(this.tesla_api_oauth2+"/authorize/");return e.searchParams.append("client_id","ownerapi"),e.searchParams.append("code_challenge",this.code_challenge),e.searchParams.append("code_challenge_method","S256"),e.searchParams.append("redirect_uri",this.tesla_api_redirect),e.searchParams.append("response_type","code"),e.searchParams.append("scope","openid email offline_access"),e.searchParams.append("state","myteslaapp"),e},async tesla_login(){const e=f.parse(this.page_not_found_url,!0).query;if(console.debug("queryObject",e),!e.code){console.error("Something is wrong... Code does not exist in URL"),this.$root.postClientMessage("Die eingegebene URL ist ungültig.","danger");return}const n={url:this.tesla_api_owners,user_agent:this.user_agent,data:{grant_type:"authorization_code",client_id:"ownerapi",code:e.code,code_verifier:this.code_verifier,redirect_uri:this.tesla_api_redirect}};try{const o=await w.post(location.protocol+"//"+location.host+"/openWB/web/settings/modules/vehicles/tesla/tesla.php",JSON.parse(JSON.stringify(n)),{headers:{"Content-Type":"application/json",Accept:"application/json"}});console.debug("response",o),this.updateConfiguration({access_token:o.data.access_token,refresh_token:o.data.refresh_token,created_at:o.data.created_at,expires_in:o.data.expires_in},"configuration.token"),this.$root.postClientMessage("Token erfolgreich abgerufen.","success")}catch(o){console.error(o),this.$root.postClientMessage("Beim Abruf der Token ist ein Fehler aufgetreten!
"+o+"
","danger")}}}},U={class:"vehicle-soc-tesla"};function B(e,n,o,z,l,p){const u=r("openwb-base-number-input"),m=r("openwb-base-heading"),g=r("openwb-base-button-input"),d=r("openwb-base-text-input");return b(),k("div",U,[i(u,{title:"Fahrzeug-ID",required:"",min:0,"model-value":e.vehicle.configuration.tesla_ev_num,"onUpdate:modelValue":n[0]||(n[0]=t=>e.updateConfiguration(t,"configuration.tesla_ev_num"))},{help:a(()=>n[6]||(n[6]=[s(' Die ID des Fahrzeugs bei Tesla. Normalerweise "0" bei nur einem Fahrzeug im Konto. ')])),_:1},8,["model-value"]),i(m,null,{default:a(()=>n[7]||(n[7]=[s("Token abrufen oder eingeben")])),_:1}),i(g,{title:"1. Anmelden","button-text":"Bei Tesla Anmelden",subtype:"success",onButtonClicked:p.tesla_login_window},{help:a(()=>n[8]||(n[8]=[s(" Es wird ein neues Browserfenster geöffnet, in dem Sie sich bei Tesla mit Ihren Zugangsdaten anmelden können. ")])),_:1},8,["onButtonClicked"]),i(d,{modelValue:l.page_not_found_url,"onUpdate:modelValue":n[1]||(n[1]=t=>l.page_not_found_url=t),title:"2. URL kopieren und einfügen",subtype:"url","empty-value":null},{help:a(()=>n[9]||(n[9]=[s(' Hier die komplette URL (Text in der Adresszeile) aus dem geöffneten Browserfenster einfügen, wenn dort "Page Not Found" angezeigt wird. ')])),_:1},8,["modelValue"]),i(g,{title:"3. Token abrufen","button-text":"Jetzt abrufen",subtype:"success",disabled:l.page_not_found_url===null,onButtonClicked:p.tesla_login},{help:a(()=>n[10]||(n[10]=[s(" Der in der eingegebenen URL enthaltene Code wird genutzt, um ein Anmeldetoken bei Tesla abzurufen. Ist dies erfolgreich, so werden die Daten des Token in den weiteren Feldern automatisch eingegeben. ")])),_:1},8,["disabled","onButtonClicked"]),n[13]||(n[13]=v("hr",null,null,-1)),i(d,{title:"Access Token",pattern:"^(ey).*",required:"","model-value":e.vehicle.configuration.token?e.vehicle.configuration.token.access_token:"","onUpdate:modelValue":n[2]||(n[2]=t=>e.updateConfiguration(t,"configuration.token.access_token"))},null,8,["model-value"]),i(d,{title:"Refresh Token",pattern:"^(ey).*",required:"","model-value":e.vehicle.configuration.token?e.vehicle.configuration.token.refresh_token:"","onUpdate:modelValue":n[3]||(n[3]=t=>e.updateConfiguration(t,"configuration.token.refresh_token"))},null,8,["model-value"]),i(u,{title:"Erstellt um",required:"","model-value":e.vehicle.configuration.token?e.vehicle.configuration.token.created_at:0,"onUpdate:modelValue":n[4]||(n[4]=t=>e.updateConfiguration(t,"configuration.token.created_at"))},{help:a(()=>n[11]||(n[11]=[s(" Unix Timestamp des Zeitpunktes, an dem das Token erzeugt wurde. ")])),_:1},8,["model-value"]),i(u,{title:"Ungültig in",unit:"s",required:"","model-value":e.vehicle.configuration.token?e.vehicle.configuration.token.expires_in:0,"onUpdate:modelValue":n[5]||(n[5]=t=>e.updateConfiguration(t,"configuration.token.expires_in"))},{help:a(()=>n[12]||(n[12]=[s(" Zeitspanne in Sekunden, nach der das Token ungültig wird. ")])),_:1},8,["model-value"])])}const x=h(T,[["render",B],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/tesla/vehicle.vue"]]);export{x as default}; diff --git a/web/settings/assets/vehicle-57cd091a.js b/web/settings/assets/vehicle-57cd091a.js new file mode 100644 index 0000000000..614eab301e --- /dev/null +++ b/web/settings/assets/vehicle-57cd091a.js @@ -0,0 +1 @@ +import{V as p}from"./VehicleConfig-37a300a0.js";import{_ as m,u as s,k as b,l as g,G as i,E as r,y as n,x as t}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"VehicleSocBmwBimmerConnected",mixins:[p]},v={class:"vehicle-soc-bmwbc"},w={href:"https://bimmer-connected.readthedocs.io/en/latest/captcha/rest_of_world.html",target:"_blank"};function C(l,e,k,B,V,S){const u=s("openwb-base-text-input"),d=s("font-awesome-icon"),a=s("openwb-base-button-group-input");return b(),g("div",v,[i(u,{title:"Benutzername",required:"",subtype:"user","model-value":l.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=o=>l.updateConfiguration(o,"configuration.user_id"))},{help:r(()=>e[5]||(e[5]=[n(" Der Benutzername für die Anmeldung an den BMW-Servern. ")])),_:1},8,["model-value"]),i(u,{title:"Kennwort",required:"",subtype:"password","model-value":l.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=o=>l.updateConfiguration(o,"configuration.password"))},{help:r(()=>e[6]||(e[6]=[n(" Das Passwort für die Anmeldung an den BMW-Servern. ")])),_:1},8,["model-value"]),i(u,{title:"VIN",required:"","model-value":l.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=o=>l.updateConfiguration(o,"configuration.vin"))},{help:r(()=>e[7]||(e[7]=[n(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"]),i(u,{title:"Captcha-Token",required:"","model-value":l.vehicle.configuration.captcha_token,"onUpdate:modelValue":e[3]||(e[3]=o=>l.updateConfiguration(o,"configuration.captcha_token"))},{help:r(()=>[e[9]||(e[9]=n(" Zum erstmaligen Login z.B. nach einem Neustart ist ein ")),e[10]||(e[10]=t("b",null,"aktuelles Captcha-Token",-1)),e[11]||(e[11]=n(" notwendig.")),e[12]||(e[12]=t("br",null,null,-1)),e[13]||(e[13]=n(" Dazu bitte folgende Schritte durchführen:")),e[14]||(e[14]=t("br",null,null,-1)),e[15]||(e[15]=n(" 1. in einem neuen Browser-Tab auf diese Seite gehen:")),e[16]||(e[16]=t("br",null,null,-1)),t("a",w,[e[8]||(e[8]=n(" Captcha Lösen ")),i(d,{"fixed-width":"",icon:["fas","external-link-alt"]})]),e[17]||(e[17]=n(" (https://bimmer-connected.readthedocs.io/en/latest/captcha/rest_of_world.html)")),e[18]||(e[18]=t("br",null,null,-1)),e[19]||(e[19]=n(' 2. Dort falls angefragt das Captcha lösen und/oder "Ich bin ein Mensch" und dann Submit anclicken.')),e[20]||(e[20]=t("br",null,null,-1)),e[21]||(e[21]=n(" Als Ergebnis wird ein sehr langer String angezeigt. ")),e[22]||(e[22]=t("br",null,null,-1)),e[23]||(e[23]=n(" 3. Diesen String komplett mit ")),e[24]||(e[24]=t("b",null,"Copy&Paste",-1)),e[25]||(e[25]=n(" in das Feld Captcha-Token eingeben.")),e[26]||(e[26]=t("br",null,null,-1)),e[27]||(e[27]=n(" 4. Die Konfiguration speichern.")),e[28]||(e[28]=t("br",null,null,-1)),e[29]||(e[29]=n(" 5. ")),e[30]||(e[30]=t("b",null,"Sofort einmal im Desktop manuell (Kreispfeil) den SoC für das Fahrzeug abrufen.",-1)),e[31]||(e[31]=t("br",null,null,-1)),e[32]||(e[32]=n(" 6. ")),e[33]||(e[33]=t("b",null,"Fertig.",-1)),e[34]||(e[34]=n(" Ab jetzt wird bis zum nächsten Neustart das sog. Refresh-Token verwendet.")),e[35]||(e[35]=t("br",null,null,-1)),e[36]||(e[36]=t("b",null,"Achtung: Das Captcha-Token kann nur einmal verwendet werden und gilt nur kurze Zeit!",-1))]),_:1},8,["model-value"]),i(a,{title:"SoC während der Ladung berechnen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":l.vehicle.configuration.calculate_soc,"onUpdate:modelValue":e[4]||(e[4]=o=>l.updateConfiguration(o,"configuration.calculate_soc"))},{help:r(()=>e[37]||(e[37]=[n(" Berechnet den Ladestand (SoC) während der Ladung. "),t("br",null,null,-1),n(" Die Berechnung erfolgt über die Ladeleistung und die Ladedauer. "),t("br",null,null,-1)])),_:1},8,["model-value"])])}const x=m(f,[["render",C],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/bmwbc/vehicle.vue"]]);export{x as default}; diff --git a/web/settings/assets/vehicle-5b402ad7.js b/web/settings/assets/vehicle-5b402ad7.js new file mode 100644 index 0000000000..f935c77683 --- /dev/null +++ b/web/settings/assets/vehicle-5b402ad7.js @@ -0,0 +1 @@ +import{V as n}from"./VehicleConfig-37a300a0.js";import{_ as s,u as i,k as o,l as r,G as a,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const p={name:"VehicleSocManual",mixins:[n]},c={class:"vehicle-soc-tesla"};function u(m,e,_,f,h,g){const t=i("openwb-base-alert");return o(),r("div",c,[a(t,{subtype:"info"},{default:d(()=>e[0]||(e[0]=[l(' Beim Anstecken des Fahrzeugs muss der aktuelle SoC über die Hauptseite angegeben werden. Anhand des Zählers im Ladepunkt wird dann der aktuelle SoC errechnet. Ausschlaggebend für die Qualität dieses Moduls sind die beiden Einstellungen "Kapazität der Batterie" in dem Fahrzeug-Profil und "Wirkungsgrad der Ladeelektronik". ')])),_:1})])}const z=s(p,[["render",u],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/manual/vehicle.vue"]]);export{z as default}; diff --git a/web/settings/assets/vehicle-742a327c.js b/web/settings/assets/vehicle-742a327c.js new file mode 100644 index 0000000000..f80a625bd8 --- /dev/null +++ b/web/settings/assets/vehicle-742a327c.js @@ -0,0 +1 @@ +import{V as u}from"./VehicleConfig-37a300a0.js";import{_ as a,u as s,k as d,l as p,G as t,E as r,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocKia",mixins:[u]},v={class:"vehicle-soc-kia"};function f(o,e,g,w,V,b){const i=s("openwb-base-text-input");return d(),p("div",v,[t(i,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[4]||(e[4]=[l(" Der Benutzername für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),t(i,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[5]||(e[5]=[l(" Das Passwort für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),t(i,{title:"PIN",required:"",subtype:"password","model-value":o.vehicle.configuration.pin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.pin"))},{help:r(()=>e[6]||(e[6]=[l(" Die PIN für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),t(i,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[3]||(e[3]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[7]||(e[7]=[l(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const $=a(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/kia/vehicle.vue"]]);export{$ as default}; diff --git a/web/settings/assets/vehicle-88398611.js b/web/settings/assets/vehicle-88398611.js new file mode 100644 index 0000000000..0e8b30977b --- /dev/null +++ b/web/settings/assets/vehicle-88398611.js @@ -0,0 +1 @@ +import{V as l}from"./VehicleConfig-37a300a0.js";import{_ as a,u,k as d,l as p,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocVwid",mixins:[l]},v={class:"vehicle-soc-vwid"};function f(o,e,g,w,V,b){const i=u("openwb-base-text-input");return d(),p("div",v,[t(i,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[3]||(e[3]=[s(" Der Benutzername für die Anmeldung an den VW-Servern. ")])),_:1},8,["model-value"]),t(i,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[4]||(e[4]=[s(" Das Passwort für die Anmeldung an den VW-Servern. ")])),_:1},8,["model-value"]),t(i,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[5]||(e[5]=[s(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const y=a(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/vwid/vehicle.vue"]]);export{y as default}; diff --git a/web/settings/assets/vehicle-938e3571.js b/web/settings/assets/vehicle-938e3571.js new file mode 100644 index 0000000000..a695321994 --- /dev/null +++ b/web/settings/assets/vehicle-938e3571.js @@ -0,0 +1 @@ +import{V as a}from"./VehicleConfig-37a300a0.js";import{_ as l,u as d,k as u,l as p,G as i,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocSkodaconnect",mixins:[a]},v={class:"vehicle-soc-skodaconnect"};function f(o,e,c,g,w,V){const t=d("openwb-base-text-input");return u(),p("div",v,[i(t,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[3]||(e[3]=[s(" Der Benutzername für die Anmeldung an den SkodaConnect-Servern. ")])),_:1},8,["model-value"]),i(t,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[4]||(e[4]=[s(" Das Passwort für die Anmeldung an den SkodaConnect-Servern. ")])),_:1},8,["model-value"]),i(t,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[5]||(e[5]=[s(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const x=l(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/skodaconnect/vehicle.vue"]]);export{x as default}; diff --git a/web/settings/assets/vehicle-9fb740cb.js b/web/settings/assets/vehicle-9fb740cb.js new file mode 100644 index 0000000000..4a4c4888bb --- /dev/null +++ b/web/settings/assets/vehicle-9fb740cb.js @@ -0,0 +1 @@ +import{V as m}from"./VehicleConfig-37a300a0.js";import{_ as d,u as r,k as u,l as f,G as n,E as l,y as o,x as t,F as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"VehicleSocMqtt",mixins:[m]},v={class:"vehicle-soc-mqtt"};function g(i,e,w,k,x,B){const s=r("openwb-base-copy-to-clipboard"),a=r("openwb-base-alert");return u(),f("div",v,[n(a,{subtype:"info"},{default:l(()=>[e[12]||(e[12]=o(" Die Daten werden immer dann aktualisiert, wenn das Topic veröffentlicht wird. Die Abfrageintervalle werden nicht berücksichtigt, da das Intervall vom sendenden Client festgelegt wird. ")),t("ul",null,[t("li",null,[n(s,{class:"text-info",tooltip:"Topic kopieren"},{default:l(()=>[o(" openWB/set/vehicle/"+p(i.vehicleId)+"/get/soc ",1)]),_:1}),e[0]||(e[0]=t("br",null,null,-1)),e[1]||(e[1]=o(" Fahrzeug-SoC mit Nachkommastellen (Float) oder Ganzzahl")),e[2]||(e[2]=t("br",null,null,-1)),e[3]||(e[3]=o(" Beispiel: ")),e[4]||(e[4]=t("span",{class:"text-info"},"89.5",-1))]),t("li",null,[n(s,{class:"text-info",tooltip:"Topic kopieren"},{default:l(()=>[o(" openWB/set/vehicle/"+p(i.vehicleId)+"/get/range ",1)]),_:1}),e[5]||(e[5]=t("br",null,null,-1)),e[6]||(e[6]=o(" Reichweite des Fahrzeugs in km mit Nachkommastellen (Float) oder Ganzzahl")),e[7]||(e[7]=t("br",null,null,-1)),e[8]||(e[8]=o(" Diese Info ist optional.")),e[9]||(e[9]=t("br",null,null,-1)),e[10]||(e[10]=o(" Beispiel: ")),e[11]||(e[11]=t("span",{class:"text-info"},"356.5",-1))])])]),_:1})])}const $=d(b,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/mqtt/vehicle.vue"]]);export{$ as default}; diff --git a/web/settings/assets/vehicle-b40ddfab.js b/web/settings/assets/vehicle-b40ddfab.js new file mode 100644 index 0000000000..3522aa4669 --- /dev/null +++ b/web/settings/assets/vehicle-b40ddfab.js @@ -0,0 +1 @@ +import{V as s}from"./VehicleConfig-37a300a0.js";import{_ as d,u as a,k as p,l as m,G as t,E as u,y as n,x as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const v={name:"VehicleSocOVMS",mixins:[s]},f={class:"vehicle-soc-ovms"};function g(o,e,V,b,S,w){const l=a("openwb-base-text-input");return p(),m("div",f,[t(l,{title:"Server URL",required:"","model-value":o.vehicle.configuration.server_url,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.server_url"))},{help:u(()=>e[4]||(e[4]=[n(" Die URL (incl. Port) des API des OVMS-Servers, an dem das OVMS-Modul angemeldet ist, z.B. "),i("br",null,null,-1),n(" https://ovms.dexters-web.de:6869"),i("br",null,null,-1),n(" oder"),i("br",null,null,-1),n(" https://api.openvehicles.com:6869"),i("br",null,null,-1),n(" oder ein custom server"),i("br",null,null,-1)])),_:1},8,["model-value"]),t(l,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[1]||(e[1]=r=>o.updateConfiguration(r,"configuration.user_id"))},{help:u(()=>e[5]||(e[5]=[n(" Der Benutzername für die Anmeldung am benutzen OVMS-Servers. ")])),_:1},8,["model-value"]),t(l,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=r=>o.updateConfiguration(r,"configuration.password"))},{help:u(()=>e[6]||(e[6]=[n(" Das Passwort für die Anmeldung am OVMS-Server. ")])),_:1},8,["model-value"]),t(l,{title:"Vehicle Id",required:"","model-value":o.vehicle.configuration.vehicleId,"onUpdate:modelValue":e[3]||(e[3]=r=>o.updateConfiguration(r,"configuration.vehicleId"))},{help:u(()=>e[7]||(e[7]=[n(" Die Id des Fahrzeugs im OVMS, auch Module Id genannt. ")])),_:1},8,["model-value"])])}const q=d(v,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/ovms/vehicle.vue"]]);export{q as default}; diff --git a/web/settings/assets/vehicle-ba4fa598.js b/web/settings/assets/vehicle-ba4fa598.js new file mode 100644 index 0000000000..1580caf4c2 --- /dev/null +++ b/web/settings/assets/vehicle-ba4fa598.js @@ -0,0 +1 @@ +import{V as l}from"./VehicleConfig-37a300a0.js";import{_ as a,u,k as p,l as d,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocBmw",mixins:[l]},v={class:"vehicle-soc-bmw"};function f(o,e,g,w,b,V){const i=u("openwb-base-text-input");return p(),d("div",v,[t(i,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[3]||(e[3]=[s(" Der Benutzername für die Anmeldung an den BMW-Servern. ")])),_:1},8,["model-value"]),t(i,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[4]||(e[4]=[s(" Das Passwort für die Anmeldung an den BMW-Servern. ")])),_:1},8,["model-value"]),t(i,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[5]||(e[5]=[s(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const y=a(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/bmw/vehicle.vue"]]);export{y as default}; diff --git a/web/settings/assets/vehicle-c6776f5b.js b/web/settings/assets/vehicle-c6776f5b.js new file mode 100644 index 0000000000..1783a6df07 --- /dev/null +++ b/web/settings/assets/vehicle-c6776f5b.js @@ -0,0 +1 @@ +import{V as a}from"./VehicleConfig-37a300a0.js";import{_ as s,u as p,k as u,l as m,G as n,E as r,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"VehicleSocHttp",mixins:[a]},c={class:"vehicle-soc-http"};function v(t,e,f,h,g,w){const i=p("openwb-base-text-input");return u(),m("div",c,[n(i,{title:"SoC URL",subtype:"url",required:"","model-value":t.vehicle.configuration.soc_url,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.soc_url"))},{help:r(()=>e[2]||(e[2]=[l(" Es wird vom Server eine Zahl (Float mit Punkt als Dezimaltrennzeichen oder Integer) erwartet, welche den aktuellen Ladestand in Prozent (0 bis 100) zurückgibt. ")])),_:1},8,["model-value"]),n(i,{title:"Reichweiten URL",subtype:"url","model-value":t.vehicle.configuration.range_url,"onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.range_url"))},{help:r(()=>e[3]||(e[3]=[l(" Es wird vom Server eine Zahl (Float mit Punkt als Dezimaltrennzeichen oder Integer) erwartet, welche die aktuelle Reichweite in Kilometern darstellt. Diese Angabe ist optional. ")])),_:1},8,["model-value"])])}const S=s(d,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/http/vehicle.vue"]]);export{S as default}; diff --git a/web/settings/assets/vehicle-eff0eaa8.js b/web/settings/assets/vehicle-eff0eaa8.js new file mode 100644 index 0000000000..0dbc2b472e --- /dev/null +++ b/web/settings/assets/vehicle-eff0eaa8.js @@ -0,0 +1 @@ +import{V as a}from"./VehicleConfig-37a300a0.js";import{_ as l,u,k as p,l as d,G as i,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-beac009d.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocSmarteq",mixins:[a]},v={class:"vehicle-soc-smarteq"};function f(o,e,g,w,V,b){const t=u("openwb-base-text-input");return p(),d("div",v,[i(t,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[3]||(e[3]=[s(" Der Benutzername für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),i(t,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[4]||(e[4]=[s(" Das Passwort für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),i(t,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[5]||(e[5]=[s(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const x=l(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/smarteq/vehicle.vue"]]);export{x as default}; diff --git a/web/settings/index.html b/web/settings/index.html index 6285bd407c..2c7591afea 100644 --- a/web/settings/index.html +++ b/web/settings/index.html @@ -7,7 +7,7 @@ openWB - + From 7de27facb7402aa98cecac3345c0473581b84758 Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Thu, 12 Dec 2024 15:46:22 +0100 Subject: [PATCH 07/76] build settings --- web/settings/assets/ChargeLog-77d9349e.js | 3 --- web/settings/assets/ChargePointInstallation-1b33cf58.js | 1 - web/settings/assets/Chart-59cb598d.js | 1 - web/settings/assets/CloudConfig-55418356.js | 1 - web/settings/assets/DataManagement-2ea0a0a1.js | 1 - web/settings/assets/DebugConfig-f0ad1646.js | 2 -- web/settings/assets/GeneralChargeConfig-ed38b9ef.js | 1 - web/settings/assets/GeneralConfig-b1531208.js | 1 - web/settings/assets/HardwareInstallation-79ea1bc6.js | 1 - web/settings/assets/InstallAssistant-0bd3b4d8.js | 1 - web/settings/assets/InstallAssistantStep0-d04cfa93.js | 1 - web/settings/assets/InstallAssistantStep1-2ed55f91.js | 1 - web/settings/assets/InstallAssistantStep10-59925bb0.js | 1 - web/settings/assets/InstallAssistantStep2-46ec18be.js | 1 - web/settings/assets/InstallAssistantStep3-2b3c1903.js | 1 - web/settings/assets/InstallAssistantStep4-09557751.js | 1 - web/settings/assets/InstallAssistantStep5-93dbef29.js | 1 - web/settings/assets/InstallAssistantStep6-cfa0befa.js | 1 - web/settings/assets/InstallAssistantStep7-3f595c88.js | 1 - web/settings/assets/InstallAssistantStep8-e82bd428.js | 1 - web/settings/assets/InstallAssistantStep9-846bde46.js | 1 - web/settings/assets/InstallAssistantStepTemplate-c95c4891.js | 1 - web/settings/assets/InstantChargeConfig-fe6ed126.js | 1 - web/settings/assets/LegalSettings-cbf72384.js | 1 - web/settings/assets/LoadManagementConfig-b159973d.js | 1 - web/settings/assets/MqttBridgeConfig-8dc81a60.js | 1 - web/settings/assets/OpenwbSortableList-ac8384c9.js | 1 - web/settings/assets/OptionalComponents-62f1e823.js | 2 -- web/settings/assets/PVChargeConfig-1a8a15f2.js | 1 - web/settings/assets/ScheduledChargeConfig-6a7a9e08.js | 1 - web/settings/assets/Status-907a1b1e.js | 1 - web/settings/assets/Support-06bb9955.js | 3 --- web/settings/assets/System-684fe63a.js | 1 - web/settings/assets/TestingStore-9cfc4ccd.js | 1 - web/settings/assets/TimeChargeConfig-4b10d1c3.js | 1 - web/settings/assets/VehicleConfig-12242a8a.js | 1 - web/settings/assets/backup_cloud-0f2cda4a.js | 1 - web/settings/assets/backup_cloud-27f00872.js | 1 - web/settings/assets/backup_cloud-7ad59fca.js | 1 - web/settings/assets/backup_cloud-8019e353.js | 1 - web/settings/assets/bat-01b464b5.js | 1 - web/settings/assets/bat-0796e8c5.js | 1 - web/settings/assets/bat-12a8b04a.js | 1 - web/settings/assets/bat-302453bb.js | 1 - web/settings/assets/bat-338f9f8c.js | 1 - web/settings/assets/bat-4b4b1544.js | 1 - web/settings/assets/bat-4d59f497.js | 1 - web/settings/assets/bat-4e057349.js | 1 - web/settings/assets/bat-54247809.js | 1 - web/settings/assets/bat-66db2541.js | 1 - web/settings/assets/bat-67223423.js | 1 - web/settings/assets/bat-7b31b22e.js | 1 - web/settings/assets/bat-8556224e.js | 1 - web/settings/assets/bat-afe949d7.js | 1 - web/settings/assets/bat-bc9a716a.js | 1 - web/settings/assets/bat-cb002c2d.js | 1 - web/settings/assets/bat-d2ded368.js | 1 - web/settings/assets/bat-d4b53396.js | 1 - web/settings/assets/bat-db010135.js | 1 - web/settings/assets/bat-e19ed371.js | 1 - web/settings/assets/bat_smart_energy-544a23e0.js | 1 - web/settings/assets/chargePoint-076f1f25.js | 1 - web/settings/assets/chargePoint-1f06a345.js | 1 - web/settings/assets/chargePoint-35762788.js | 1 - web/settings/assets/chargePoint-482f5c7d.js | 1 - web/settings/assets/chargePoint-74843c64.js | 1 - web/settings/assets/chargePoint-c5192d41.js | 1 - web/settings/assets/chargePoint-dc8c8304.js | 1 - web/settings/assets/commands-ff2cd0dc.js | 1 - web/settings/assets/consumption_counter-222cd10a.js | 1 - web/settings/assets/counter-03e6c31d.js | 1 - web/settings/assets/counter-08617a3b.js | 1 - web/settings/assets/counter-0a146406.js | 1 - web/settings/assets/counter-10c3bcf9.js | 1 - web/settings/assets/counter-195f9f44.js | 1 - web/settings/assets/counter-1e0a8642.js | 1 - web/settings/assets/counter-1ee33dcc.js | 1 - web/settings/assets/counter-212ab5d9.js | 1 - web/settings/assets/counter-254f0cfd.js | 1 - web/settings/assets/counter-2c44c2a8.js | 1 - web/settings/assets/counter-2ca429aa.js | 1 - web/settings/assets/counter-60a6165d.js | 1 - web/settings/assets/counter-7288db20.js | 1 - web/settings/assets/counter-7be0c89b.js | 1 - web/settings/assets/counter-84be4565.js | 1 - web/settings/assets/counter-9927602b.js | 1 - web/settings/assets/counter-99f6452c.js | 1 - web/settings/assets/counter-b0e2f51e.js | 1 - web/settings/assets/counter-b591cf05.js | 1 - web/settings/assets/counter-b5c5d729.js | 1 - web/settings/assets/counter-b807495f.js | 1 - web/settings/assets/counter-cdf8a350.js | 1 - web/settings/assets/counter-cfb8942f.js | 1 - web/settings/assets/counter-d260631b.js | 1 - web/settings/assets/counter-d28a479e.js | 1 - web/settings/assets/counter-d291954a.js | 1 - web/settings/assets/counter-d7a9c7cb.js | 1 - web/settings/assets/counter-e5a2028c.js | 1 - web/settings/assets/counter-e70162c9.js | 1 - web/settings/assets/counter-f1fbea9a.js | 1 - web/settings/assets/counter-f2249b53.js | 1 - web/settings/assets/counter-faeac71e.js | 1 - web/settings/assets/counter_sm-9fb2ccb8.js | 1 - web/settings/assets/device-00acf0a2.js | 1 - web/settings/assets/device-02e133ba.js | 1 - web/settings/assets/device-084b7b34.js | 1 - web/settings/assets/device-08f6c1c3.js | 1 - web/settings/assets/device-0fe1ea59.js | 1 - web/settings/assets/device-1195cbe4.js | 1 - web/settings/assets/device-169018ea.js | 1 - web/settings/assets/device-17c54bdf.js | 1 - web/settings/assets/device-1b0d178b.js | 1 - web/settings/assets/device-26dae5a4.js | 1 - web/settings/assets/device-2c90706d.js | 1 - web/settings/assets/device-333add34.js | 1 - web/settings/assets/device-39d88706.js | 1 - web/settings/assets/device-40027363.js | 1 - web/settings/assets/device-43ef21f8.js | 1 - web/settings/assets/device-44720467.js | 1 - web/settings/assets/device-47571cec.js | 1 - web/settings/assets/device-4cacbc73.js | 1 - web/settings/assets/device-4d6b19fd.js | 1 - web/settings/assets/device-501cd96e.js | 1 - web/settings/assets/device-51673e43.js | 1 - web/settings/assets/device-57d44def.js | 1 - web/settings/assets/device-608338dd.js | 1 - web/settings/assets/device-6178cdc7.js | 1 - web/settings/assets/device-67242aab.js | 1 - web/settings/assets/device-6c36210a.js | 1 - web/settings/assets/device-6e2770dd.js | 1 - web/settings/assets/device-6eb7214d.js | 1 - web/settings/assets/device-79cf1a20.js | 1 - web/settings/assets/device-7a1e589b.js | 1 - web/settings/assets/device-7b2a48ce.js | 1 - web/settings/assets/device-81b5a1dc.js | 1 - web/settings/assets/device-838299c5.js | 1 - web/settings/assets/device-84a227ed.js | 1 - web/settings/assets/device-88966de4.js | 1 - web/settings/assets/device-8925e61a.js | 1 - web/settings/assets/device-9088801d.js | 1 - web/settings/assets/device-919238af.js | 1 - web/settings/assets/device-941a8f87.js | 1 - web/settings/assets/device-9447d94e.js | 1 - web/settings/assets/device-a6c25668.js | 1 - web/settings/assets/device-aa710e76.js | 1 - web/settings/assets/device-b86cd7b6.js | 1 - web/settings/assets/device-bc869b08.js | 1 - web/settings/assets/device-bd9e0b65.js | 1 - web/settings/assets/device-bdb06f88.js | 1 - web/settings/assets/device-bf5c69b8.js | 1 - web/settings/assets/device-c005be93.js | 1 - web/settings/assets/device-c200bc3a.js | 1 - web/settings/assets/device-c4964fb6.js | 1 - web/settings/assets/device-cca02a4f.js | 1 - web/settings/assets/device-d083e666.js | 1 - web/settings/assets/device-d2eeb63d.js | 1 - web/settings/assets/device-d5a5c7fd.js | 1 - web/settings/assets/device-db1a4525.js | 1 - web/settings/assets/device-dcc3398c.js | 1 - web/settings/assets/device-e21ae64d.js | 1 - web/settings/assets/device-e51669c4.js | 1 - web/settings/assets/device-e7688f93.js | 1 - web/settings/assets/device-eadbbfcc.js | 1 - web/settings/assets/device-ec258531.js | 1 - web/settings/assets/device-eee1b1e7.js | 1 - web/settings/assets/device-febe33bf.js | 1 - web/settings/assets/displayTheme-0aa46487.js | 1 - web/settings/assets/electricity_tariff-7f344358.js | 1 - web/settings/assets/electricity_tariff-7f3b489b.js | 1 - web/settings/assets/electricity_tariff-91487172.js | 1 - web/settings/assets/electricity_tariff-c3464fac.js | 1 - web/settings/assets/electricity_tariff-fa774354.js | 1 - web/settings/assets/external_inverter-56630198.js | 1 - web/settings/assets/index-e2dbf7bf.js | 1 - web/settings/assets/inverter-0862515d.js | 1 - web/settings/assets/inverter-0a929761.js | 1 - web/settings/assets/inverter-0c3f0824.js | 1 - web/settings/assets/inverter-192019df.js | 1 - web/settings/assets/inverter-3e46cbb1.js | 1 - web/settings/assets/inverter-4682710d.js | 1 - web/settings/assets/inverter-4f0fa47c.js | 1 - web/settings/assets/inverter-4fd40d49.js | 1 - web/settings/assets/inverter-5fe84449.js | 1 - web/settings/assets/inverter-64c827d4.js | 1 - web/settings/assets/inverter-6f2beb5c.js | 1 - web/settings/assets/inverter-741a82d0.js | 1 - web/settings/assets/inverter-80f6eda4.js | 1 - web/settings/assets/inverter-8ac2f8f6.js | 1 - web/settings/assets/inverter-8fc88738.js | 1 - web/settings/assets/inverter-9003395a.js | 1 - web/settings/assets/inverter-9ef308b9.js | 1 - web/settings/assets/inverter-a8e6cd81.js | 1 - web/settings/assets/inverter-ab6f3eb3.js | 1 - web/settings/assets/inverter-b50b5606.js | 1 - web/settings/assets/inverter-cc1c8210.js | 1 - web/settings/assets/inverter-e1deb4b5.js | 1 - web/settings/assets/inverter-e4fbde1b.js | 1 - web/settings/assets/inverter-efb146a6.js | 1 - web/settings/assets/inverter-f5c3d836.js | 1 - web/settings/assets/inverter-f8401435.js | 1 - web/settings/assets/inverter-fd3793d4.js | 1 - web/settings/assets/inverter-fdbe3f37.js | 1 - web/settings/assets/inverter_secondary-68726adb.js | 1 - web/settings/assets/ripple_control_receiver-9492b87f.js | 1 - web/settings/assets/ripple_control_receiver-d3be5fec.js | 1 - web/settings/assets/vehicle-0a92127a.js | 1 - web/settings/assets/vehicle-2b9ce8b6.js | 1 - web/settings/assets/vehicle-30efc187.js | 1 - web/settings/assets/vehicle-5eabfff5.js | 1 - web/settings/assets/vehicle-6e8988b3.js | 1 - web/settings/assets/vehicle-73ea78bb.js | 1 - web/settings/assets/vehicle-79b11b37.js | 1 - web/settings/assets/vehicle-82ee9ea0.js | 1 - web/settings/assets/vehicle-833b4868.js | 1 - web/settings/assets/vehicle-87685481.js | 1 - web/settings/assets/vehicle-91e49f3f.js | 1 - web/settings/assets/vehicle-9348e485.js | 1 - web/settings/assets/vehicle-a85e3bc8.js | 1 - web/settings/assets/vehicle-bbec57fb.js | 1 - web/settings/assets/vehicle-bc60fac3.js | 1 - web/settings/assets/vehicle-c9ce9ffd.js | 1 - web/settings/assets/vehicle-f59d95f7.js | 1 - web/settings/assets/vehicle-f86ab62f.js | 1 - 223 files changed, 229 deletions(-) delete mode 100644 web/settings/assets/ChargeLog-77d9349e.js delete mode 100644 web/settings/assets/ChargePointInstallation-1b33cf58.js delete mode 100644 web/settings/assets/Chart-59cb598d.js delete mode 100644 web/settings/assets/CloudConfig-55418356.js delete mode 100644 web/settings/assets/DataManagement-2ea0a0a1.js delete mode 100644 web/settings/assets/DebugConfig-f0ad1646.js delete mode 100644 web/settings/assets/GeneralChargeConfig-ed38b9ef.js delete mode 100644 web/settings/assets/GeneralConfig-b1531208.js delete mode 100644 web/settings/assets/HardwareInstallation-79ea1bc6.js delete mode 100644 web/settings/assets/InstallAssistant-0bd3b4d8.js delete mode 100644 web/settings/assets/InstallAssistantStep0-d04cfa93.js delete mode 100644 web/settings/assets/InstallAssistantStep1-2ed55f91.js delete mode 100644 web/settings/assets/InstallAssistantStep10-59925bb0.js delete mode 100644 web/settings/assets/InstallAssistantStep2-46ec18be.js delete mode 100644 web/settings/assets/InstallAssistantStep3-2b3c1903.js delete mode 100644 web/settings/assets/InstallAssistantStep4-09557751.js delete mode 100644 web/settings/assets/InstallAssistantStep5-93dbef29.js delete mode 100644 web/settings/assets/InstallAssistantStep6-cfa0befa.js delete mode 100644 web/settings/assets/InstallAssistantStep7-3f595c88.js delete mode 100644 web/settings/assets/InstallAssistantStep8-e82bd428.js delete mode 100644 web/settings/assets/InstallAssistantStep9-846bde46.js delete mode 100644 web/settings/assets/InstallAssistantStepTemplate-c95c4891.js delete mode 100644 web/settings/assets/InstantChargeConfig-fe6ed126.js delete mode 100644 web/settings/assets/LegalSettings-cbf72384.js delete mode 100644 web/settings/assets/LoadManagementConfig-b159973d.js delete mode 100644 web/settings/assets/MqttBridgeConfig-8dc81a60.js delete mode 100644 web/settings/assets/OpenwbSortableList-ac8384c9.js delete mode 100644 web/settings/assets/OptionalComponents-62f1e823.js delete mode 100644 web/settings/assets/PVChargeConfig-1a8a15f2.js delete mode 100644 web/settings/assets/ScheduledChargeConfig-6a7a9e08.js delete mode 100644 web/settings/assets/Status-907a1b1e.js delete mode 100644 web/settings/assets/Support-06bb9955.js delete mode 100644 web/settings/assets/System-684fe63a.js delete mode 100644 web/settings/assets/TestingStore-9cfc4ccd.js delete mode 100644 web/settings/assets/TimeChargeConfig-4b10d1c3.js delete mode 100644 web/settings/assets/VehicleConfig-12242a8a.js delete mode 100644 web/settings/assets/backup_cloud-0f2cda4a.js delete mode 100644 web/settings/assets/backup_cloud-27f00872.js delete mode 100644 web/settings/assets/backup_cloud-7ad59fca.js delete mode 100644 web/settings/assets/backup_cloud-8019e353.js delete mode 100644 web/settings/assets/bat-01b464b5.js delete mode 100644 web/settings/assets/bat-0796e8c5.js delete mode 100644 web/settings/assets/bat-12a8b04a.js delete mode 100644 web/settings/assets/bat-302453bb.js delete mode 100644 web/settings/assets/bat-338f9f8c.js delete mode 100644 web/settings/assets/bat-4b4b1544.js delete mode 100644 web/settings/assets/bat-4d59f497.js delete mode 100644 web/settings/assets/bat-4e057349.js delete mode 100644 web/settings/assets/bat-54247809.js delete mode 100644 web/settings/assets/bat-66db2541.js delete mode 100644 web/settings/assets/bat-67223423.js delete mode 100644 web/settings/assets/bat-7b31b22e.js delete mode 100644 web/settings/assets/bat-8556224e.js delete mode 100644 web/settings/assets/bat-afe949d7.js delete mode 100644 web/settings/assets/bat-bc9a716a.js delete mode 100644 web/settings/assets/bat-cb002c2d.js delete mode 100644 web/settings/assets/bat-d2ded368.js delete mode 100644 web/settings/assets/bat-d4b53396.js delete mode 100644 web/settings/assets/bat-db010135.js delete mode 100644 web/settings/assets/bat-e19ed371.js delete mode 100644 web/settings/assets/bat_smart_energy-544a23e0.js delete mode 100644 web/settings/assets/chargePoint-076f1f25.js delete mode 100644 web/settings/assets/chargePoint-1f06a345.js delete mode 100644 web/settings/assets/chargePoint-35762788.js delete mode 100644 web/settings/assets/chargePoint-482f5c7d.js delete mode 100644 web/settings/assets/chargePoint-74843c64.js delete mode 100644 web/settings/assets/chargePoint-c5192d41.js delete mode 100644 web/settings/assets/chargePoint-dc8c8304.js delete mode 100644 web/settings/assets/commands-ff2cd0dc.js delete mode 100644 web/settings/assets/consumption_counter-222cd10a.js delete mode 100644 web/settings/assets/counter-03e6c31d.js delete mode 100644 web/settings/assets/counter-08617a3b.js delete mode 100644 web/settings/assets/counter-0a146406.js delete mode 100644 web/settings/assets/counter-10c3bcf9.js delete mode 100644 web/settings/assets/counter-195f9f44.js delete mode 100644 web/settings/assets/counter-1e0a8642.js delete mode 100644 web/settings/assets/counter-1ee33dcc.js delete mode 100644 web/settings/assets/counter-212ab5d9.js delete mode 100644 web/settings/assets/counter-254f0cfd.js delete mode 100644 web/settings/assets/counter-2c44c2a8.js delete mode 100644 web/settings/assets/counter-2ca429aa.js delete mode 100644 web/settings/assets/counter-60a6165d.js delete mode 100644 web/settings/assets/counter-7288db20.js delete mode 100644 web/settings/assets/counter-7be0c89b.js delete mode 100644 web/settings/assets/counter-84be4565.js delete mode 100644 web/settings/assets/counter-9927602b.js delete mode 100644 web/settings/assets/counter-99f6452c.js delete mode 100644 web/settings/assets/counter-b0e2f51e.js delete mode 100644 web/settings/assets/counter-b591cf05.js delete mode 100644 web/settings/assets/counter-b5c5d729.js delete mode 100644 web/settings/assets/counter-b807495f.js delete mode 100644 web/settings/assets/counter-cdf8a350.js delete mode 100644 web/settings/assets/counter-cfb8942f.js delete mode 100644 web/settings/assets/counter-d260631b.js delete mode 100644 web/settings/assets/counter-d28a479e.js delete mode 100644 web/settings/assets/counter-d291954a.js delete mode 100644 web/settings/assets/counter-d7a9c7cb.js delete mode 100644 web/settings/assets/counter-e5a2028c.js delete mode 100644 web/settings/assets/counter-e70162c9.js delete mode 100644 web/settings/assets/counter-f1fbea9a.js delete mode 100644 web/settings/assets/counter-f2249b53.js delete mode 100644 web/settings/assets/counter-faeac71e.js delete mode 100644 web/settings/assets/counter_sm-9fb2ccb8.js delete mode 100644 web/settings/assets/device-00acf0a2.js delete mode 100644 web/settings/assets/device-02e133ba.js delete mode 100644 web/settings/assets/device-084b7b34.js delete mode 100644 web/settings/assets/device-08f6c1c3.js delete mode 100644 web/settings/assets/device-0fe1ea59.js delete mode 100644 web/settings/assets/device-1195cbe4.js delete mode 100644 web/settings/assets/device-169018ea.js delete mode 100644 web/settings/assets/device-17c54bdf.js delete mode 100644 web/settings/assets/device-1b0d178b.js delete mode 100644 web/settings/assets/device-26dae5a4.js delete mode 100644 web/settings/assets/device-2c90706d.js delete mode 100644 web/settings/assets/device-333add34.js delete mode 100644 web/settings/assets/device-39d88706.js delete mode 100644 web/settings/assets/device-40027363.js delete mode 100644 web/settings/assets/device-43ef21f8.js delete mode 100644 web/settings/assets/device-44720467.js delete mode 100644 web/settings/assets/device-47571cec.js delete mode 100644 web/settings/assets/device-4cacbc73.js delete mode 100644 web/settings/assets/device-4d6b19fd.js delete mode 100644 web/settings/assets/device-501cd96e.js delete mode 100644 web/settings/assets/device-51673e43.js delete mode 100644 web/settings/assets/device-57d44def.js delete mode 100644 web/settings/assets/device-608338dd.js delete mode 100644 web/settings/assets/device-6178cdc7.js delete mode 100644 web/settings/assets/device-67242aab.js delete mode 100644 web/settings/assets/device-6c36210a.js delete mode 100644 web/settings/assets/device-6e2770dd.js delete mode 100644 web/settings/assets/device-6eb7214d.js delete mode 100644 web/settings/assets/device-79cf1a20.js delete mode 100644 web/settings/assets/device-7a1e589b.js delete mode 100644 web/settings/assets/device-7b2a48ce.js delete mode 100644 web/settings/assets/device-81b5a1dc.js delete mode 100644 web/settings/assets/device-838299c5.js delete mode 100644 web/settings/assets/device-84a227ed.js delete mode 100644 web/settings/assets/device-88966de4.js delete mode 100644 web/settings/assets/device-8925e61a.js delete mode 100644 web/settings/assets/device-9088801d.js delete mode 100644 web/settings/assets/device-919238af.js delete mode 100644 web/settings/assets/device-941a8f87.js delete mode 100644 web/settings/assets/device-9447d94e.js delete mode 100644 web/settings/assets/device-a6c25668.js delete mode 100644 web/settings/assets/device-aa710e76.js delete mode 100644 web/settings/assets/device-b86cd7b6.js delete mode 100644 web/settings/assets/device-bc869b08.js delete mode 100644 web/settings/assets/device-bd9e0b65.js delete mode 100644 web/settings/assets/device-bdb06f88.js delete mode 100644 web/settings/assets/device-bf5c69b8.js delete mode 100644 web/settings/assets/device-c005be93.js delete mode 100644 web/settings/assets/device-c200bc3a.js delete mode 100644 web/settings/assets/device-c4964fb6.js delete mode 100644 web/settings/assets/device-cca02a4f.js delete mode 100644 web/settings/assets/device-d083e666.js delete mode 100644 web/settings/assets/device-d2eeb63d.js delete mode 100644 web/settings/assets/device-d5a5c7fd.js delete mode 100644 web/settings/assets/device-db1a4525.js delete mode 100644 web/settings/assets/device-dcc3398c.js delete mode 100644 web/settings/assets/device-e21ae64d.js delete mode 100644 web/settings/assets/device-e51669c4.js delete mode 100644 web/settings/assets/device-e7688f93.js delete mode 100644 web/settings/assets/device-eadbbfcc.js delete mode 100644 web/settings/assets/device-ec258531.js delete mode 100644 web/settings/assets/device-eee1b1e7.js delete mode 100644 web/settings/assets/device-febe33bf.js delete mode 100644 web/settings/assets/displayTheme-0aa46487.js delete mode 100644 web/settings/assets/electricity_tariff-7f344358.js delete mode 100644 web/settings/assets/electricity_tariff-7f3b489b.js delete mode 100644 web/settings/assets/electricity_tariff-91487172.js delete mode 100644 web/settings/assets/electricity_tariff-c3464fac.js delete mode 100644 web/settings/assets/electricity_tariff-fa774354.js delete mode 100644 web/settings/assets/external_inverter-56630198.js delete mode 100644 web/settings/assets/index-e2dbf7bf.js delete mode 100644 web/settings/assets/inverter-0862515d.js delete mode 100644 web/settings/assets/inverter-0a929761.js delete mode 100644 web/settings/assets/inverter-0c3f0824.js delete mode 100644 web/settings/assets/inverter-192019df.js delete mode 100644 web/settings/assets/inverter-3e46cbb1.js delete mode 100644 web/settings/assets/inverter-4682710d.js delete mode 100644 web/settings/assets/inverter-4f0fa47c.js delete mode 100644 web/settings/assets/inverter-4fd40d49.js delete mode 100644 web/settings/assets/inverter-5fe84449.js delete mode 100644 web/settings/assets/inverter-64c827d4.js delete mode 100644 web/settings/assets/inverter-6f2beb5c.js delete mode 100644 web/settings/assets/inverter-741a82d0.js delete mode 100644 web/settings/assets/inverter-80f6eda4.js delete mode 100644 web/settings/assets/inverter-8ac2f8f6.js delete mode 100644 web/settings/assets/inverter-8fc88738.js delete mode 100644 web/settings/assets/inverter-9003395a.js delete mode 100644 web/settings/assets/inverter-9ef308b9.js delete mode 100644 web/settings/assets/inverter-a8e6cd81.js delete mode 100644 web/settings/assets/inverter-ab6f3eb3.js delete mode 100644 web/settings/assets/inverter-b50b5606.js delete mode 100644 web/settings/assets/inverter-cc1c8210.js delete mode 100644 web/settings/assets/inverter-e1deb4b5.js delete mode 100644 web/settings/assets/inverter-e4fbde1b.js delete mode 100644 web/settings/assets/inverter-efb146a6.js delete mode 100644 web/settings/assets/inverter-f5c3d836.js delete mode 100644 web/settings/assets/inverter-f8401435.js delete mode 100644 web/settings/assets/inverter-fd3793d4.js delete mode 100644 web/settings/assets/inverter-fdbe3f37.js delete mode 100644 web/settings/assets/inverter_secondary-68726adb.js delete mode 100644 web/settings/assets/ripple_control_receiver-9492b87f.js delete mode 100644 web/settings/assets/ripple_control_receiver-d3be5fec.js delete mode 100644 web/settings/assets/vehicle-0a92127a.js delete mode 100644 web/settings/assets/vehicle-2b9ce8b6.js delete mode 100644 web/settings/assets/vehicle-30efc187.js delete mode 100644 web/settings/assets/vehicle-5eabfff5.js delete mode 100644 web/settings/assets/vehicle-6e8988b3.js delete mode 100644 web/settings/assets/vehicle-73ea78bb.js delete mode 100644 web/settings/assets/vehicle-79b11b37.js delete mode 100644 web/settings/assets/vehicle-82ee9ea0.js delete mode 100644 web/settings/assets/vehicle-833b4868.js delete mode 100644 web/settings/assets/vehicle-87685481.js delete mode 100644 web/settings/assets/vehicle-91e49f3f.js delete mode 100644 web/settings/assets/vehicle-9348e485.js delete mode 100644 web/settings/assets/vehicle-a85e3bc8.js delete mode 100644 web/settings/assets/vehicle-bbec57fb.js delete mode 100644 web/settings/assets/vehicle-bc60fac3.js delete mode 100644 web/settings/assets/vehicle-c9ce9ffd.js delete mode 100644 web/settings/assets/vehicle-f59d95f7.js delete mode 100644 web/settings/assets/vehicle-f86ab62f.js diff --git a/web/settings/assets/ChargeLog-77d9349e.js b/web/settings/assets/ChargeLog-77d9349e.js deleted file mode 100644 index 80323e4d0b..0000000000 --- a/web/settings/assets/ChargeLog-77d9349e.js +++ /dev/null @@ -1,3 +0,0 @@ -import{l as R,T as k,U as x,F as E}from"./vendor-fortawesome-3d19d475.js";import{_ as B,a0 as S,u as g,k as h,l as u,x as i,G as d,E as s,z as V,B as I,y as c,F as n,P as _,q as w}from"./vendor-06e11d0e.js";import{C as F}from"./index-e2dbf7bf.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";R.add(k,x);const W={name:"OpenwbChargeLogView",components:{Vue3TableLite:S,FontAwesomeIcon:E},mixins:[F],emits:["sendCommand"],data(){return{dateTimeFormat:new Intl.DateTimeFormat("de-DE",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}),mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/charge_log_data_config","openWB/chargepoint/+/config","openWB/vehicle/+/name"],currentMonth:"",chargeLogRequestData:{month:"",year:"",filter:{chargepoint:{id:[]},vehicle:{id:[],tag:[],chargemode:[],prio:void 0}}},downloadFile:null,table:{messages:{pagingInfo:"Einträge {0}-{1} von {2}",pageSizeChangeLabel:"Einträge:",gotoPageLabel:" Gehe zu:",noDataAvailable:"Keine Einträge gefunden."},pageOptions:[{value:5,text:"5"},{value:10,text:"10"},{value:25,text:"25"},{value:50,text:"50"},{value:100,text:"100"}],columns:[{label:"Beginn",field:"time_begin",sortable:!0},{label:"Ende",field:"time_end",sortable:!0},{label:"Dauer",field:"time_time_charged",sortable:!0},{label:"Kosten",field:"data_costs",sortable:!0},{label:"Energieaufteilung",field:"data_power_source",sortable:!1},{label:"Fahrzeug",field:"vehicle_name",sortable:!0},{label:"Lademodus",field:"vehicle_chargemode",sortable:!0},{label:"Priorität",field:"vehicle_prio",sortable:!0},{label:"ID-Tag",field:"vehicle_rfid",sortable:!0},{label:"SoC Beginn",field:"vehicle_soc_at_start",sortable:!0},{label:"SoC Ende",field:"vehicle_soc_at_end",sortable:!0},{label:"Ladepunkt",field:"chargepoint_name",sortable:!0},{label:"Seriennummer",field:"chargepoint_serial_number",sortable:!0},{label:"Energie",field:"data_imported_since_mode_switch",sortable:!0},{label:"Zähler Beginn",field:"chargepoint_imported_at_start",sortable:!0},{label:"Zähler Ende",field:"chargepoint_imported_at_end",sortable:!0}],sortable:{order:"timestamp_begin",sort:"asc"}},totals:{columns:[{label:"Dauer",field:"time_charged",sortable:!1},{label:"Energie",field:"imported_since_mode_switch",sortable:!1},{label:"Reichweite",field:"range_charged",sortable:!1},{label:"Kosten",field:"costs",sortable:!1}]}}},computed:{mqttClientId(){return this.$root.mqttClientId},downloadUrl(){const t=parseInt(location.port)||(location.protocol=="https:"?443:80);return`${location.protocol}//${location.hostname}:${t}/openWB/web/settings/downloadChargeLog.php`+`?year=${this.chargeLogRequestData.year}&month=${this.chargeLogRequestData.month}`},chargeLogDate:{get(){return this.chargeLogRequestData.year+"-"+this.chargeLogRequestData.month},set(t){let e=t.split("-");this.chargeLogRequestData.year=e[0],this.chargeLogRequestData.month=e[1]}},chargeLogTotals(){return this.$store.state.mqtt["openWB/log/"+this.mqttClientId+"/data"]?[this.$store.state.mqtt["openWB/log/"+this.mqttClientId+"/data"].totals]:[]},chargeLogColumns(){return this.table.columns.map(t=>({...t,headerClasses:this.addClasses(t.field),columnClasses:this.addClasses(t.field)}))},chargeLogDataset:{get(){if(this.$store.state.mqtt["openWB/log/"+this.mqttClientId+"/data"]==null)return[];try{return this.$store.state.mqtt["openWB/log/"+this.mqttClientId+"/data"].entries.map(t=>{var e=Date.parse(t.time.begin),o=Date.parse(t.time.end);return{chargepoint_id:t.chargepoint.id,chargepoint_name:t.chargepoint.name,chargepoint_imported_at_start:t.chargepoint.imported_at_start,chargepoint_imported_at_end:t.chargepoint.imported_at_end,chargepoint_serial_number:t.chargepoint.serial_number,vehicle_id:t.vehicle.id,vehicle_name:t.vehicle.name,vehicle_chargemode:this.translateChargeMode(t.vehicle.chargemode),vehicle_rfid:t.vehicle.rfid,vehicle_prio:t.vehicle.prio,vehicle_soc_at_start:t.vehicle.soc_at_start,vehicle_soc_at_end:t.vehicle.soc_at_end,vehicle_range_at_start:t.vehicle.range_at_start,vehicle_range_at_end:t.vehicle.range_at_end,timestamp_begin:e/1e3,time_begin:isNaN(e)?null:this.dateTimeFormat.format(new Date(e)),timestamp_end:o/1e3,time_end:isNaN(o)?null:this.dateTimeFormat.format(new Date(o)),time_time_charged:t.time.time_charged,data_power_source:t.data.power_source?{pv:t.data.power_source.pv*100,grid:t.data.power_source.grid*100,bat:t.data.power_source.bat*100,cp:t.data.power_source.cp*100}:void 0,data_range_charged:t.data.range_charged,data_costs:t.data.costs,data_imported_since_plugged:t.data.imported_since_plugged,data_imported_since_mode_switch:t.data.imported_since_mode_switch}})}catch(t){return console.error(t),[]}}},chargeLogCsv:{get(){return[['"Beginn"','"Ende"','"Zeitstempel Beginn"','"Zeitstempel Ende"','"Dauer"','"Kosten"','"Energieanteil Netz"','"Energieanteil Ladepunkte"','"Energieanteil Speicher"','"Energieanteil PV"','"Fahrzeug"','"Fahrzeug-ID"','"Lademodus"','"Priorität"','"ID-Tag"','"SoC Beginn"','"SoC Ende"','"Reichweite Beginn"','"Reichweite Ende"','"Ladepunkt"','"Ladepunkt-ID"','"Zähler Seriennummer"','"Energie"','"Reichweite"','"Zählerstand Beginn"','"Zählerstand Ende"','"Energie seit Anstecken"'],...this.chargeLogDataset.map(e=>[e.time_begin==null?"":'"'+e.time_begin+'"',e.time_end==null?"":'"'+e.time_end+'"',e.timestamp_begin==null||isNaN(e.timestamp_begin)?"":e.timestamp_begin,e.timestamp_end==null||isNaN(e.timestamp_end)?"":e.timestamp_end,'"'+e.time_time_charged+'"',this.formatCosts(e.data_costs,!1),e.data_power_source==null?"":this.formatNumber(e.data_power_source.grid,2),e.data_power_source==null?"":this.formatNumber(e.data_power_source.cp,2),e.data_power_source==null?"":this.formatNumber(e.data_power_source.bat,2),e.data_power_source==null?"":this.formatNumber(e.data_power_source.pv,2),'"'+e.vehicle_name+'"',e.vehicle_id,'"'+e.vehicle_chargemode+'"','"'+this.formatBool(e.vehicle_prio)+'"',e.vehicle_rfid==null?"":'"'+e.vehicle_rfid+'"',e.vehicle_soc_at_start==null?"":this.formatNumber(e.vehicle_soc_at_start,0),e.vehicle_soc_at_end==null?"":this.formatNumber(e.vehicle_soc_at_end,0),e.vehicle_range_at_start==null?"":this.formatNumber(e.vehicle_range_at_start,0),e.vehicle_range_at_end==null?"":this.formatNumber(e.vehicle_range_at_end,0),'"'+e.chargepoint_name+'"',e.chargepoint_id,e.chargepoint_serial_number==null?"":'"'+e.chargepoint_serial_number+'"',this.formatNumber(e.data_imported_since_mode_switch/1e3,2),this.formatNumber(e.data_range_charged,0),this.formatNumber(e.chargepoint_imported_at_start/1e3,2),this.formatNumber(e.chargepoint_imported_at_end/1e3,2),this.formatNumber(e.data_imported_since_plugged/1e3,2)])].map(e=>e.join(";")).join(` -`)+` -`}},chargeLogRead:{get(){return this.chargeLogDataset!=null}},chargeLogHasEntries:{get(){return this.chargeLogDataset==null?!1:this.chargeLogDataset.length>0}},totalRecordCount(){return this.chargeLogDataset.length},chargeModeList(){let t=this.chargeModes.map(e=>({value:e,text:this.translateChargeMode(e)}));return t.unshift({value:void 0,text:"Alle"}),t},chargePointList(){let t=this.getWildcardTopics("openWB/chargepoint/+/config");var e=[{value:void 0,text:"Alle"}];for(const[,o]of Object.entries(t))e.push({value:o.id,text:o.name});return e},vehicleList(){let t=this.getWildcardTopics("openWB/vehicle/+/name");var e=[{value:void 0,text:"Alle"}];for(const[o,p]of Object.entries(t)){let l=parseInt(o.match(/\/([0-9]+)\/name$/)[1]);e.push({value:l,text:p})}return e}},beforeMount(){this.mqttTopicsToSubscribe.push("openWB/log/"+this.mqttClientId+"/data")},mounted(){const t=new Date;this.currentMonth=this.chargeLogDate=t.getFullYear()+"-"+String(t.getMonth()+1).padStart(2,"0"),this.requestChargeLog()},methods:{cleanRequestData(){"id"in this.chargeLogRequestData.filter.chargepoint&&(this.chargeLogRequestData.filter.chargepoint.id=this.chargeLogRequestData.filter.chargepoint.id.filter(t=>t!=null)),"chargemode"in this.chargeLogRequestData.filter.vehicle&&(this.chargeLogRequestData.filter.vehicle.chargemode=this.chargeLogRequestData.filter.vehicle.chargemode.filter(t=>t!=null)),"id"in this.chargeLogRequestData.filter.vehicle&&(this.chargeLogRequestData.filter.vehicle.id=this.chargeLogRequestData.filter.vehicle.id.filter(t=>t!=null))},requestChargeLog(){if(document.forms.chargeLogForm.reportValidity())this.cleanRequestData(),this.$emit("sendCommand",{command:"getChargeLog",data:this.chargeLogRequestData});else{console.warn("form invalid");return}},makeTextFile(t){var e=new Blob([t],{type:"text/csv"});return this.downloadFile!==null&&window.URL.revokeObjectURL(this.downloadFile),this.downloadFile=window.URL.createObjectURL(e),this.downloadFile},downloadChargeLog(){this.$refs.downloadChargeLogLink.setAttribute("download","Ladeprotokoll-"+this.chargeLogDate+".csv"),this.$refs.downloadChargeLogLink.href=this.makeTextFile(this.chargeLogCsv),this.$refs.downloadChargeLogLink.dispatchEvent(new MouseEvent("click"))},addClasses(t){return this.$store.state.mqtt["openWB/general/charge_log_data_config"]!==void 0&&Object.hasOwn(this.$store.state.mqtt["openWB/general/charge_log_data_config"],t)?this.$store.state.mqtt["openWB/general/charge_log_data_config"][t]?[]:["d-none"]:[]},getProgressTitle(t){return`Netz: ${this.formatNumber(t.grid,0,0)}%, Ladepunkte: ${this.formatNumber(t.cp,0,0)}%, Speicher: ${this.formatNumber(t.bat,0,0)}%, PV: ${this.formatNumber(t.pv,0,0)}%`},formatBool(t){return t?"Ja":"Nein"},formatW(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t/1e3,2));return e?o+"kW":o},formatWh(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t/1e3,2));return e?o+"kWh":o},formatRange(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t,0));return e?o+"km":o},formatSoc(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t,0));return e?o+"%":o},formatCosts(t,e=!0){let o=this.dashIfNotSet(this.formatNumber(t,2));return e?o+"€":o},dashIfNotSet(t){return t==null||t==""||t==null?"-":t},getChargeModeClass(t){switch(t){case"Sofort":return"bg-danger";case"PV":return"bg-success";case"Zielladen":return"bg-primary";case"Zeitladen":return"bg-warning";case"Standby":return"bg-secondary";case"Stop":return"bg-dark";default:return console.warn("unknown charge mode:",t),"bg-light"}}}},T={class:"chargeLog"},U={name:"chargeLogForm"},y=["href"],M={key:1},P={class:"td-end"},z={class:"td-end"},O=["title"],Z=["aria-valuenow"],A=["aria-valuenow"],j=["aria-valuenow"],K=["aria-valuenow"],G={key:1,class:"td-center"},J={class:"td-end"},H={class:"no-wrap"},Y={class:"no-wrap"},Q={class:"td-end"},X={class:"no-wrap"},$={class:"no-wrap"},ee={class:"td-end"},te={class:"no-wrap"},ae={class:"no-wrap"},re={class:"td-end"},ie={class:"td-end"},se={key:0},oe={class:"row justify-content-center"},ne={ref:"downloadChargeLogLink",class:"hide"},le={class:"td-end"},de={class:"td-end"},ce={class:"td-end"},ge={class:"td-end"};function he(t,e,o,p,l,r){const C=g("openwb-base-text-input"),f=g("font-awesome-icon"),D=g("openwb-base-button-group-input"),m=g("openwb-base-select-input"),q=g("openwb-base-array-input"),v=g("openwb-base-card"),b=g("openwb-base-alert"),L=g("vue3-table-lite"),N=g("openwb-base-click-button");return h(),u("div",T,[i("form",U,[d(v,{title:"Filter"},{default:s(()=>[d(C,{modelValue:r.chargeLogDate,"onUpdate:modelValue":[e[0]||(e[0]=a=>r.chargeLogDate=a),e[1]||(e[1]=a=>r.requestChargeLog())],title:"Zeitraum",subtype:"month",min:"2018-01","show-quick-buttons":!0,max:l.currentMonth},null,8,["modelValue","max"]),d(v,{title:"Erweiterte Optionen",collapsible:!0,collapsed:!0},{header:s(()=>[d(f,{"fixed-width":"",icon:["fas","filter"]}),e[13]||(e[13]=c(" Erweiterte Optionen "))]),default:s(()=>[d(D,{modelValue:l.chargeLogRequestData.filter.vehicle.prio,"onUpdate:modelValue":[e[2]||(e[2]=a=>l.chargeLogRequestData.filter.vehicle.prio=a),e[3]||(e[3]=a=>r.requestChargeLog())],title:"Priorität",buttons:[{buttonValue:void 0,text:"Alle"},{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}]},null,8,["modelValue"]),d(m,{modelValue:l.chargeLogRequestData.filter.vehicle.chargemode,"onUpdate:modelValue":[e[4]||(e[4]=a=>l.chargeLogRequestData.filter.vehicle.chargemode=a),e[5]||(e[5]=a=>r.requestChargeLog())],title:"Lademodus",multiple:"",options:r.chargeModeList},{help:s(()=>e[14]||(e[14]=[c(" Es können mehrere Elemente ausgewählt werden. ")])),_:1},8,["modelValue","options"]),d(m,{modelValue:l.chargeLogRequestData.filter.chargepoint.id,"onUpdate:modelValue":[e[6]||(e[6]=a=>l.chargeLogRequestData.filter.chargepoint.id=a),e[7]||(e[7]=a=>r.requestChargeLog())],title:"Ladepunkt",multiple:"",options:r.chargePointList},{help:s(()=>e[15]||(e[15]=[c(" Es können mehrere Elemente ausgewählt werden. ")])),_:1},8,["modelValue","options"]),d(m,{modelValue:l.chargeLogRequestData.filter.vehicle.id,"onUpdate:modelValue":[e[8]||(e[8]=a=>l.chargeLogRequestData.filter.vehicle.id=a),e[9]||(e[9]=a=>r.requestChargeLog())],title:"Fahrzeug",multiple:"",options:r.vehicleList},{help:s(()=>e[16]||(e[16]=[c(" Es können mehrere Elemente ausgewählt werden. ")])),_:1},8,["modelValue","options"]),d(q,{modelValue:l.chargeLogRequestData.filter.vehicle.tag,"onUpdate:modelValue":[e[10]||(e[10]=a=>l.chargeLogRequestData.filter.vehicle.tag=a),e[11]||(e[11]=a=>r.requestChargeLog())],title:"ID-Tags"},{help:s(()=>e[17]||(e[17]=[c(" Es können mehrere Tags als Filter verwendet werden. ")])),_:1},8,["modelValue"])]),_:1})]),_:1}),d(b,{subtype:"info"},{default:s(()=>[e[18]||(e[18]=c(" Das komplette Ladeprotokoll kann automatisiert über folgende URL abgerufen werden: ")),i("a",{href:r.downloadUrl},n(r.downloadUrl),9,y)]),_:1}),r.chargeLogRead?(h(),u("div",M,[d(L,{class:"charge-log-table","is-static-mode":!0,columns:r.chargeLogColumns,rows:r.chargeLogDataset,total:r.totalRecordCount,sortable:l.table.sortable,messages:l.table.messages,"page-options":l.table.pageOptions,limit:25,"is-slot-mode":!0},{time_begin:s(a=>[c(n(r.dashIfNotSet(a.value.time_begin)),1)]),time_end:s(a=>[c(n(r.dashIfNotSet(a.value.time_end)),1)]),time_time_charged:s(a=>[i("div",P,n(a.value.time_time_charged),1)]),data_costs:s(a=>[i("div",z,n(r.formatCosts(a.value.data_costs)),1)]),data_power_source:s(a=>[a.value.data_power_source?(h(),u("div",{key:0,class:"progress td-center",title:r.getProgressTitle(a.value.data_power_source)},[i("div",{class:"progress-bar bg-danger",role:"progressbar",style:_({width:a.value.data_power_source.grid+"%"}),"aria-valuenow":a.value.data_power_source.grid,"aria-valuemin":"0","aria-valuemax":"100"},null,12,Z),i("div",{class:"progress-bar bg-primary",role:"progressbar",style:_({width:a.value.data_power_source.cp+"%"}),"aria-valuenow":a.value.data_power_source.cp,"aria-valuemin":"0","aria-valuemax":"100"},null,12,A),i("div",{class:"progress-bar bg-warning",role:"progressbar",style:_({width:a.value.data_power_source.bat+"%"}),"aria-valuenow":a.value.data_power_source.bat,"aria-valuemin":"0","aria-valuemax":"100"},null,12,j),i("div",{class:"progress-bar bg-success",role:"progressbar",style:_({width:a.value.data_power_source.pv+"%"}),"aria-valuenow":a.value.data_power_source.pv,"aria-valuemin":"0","aria-valuemax":"100"},null,12,K)],8,O)):(h(),u("div",G," - "))]),vehicle_chargemode:s(a=>[i("div",{class:w(["td-center tag",r.getChargeModeClass(a.value.vehicle_chargemode)])},n(a.value.vehicle_chargemode),3)]),vehicle_prio:s(a=>[i("div",{class:w(["td-center tag",a.value.vehicle_prio?"bg-success":"bg-danger"])},n(r.formatBool(a.value.vehicle_prio)),3)]),vehicle_rfid:s(a=>[c(n(r.dashIfNotSet(a.value.vehicle_rfid)),1)]),vehicle_soc_at_start:s(a=>[i("div",J,[i("span",H,n(r.formatSoc(a.value.vehicle_soc_at_start)),1),i("span",Y," ("+n(r.formatRange(a.value.vehicle_range_at_start))+") ",1)])]),vehicle_soc_at_end:s(a=>[i("div",Q,[i("span",X,n(r.formatSoc(a.value.vehicle_soc_at_end)),1),i("span",$," ("+n(r.formatRange(a.value.vehicle_range_at_end))+") ",1)])]),chargepoint_name:s(a=>[c(n(r.dashIfNotSet(a.value.chargepoint_name)),1)]),chargepoint_serial_number:s(a=>[c(n(r.dashIfNotSet(a.value.chargepoint_serial_number)),1)]),data_imported_since_mode_switch:s(a=>[i("div",ee,[i("span",te,n(r.formatWh(a.value.data_imported_since_mode_switch)),1),i("span",ae," ("+n(r.formatRange(a.value.data_range_charged))+") ",1)])]),chargepoint_imported_at_start:s(a=>[i("div",re,n(r.formatWh(a.value.chargepoint_imported_at_start)),1)]),chargepoint_imported_at_end:s(a=>[i("div",ie,n(r.formatWh(a.value.chargepoint_imported_at_end)),1)]),_:1},8,["columns","rows","total","sortable","messages","page-options"]),r.totalRecordCount>0?(h(),u("div",se,[i("div",oe,[d(N,{class:"col-4 btn-success",onButtonClicked:e[12]||(e[12]=a=>r.downloadChargeLog())},{default:s(()=>[e[20]||(e[20]=c(" Als CSV exportieren ")),d(f,{"fixed-width":"",icon:["fas","download"]})]),_:1}),i("a",ne,null,512)]),e[21]||(e[21]=i("div",{class:"row"},[i("div",{class:"col"},[i("h2",null,"Summe")])],-1)),d(L,{class:"charge-log-totals","is-static-mode":!0,"is-hide-paging":!0,columns:l.totals.columns,rows:r.chargeLogTotals,total:1,"is-slot-mode":!0},{time_charged:s(a=>[i("div",le,n(a.value.time_charged),1)]),imported_since_mode_switch:s(a=>[i("div",de,n(r.formatWh(a.value.imported_since_mode_switch)),1)]),range_charged:s(a=>[i("div",ce,n(r.formatRange(a.value.range_charged)),1)]),costs:s(a=>[i("div",ge,n(r.formatCosts(a.value.costs)),1)]),_:1},8,["columns","rows"])])):I("",!0)])):(h(),V(b,{key:0,subtype:"info"},{default:s(()=>e[19]||(e[19]=[c(" Es wurden noch keine Daten abgerufen. ")])),_:1}))])])}const Le=B(W,[["render",he],["__scopeId","data-v-8607e7e7"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/ChargeLog.vue"]]);export{Le as default}; diff --git a/web/settings/assets/ChargePointInstallation-1b33cf58.js b/web/settings/assets/ChargePointInstallation-1b33cf58.js deleted file mode 100644 index 71161c599d..0000000000 --- a/web/settings/assets/ChargePointInstallation-1b33cf58.js +++ /dev/null @@ -1 +0,0 @@ -import{l as Z,d as J,a0 as H,A as G,a9 as Q,aa as X,K as Y,ab as K,F as ee,I as te}from"./vendor-fortawesome-3d19d475.js";import{_ as V,C as ne}from"./index-e2dbf7bf.js";import{_ as z}from"./dynamic-import-helper-be004503.js";import{_ as S,u as h,k as l,l as p,z as f,E as o,y as r,F as w,G as a,x as d,a1 as D,a2 as E,N as A,M as x,B as g,D as M,q as ae,A as oe}from"./vendor-06e11d0e.js";const le={props:{chargePoint:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},ie=S(le,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/ChargePointConfigMixin.vue"]]),re={name:"ChargePointConfigFallback",mixins:[ie]},se={class:"charge-point-config-fallback"},ue={key:1};function de(t,e,m,P,c,u){const k=h("openwb-base-alert"),_=h("openwb-base-textarea");return l(),p("div",se,[Object.keys(t.chargePoint.configuration).length==0?(l(),f(k,{key:0,subtype:"info"},{default:o(()=>[r(' Der Ladepunkt-Typ "'+w(t.chargePoint.type)+'" bietet keine Einstellungen. ',1)]),_:1})):(l(),p("div",ue,[a(k,{subtype:"warning"},{default:o(()=>[r(' Es wurde keine Konfigurationsseite für den Ladepunkt-Typ "'+w(t.chargePoint.type)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),a(_,{title:"Konfiguration",subtype:"json","model-value":t.chargePoint.configuration,"onUpdate:modelValue":e[0]||(e[0]=L=>t.updateConfiguration(L,"configuration"))},{help:o(()=>e[1]||(e[1]=[r(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),a(k,{subtype:"info"},{default:o(()=>[d("pre",null,w(JSON.stringify(t.chargePoint.configuration,void 0,2)),1)]),_:1})]))])}const pe=S(re,[["render",de],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/OpenwbChargePointConfigFallback.vue"]]),me={props:{chargePoint:{type:Object,required:!0}}},ge=S(me,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/ChargePointCommandsMixin.vue"]]),he={name:"ChargePointCommandsFallback",mixins:[ge]},ce={class:"charge-point-commands-fallback"};function be(t,e,m,P,c,u){const k=h("openwb-base-alert");return l(),p("div",ce,[a(k,{subtype:"secondary"},{default:o(()=>[r(' Der Ladepunkt-Typ "'+w(t.chargePoint.type)+'" bietet keine Befehle an. ',1)]),_:1})])}const fe=S(he,[["render",be],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/OpenwbChargePointCommandsFallback.vue"]]),_e={name:"OpenwbChargePointProxy",props:{chargePoint:{required:!0,type:Object}},emits:["update:configuration"],computed:{myChargePointSettingsComponent(){return console.debug(`loading charge point settings: ${this.chargePoint.type}`),D({loader:()=>z(Object.assign({"./external_openwb/chargePoint.vue":()=>V(()=>import("./chargePoint-35762788.js"),["assets/chargePoint-35762788.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./internal_openwb/chargePoint.vue":()=>V(()=>import("./chargePoint-1f06a345.js"),["assets/chargePoint-1f06a345.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mqtt/chargePoint.vue":()=>V(()=>import("./chargePoint-482f5c7d.js"),["assets/chargePoint-482f5c7d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb_dc_adapter/chargePoint.vue":()=>V(()=>import("./chargePoint-076f1f25.js"),["assets/chargePoint-076f1f25.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb_pro/chargePoint.vue":()=>V(()=>import("./chargePoint-74843c64.js"),["assets/chargePoint-74843c64.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb_series2_satellit/chargePoint.vue":()=>V(()=>import("./chargePoint-dc8c8304.js"),["assets/chargePoint-dc8c8304.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smartwb/chargePoint.vue":()=>V(()=>import("./chargePoint-c5192d41.js"),["assets/chargePoint-c5192d41.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.chargePoint.type}/chargePoint.vue`),errorComponent:pe})},myChargePointCommandsComponent(){return console.debug(`loading charge point commands: ${this.chargePoint.type}`),D({loader:()=>z(Object.assign({"./openwb_pro/commands.vue":()=>V(()=>import("./commands-ff2cd0dc.js"),["assets/commands-ff2cd0dc.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.chargePoint.type}/commands.vue`),errorComponent:fe})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function ve(t,e,m,P,c,u){const k=h("openwb-base-heading");return l(),p(A,null,[a(k,null,{default:o(()=>[r(' Einstellungen für Ladepunkt Typ "'+w(m.chargePoint.type)+'" ',1)]),_:1}),(l(),f(E(u.myChargePointSettingsComponent),{"charge-point":m.chargePoint,"onUpdate:configuration":e[0]||(e[0]=_=>u.updateConfiguration(_))},null,40,["charge-point"])),e[1]||(e[1]=d("hr",null,null,-1)),a(k,null,{default:o(()=>[r(' Befehle für Ladepunkt Typ "'+w(m.chargePoint.type)+'" ',1)]),_:1}),(l(),f(E(u.myChargePointCommandsComponent),{"charge-point":m.chargePoint},null,8,["charge-point"]))],64)}const we=S(_e,[["render",ve],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/OpenwbChargePointProxy.vue"]]);Z.add(J,H,G,Q,X,Y,K);const ke={name:"OpenwbChargePointInstallationView",components:{FontAwesomeIcon:ee,FontAwesomeLayers:te,OpenwbChargePointProxy:we},mixins:[ne],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/optional/dc_charging","openWB/optional/ocpp/config","openWB/optional/rfid/active","openWB/chargepoint/+/config","openWB/chargepoint/template/+","openWB/chargepoint/template/+/autolock/+","openWB/system/configurable/chargepoints","openWB/system/configurable/chargepoints_internal"],chargePointToAdd:void 0,showChargePointModal:!1,modalChargePointIndex:void 0,showChargePointTemplateModal:!1,modalChargePointTemplateIndex:void 0,showChargePointTemplateAutolockPlanModal:!1,modalChargePointTemplateAutolockPlanIndex:void 0}},computed:{dcChargingEnabled:{get(){return this.$store.state.mqtt["openWB/optional/dc_charging"]}},installedChargePoints:{get(){let t=this.getWildcardTopics("openWB/chargepoint/+/config"),e={};for(const[m,P]of Object.entries(t))(P.type==="internal_openwb"||this.$store.state.mqtt["openWB/general/extern"]===!1)&&(e[m]=P);return e}},chargePointTemplates:{get(){return this.getWildcardTopics("openWB/chargepoint/template/+")}},chargePointTemplateList:{get(){let t=[];return Object.keys(this.chargePointTemplates).forEach(e=>{let m=parseInt(e.match(/([0-9]+)/g)[0]),P=this.$store.state.mqtt["openWB/chargepoint/template/"+m].name;t.push({value:m,text:P})}),t}}},methods:{addChargePoint(){this.$emit("sendCommand",{command:"addChargepoint",data:{type:this.chargePointToAdd}})},removeChargePointModal(t,e){e.stopPropagation(),this.modalChargePointIndex=parseInt(t.match(/(?:\/)(\d+)(?=\/)/)[1]),this.showChargePointModal=!0},removeChargePoint(t,e){this.showChargePointModal=!1,e=="confirm"&&(console.debug("request removal of charge point '"+t+"'"),this.$emit("sendCommand",{command:"removeChargepoint",data:{id:t}}))},getChargePointList(){return this.$store.state.mqtt["openWB/general/extern"]===!1?this.$store.state.mqtt["openWB/system/configurable/chargepoints"]:this.$store.state.mqtt["openWB/system/configurable/chargepoints_internal"]},getChargePointName(t){return this.$store.state.mqtt["openWB/chargepoint/"+t+"/config"]?this.$store.state.mqtt["openWB/chargepoint/"+t+"/config"].name:"Ladepunkt "+t},getChargePointTemplateName(t){return this.$store.state.mqtt["openWB/chargepoint/template/"+t]?this.$store.state.mqtt["openWB/chargepoint/template/"+t].name:"Profil "+t},addChargePointTemplate(t){t.stopPropagation(),this.$emit("sendCommand",{command:"addChargepointTemplate",data:{}})},getChargePointTemplateIndex(t){return parseInt(t.match(/([^/]+)$/)[0])},removeChargePointTemplateModal(t,e){e.stopPropagation(),this.modalChargePointTemplateIndex=this.getChargePointTemplateIndex(t),this.showChargePointTemplateModal=!0},removeChargePointTemplate(t,e){this.showChargePointTemplateModal=!1,e=="confirm"&&(console.debug("request removal of chargePoint template '"+t+"'"),this.$emit("sendCommand",{command:"removeChargepointTemplate",data:{id:t}}))},addChargePointTemplateAutolockPlan(t,e){e.stopPropagation(),console.info("requesting new charge point template autolock plan...");let m=this.getChargePointTemplateIndex(t);this.$emit("sendCommand",{command:"addAutolockPlan",data:{template:m}})},removeChargePointTemplateAutolockPlanModal(t,e,m){m.stopPropagation(),this.modalChargePointTemplateIndex=this.getChargePointTemplateIndex(t),this.modalChargePointTemplateAutolockPlanIndex=parseInt(e.match(/([^/]+)$/)[0]),this.showChargePointTemplateAutolockPlanModal=!0},removeChargePointTemplateAutolockPlan(t,e,m){this.showChargePointTemplateAutolockPlanModal=!1,m=="confirm"&&(console.debug("request removal of chargePoint template '"+t+"' autolock plan '"+e+"'"),this.$emit("sendCommand",{command:"removeAutolockPlan",data:{template:t,plan:e}}))},getChargePointTemplateAutolockPlanName(t,e){return this.$store.state.mqtt["openWB/chargepoint/template/"+t+"/autolock/"+e]?this.$store.state.mqtt["openWB/chargepoint/template/"+t+"/autolock/"+e].name:"Autolock Zeitplan "+t+"/"+e},getChargePointTemplateAutolockPlans(t){let e=this.getChargePointTemplateIndex(t);return this.getWildcardTopics("openWB/chargepoint/template/"+e+"/autolock/+")},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)}}},Ce={class:"chargePointInstallation"},ye={name:"chargePointInstallationForm"},Pe={key:0},Ve={key:2},Le={key:0},Be={key:0},We={key:1},Ae={key:1},Se={key:0},Ue={key:2},xe={key:4},Ie=["onClick"],Te={key:0},qe={key:1},ze={key:2},De={key:2};function Ee(t,e,m,P,c,u){const k=h("openwb-base-modal-dialog"),_=h("font-awesome-icon"),L=h("openwb-base-avatar"),y=h("openwb-base-text-input"),I=h("openwb-base-select-input"),O=h("openwb-charge-point-proxy"),B=h("openwb-base-heading"),C=h("openwb-base-button-group-input"),U=h("openwb-base-card"),F=h("font-awesome-layers"),T=h("openwb-base-alert"),N=h("openwb-base-array-input"),q=h("openwb-base-range-input"),$=h("openwb-base-number-input"),j=h("openwb-base-submit-buttons");return l(),p(A,null,[a(k,{show:c.showChargePointModal,title:"Ladepunkt löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[0]||(e[0]=i=>u.removeChargePoint(c.modalChargePointIndex,i))},{default:o(()=>[r(' Wollen Sie den Ladepunkt "'+w(u.getChargePointName(c.modalChargePointIndex))+'" (ID: '+w(c.modalChargePointIndex)+") wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ",1)]),_:1},8,["show"]),a(k,{show:c.showChargePointTemplateModal,title:"Ladepunkt-Profil löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[1]||(e[1]=i=>u.removeChargePointTemplate(c.modalChargePointTemplateIndex,i))},{default:o(()=>[r(' Wollen Sie das Ladepunkt-Profil "'+w(u.getChargePointTemplateName(c.modalChargePointTemplateIndex))+'" (ID: '+w(c.modalChargePointTemplateIndex)+") wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ",1)]),_:1},8,["show"]),a(k,{show:c.showChargePointTemplateAutolockPlanModal,title:"Autolock Zeitplan löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[2]||(e[2]=i=>u.removeChargePointTemplateAutolockPlan(c.modalChargePointTemplateIndex,c.modalChargePointTemplateAutolockPlanIndex,i))},{default:o(()=>[r(' Wollen Sie den Autolock Zeitplan "'+w(u.getChargePointTemplateAutolockPlanName(c.modalChargePointTemplateIndex,c.modalChargePointTemplateAutolockPlanIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),d("div",Ce,[d("form",ye,[a(U,{title:"Ladepunkte",subtype:"primary",collapsible:!0,collapsed:!m.installAssistantActive},{header:o(()=>[a(_,{"fixed-width":"",icon:["fas","charging-station"]}),e[7]||(e[7]=r(" Ladepunkte "))]),default:o(()=>[(l(!0),p(A,null,x(u.installedChargePoints,(i,s)=>(l(),f(U,{key:s,title:i.name+" (ID: "+i.id+")",collapsible:!0,collapsed:!0,subtype:"primary"},{actions:o(n=>[n.collapsed?g("",!0):(l(),f(L,{key:0,class:"bg-danger clickable",onClick:v=>u.removeChargePointModal(s,v)},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),default:o(()=>[a(y,{title:"Bezeichnung",subtype:"text","model-value":i.name,"onUpdate:modelValue":n=>t.updateState(s,n,"name")},null,8,["model-value","onUpdate:modelValue"]),a(y,{title:"Modul",subtype:"text",disabled:"",readonly:"","model-value":t.$store.state.mqtt[s].type},null,8,["model-value"]),i.type!=="internal_openwb"||t.$store.state.mqtt["openWB/general/extern"]===!1?(l(),p("span",Pe,[a(I,{title:"Ladepunkt-Profil",options:u.chargePointTemplateList,"model-value":t.$store.state.mqtt[s].template,"onUpdate:modelValue":n=>t.updateState(s,n,"template")},null,8,["options","model-value","onUpdate:modelValue"])])):g("",!0),t.$store.state.mqtt["openWB/optional/ocpp/config"].active===!0?(l(),f(y,{key:1,title:"OCPP-Chargebox ID","model-value":i.ocpp_chargebox_id,"onUpdate:modelValue":n=>t.updateState(s,n,"ocpp_chargebox_id")},{help:o(()=>[...e[8]||(e[8]=[r(" Bitte geben Sie hier die Chargebox ID ein, die im OCPP-Backend für diesen Ladepunkt verwendet wird. Sollen die Daten dieses Ladepunktes nicht an ein OCPP-Backend übertragen werden, lasse dieses Feld leer. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):g("",!0),e[14]||(e[14]=d("hr",null,null,-1)),a(O,{"charge-point":i,"onUpdate:configuration":n=>u.updateConfiguration(s,n)},null,8,["charge-point","onUpdate:configuration"]),(i.type!=="internal_openwb"||t.$store.state.mqtt["openWB/general/extern"]===!1)&&i.charging_type!=="DC"?(l(),p("div",Ve,[e[13]||(e[13]=d("hr",null,null,-1)),a(B,null,{default:o(()=>[...e[9]||(e[9]=[r(" Hardware-Optionen ")])]),_:1}),a(C,{title:"automatische Phasenumschaltung vorhanden",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":i.auto_phase_switch_hw,"onUpdate:modelValue":n=>t.updateState(s,n,"auto_phase_switch_hw")},null,8,["model-value","onUpdate:modelValue"]),a(C,{title:"Control-Pilot-Unterbrechung vorhanden",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":i.control_pilot_interruption_hw,"onUpdate:modelValue":n=>t.updateState(s,n,"control_pilot_interruption_hw")},{help:o(()=>[...e[10]||(e[10]=[r(' Die Control-Pilot-Leitung ist im Ladekabel integriert und dient der Steuerung der Fahrzeugladung (An/Aus/Stromvorgaben). Bei einigen Fahrzeugen können durch die Regelung erzwungene, längere Ladestopps (z.B. beim PV-Laden) zu unerwünschten "Einschlaf"-Effekten des Fahrzeuges führen. Mit diesem Feature, welches hardwareseitig verbaut sein muss, kann ein Abstecken des Ladesteckers simuliert werden, um ein Aufwecken des Fahrzeuges zu ermöglichen. Die Funktion hängt immer auch vom Fahrzeugtyp ab. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(B,null,{default:o(()=>[...e[11]||(e[11]=[r(" Elektrischer Anschluss ")])]),_:1}),a(C,{title:"Anzahl angeschlossener Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:2,text:"2"},{buttonValue:3,text:"3"}],"model-value":i.connected_phases,"onUpdate:modelValue":n=>t.updateState(s,n,"connected_phases")},null,8,["model-value","onUpdate:modelValue"]),a(C,{title:"Phase 1 des Ladekabels",buttons:[{buttonValue:1,text:"EVU L1"},{buttonValue:2,text:"EVU L2"},{buttonValue:3,text:"EVU L3"}],"model-value":i.phase_1,"onUpdate:modelValue":n=>t.updateState(s,n,"phase_1")},{help:o(()=>[...e[12]||(e[12]=[r(" Hier ist anzugeben, an welcher Phase des Hausanschlusses (EVU-Punkt) die Phase 1 dieses Ladepunktes angeschlossen ist. Diese Information wird für das Lastmanagement benötigt, um bei einer Schieflast gezielt einzelne Ladepunkte zu drosseln."),d("br",null,null,-1),r(' Bei mehreren Ladepunkten macht es Sinn, die Phasen der LP rotierend anzuschließen, damit mehrere "nicht-dreiphasig" ladende Fahrzeuge mit optimaler Leistung laden können, bevor das Lastmanagement eingreift.'),d("br",null,null,-1),r(" Es wird vorausgesetzt, dass das Drehfeld innerhalb der Installation gleich bleibt. Wenn z.B. L1 des Ladepunktes auf EVU-L2 liegt, muss L2 des Ladepunktes auf EVU-L3 aufgelegt sein (und L3 des Ladepunktes auf EVU-L1)."),d("br",null,null,-1),r(" Eine Möglichkeit, die zur Ladepunktphase L1 zugehörige EVU-Phase zu ermitteln, ist eine einphasige Ladung zu starten und die Phasenströme am EVU-Zähler zu beobachten. Mit einem zweiphasig ladenden Fahrzeug kann danach auch der Anschluss von L2 ermittelt und so das Drehfeld kontrolliert werden."),d("br",null,null,-1),r(" Im Zweifel bitte das Drehfeld von einer Fachkraft prüfen und korrigieren lassen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])])):g("",!0)]),_:2},1032,["title"]))),128)),Object.keys(u.installedChargePoints).length>0?(l(),p("hr",Le)):g("",!0),a(I,{title:"Verfügbare Ladepunkte","not-selected":"Bitte auswählen",options:u.getChargePointList(),"model-value":c.chargePointToAdd,"add-button":!0,"onUpdate:modelValue":e[3]||(e[3]=i=>c.chargePointToAdd=i),"onInput:add":u.addChargePoint},{help:o(()=>e[15]||(e[15]=[r(" Bitte einen Ladepunkt auswählen, der der openWB-Regelung hinzugefügt werden soll."),d("br",null,null,-1),d("ul",null,[d("li",null," Interne openWB - wenn diese openWB über einen verbauten Ladepunkt mit Regelcontroller verfügt (z.B. Standard(+), Custom, Duo, Buchse, NICHT Standalone); ansonsten immer anlegen, egal ob diese openWB steuert = primary oder ferngesteuert wird = secondary "),d("li",null," Externe openWB - wenn diese openWB (primary) die Fernsteuerung von externen openWB (secondary) übernimmt "),d("li",null,"MQTT-Ladepunkt - nur zur Nutzung des openWB-Simulators zugelassen"),d("li",null,"openWB Pro - wenn diese openWB (primary) die Fernsteuerung einer openWB Pro (secondary) übernimmt"),d("li",null," openWB series2 Satellit/Satellit Duo - wenn diese openWB (primary) die Fernsteuerung einer openWB series2 Satellit/Satellit Duo (secondary) übernimmt "),d("li",null," smartWB/EVSE-Wifi - wenn diese openWB (primary) die Fernsteuerung einer smartWB/EVSE-Wifi übernimmt ")],-1)])),_:1},8,["options","model-value","onInput:add"])]),_:1},8,["collapsed"]),e[38]||(e[38]=d("hr",{class:"border-secondary"},null,-1)),a(U,{title:"Ladepunkt-Profile",collapsible:!0,collapsed:!0},{header:o(()=>[a(F,{"fixed-width":"",class:"fa-lg"},{default:o(()=>[a(_,{"fixed-width":"",icon:["far","file"]}),a(_,{"fixed-width":"",icon:["fas","charging-station"],transform:"shrink-8"})]),_:1}),e[16]||(e[16]=r(" Ladepunkt-Profile "))]),actions:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(l(),f(L,{key:0,class:"bg-success clickable",onClick:u.addChargePointTemplate},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):g("",!0)]),default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),p("div",Be,[a(T,{subtype:"info"},{default:o(()=>e[17]||(e[17]=[r(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(l(),p("div",We,[(l(!0),p(A,null,x(u.chargePointTemplates,(i,s)=>(l(),f(U,{key:s,title:i.name+" (ID: "+u.getChargePointTemplateIndex(s)+")",collapsible:!0,collapsed:!0},M({default:o(()=>[a(y,{title:"Bezeichnung",subtype:"text","model-value":i.name,disabled:s.endsWith("/0"),"onUpdate:modelValue":n=>t.updateState(s,n,"name")},M({_:2},[s.endsWith("/0")?{name:"help",fn:o(()=>[e[18]||(e[18]=r(" Das Standard-Profil kann nicht umbenannt werden. "))]),key:"0"}:void 0]),1032,["model-value","disabled","onUpdate:modelValue"]),u.dcChargingEnabled===!0?(l(),f(C,{key:0,title:"Typ des Ladeprofils",buttons:[{buttonValue:"AC",text:"AC"},{buttonValue:"DC",text:"DC"}],"model-value":i.charging_type,"onUpdate:modelValue":n=>t.updateState(s,n,"charging_type")},null,8,["model-value","onUpdate:modelValue"])):g("",!0),e[35]||(e[35]=d("hr",null,null,-1)),a(B,null,{default:o(()=>[...e[19]||(e[19]=[r(" Zugangskontrolle ")])]),_:1}),a(C,{title:"Sperre nach Abstecken",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":i.disable_after_unplug,"onUpdate:modelValue":n=>t.updateState(s,n,"disable_after_unplug")},{help:o(()=>[...e[20]||(e[20]=[r(" Sperrt den Ladepunkt nach Abstecken eines Fahrzeuges. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),t.$store.state.mqtt["openWB/optional/rfid/active"]===!0&&!m.installAssistantActive?(l(),p("div",Ae,[i.disable_after_unplug?(l(),f(N,{key:0,title:"Zugeordnete ID-Tags","no-elements-message":"Keine ID-Tags zugeordnet.","model-value":i.valid_tags,"onUpdate:modelValue":n=>t.updateState(s,n,"valid_tags")},{help:o(()=>[...e[21]||(e[21]=[r(" Die hier eingetragenen ID-Tags dienen ausschließlich zum Entsperren des Ladepunktes. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):g("",!0)])):g("",!0),e[36]||(e[36]=d("hr",null,null,-1)),a(B,null,{default:o(()=>[...e[22]||(e[22]=[r(" Angaben zum konfigurierten Ladestrom der openWB ")])]),_:1}),a(T,{subtype:"info"},{default:o(()=>[e[23]||(e[23]=r(" Hier werden die maximalen Ladeströme entsprechend der in dem zugeordneten Ladepunkt genutzten Phasen eingestellt.")),e[24]||(e[24]=d("br",null,null,-1)),e[25]||(e[25]=r(" Generell gilt, dass diese Werte in Übereinstimmung mit der Ausführung des Ladepunktes und des elektrischen Anschlusses bzw. der Absicherung zu wählen sind. ")),i.charging_type==="AC"?(l(),p("span",Se," Bei einer openWB mit 22kW Maximalleistung sind hier jeweils 32A einzustellen. Ist die openWB beispielsweise auf 11kW begrenzt (KfW-Förderung oder die Zuleitung ist mit 16A abgesichert), dann sind hier jeweils 16A einzustellen. ")):g("",!0),e[26]||(e[26]=d("br",null,null,-1)),e[27]||(e[27]=r(" Komplexere Installationen mit mehreren Ladepunkten werden im ")),e[28]||(e[28]=d("a",{href:"https://github.com/openWB/core/wiki/Lastmanagement-und-kaskadierte-Z%C3%A4hler",target:"_blank",rel:"noopener noreferrer"},"Wiki zum Lastmanagement",-1)),e[29]||(e[29]=r(" beschrieben. "))]),_:2},1024),i.charging_type==="AC"||u.dcChargingEnabled!==!0?(l(),p("div",Ue,[a(q,{title:"Maximalstrom bei einer Phase",min:6,max:32,step:1,unit:"A","model-value":i.max_current_single_phase,"onUpdate:modelValue":n=>t.updateState(s,n,"max_current_single_phase")},null,8,["model-value","onUpdate:modelValue"]),a(q,{title:"Maximalstrom mehrere Phasen",min:6,max:32,step:1,unit:"A","model-value":i.max_current_multi_phases,"onUpdate:modelValue":n=>t.updateState(s,n,"max_current_multi_phases")},null,8,["model-value","onUpdate:modelValue"])])):(l(),f($,{key:3,title:"Maximalleistung",min:75,max:300,step:75,unit:"kW",precision:5,"model-value":t.ac_current2dc_power(i.dc_max_current),"onUpdate:modelValue":n=>t.updateState(s,t.dc_power2ac_current(n),"dc_max_current")},null,8,["model-value","onUpdate:modelValue"])),e[37]||(e[37]=d("hr",null,null,-1)),m.installAssistantActive?g("",!0):(l(),p("div",xe,[e[34]||(e[34]=d("hr",null,null,-1)),a(B,null,{default:o(()=>[...e[30]||(e[30]=[r(" Automatische Sperre ")])]),_:1}),a(C,{title:"Automatische Sperre aktiv",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":i.autolock.active,"onUpdate:modelValue":n=>t.updateState(s,n,"autolock.active")},{help:o(()=>[...e[31]||(e[31]=[r(" Wird die automatische Sperre aktiviert, können Fahrzeugladungen mittels Zeitplan auf gewünschte Zeitbereiche eingeschränkt werden. Dies kann z.B. bei Zugänglichkeiten zu Ladepunkten in öffentlichen oder halb-öffentlichen Bereichen sinnvoll sein. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(C,{title:"Erst nach Ladeende sperren",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":i.autolock.wait_for_charging_end,"onUpdate:modelValue":n=>t.updateState(s,n,"autolock.wait_for_charging_end")},{help:o(()=>[...e[32]||(e[32]=[r(' Wenn ein Zeitplan die automatische Sperre aktiviert, werden alle Ladepunkte direkt gesperrt und laufende Ladevorgänge beendet. Wird hier "Ja" ausgewählt, dann werden laufende Ladevorgänge NICHT beendet und diese Ladepunkte erst nach abgeschlossener Ladung gesperrt. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(B,null,{actions:o(()=>[a(L,{class:"bg-success clickable",onClick:n=>u.addChargePointTemplateAutolockPlan(s,n)},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","plus"]})]),_:2},1032,["onClick"])]),default:o(()=>[e[33]||(e[33]=r(" Zeitpläne für die automatische Sperre "))]),_:2},1024)])),(l(!0),p(A,null,x(u.getChargePointTemplateAutolockPlans(s),(n,v)=>(l(),f(U,{key:v,title:n.name,collapsible:!0,collapsed:!0},{actions:o(b=>[b.collapsed==!0?(l(),p("span",{key:0,class:ae(["subheader pill clickable",n.active?"bg-success":"bg-danger"]),onClick:oe(W=>t.updateState(v,!n.active,"active"),["stop"])},[a(_,{"fixed-width":"",icon:["fas","clock"]}),r(" "+w(n.time[0])+" - "+w(n.time[1])+" ",1),n.frequency.selected=="once"?(l(),p("span",Te,[a(_,{"fixed-width":"",icon:["fas","calendar-day"]}),r(" "+w(t.formatDate(n.frequency.once[0])==t.formatDate(n.frequency.once[1])?t.formatDate(n.frequency.once[0]):t.formatDate(n.frequency.once[0])+" - "+t.formatDate(n.frequency.once[1])),1)])):g("",!0),n.frequency.selected=="daily"?(l(),p("span",qe,[a(_,{"fixed-width":"",icon:["fas","calendar-week"]})])):g("",!0),n.frequency.selected=="weekly"?(l(),p("span",ze,[a(_,{"fixed-width":"",icon:["fas","calendar-alt"]})])):g("",!0)],10,Ie)):g("",!0),b.collapsed==!1?(l(),f(L,{key:1,class:"bg-danger clickable",onClick:W=>u.removeChargePointTemplateAutolockPlanModal(s,v,W)},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])):g("",!0)]),default:o(()=>[a(y,{title:"Bezeichnung","model-value":n.name,"onUpdate:modelValue":b=>t.updateState(v,b,"name")},null,8,["model-value","onUpdate:modelValue"]),a(C,{title:"Zeitplan aktiv",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.active,"onUpdate:modelValue":b=>t.updateState(v,b,"active")},null,8,["model-value","onUpdate:modelValue"]),a(y,{title:"Sperren um",subtype:"time","model-value":n.time[0],"onUpdate:modelValue":b=>t.updateState(v,b,"time.0")},null,8,["model-value","onUpdate:modelValue"]),a(y,{title:"Freigeben um",subtype:"time","model-value":n.time[1],"onUpdate:modelValue":b=>t.updateState(v,b,"time.1")},null,8,["model-value","onUpdate:modelValue"]),a(C,{title:"Wiederholungen",buttons:[{buttonValue:"once",text:"Einmalig",class:"btn-outline-info"},{buttonValue:"daily",text:"Täglich",class:"btn-outline-info"},{buttonValue:"weekly",text:"Wöchentlich",class:"btn-outline-info"}],"model-value":n.frequency.selected,"onUpdate:modelValue":b=>t.updateState(v,b,"frequency.selected")},null,8,["model-value","onUpdate:modelValue"]),n.frequency.selected=="once"?(l(),f(y,{key:0,title:"Sperren ab ...",subtype:"date","model-value":n.frequency.once[0],"onUpdate:modelValue":b=>t.updateState(v,b,"frequency.once.0")},null,8,["model-value","onUpdate:modelValue"])):g("",!0),n.frequency.selected=="once"?(l(),f(y,{key:1,title:"... bis",subtype:"date",min:n.frequency.once[0],"model-value":n.frequency.once[1],"onUpdate:modelValue":b=>t.updateState(v,b,"frequency.once.1")},null,8,["min","model-value","onUpdate:modelValue"])):g("",!0),n.frequency.selected=="weekly"?(l(),p("div",De,[(l(!0),p(A,null,x(t.weekdays,(b,W)=>(l(),f(C,{key:W,title:b,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":n.frequency.weekly[W],"onUpdate:modelValue":R=>t.updateState(v,R,"frequency.weekly."+W)},null,8,["title","model-value","onUpdate:modelValue"]))),128))])):g("",!0)]),_:2},1032,["title"]))),128))]),_:2},[s.endsWith("/0")?void 0:{name:"actions",fn:o(n=>[n.collapsed?g("",!0):(l(),f(L,{key:0,class:"bg-danger clickable",onClick:v=>u.removeChargePointTemplateModal(s,v)},{default:o(()=>[a(_,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),key:"0"}]),1032,["title"]))),128))]))]),_:1}),a(j,{"form-name":"chargePointInstallationForm",onSave:e[4]||(e[4]=i=>t.$emit("save")),onReset:e[5]||(e[5]=i=>t.$emit("reset")),onDefaults:e[6]||(e[6]=i=>t.$emit("defaults"))})])])],64)}const Me=S(ke,[["render",Ee],["__scopeId","data-v-75fe5743"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/ChargePointInstallation.vue"]]),je=Object.freeze(Object.defineProperty({__proto__:null,default:Me},Symbol.toStringTag,{value:"Module"}));export{ie as C,ge as a,Me as b,je as c}; diff --git a/web/settings/assets/Chart-59cb598d.js b/web/settings/assets/Chart-59cb598d.js deleted file mode 100644 index bba1a6530e..0000000000 --- a/web/settings/assets/Chart-59cb598d.js +++ /dev/null @@ -1 +0,0 @@ -import{l as L,K as T,P as H,O,N as q,V as j,W as M,F as V}from"./vendor-fortawesome-3d19d475.js";import{C as z}from"./index-e2dbf7bf.js";import{C as P,p as E,a as B,L as N,b as K,B as F,f as J,P as $,c as X,T as Z,i as G,d as U,e as Y,g as Q}from"./vendor-chartjs-888a84c2.js";import{_ as ee,u as p,k as o,l as s,x as A,G as c,E as d,z as m,y as f,N as k,M as x,F as C,B as _}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-luxon-8ddd27a0.js";L.add(T,H,O,q,j,M);P.register(E,B,N,K,F,J,$,X,Z,G,U);const te={name:"OpenwbChartView",components:{ChartjsLine:Y,FontAwesomeIcon:V},mixins:[z],props:{initialChartRange:{type:String,required:!1,validator:function(e){return["day","month","year"].indexOf(e)!==-1},default:"day"},initialDate:{type:String,required:!1,validator:function(e){return e.match(/^(([0-9]{4})(-[0-9]{2}(-[0-9]{2})?)?)?$/g)},default:""}},emits:["sendCommand"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/log/daily/#","openWB/log/monthly/#","openWB/log/yearly/#","openWB/system/device/+/component/+/config","openWB/chargepoint/+/config","openWB/vehicle/+/name"],currentDate:"",chartRange:"day",blockChartInit:!1,chartRequestDate:{day:"",month:"",year:""},datasetTemplates:{"counter-power_average":{label:"Zähler",unit:"kW",jsonKey:null,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(255, 10, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"counter-energy_imported":{label:"Zähler",unit:"kWh",jsonKey:null,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(255, 10, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"counter-energy_exported":{label:"Zähler",unit:"kWh",jsonKey:null,borderColor:"rgba(0, 255, 105, 0.7)",backgroundColor:"rgba(0, 255, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"pv-power_exported":{label:"PV",unit:"kW",jsonKey:null,borderColor:"rgba(40, 167, 69, 0.7)",backgroundColor:"rgba(10, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y",stack:"inverter-power",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"pv-energy_exported":{label:"PV",unit:"kWh",jsonKey:null,borderColor:"rgba(40, 167, 69, 0.7)",backgroundColor:"rgba(10, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",stack:"inverter-exported",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"bat-power_average":{label:"Speicher",unit:"kW",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(200, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y",stack:"battery-power",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"bat-energy_imported":{label:"Speicher",unit:"kWh",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(200, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",stack:"battery-imported",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"bat-energy_exported":{label:"Speicher",unit:"kWh",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(200, 255, 13, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",stack:"battery-exported",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"bat-soc":{label:"Speicher SoC",unit:"%",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(200, 255, 13, 0.3)",borderDash:[10,5],hidden:!0,fill:!1,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",borderWidth:2,data:null,yAxisID:"y3",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-power_average":{label:"Ladepunkt",unit:"kW",jsonKey:null,borderColor:"rgba(0, 0, 255, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y",stack:"charge-point-power",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-energy_imported":{label:"Ladepunkt",unit:"kWh",jsonKey:null,borderColor:"rgba(0, 0, 255, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",stack:"charge-point-imported",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-energy_imported_grid":{label:"Ladepunkt (Netzanteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"charge-point-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-energy_imported_pv":{label:"Ladepunkt (PV-Anteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(40, 167, 69, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"charge-point-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"cp-energy_imported_bat":{label:"Ladepunkt (PV-Anteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"charge-point-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"ev-soc":{label:"Fahrzeug SoC",unit:"%",jsonKey:null,borderColor:"rgba(0, 0, 255, 0.7)",backgroundColor:"rgba(0, 0, 255, 0.3)",borderDash:[10,5],hidden:!0,fill:!1,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",borderWidth:2,data:null,yAxisID:"y3",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"sh-power_average":{label:"SmartHome",unit:"kW",jsonKey:null,borderColor:"rgba(232, 62, 140, 0.7)",backgroundColor:"rgba(232, 72, 150, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"sh-energy_imported":{label:"SmartHome",unit:"kWh",jsonKey:null,borderColor:"rgba(232, 62, 140, 0.7)",backgroundColor:"rgba(232, 72, 150, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"sh-energy_exported":{label:"SmartHome",unit:"kWh",jsonKey:null,borderColor:"rgba(232, 62, 140, 0.7)",backgroundColor:"rgba(232, 72, 150, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-power_imported":{label:"Hausverbrauch",unit:"kW",jsonKey:null,borderColor:"rgba(120, 122, 124, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-energy_imported":{label:"Hausverbrauch",unit:"kWh",jsonKey:null,borderColor:"rgba(120, 122, 124, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:1,data:null,yAxisID:"y2",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-energy_imported_grid":{label:"Hausverbrauch (Netzanteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"hc-energy-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-energy_imported_pv":{label:"Hausverbrauch (PV-Anteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(40, 167, 69, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"hc-energy-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}},"hc-energy_imported_bat":{label:"Hausverbrauch (PV-Anteil)",unit:"kWh",type:"bar",jsonKey:null,borderColor:"rgba(253, 126, 20, 0.7)",backgroundColor:"rgba(120, 122, 124, 0.3)",fill:!0,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!0,borderWidth:3,data:null,yAxisID:"y2",stack:"hc-energy-imported-source",parsing:{xAxisKey:"timestamp",yAxisKey:null}}},chartOptions:{plugins:{title:{display:!1},tooltip:{enabled:!0,callbacks:{label:e=>`${e.dataset.label}: ${e.formattedValue} ${e.dataset.unit}`}},legend:{display:!0},zoom:{pan:{enabled:!0,mode:"x",threshold:5},zoom:{wheel:{enabled:!0},pinch:{enabled:!0},mode:"x"}}},elements:{point:{radius:2}},responsive:!0,maintainAspectRatio:!1,interaction:{mode:"index",intersect:!1},scales:{x:{type:"time",time:{unit:"",tooltipFormat:""},display:!0,title:{display:!0,text:""},ticks:{source:"timestamp",font:{size:12},maxTicksLimit:0},grid:{}},y:{position:"left",type:"linear",display:"auto",suggestedMin:0,suggestedMax:0,title:{font:{size:12},display:!0,text:"Leistung [kW]"},grid:{},ticks:{font:{size:12},stepSize:.2,maxTicksLimit:11}},y2:{position:"left",type:"linear",display:"auto",suggestedMin:0,suggestedMax:0,title:{font:{size:12},display:!0,text:"Energie [kWh]"},grid:{},ticks:{font:{size:12},stepSize:.2,maxTicksLimit:11}},y3:{position:"right",type:"linear",display:"auto",suggestedMin:0,suggestedMax:100,title:{font:{size:12},display:!0,text:"SoC [%]"},grid:{display:!1},ticks:{font:{size:12},stepSize:10,maxTicksLimit:11}}}},chartDatasets:{datasets:[]}}},computed:{dateInput(){var e={title:"Datum",type:"date",min:"2018-01-01"};switch(this.chartRange){case"month":e={title:"Monat",type:"month",min:"2018-01"};break;case"year":e={title:"Jahr",type:"year",min:"2018"};break}return e},chartDate:{get(){var e=this.chartRequestDate.year;return this.chartRange!="year"&&(e=e+"-"+this.chartRequestDate.month),this.chartRange=="day"&&(e=e+"-"+this.chartRequestDate.day),e},set(e){let t=e.split("-");this.chartRequestDate.year=t[0],t.length>1?this.chartRequestDate.month=t[1]:this.chartRequestDate.month="",t.length>2?this.chartRequestDate.day=t[2]:this.chartRequestDate.day=""}},chartScaleX(){var e={unit:"minute",tooltipFormat:"DD T",text:"Zeit",maxTicksLimit:24};switch(this.chartRange){case"month":e={unit:"day",tooltipFormat:"DD",text:"Tag",maxTicksLimit:31};break;case"year":e={unit:"month",tooltipFormat:"LLLL yyyy",text:"Monat",maxTicksLimit:12};break}return e},commandData(){var e={date:this.chartRequestDate.year+this.chartRequestDate.month+this.chartRequestDate.day,day:this.chartRequestDate.year+this.chartRequestDate.month+this.chartRequestDate.day};switch(this.chartRange){case"month":e={date:this.chartRequestDate.year+this.chartRequestDate.month,month:this.chartRequestDate.year+this.chartRequestDate.month};break;case"year":e={date:this.chartRequestDate.year,year:this.chartRequestDate.year};break}return e},baseTopic(){var e="openWB/log/";switch(this.chartRange){case"day":e=e+"daily/";break;case"month":e=e+"monthly/";break;case"year":e=e+"yearly/";break}return e},chartDataRead(){return this.chartDataObject!=null},chartDataHasEntries(){return this.chartDataObject?this.chartDataObject.length>0:!1},chartTotals(){if(this.$store.state.mqtt[this.baseTopic+this.commandData.date]&&Object.prototype.hasOwnProperty.call(this.$store.state.mqtt[this.baseTopic+this.commandData.date],"totals")){var e=JSON.parse(JSON.stringify(this.$store.state.mqtt[this.baseTopic+this.commandData.date].totals));return delete e.energy_source,Object.keys(e.counter).forEach(t=>{Object.prototype.hasOwnProperty.call(e.counter[t],"grid")&&delete e.counter[t].grid}),Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(e[t],"all")&&(Object.keys(e[t]).length<=2&&["bat","pv"].includes(t)?delete e[t].all:e[t]={all:e[t].all,...e[t]})}),e}},chartDataObject(){if(this.$store.state.mqtt[this.baseTopic+this.commandData.date]){var e=this.$store.state.mqtt[this.baseTopic+this.commandData.date];Object.prototype.hasOwnProperty.call(e,"entries")&&(e=e.entries);var t=JSON.parse(JSON.stringify(e)).map(r=>(r.timestamp=r.timestamp*1e3,r));return t}},chartData(){if(this.chartDataObject){var e=["pv","counter","bat","cp","sh","ev","hc"];const t=this.chartDataObject[this.chartDataObject.length-1];return t&&e.forEach(r=>{Object.prototype.hasOwnProperty.call(t,r)&&(Object.prototype.hasOwnProperty.call(t[r],"all")&&(["bat","pv"].includes(r)&&Object.keys(t[r]).length<=2?delete t[r].all:t[r]={all:t[r].all,...t[r]}),Object.entries(t[r]).forEach(([n,i])=>{Object.keys(i).forEach(a=>{this.initDataset(r,n,a)})}))}),this.chartDatasets}}},watch:{chartRange(){this.init()}},mounted(){this.init()},methods:{handleChartClick(e){if(this.chartRange=="day")return;const t=this.$refs.myChart.chart;if(!t)return;const r=Q(t,e);if(!r.length)return;const{datasetIndex:n,index:i}=r[0],a=this.chartData.datasets[n].data[i].date;var y="",h="";switch(this.chartRange){case"month":y=a.substring(0,4)+"-"+a.substring(4,6)+"-"+a.substring(6),h="day";break;case"year":y=a.substring(0,4)+"-"+a.substring(4,6),h="month";break}this.blockChartInit=!0,this.chartDate=y,this.chartRange=h},getCardSubtype(e){switch(e){case"bat":return"warning";case"counter":return"danger";case"cp":return"primary";case"pv":return"success";case"sh":return"pink";default:return"secondary"}},getCardIcon(e){switch(e){case"bat":return["fas","car-battery"];case"counter":return["fas","gauge-high"];case"cp":return["fas","charging-station"];case"pv":return["fas","solar-panel"];case"sh":return["fas","house-signal"];case"hc":return["fas","house"];default:return}},hideDataset(e,t,r){return!!(["bat","pv","cp"].includes(e)&&Object.prototype.hasOwnProperty.call(this.chartTotals[e],"all")&&t!="all"||["grid","bat","pv","cp"].includes(r.split("_").pop()))},getTotalsLabel(e,t=void 0,r=void 0){var n="*test*";if(!t&&!r){switch(e){case"bat":return"Speicher";case"counter":return"Zähler";case"pv":return"Wechselrichter";case"cp":return"Ladepunkte";case"sh":return"SmartHome-Geräte";case"hc":return"Hausverbrauch";default:console.warn("unknown group key:",e)}return"*"+e+"*"}if(t&&!r){if(t=="all")return"Summe";if(Object.prototype.hasOwnProperty.call(this.$store.state.mqtt[this.baseTopic+this.commandData.date],"names"))return this.$store.state.mqtt[this.baseTopic+this.commandData.date].names[t]}if(t&&r){switch(e){case"bat":case"cp":switch(r){case"imported":case"energy_imported":return"Ladung";case"exported":case"energy_exported":return"Entladung";case"energy_imported_grid":return"Ladung (Netz-Anteil)";case"energy_imported_pv":return"Ladung (PV-Anteil)";case"energy_imported_bat":return"Ladung (Speicher-Anteil)";case"energy_imported_cp":return"Ladung (Ladepunkt-Anteil)";default:console.warn("unknown measurement key:",e,r)}break;case"counter":switch(r){case"imported":case"energy_imported":return"Bezug/Verbrauch";case"exported":case"energy_exported":return"Einspeisung/Erzeugung";default:console.warn("unknown measurement key:",e,r)}break;case"pv":switch(r){case"exported":case"energy_exported":return"Erzeugung";default:console.warn("unknown measurement key:",e,r)}break;case"sh":switch(r){case"imported":case"energy_imported":return"Verbrauch";case"exported":case"energy_exported":return"Erzeugung";default:console.warn("unknown measurement key:",e,r)}break;case"hc":switch(r){case"imported":case"energy_imported":return"Verbrauch";case"energy_imported_grid":return"Verbrauch (Netz-Anteil)";case"energy_imported_pv":return"Verbrauch (PV-Anteil)";case"energy_imported_bat":return"Verbrauch (Speicher-Anteil)";case"energy_imported_cp":return"Verbrauch (Ladepunkt-Anteil)";default:console.warn("unknown measurement key:",e,r)}break;default:console.warn("unknown group key:",e)}return"*"+e+"+"+t+"+"+r+"*"}return n},getDatasetLabel(e,t,r,n){var i=["*"+n],a=[];if(t=="all")switch(e!=="hc"&&a.push("Summe"),e){case"pv":i=["PV"];break;case"bat":switch(i=["Speicher"],r){case"soc":i.push("SoC");break}break;case"cp":i=["Ladepunkte"];break;case"hc":i=["Hausverbrauch"]}else Object.prototype.hasOwnProperty.call(this.$store.state.mqtt[this.baseTopic+this.commandData.date],"names")&&Object.prototype.hasOwnProperty.call(this.$store.state.mqtt[this.baseTopic+this.commandData.date].names,t)&&(i=[this.$store.state.mqtt[this.baseTopic+this.commandData.date].names[t]]);switch(e){case"bat":case"ev":case"cp":switch(r){case"soc":a.push("SoC");break;case"energy_imported":a.push("Ladung");break;case"energy_exported":a.push("Entladung");break;case"energy_imported_grid":a.push("Netz-Anteil");break;case"energy_imported_pv":a.push("PV-Anteil");break;case"energy_imported_bat":a.push("Speicher-Anteil");break;case"energy_imported_cp":a.push("Ladepunkt-Anteil");break}break;case"counter":switch(r){case"energy_imported":a.push("Bezug/Verbrauch");break;case"energy_exported":a.push("Einspeisung/Erzeugung");break}break;case"sh":switch(r){case"energy_imported":a.push("Verbrauch");break;case"energy_exported":a.push("Erzeugung");break}break;case"hc":switch(r){case"energy_imported_grid":a.push("Netz-Anteil");break;case"energy_imported_pv":a.push("PV-Anteil");break;case"energy_imported_bat":a.push("Speicher-Anteil");break;case"energy_imported_cp":a.push("Ladepunkt-Anteil");break}break}return`${i.join(" ")}${a.length?" ("+a.join(", ")+")":""}`},getDatasetIndex(e){let t=this.chartDatasets.datasets.findIndex(r=>r.jsonKey==e);if(t!=-1)return t},addDataset(e,t,r,n){if(!(Object.prototype.hasOwnProperty.call(this.chartTotals,e)&&!Object.prototype.hasOwnProperty.call(this.chartTotals[e],t))){var i=e+"-"+r;if(this.datasetTemplates[i]){var a=JSON.parse(JSON.stringify(this.datasetTemplates[i]));return a.parsing.yAxisKey=n,a.jsonKey=n,a.data=this.chartDataObject,a.label=this.getDatasetLabel(e,t,r,n),a.labelSuffix!=null&&(a.label=a.label+a.labelSuffix),a.hidden=this.hideDataset(e,t,r),t=="all"&&(["grid","pv","bat","cp"].includes(r.split("_").slice(-1)[0])||delete a.stack),this.chartDatasets.datasets.push(a)-1}else console.warn("no matching template found for: "+n+" with template: "+i)}},initDataset(e,t,r){var n=[];this.chartRange=="day"?n={counter:["power_average"],pv:["power_exported"],bat:["power_average","soc"],cp:["power_average"],sh:["power_average"],ev:["soc"],hc:["power_imported"]}:n={counter:["energy_imported","energy_exported"],pv:["energy_exported"],bat:["energy_imported","energy_exported"],cp:["energy_imported","energy_imported_grid","energy_imported_pv","energy_imported_bat"],sh:["energy_imported","energy_exported"],ev:[],hc:["energy_imported","energy_imported_grid","energy_imported_pv","energy_imported_bat"]};const i=e+"."+t+"."+r;if(n[e].includes(r)){var a=this.getDatasetIndex(i);a==null&&(a=this.addDataset(e,t,r,i))}else console.debug("skipping dataset:",i)},setupScaleX(){this.chartOptions.scales.x.time.unit=this.chartScaleX.unit,this.chartOptions.scales.x.time.tooltipFormat=this.chartScaleX.tooltipFormat,this.chartOptions.scales.x.title.text=this.chartScaleX.text,this.chartOptions.scales.x.ticks.maxTicksLimit=this.chartScaleX.maxTicksLimit},requestChart(){if(document.forms.chartForm.reportValidity()){this.setupScaleX(),this.chartDatasets.datasets=[];var t="";switch(this.chartRange){case"day":t="getDailyLog";break;case"month":t="getMonthlyLog";break;case"year":t="getYearlyLog";break}this.$emit("sendCommand",{command:t,data:this.commandData})}else{console.warn("form invalid");return}},clearChartData(){this.getWildcardIndexList(this.baseTopic+"+").forEach(e=>{this.$store.commit("removeTopic",`${this.baseTopic}${e}`)})},updateChart(){this.clearChartData(),this.requestChart()},init(){const e=new Date;this.currentDate=String(e.getFullYear()),this.chartRange!="year"&&(this.currentDate=this.currentDate+"-"+String(e.getMonth()+1).padStart(2,"0")),this.chartRange=="day"&&(this.currentDate=this.currentDate+"-"+String(e.getDate()).padStart(2,"0")),this.blockChartInit?this.blockChartInit=!1:this.initialDate==null||this.initialDate==""?this.chartDate=this.currentDate:this.chartDate=this.initialDate,this.updateChart()}}},ae={class:"chart"},re={name:"chartForm"},ie={key:1},ne={key:1},oe={class:"openwb-chart"},se={key:1};function le(e,t,r,n,i,a){const y=p("openwb-base-select-input"),h=p("openwb-base-text-input"),b=p("openwb-base-card"),v=p("openwb-base-alert"),R=p("chartjs-line"),w=p("font-awesome-icon"),S=p("openwb-base-heading");return o(),s("div",ae,[A("form",re,[c(b,{title:"Filter",collapsible:!0,collapsed:!1},{default:d(()=>[c(y,{modelValue:i.chartRange,"onUpdate:modelValue":t[0]||(t[0]=u=>i.chartRange=u),title:"Zeitraum",options:[{value:"day",text:"Tag"},{value:"month",text:"Monat"},{value:"year",text:"Jahr"}]},null,8,["modelValue"]),c(h,{modelValue:a.chartDate,"onUpdate:modelValue":[t[1]||(t[1]=u=>a.chartDate=u),t[2]||(t[2]=u=>a.updateChart())],title:a.dateInput.title,subtype:a.dateInput.type,min:a.dateInput.min,max:i.currentDate,"show-quick-buttons":!0},null,8,["modelValue","title","subtype","min","max"])]),_:1}),a.chartDataRead?(o(),s("div",ie,[a.chartDataHasEntries?(o(),s("div",ne,[c(b,{title:"Diagramm",collapsible:!0,collapsed:!1},{default:d(()=>[A("div",oe,[c(R,{ref:"myChart",data:a.chartData,options:i.chartOptions,onClick:a.handleChartClick},null,8,["data","options","onClick"])])]),_:1}),c(b,{title:"Summen",collapsible:!0,collapsed:!0},{default:d(()=>[(o(!0),s(k,null,x(a.chartTotals,(u,l)=>(o(),s("div",{key:l},[Object.keys(u).length>0?(o(),m(b,{key:0,collapsible:!0,collapsed:!0,subtype:a.getCardSubtype(l)},{header:d(()=>[c(w,{"fixed-width":"",icon:a.getCardIcon(l)},null,8,["icon"]),f(" "+C(a.getTotalsLabel(l)),1)]),default:d(()=>[(o(!0),s(k,null,x(u,(I,g)=>(o(),s("div",{key:g},[l!=="hc"?(o(),m(S,{key:0},{default:d(()=>[f(C(a.getTotalsLabel(l,g)),1)]),_:2},1024)):_("",!0),(o(!0),s(k,null,x(I,(W,D)=>(o(),s("div",{key:D},[c(h,{title:a.getTotalsLabel(l,g,D),readonly:"",class:"text-right",unit:"kWh","model-value":e.formatNumber(W/1e3,3)},null,8,["title","model-value"])]))),128)),g=="all"&&l!="hc"?(o(),s("hr",se)):_("",!0)]))),128))]),_:2},1032,["subtype"])):_("",!0)]))),128))]),_:1})])):(o(),m(v,{key:0,subtype:"info"},{default:d(()=>t[4]||(t[4]=[f(" Es konnten keine Daten für diesen Zeitraum gefunden werden. ")])),_:1}))])):(o(),m(v,{key:0,subtype:"info"},{default:d(()=>t[3]||(t[3]=[f(" Es wurden noch keine Daten abgerufen. ")])),_:1}))])])}const fe=ee(te,[["render",le],["__scopeId","data-v-e00a7cd5"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/Chart.vue"]]);export{fe as default}; diff --git a/web/settings/assets/CloudConfig-55418356.js b/web/settings/assets/CloudConfig-55418356.js deleted file mode 100644 index 10bb38e0e9..0000000000 --- a/web/settings/assets/CloudConfig-55418356.js +++ /dev/null @@ -1 +0,0 @@ -import{l as P,$ as z,F as S}from"./vendor-fortawesome-3d19d475.js";import{C as Z}from"./index-e2dbf7bf.js";import{_ as I,u as d,k as l,l as w,G as r,E as t,x as m,z as p,B as i,D,N as x,y as u,q as V}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";P.add(z);const M={name:"OpenwbCloudConfigView",components:{FontAwesomeIcon:S},mixins:[Z],emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/system/dataprotection_acknowledged","openWB/system/mqtt/bridge/+","openWB/system/mqtt/valid_partner_ids"],enableNewCloudButton:!0,newCloudData:{email:"",username:"",partner:!1},enableCloudConnectButton:!0,connectCloudData:{username:"",password:"",partner:!1},enableRemoveCloudButton:!0,showCloudRemoveModal:!1}},computed:{cloudBridge:{get(){let o=this.getWildcardTopics("openWB/system/mqtt/bridge/+");for(const[e,k]of Object.entries(o))k.remote.is_openwb_cloud||delete o[e];return o}},cloudBridgeKey:{get(){for(const[o,e]of Object.entries(this.cloudBridge))if(e.remote.is_openwb_cloud)return o}},cloudSettings:{get(){return{username:this.cloudBridge[this.cloudBridgeKey].remote.username,password:this.cloudBridge[this.cloudBridgeKey].remote.password,partner:this.cloudBridge[this.cloudBridgeKey].access?this.cloudBridge[this.cloudBridgeKey].access.partner:!1}}}},methods:{getMqttBridgeIndex(o){return parseInt(o.match(/(?:\/)(\d+)$/)[1])},createCloud(){document.forms.cloudConfigCreateForm.reportValidity()&&(this.$emit("save"),this.$emit("sendCommand",{command:"initCloud",data:this.newCloudData}),this.enableNewCloudButton=!1)},connectCloud(){document.forms.cloudConfigConnectForm.reportValidity()&&(this.$emit("save"),this.$emit("sendCommand",{command:"connectCloud",data:this.connectCloudData}),this.enableCloudConnectButton=!1)},removeCloudModal(o){o.stopPropagation(),this.showCloudRemoveModal=!0},removeCloud(o){this.showCloudRemoveModal=!1,o=="confirm"&&(console.info("request removal of cloud"),this.updateState("openWB/system/mqtt/valid_partner_ids",[]),this.$emit("sendCommand",{command:"removeMqttBridge",data:{bridge:this.getMqttBridgeIndex(this.cloudBridgeKey)}}),this.enableCloudConnectButton=!0)}}},h={class:"cloud-config"},K={key:1},U={key:1,name:"cloudConfigCreateForm"},N={class:"row justify-content-center"},R={key:2,name:"cloudConfigConnectForm"},A={class:"row justify-content-center"},F={key:3,name:"cloudConfigured"},j={class:"row justify-content-center"};function G(o,e,k,T,s,a){const W=d("openwb-base-modal-dialog"),c=d("router-link"),g=d("openwb-base-alert"),b=d("openwb-base-text-input"),C=d("openwb-base-button-group-input"),f=d("font-awesome-icon"),B=d("openwb-base-array-input"),y=d("openwb-base-click-button"),v=d("openwb-base-card"),_=d("openwb-base-heading"),q=d("openwb-base-submit-buttons");return l(),w(x,null,[r(W,{show:s.showCloudRemoveModal,title:"Cloud Zugang löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[0]||(e[0]=n=>a.removeCloud(n))},{default:t(()=>e[17]||(e[17]=[u(" Willst Du den vorhandenen Cloud Zugang wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ")])),_:1},8,["show"]),m("div",h,[o.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]!==!0?(l(),p(g,{key:0,subtype:"danger"},{default:t(()=>[e[19]||(e[19]=u(" Du musst der ")),r(c,{to:"/System/LegalSettings"},{default:t(()=>e[18]||(e[18]=[u(" Datenschutzerklärung ")])),_:1}),e[20]||(e[20]=u(" zustimmen, um die openWB Cloud nutzen zu können. "))]),_:1})):(l(),w("div",K,[r(g,{subtype:"success"},{default:t(()=>[e[22]||(e[22]=u(" Du hast der ")),r(c,{to:"/System/LegalSettings"},{default:t(()=>e[21]||(e[21]=[u(" Datenschutzerklärung ")])),_:1}),e[23]||(e[23]=u(" zugestimmt und kannst die openWB Cloud nutzen. "))]),_:1}),s.enableRemoveCloudButton?i("",!0):(l(),p(g,{key:0,subtype:"warning"},{default:t(()=>e[24]||(e[24]=[u(" Der Zugang wurde entfernt. Bitte starte die openWB neu, um die Änderungen anzuwenden! ")])),_:1})),a.cloudBridgeKey?i("",!0):(l(),w("form",U,[r(v,{title:"Neuen Zugang erstellen"},D({default:t(()=>[r(g,{subtype:"warning"},{default:t(()=>e[25]||(e[25]=[u(" Derzeit können keine neuen Zugänge für die openWB Cloud angelegt werden. Bitte nutze die in/an der openWB notierten Zugangsdaten im unteren Bereich dieser Seite. Wenn bei einer gekauften openWB keine Zugangsdaten vorhanden sind, schreibe bitte eine Mail unter Angabe der Bestell- und/oder Seriennummer an "),m("a",{href:"mailto:support@openwb.de",subject:"Cloud Zugangsdaten"}," support@openwb.de ",-1),u(" . ")])),_:1}),r(b,{modelValue:s.newCloudData.username,"onUpdate:modelValue":e[1]||(e[1]=n=>s.newCloudData.username=n),title:"Benutzername",required:"",subtype:"user",pattern:"[a-zA-Z]+",disabled:""},null,8,["modelValue"]),r(b,{modelValue:s.newCloudData.email,"onUpdate:modelValue":e[2]||(e[2]=n=>s.newCloudData.email=n),title:"E-Mail",required:"",subtype:"email",disabled:""},null,8,["modelValue"]),r(C,{modelValue:s.newCloudData.partner,"onUpdate:modelValue":e[3]||(e[3]=n=>s.newCloudData.partner=n),disabled:"",title:"Zugang für Partner",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}]},{help:t(()=>e[26]||(e[26]=[u(" Wenn diese openWB über einen Partner erworben wurde, kann hier ein Support-Zugang für diesen freigegeben werden. ")])),_:1},8,["modelValue"]),s.newCloudData.partner?(l(),p(B,{key:0,title:"Gültige Partner-IDs","no-elements-message":"Keine Partner-ID zugeordnet.","model-value":o.$store.state.mqtt["openWB/system/mqtt/valid_partner_ids"],"onUpdate:modelValue":e[4]||(e[4]=n=>o.updateState("openWB/system/mqtt/valid_partner_ids",n))},{"input-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),"element-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),help:t(()=>e[27]||(e[27]=[u(" Die Partner-ID erhältst Du von Deinem Installateur. Ist hier keine Partner-ID eingetragen, dann kann auch niemand - trotz aktiviertem Zugang für Partner - über das Partner-Portal auf diese openWB zugreifen! ")])),_:1},8,["model-value"])):i("",!0)]),_:2},[o.$store.state.mqtt["openWB/general/extern"]===!1&&o.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]===!0?{name:"footer",fn:t(()=>[m("div",N,[r(y,{class:"col-4 btn-outline-success",disabled:""},{default:t(()=>e[28]||(e[28]=[u(" Zugang erstellen ")])),_:1})])]),key:"0"}:void 0]),1024),s.enableNewCloudButton?i("",!0):(l(),p(g,{key:0,subtype:"info",class:"mb-2"},{default:t(()=>e[29]||(e[29]=[u(" Der neue Zugang wird eingerichtet. Dieser Vorgang kann bis zu einer Minute dauern. Bitte warten. ")])),_:1}))])),a.cloudBridgeKey?i("",!0):(l(),w("form",R,[r(v,{title:"Vorhandenen Zugang einrichten"},D({default:t(()=>[r(b,{modelValue:s.connectCloudData.username,"onUpdate:modelValue":e[5]||(e[5]=n=>s.connectCloudData.username=n),title:"Benutzername",required:"",subtype:"user"},null,8,["modelValue"]),r(b,{modelValue:s.connectCloudData.password,"onUpdate:modelValue":e[6]||(e[6]=n=>s.connectCloudData.password=n),title:"Passwort",required:"",subtype:"password"},null,8,["modelValue"]),r(C,{modelValue:s.connectCloudData.partner,"onUpdate:modelValue":e[7]||(e[7]=n=>s.connectCloudData.partner=n),title:"Zugang für Partner",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}]},{help:t(()=>e[30]||(e[30]=[u(" Wenn diese openWB über einen Partner erworben wurde, kann hier ein Support-Zugang für diesen freigegeben werden. ")])),_:1},8,["modelValue"]),s.connectCloudData.partner?(l(),p(B,{key:0,title:"Gültige Partner-IDs","no-elements-message":"Keine Partner-ID zugeordnet.","model-value":o.$store.state.mqtt["openWB/system/mqtt/valid_partner_ids"],"onUpdate:modelValue":e[8]||(e[8]=n=>o.updateState("openWB/system/mqtt/valid_partner_ids",n))},{"input-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),"element-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),help:t(()=>e[31]||(e[31]=[u(" Die Partner-ID erhältst Du von Deinem Installateur. Ist hier keine Partner-ID eingetragen, dann kann auch niemand - trotz aktiviertem Zugang für Partner - über das Partner-Portal auf diese openWB zugreifen! ")])),_:1},8,["model-value"])):i("",!0)]),_:2},[o.$store.state.mqtt["openWB/general/extern"]===!1&&o.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]===!0?{name:"footer",fn:t(()=>[m("div",A,[r(y,{class:V(["col-4",s.enableCloudConnectButton?"btn-success":"btn-outline-success"]),disabled:!s.enableCloudConnectButton,onButtonClicked:a.connectCloud},{default:t(()=>e[32]||(e[32]=[u(" Mit Cloud verbinden ")])),_:1},8,["class","disabled","onButtonClicked"])])]),key:"0"}:void 0]),1024)])),a.cloudBridgeKey?(l(),w("form",F,[!s.enableCloudConnectButton||!s.enableNewCloudButton?(l(),p(g,{key:0,subtype:"warning"},{default:t(()=>e[33]||(e[33]=[u(" Der Zugang wurde eingerichtet. Bitte starte die die openWB neu, um die Änderungen anzuwenden! ")])),_:1})):i("",!0),r(v,{title:"Vorhandener Cloud Zugang"},{footer:t(()=>[m("div",j,[r(y,{class:V(["col-4",s.enableRemoveCloudButton?"btn-danger":"btn-outline-danger"]),disabled:!s.enableRemoveCloudButton,onButtonClicked:e[13]||(e[13]=n=>a.removeCloudModal(n))},{default:t(()=>e[37]||(e[37]=[u(" Zugang löschen ")])),_:1},8,["class","disabled"])])]),default:t(()=>[r(_,null,{default:t(()=>e[34]||(e[34]=[m("span",null,[u(" Mit diesen Zugangsdaten kannst Du dich in der "),m("a",{href:"https://remote.openwb.de/",target:"_blank",rel:"noopener noreferrer"}," openWB Cloud "),u(" anmelden. ")],-1)])),_:1}),r(b,{modelValue:a.cloudSettings.username,"onUpdate:modelValue":e[9]||(e[9]=n=>a.cloudSettings.username=n),title:"Benutzername",required:"",subtype:"user",disabled:""},null,8,["modelValue"]),r(b,{modelValue:a.cloudSettings.password,"onUpdate:modelValue":e[10]||(e[10]=n=>a.cloudSettings.password=n),title:"Passwort",required:"",subtype:"password",disabled:""},null,8,["modelValue"]),e[38]||(e[38]=m("hr",null,null,-1)),r(C,{title:"Zugang für Partner",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":a.cloudSettings.partner,"onUpdate:modelValue":e[11]||(e[11]=n=>o.updateState(a.cloudBridgeKey,n,"access.partner"))},{help:t(()=>e[35]||(e[35]=[u(" Wenn diese openWB über einen Partner erworben wurde, kann hier ein Support-Zugang für diesen freigegeben werden. ")])),_:1},8,["model-value"]),a.cloudSettings.partner?(l(),p(B,{key:0,title:"Gültige Partner-IDs","no-elements-message":"Keine Partner-ID zugeordnet.","model-value":o.$store.state.mqtt["openWB/system/mqtt/valid_partner_ids"],"onUpdate:modelValue":e[12]||(e[12]=n=>o.updateState("openWB/system/mqtt/valid_partner_ids",n))},{"input-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),"element-prefix":t(()=>[r(f,{"fixed-width":"",icon:["fas","user-gear"]})]),help:t(()=>e[36]||(e[36]=[u(" Die Partner-ID erhältst Du von Deinem Installateur. Ist hier keine Partner-ID eingetragen, dann kann auch niemand - trotz aktiviertem Zugang für Partner - über das Partner-Portal auf diese openWB zugreifen! ")])),_:1},8,["model-value"])):i("",!0)]),_:1})])):i("",!0),a.cloudBridgeKey?(l(),p(q,{key:4,"form-name":"cloudConfigured",onSave:e[14]||(e[14]=n=>o.$emit("save")),onReset:e[15]||(e[15]=n=>o.$emit("reset")),onDefaults:e[16]||(e[16]=n=>o.$emit("defaults"))})):i("",!0)]))])],64)}const Y=I(M,[["render",G],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/CloudConfig.vue"]]);export{Y as default}; diff --git a/web/settings/assets/DataManagement-2ea0a0a1.js b/web/settings/assets/DataManagement-2ea0a0a1.js deleted file mode 100644 index 0aa9822b06..0000000000 --- a/web/settings/assets/DataManagement-2ea0a0a1.js +++ /dev/null @@ -1 +0,0 @@ -import{l as L,af as z,ag as V,ah as j,ai as R,aj as E,F as H}from"./vendor-fortawesome-3d19d475.js";import{_ as B,C as P}from"./index-e2dbf7bf.js";import{_ as U}from"./dynamic-import-helper-be004503.js";import{_ as S,u as m,k as r,l as g,z as w,E as l,y as i,F as y,G as o,x as n,a1 as N,a2 as q,N as W,B as _,q as D,M as F,D as I}from"./vendor-06e11d0e.js";const G={props:{backupCloud:{type:Object,required:!0}},emits:["update:configuration","sendCommand"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})},sendSystemCommand(t,e={}){this.$emit("sendCommand",{command:t,data:e})}}},J=S(G,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/BackupCloudConfigMixin.vue"]]),Z={name:"BackupCloudConfigFallback",mixins:[J]},$={class:"backup-cloud-fallback"},K={key:1};function Q(t,e,u,f,s,a){const b=m("openwb-base-alert"),c=m("openwb-base-textarea");return r(),g("div",$,[Object.keys(t.backupCloud.configuration).length==0?(r(),w(b,{key:0,subtype:"info"},{default:l(()=>[i(' Die Backup-Cloud "'+y(t.backupCloud.name)+'" bietet keine Einstellungen. ',1)]),_:1})):(r(),g("div",K,[o(b,{subtype:"warning"},{default:l(()=>[i(' Es wurde keine Konfigurationsseite für die Backup-Cloud "'+y(t.backupCloud.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),o(c,{title:"Konfiguration",subtype:"json","model-value":t.backupCloud.configuration,"onUpdate:modelValue":e[0]||(e[0]=v=>t.updateConfiguration(v,"configuration"))},{help:l(()=>e[1]||(e[1]=[i(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),o(b,{subtype:"info"},{default:l(()=>[n("pre",null,y(JSON.stringify(t.backupCloud.configuration,void 0,2)),1)]),_:1})]))])}const X=S(Z,[["render",Q],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/OpenwbBackupCloudConfigFallback.vue"]]),Y={name:"OpenwbBackupCloudProxy",props:{backupCloud:{type:Object,required:!0}},emits:["update:configuration","sendCommand"],computed:{myComponent(){return console.debug(`loading backup cloud: ${this.backupCloud.type}`),N({loader:()=>U(Object.assign({"./nextcloud/backup_cloud.vue":()=>B(()=>import("./backup_cloud-7ad59fca.js"),["assets/backup_cloud-7ad59fca.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./nfs/backup_cloud.vue":()=>B(()=>import("./backup_cloud-27f00872.js"),["assets/backup_cloud-27f00872.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./onedrive/backup_cloud.vue":()=>B(()=>import("./backup_cloud-8019e353.js"),["assets/backup_cloud-8019e353.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./samba/backup_cloud.vue":()=>B(()=>import("./backup_cloud-0f2cda4a.js"),["assets/backup_cloud-0f2cda4a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.backupCloud.type}/backup_cloud.vue`),errorComponent:X})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)},sendCommand(t){this.$emit("sendCommand",t)}}};function ee(t,e,u,f,s,a){const b=m("openwb-base-heading");return r(),g(W,null,[o(b,null,{default:l(()=>[i(' Einstellungen für Backup-Cloud Modul "'+y(u.backupCloud.name)+'" ',1)]),_:1}),(r(),w(q(a.myComponent),{"backup-cloud":u.backupCloud,"onUpdate:configuration":e[0]||(e[0]=c=>a.updateConfiguration(c)),onSendCommand:e[1]||(e[1]=c=>a.sendCommand(c))},null,40,["backup-cloud"]))],64)}const te=S(Y,[["render",ee],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/OpenwbBackupCloudProxy.vue"]]);L.add(z,V,j,R,E);const ne={name:"OpenwbDataManagementView",components:{FontAwesomeIcon:H,OpenwbBackupCloudProxy:te},mixins:[P],props:{installAssistantActive:{type:Boolean,required:!1,default:!1},showBackupCloudSection:{type:Boolean,required:!1,default:!0}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/system/configurable/backup_clouds","openWB/system/backup_cloud/config","openWB/system/backup_cloud/backup_before_update","openWB/system/device/+/component/+/config","openWB/chargepoint/+/config","openWB/vehicle/+/name","openWB/LegacySmartHome/config/get/Devices/+/device_configured","openWB/LegacySmartHome/config/get/Devices/+/device_name"],warningAcknowledged:!1,showRestoreSection:!this.installAssistantActive,selectedRestoreFile:void 0,restoreUploadDone:!1,selectedDataMigrationFile:void 0,dataMigrationUploadDone:!1,dataMigrationConfig:[{sectionName:"Ladepunkte",sectionComponents:[{key:"cp1",label:"Ladepunkt 1",validTypes:["chargePoint"]},{key:"cp2",label:"Ladepunkt 2",validTypes:["chargePoint"]},{key:"cp3",label:"Ladepunkt 3",validTypes:["chargePoint"]},{key:"cp4",label:"Ladepunkt 4",validTypes:["chargePoint"]},{key:"cp5",label:"Ladepunkt 5",validTypes:["chargePoint"]},{key:"cp6",label:"Ladepunkt 6",validTypes:["chargePoint"]},{key:"cp7",label:"Ladepunkt 7",validTypes:["chargePoint"]},{key:"cp8",label:"Ladepunkt 8",validTypes:["chargePoint"]}]},{sectionName:"Zähler",sectionComponents:[{key:"evu",label:"EVU",validTypes:["counter"]},{key:"consumer1",label:"Verbraucher 1",validTypes:["counter"]},{key:"consumer2",label:"Verbraucher 2",validTypes:["counter"]},{key:"consumer3",label:"Verbraucher 3",validTypes:["counter"]}]},{sectionName:"Wechselrichter",sectionComponents:[{key:"pvAll",label:"Wechselrichter (Summe)",validTypes:["inverter"],help:"Die 1.9er Version von openWB speichert lediglich die Summen-Leistung aller Wechselrichter."}]},{sectionName:"Batteriespeicher",sectionComponents:[{key:"bat",label:"Speicher 1",validTypes:["battery"]}]},{sectionName:"Fahrzeuge",sectionComponents:[{key:"ev1",label:"Fahrzeug von Ladepunkt 1",validTypes:["vehicle"]},{key:"ev2",label:"Fahrzeug von Ladepunkt 2",validTypes:["vehicle"]}]},{sectionName:"SmartHome 2.0",sectionComponents:[{key:"sh1",label:"Gerät 1",validTypes:["smartHome"]},{key:"sh2",label:"Gerät 2",validTypes:["smartHome"]},{key:"sh3",label:"Gerät 3",validTypes:["smartHome"]},{key:"sh4",label:"Gerät 4",validTypes:["smartHome"]},{key:"sh5",label:"Gerät 5",validTypes:["smartHome"]},{key:"sh6",label:"Gerät 6",validTypes:["smartHome"]},{key:"sh7",label:"Gerät 7",validTypes:["smartHome"]},{key:"sh8",label:"Gerät 8",validTypes:["smartHome"]},{key:"sh9",label:"Gerät 9",validTypes:["smartHome"]}]}],dataMigrationMapping:{cp1:void 0,cp2:void 0,cp3:void 0,cp4:void 0,cp5:void 0,cp6:void 0,cp7:void 0,cp8:void 0,evu:void 0,pvAll:void 0,bat:void 0,consumer1:void 0,consumer2:void 0,consumer3:void 0,sh1:void 0,sh2:void 0,sh3:void 0,sh4:void 0,sh5:void 0,sh6:void 0,sh7:void 0,sh8:void 0,sh9:void 0,ev1:void 0,ev2:void 0}}},computed:{backupCloudList(){return this.$store.state.mqtt["openWB/system/configurable/backup_clouds"]},componentConfigurations(){return this.getWildcardTopics("openWB/system/device/+/component/+/config")},chargePointOptions(){let t=this.getWildcardTopics("openWB/chargepoint/+/config");var e=[];for(const u of Object.values(t))e.push({value:u.id,text:u.name});return e},counterOptions(){var t=[];for(const e of Object.values(this.componentConfigurations))this.isComponentType(e.type,"counter")&&t.push({value:e.id,text:e.name});return t},inverterOptions(){var t=[];for(const e of Object.values(this.componentConfigurations))this.isComponentType(e.type,"inverter")&&t.push({value:e.id,text:e.name});return t},batteryOptions(){var t=[];for(const e of Object.values(this.componentConfigurations))this.isComponentType(e.type,"bat")&&t.push({value:e.id,text:e.name});return t},vehicleOptions(){let t=this.getWildcardTopics("openWB/vehicle/+/name");var e=[];for(const[u,f]of Object.entries(t)){let s=parseInt(u.match(/\/(\d\d?)\//)[1]);e.push({value:s,text:f})}return e},smartHomeOptions(){let t=this.getWildcardTopics("openWB/LegacySmartHome/config/get/Devices/+/device_configured");var e=[];for(const[u,f]of Object.entries(t))if(f==1){let s=parseInt(u.match(/\/(\d\d?)\//)[1]);e.push({value:s,text:this.$store.state.mqtt[`openWB/LegacySmartHome/config/get/Devices/${s}/device_name`]})}return e}},methods:{isComponentType(t,e){return t.split("_").includes(e)},getBackupCloudDefaultConfiguration(t){const e=this.backupCloudList.find(u=>u.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...JSON.parse(JSON.stringify(e.defaults))}:(console.warn("no default configuration found for backup cloud type!",t),{})},sendSystemCommand(t,e={}){this.$emit("sendCommand",{command:t,data:e})},getMigrationOptions(t){var e=[{value:void 0,text:"-- nicht übernehmen --"}];return t.includes("chargePoint")&&e.push(...this.chargePointOptions),t.includes("counter")&&e.push(...this.counterOptions),t.includes("inverter")&&e.push(...this.inverterOptions),t.includes("battery")&&e.push(...this.batteryOptions),t.includes("vehicle")&&e.push(...this.vehicleOptions),t.includes("smartHome")&&e.push(...this.smartHomeOptions),e},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)},updateSelectedBackupCloud(t){this.updateState("openWB/system/backup_cloud/config",t,"type"),this.updateState("openWB/system/backup_cloud/config",this.getBackupCloudDefaultConfiguration(t))},updateSelectedRestoreFile(t){this.selectedRestoreFile=t.target.files[0]},updateSelectedDataMigrationFile(t){this.selectedDataMigrationFile=t.target.files[0]},uploadFile(t,e,u){return new Promise(f=>{if(e!==void 0){this.$root.postClientMessage("Hochladen der Datei gestartet.","info");let s=new FormData;s.append("file",e),s.append("target",t),this.axios.post(location.protocol+"//"+location.host+"/openWB/web/settings/uploadFile.php",s,{headers:{"Content-Type":"multipart/form-data"}}).then(()=>{this.$root.postClientMessage(u,"success"),f(!0)}).catch(a=>{if(a.response){console.error(a.response.status,a.response.data);var b="Hochladen der Datei fehlgeschlagen!
"+a.response.status+": "+a.response.data}else a.request?(console.error(a.request),b+="Es wurde keine Antwort vom Server empfangen."):(console.error("Error",a.message),b+="Es ist ein unbekannter Fehler aufgetreten.");this.$root.postClientMessage(b,"danger"),f(!1)})}else console.error("no file selected for upload"),f(!1)})},async uploadRestoreFile(){const t="Die Sicherungsdatei wurde erfolgreich hochgeladen. Sie können die Wiederherstellung jetzt starten.";this.restoreUploadDone=await this.uploadFile("restore",this.selectedRestoreFile,t)},async uploadDataMigrationFile(){const t="Die Sicherungsdatei wurde erfolgreich hochgeladen. Sie können den Import jetzt starten.";this.dataMigrationUploadDone=await this.uploadFile("migrate",this.selectedDataMigrationFile,t)},restoreBackup(){this.sendSystemCommand("restoreBackup"),this.$store.commit("storeLocal",{name:"reloadRequired",value:!0})},dataMigration(){this.sendSystemCommand("dataMigration",this.dataMigrationMapping)},factoryReset(){this.sendSystemCommand("factoryReset",{}),this.$store.commit("storeLocal",{name:"reloadRequired",value:!0})}}},oe={class:"system"},ie={key:1},se={name:"backupForm"},ae={class:"row justify-content-center"},le={class:"col-md-4 d-flex py-1 justify-content-center"},ue={key:0,name:"restoreForm"},de={class:"input-group"},re={class:"input-group-prepend"},ce={class:"input-group-text"},pe={class:"custom-file"},me={id:"input-file-label",class:"custom-file-label",for:"input-file","data-browse":"Suchen"},be={class:"input-group-append"},ge=["disabled"],fe={class:"row justify-content-center"},he={class:"col-md-4 d-flex py-1 justify-content-center"},ke={key:1,name:"cloudBackupForm"},ye={key:0},ve={name:"dataMigrationForm"},_e={class:"input-group"},we={class:"input-group-prepend"},Ce={class:"input-group-text"},Be={class:"custom-file"},De={id:"data-migration-file-label",class:"custom-file-label",for:"data-migration-file","data-browse":"Suchen"},Se={class:"input-group-append"},Oe=["disabled"],We={class:"row justify-content-center"},Me={class:"col-md-4 d-flex py-1 justify-content-center"},Fe={key:1,name:"resetForm"},xe={class:"row justify-content-center"},Ae={class:"col-md-4 d-flex py-1 justify-content-center"};function Te(t,e,u,f,s,a){const b=m("openwb-base-button-group-input"),c=m("openwb-base-alert"),v=m("openwb-base-heading"),k=m("font-awesome-icon"),C=m("openwb-base-click-button"),M=m("openwb-base-select-input"),x=m("openwb-base-button-input"),A=m("openwb-backup-cloud-proxy"),T=m("openwb-base-submit-buttons"),O=m("openwb-base-card");return r(),g("div",oe,[u.installAssistantActive?_("",!0):(r(),w(c,{key:0,subtype:"danger"},{default:l(()=>[e[17]||(e[17]=n("h2",null,"Achtung!",-1)),e[18]||(e[18]=n("p",null," Vor allen Aktionen auf dieser Seite ist sicherzustellen, dass kein Ladevorgang aktiv ist! Zur Sicherheit bitte zusätzlich alle Fahrzeuge von der Ladestation / den Ladestationen abstecken! ",-1)),o(b,{modelValue:s.warningAcknowledged,"onUpdate:modelValue":e[0]||(e[0]=p=>s.warningAcknowledged=p),title:"Ich habe die Warnung verstanden",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}]},null,8,["modelValue"])]),_:1})),s.warningAcknowledged||u.installAssistantActive?(r(),g("div",ie,[o(O,{title:"Sicherung / Wiederherstellung",subtype:"success",collapsible:!0,collapsed:!u.installAssistantActive},{default:l(()=>{var p,h;return[n("form",se,[o(v,null,{default:l(()=>e[19]||(e[19]=[i("Sicherung")])),_:1}),o(c,{subtype:"danger"},{default:l(()=>e[20]||(e[20]=[i(' Aktuell können nur Sicherungen wiederhergestellt werden, die in den Entwicklungszweigen "master", "Beta" oder "Release" erstellt wurden! ')])),_:1}),o(c,{subtype:"info"},{default:l(()=>e[21]||(e[21]=[i(" Nachdem die Sicherung abgeschlossen ist, kann die erstellte Datei über den Link in der Benachrichtigung oder "),n("a",{href:"/openWB/data/backup/",target:"_blank"},"hier",-1),i(" heruntergeladen werden. Beim Herunterladen bitte darauf achten, dass die Datei mit der Endung .tar.gz gespeichert wird. Ggf. das automatische Entpacken des Browsers deaktivieren. ")])),_:1}),n("div",ae,[n("div",le,[o(C,{class:"btn-success clickable",onButtonClicked:e[1]||(e[1]=d=>a.sendSystemCommand("createBackup",{use_extended_filename:!0}))},{default:l(()=>[e[22]||(e[22]=i(" Sicherung erstellen ")),o(k,{"fixed-width":"",icon:["fas","archive"]})]),_:1})])])]),s.showRestoreSection?(r(),g("form",ue,[e[27]||(e[27]=n("hr",null,null,-1)),o(v,null,{default:l(()=>e[23]||(e[23]=[i("Wiederherstellung")])),_:1}),o(c,{subtype:"danger"},{default:l(()=>e[24]||(e[24]=[i(" Für die Wiederherstellung wird eine aktive Internetverbindung benötigt."),n("br",null,null,-1),i(' Aktuell können nur Sicherungen wiederhergestellt werden, die in den Entwicklungszweigen "master", "Beta" oder "Release" erstellt wurden! ')])),_:1}),n("div",de,[n("div",re,[n("div",ce,[o(k,{"fixed-width":"",icon:["fas","file-archive"]})])]),n("div",pe,[n("input",{id:"input-file",type:"file",class:"custom-file-input",accept:".tar.gz,application/gzip,application/tar+gzip",onChange:e[2]||(e[2]=d=>a.updateSelectedRestoreFile(d))},null,32),n("label",me,y(s.selectedRestoreFile?s.selectedRestoreFile.name:"Bitte eine Datei auswählen"),1)]),n("div",be,[n("button",{class:D(["btn",s.selectedRestoreFile?"btn-success clickable":"btn-outline-success"]),disabled:!s.selectedRestoreFile,type:"button",onClick:e[3]||(e[3]=d=>a.uploadRestoreFile())},[e[25]||(e[25]=i(" Hochladen ")),o(k,{"fixed-width":"",icon:["fas","upload"]})],10,ge)])]),n("div",fe,[n("div",he,[o(C,{class:D(s.restoreUploadDone?"btn-success clickable":"btn-outline-success"),disabled:!s.restoreUploadDone,onButtonClicked:e[4]||(e[4]=d=>a.restoreBackup())},{default:l(()=>[e[26]||(e[26]=i(" Wiederherstellung starten ")),o(k,{"fixed-width":"",icon:["fas","box-open"]})]),_:1},8,["class","disabled"])])])])):_("",!0),u.showBackupCloudSection?(r(),g("form",ke,[e[31]||(e[31]=n("hr",null,null,-1)),o(v,null,{default:l(()=>e[28]||(e[28]=[i(" Automatische Sicherung in einen Cloud-Dienst ")])),_:1}),o(c,{subtype:"info"},{default:l(()=>e[29]||(e[29]=[i(" Ist die openWB als primary konfiguriert, wird zwischen Mitternacht und 5:00 Uhr automatisch eine Sicherung erstellt und in den angegebenen Cloud-Dienst (nicht openWB Cloud!) hochgeladen. Ist kein Cloud-Dienst konfiguriert, wird keine automatische Sicherung erstellt. Die automatische Sicherung kann unabhängig von der openWB Cloud genutzt werden."),n("br",null,null,-1),i(" Die manuelle Cloud-Sicherung und -falls aktiviert- die Sicherung vor einem Update werden sowohl von einer primary als auch von einer secondary durchgeführt."),n("br",null,null,-1),i(" Die Anleitung zur Konfiguration des Cloud-Dienstes findest Du "),n("a",{href:"https://github.com/openWB/core/wiki/Cloud-Sicherung",target:"_blank",rel:"noopener noreferrer"}," hier ",-1),i(" . ")])),_:1}),o(M,{class:"mb-2",title:"Backup-Cloud",options:a.backupCloudList,"model-value":(p=t.$store.state.mqtt["openWB/system/backup_cloud/config"])==null?void 0:p.type,"onUpdate:modelValue":e[5]||(e[5]=d=>a.updateSelectedBackupCloud(d))},null,8,["options","model-value"]),(h=t.$store.state.mqtt["openWB/system/backup_cloud/config"])!=null&&h.type?(r(),g("div",ye,[o(b,{title:"Sicherung vor System-Update",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/system/backup_cloud/backup_before_update"],"onUpdate:modelValue":e[6]||(e[6]=d=>t.updateState("openWB/system/backup_cloud/backup_before_update",d))},{help:l(()=>e[30]||(e[30]=[i(" Ist diese Option aktiviert, dann wird vor jedem System-Update automatisch eine Sicherung erstellt und diese in die Backup-Cloud hochgeladen. ")])),_:1},8,["model-value"]),o(x,{title:"Manuelle Cloud-Sicherung","button-text":"Sicherung erstellen und hochladen",subtype:"success",onButtonClicked:e[7]||(e[7]=d=>a.sendSystemCommand("createCloudBackup",{}))}),o(A,{"backup-cloud":t.$store.state.mqtt["openWB/system/backup_cloud/config"],"onUpdate:configuration":e[8]||(e[8]=d=>a.updateConfiguration("openWB/system/backup_cloud/config",d)),onSendCommand:e[9]||(e[9]=d=>a.sendSystemCommand(d.command,d.args))},null,8,["backup-cloud"])])):_("",!0),o(T,{"form-name":"cloudBackupForm","hide-reset":!0,"hide-defaults":!0,onSave:e[10]||(e[10]=d=>t.$emit("save")),onReset:e[11]||(e[11]=d=>t.$emit("reset")),onDefaults:e[12]||(e[12]=d=>t.$emit("defaults"))})])):_("",!0)]}),_:1},8,["collapsed"]),u.installAssistantActive?_("",!0):(r(),w(O,{key:0,title:"Datenübernahme",subtype:"success",collapsible:!0,collapsed:!0},{default:l(()=>[n("form",ve,[o(c,{subtype:"info"},{default:l(()=>e[32]||(e[32]=[i(" Hier kann die Sicherung einer älteren 1.9er Version hochgeladen werden, um vorhandene historische Daten (Diagramme und Ladeprotokolle) sowie Cloud-Daten und Seriennummer in diese Installation zu importieren. Die Zuordnung zwischen den alten und neuen Komponenten muss manuell durchgeführt werden. ")])),_:1}),o(c,{subtype:"danger"},{default:l(()=>e[33]||(e[33]=[i(" Die Portierung kann bei vielen historischen Daten von mehreren Jahren durchaus bis zu 30 Minuten dauern. Die openWB in dieser Zeit bitte nicht herunterfahren! Du erhältst eine Meldung, wenn die Datenübernahme abgeschlossen ist."),n("br",null,null,-1),i(" Vor der Datenübernahme unbedingt eine Sicherung erstellen."),n("br",null,null,-1),i(" Die Datenübernahme kann nur durch Einspielen einer Sicherung rückgängig gemacht werden! ")])),_:1}),n("div",_e,[n("div",we,[n("div",Ce,[o(k,{"fixed-width":"",icon:["fas","file-archive"]})])]),n("div",Be,[n("input",{id:"data-migration-file",type:"file",class:"custom-file-input",accept:".tar.gz,application/gzip,application/tar+gzip",onChange:e[13]||(e[13]=p=>a.updateSelectedDataMigrationFile(p))},null,32),n("label",De,y(s.selectedDataMigrationFile?s.selectedDataMigrationFile.name:"Bitte eine Datei auswählen"),1)]),n("div",Se,[n("button",{class:D(["btn",s.selectedDataMigrationFile?"btn-success clickable":"btn-outline-success"]),disabled:!s.selectedDataMigrationFile,type:"button",onClick:e[14]||(e[14]=p=>a.uploadDataMigrationFile())},[e[34]||(e[34]=i(" Hochladen ")),o(k,{"fixed-width":"",icon:["fas","upload"]})],10,Oe)])]),o(v,null,{default:l(()=>e[35]||(e[35]=[i(" Zuordnung der Komponenten ")])),_:1}),(r(!0),g(W,null,F(s.dataMigrationConfig,p=>(r(),g("div",{key:p.sectionName},[o(v,null,{default:l(()=>[i(y(p.sectionName),1)]),_:2},1024),(r(!0),g(W,null,F(p.sectionComponents,h=>(r(),w(M,{key:h.key,modelValue:s.dataMigrationMapping[h.key],"onUpdate:modelValue":d=>s.dataMigrationMapping[h.key]=d,title:h.label,options:a.getMigrationOptions(h.validTypes)},I({_:2},[h.help?{name:"help",fn:l(()=>[i(y(h.help),1)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","title","options"]))),128))]))),128)),n("div",We,[n("div",Me,[o(C,{class:D(s.dataMigrationUploadDone?"btn-success clickable":"btn-outline-success"),disabled:!s.dataMigrationUploadDone,onButtonClicked:e[15]||(e[15]=p=>a.dataMigration())},{default:l(()=>[e[36]||(e[36]=i(" Datenübernahme starten ")),o(k,{"fixed-width":"",icon:["fas","box-open"]})]),_:1},8,["class","disabled"])])])])]),_:1})),u.installAssistantActive?_("",!0):(r(),g("form",Fe,[o(O,{title:"Zurücksetzen",subtype:"danger",collapsible:!0,collapsed:!0},{footer:l(()=>[n("div",xe,[n("div",Ae,[o(C,{class:"btn-danger clickable",onButtonClicked:e[16]||(e[16]=p=>a.factoryReset())},{default:l(()=>[o(k,{"fixed-width":"",icon:["fas","skull-crossbones"]}),e[38]||(e[38]=i(" Zurücksetzen ")),o(k,{"fixed-width":"",icon:["fas","skull-crossbones"]})]),_:1})])])]),default:l(()=>[o(c,{subtype:"danger"},{default:l(()=>e[37]||(e[37]=[i(" Alle Einstellungen, angelegte Geräte/Komponenten, Ladepunkte und Fahrzeuge, etc., Tages-, Monats- und Jahresauswertungen sowie das Ladeprotokoll werden unwiederbringlich gelöscht. Auch die Vorkonfiguration im Auslieferungszustand wird gelöscht. Die openWB muss danach komplett neu eingerichtet werden. Die openWB wird hierfür automatisch neu gestartet. Bitte erstelle vor dem Zurücksetzen eine Sicherung! ")])),_:1})]),_:1})]))])):_("",!0)])}const Le=S(ne,[["render",Te],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/DataManagement.vue"]]),Ee=Object.freeze(Object.defineProperty({__proto__:null,default:Le},Symbol.toStringTag,{value:"Module"}));export{J as B,Le as D,Ee as a}; diff --git a/web/settings/assets/DebugConfig-f0ad1646.js b/web/settings/assets/DebugConfig-f0ad1646.js deleted file mode 100644 index 4fea0a61d9..0000000000 --- a/web/settings/assets/DebugConfig-f0ad1646.js +++ /dev/null @@ -1,2 +0,0 @@ -import{C as k}from"./index-e2dbf7bf.js";import{l as B,a1 as D,a2 as L,F as W}from"./vendor-fortawesome-3d19d475.js";import{_,u as s,k as d,z as w,E as l,G as i,q as C,A as F,x as v,F as x,l as b,N as y,M as N,y as f}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";B.add(D,L);const $={name:"OpenwbLogCard",components:{FontAwesomeIcon:W},props:{title:{type:String,required:!0},logFile:{type:String,required:!0}},data(){return{logData:"-- noch nicht geladen --",loading:!1}},methods:{async getFilePromise(n,e=!1){return this.axios.get(location.protocol+"//"+location.host+n).then(t=>t.data).catch(t=>t.response?t.response.status==404&&e?"":`A 404 is expected if running node.js dev server! -`+t.response.status+" "+t.response.statusText+": "+t.response.request.responseURL:t.request?t.request:t.message)},async loadLog(n){this.logData="wird aktualisiert...",this.loading=!0;var e="";for(let r=4;r>=1;r--){const a=await this.getFilePromise(n+"."+r,!0);e+=a}const t=await this.getFilePromise(n);e+=t,this.logData=e,this.loading=!1}}},S={class:"log-data mb-0"};function P(n,e,t,r,a,g){const u=s("font-awesome-icon"),m=s("openwb-base-avatar"),p=s("openwb-base-card");return d(),w(p,{title:t.title,class:"log-card mt-3",collapsible:!0,collapsed:!0},{actions:l(()=>[i(m,{class:"bg-success clickable",onClick:e[0]||(e[0]=F(c=>g.loadLog(t.logFile),["stop"]))},{default:l(()=>[i(u,{"fixed-width":"",class:C(a.loading?"fa-spin-pulse":""),icon:a.loading?["fas","spinner"]:["fas","file-download"]},null,8,["class","icon"])]),_:1})]),default:l(()=>[v("pre",S,x(a.logData),1)]),_:1},8,["title"])}const I=_($,[["render",P],["__scopeId","data-v-a320c3d6"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/debug_config/LogCard.vue"]]),q={name:"OpenwbDebuggingView",components:{OpenwbLogCard:I},mixins:[k],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/system/debug_level"],logFiles:[{title:"Main-Log",fileName:"/openWB/ramdisk/main.log"},{title:"Log des internen Ladepunktes",fileName:"/openWB/ramdisk/internal_chargepoint.log"},{title:"MQTT-Log",fileName:"/openWB/ramdisk/mqtt.log"},{title:"SoC-Log",fileName:"/openWB/ramdisk/soc.log"},{title:"Protokoll des letzten Updates",fileName:"/openWB/data/log/update.log"},{title:"Protokoll des Remote-Dienstes",fileName:"/openWB/ramdisk/remote_support.log"},{title:"Protokoll des SmartHome Dienstes",fileName:"/openWB/ramdisk/smarthome.log"},{title:"Protokoll der Datenmigration",fileName:"/openWB/data/log/data_migration.log"}]}}},z={class:"debugging"},V={name:"debugConfigForm"};function T(n,e,t,r,a,g){const u=s("openwb-base-button-group-input"),m=s("openwb-base-alert"),p=s("openwb-base-card"),c=s("openwb-base-submit-buttons"),h=s("openwb-log-card");return d(),b("div",z,[v("form",V,[i(p,{title:"Protokollierung"},{default:l(()=>[i(u,{title:"Debug Level",buttons:[{buttonValue:30,text:"Warnungen und Fehler"},{buttonValue:20,text:"Info"},{buttonValue:10,text:"Details"}],"model-value":n.$store.state.mqtt["openWB/system/debug_level"],"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateState("openWB/system/debug_level",o))},{help:l(()=>e[4]||(e[4]=[f(' Wenn der Debug Level auf "Info" oder "Details" gesetzt wird, werden mehr Informationen in die Logdateien geschrieben. Im normalen Betrieb sollte immer "Warnungen und Fehler" gewählt werden, um die Schreibvorgänge auf der SD-Karte zu reduzieren. ')])),_:1},8,["model-value"]),i(m,{subtype:"warning"},{default:l(()=>e[5]||(e[5]=[f(' Achtung! In den Einstellungen "Info" und "Details" können in den Logdateien sensible Daten wie Benutzernamen und Passwörter enthalten sein. Diese sollten vor dem Veröffentlichen z.B. im Forum unkenntlich gemacht werden. Private IP-Adressen (z.B. 192.168.x.x) müssen nicht maskiert werden, da diese nicht über das Internet erreichbar sind. ')])),_:1})]),_:1}),i(c,{"form-name":"debugConfigForm",onSave:e[1]||(e[1]=o=>n.$emit("save")),onReset:e[2]||(e[2]=o=>n.$emit("reset")),onDefaults:e[3]||(e[3]=o=>n.$emit("defaults"))})]),(d(!0),b(y,null,N(a.logFiles,o=>(d(),w(h,{key:o.fileName,title:o.title,"log-file":o.fileName},null,8,["title","log-file"]))),128))])}const G=_(q,[["render",T],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/DebugConfig.vue"]]);export{G as default}; diff --git a/web/settings/assets/GeneralChargeConfig-ed38b9ef.js b/web/settings/assets/GeneralChargeConfig-ed38b9ef.js deleted file mode 100644 index ad883d2fd0..0000000000 --- a/web/settings/assets/GeneralChargeConfig-ed38b9ef.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as b,C as L}from"./index-e2dbf7bf.js";import{_ as M}from"./dynamic-import-helper-be004503.js";import{_ as h,u as s,k as a,l as u,G as n,E as o,y as i,F as B,x as l,a1 as O,z as W,a2 as q,N as F,B as y}from"./vendor-06e11d0e.js";const U={props:{electricityTariff:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},A=h(U,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/ElectricityTariffConfigMixin.vue"]]),D={name:"ElectricityTariffConfigFallback",mixins:[A]},N={class:"backup-cloud-fallback"};function I(t,e,m,k,z,g){const d=s("openwb-base-alert"),p=s("openwb-base-textarea");return a(),u("div",N,[n(d,{subtype:"warning"},{default:o(()=>[i(' Es wurde keine Konfigurationsseite für den Anbieter "'+B(t.electricityTariff.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),n(p,{title:"Konfiguration",subtype:"json","model-value":t.electricityTariff.configuration,"onUpdate:modelValue":e[0]||(e[0]=c=>t.updateConfiguration(c,"configuration"))},{help:o(()=>e[1]||(e[1]=[i(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),n(d,{subtype:"info"},{default:o(()=>[l("pre",null,B(JSON.stringify(t.electricityTariff.configuration,void 0,2)),1)]),_:1})])}const Z=h(D,[["render",I],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/OpenwbElectricityTariffConfigFallback.vue"]]),j={name:"OpenwbElectricityTariffProxy",props:{electricityTariff:{type:Object,required:!0}},emits:["update:configuration"],computed:{myComponent(){return console.debug(`loading electricity tariff cloud: ${this.electricityTariff.type}`),O({loader:()=>M(Object.assign({"./awattar/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-fa774354.js"),["assets/electricity_tariff-fa774354.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-e2dbf7bf.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./energycharts/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-91487172.js"),["assets/electricity_tariff-91487172.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-e2dbf7bf.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./rabot/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-c3464fac.js"),["assets/electricity_tariff-c3464fac.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-e2dbf7bf.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tibber/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-7f344358.js"),["assets/electricity_tariff-7f344358.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-e2dbf7bf.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./voltego/electricity_tariff.vue":()=>b(()=>import("./electricity_tariff-7f3b489b.js"),["assets/electricity_tariff-7f3b489b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-e2dbf7bf.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.electricityTariff.type}/electricity_tariff.vue`),errorComponent:Z})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function R(t,e,m,k,z,g){const d=s("openwb-base-heading");return a(),u(F,null,[n(d,null,{default:o(()=>[i(' Einstellungen für Modul "'+B(m.electricityTariff.name)+'" ',1)]),_:1}),(a(),W(q(g.myComponent),{"electricity-tariff":m.electricityTariff,"onUpdate:configuration":e[0]||(e[0]=p=>g.updateConfiguration(p))},null,40,["electricity-tariff"]))],64)}const H=h(j,[["render",R],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/OpenwbElectricityTariffProxy.vue"]]),G={name:"OpenwbGeneralChargeConfigView",components:{OpenwbElectricityTariffProxy:H},mixins:[L],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/bat/config/power_limit_mode","openWB/bat/get/power_limit_controllable","openWB/general/extern","openWB/general/chargemode_config/phase_switch_delay","openWB/general/chargemode_config/retry_failed_phase_switches","openWB/general/chargemode_config/unbalanced_load","openWB/general/chargemode_config/unbalanced_load_limit","openWB/general/prices/bat","openWB/general/prices/grid","openWB/general/prices/pv","openWB/optional/et/provider","openWB/optional/ocpp/config","openWB/system/configurable/electricity_tariffs"]}},computed:{electricityTariffList(){return this.$store.state.mqtt["openWB/system/configurable/electricity_tariffs"]}},methods:{getElectricityTariffDefaultConfiguration(t){const e=this.electricityTariffList.find(m=>m.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...e.defaults}:(console.warn("no default configuration found for electricity tariff type!",t),{})},updateSelectedElectricityTariff(t){this.updateState("openWB/optional/et/provider",t,"type"),this.updateState("openWB/optional/et/provider",this.getElectricityTariffDefaultConfiguration(t))},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)}}},x={class:"generalChargeConfig"},J={name:"generalChargeConfigForm"},K={key:0},Q={key:1},X={key:2},Y={key:0},ee={key:1},te={key:0},ne={key:2},ie={key:3},re={key:0};function oe(t,e,m,k,z,g){const d=s("openwb-base-alert"),p=s("openwb-base-button-group-input"),c=s("openwb-base-range-input"),v=s("openwb-base-heading"),_=s("openwb-base-number-input"),w=s("openwb-base-card"),S=s("openwb-base-select-input"),$=s("openwb-electricity-tariff-proxy"),V=s("openwb-base-text-input"),T=s("openwb-base-submit-buttons");return a(),u("div",x,[l("form",J,[n(w,{title:"Allgemein"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(a(),u("div",K,[n(d,{subtype:"info"},{default:o(()=>e[16]||(e[16]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(a(),u("div",Q,[n(p,{title:"Begrenzung der Schieflast",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/unbalanced_load"],"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateState("openWB/general/chargemode_config/unbalanced_load",r))},{help:o(()=>e[17]||(e[17]=[i(" Wenn diese Option aktiviert ist, werden nicht-dreiphasige Ladevorgänge so geregelt, dass am Netzanschlusspunkt (EVU-Zähler) die eingestellte Grenze für die Schieflast nicht überschritten wird. Hierfür muss der EVU-Zähler einzelne Phasenströme bereitstellen!"),l("br",null,null,-1),i(' Weiterhin müssen bei den Ladepunkten sowie Fahrzeugen sämtliche Angaben zur Anzahl angeschlossener/unterstützter Phasen und der Phasenrotation hinterlegt werden, damit der Regelung bekannt ist, welcher Ladevorgang welche Phase am Netzanschluss beeinflusst. siehe "Konfiguration - Ladepunkte -> elektrischer Anschluss - Phase 1" und "Konfiguration - Fahrzeuge -> Fahrzeug-Profile" ')])),_:1},8,["model-value"]),t.$store.state.mqtt["openWB/general/chargemode_config/unbalanced_load"]?(a(),W(c,{key:0,title:"Erlaubte Schieflast",min:10,max:32,step:1,unit:"A","model-value":t.$store.state.mqtt["openWB/general/chargemode_config/unbalanced_load_limit"],"onUpdate:modelValue":e[1]||(e[1]=r=>t.updateState("openWB/general/chargemode_config/unbalanced_load_limit",r))},{help:o(()=>e[18]||(e[18]=[i(" Hiermit wird festgelegt, welche Schieflast am Netzanschlusspunkt erlaubt ist. Bei Überschreitung werden gezielt einzelne Ladevorgänge in der Leistung begrenzt. ")])),_:1},8,["model-value"])):y("",!0),n(p,{title:"Phasenumschaltung wiederholt anstoßen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/retry_failed_phase_switches"],"onUpdate:modelValue":e[2]||(e[2]=r=>t.updateState("openWB/general/chargemode_config/retry_failed_phase_switches",r))},{help:o(()=>e[19]||(e[19]=[i(" Wenn diese Option aktiviert ist, werden bis zu drei Umschaltversuche vorgenommen, wenn die vorgegebene und genutzte Phasenzahl nicht übereinstimmen. Wird die Option deaktiviert, wird nur eine Umschaltung durchgeführt."),l("br",null,null,-1),i(" Die gezählten Fehlversuche werden mit dem Abstecken zurückgesetzt. ")])),_:1},8,["model-value"]),n(c,{title:"Verzögerung automat. Phasenumschaltung",min:0,max:14,step:1,labels:[{label:"1⇑ 15⇓ Min.",value:1},{label:"2⇑ 14⇓ Min.",value:2},{label:"3⇑ 13⇓ Min.",value:3},{label:"4⇑ 12⇓ Min.",value:4},{label:"5⇑ 11⇓ Min.",value:5},{label:"6⇑ 10⇓ Min.",value:6},{label:"7⇑ 9⇓ Min.",value:7},{label:"8⇑ 8⇓ Min.",value:8},{label:"9⇑ 7⇓ Min.",value:9},{label:"10⇑ 6⇓ Min.",value:10},{label:"11⇑ 5⇓ Min.",value:11},{label:"12⇑ 4⇓ Min.",value:12},{label:"13⇑ 3⇓ Min.",value:13},{label:"14⇑ 2⇓ Min.",value:14},{label:"15⇑ 1⇓ Min.",value:15}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/phase_switch_delay"],"onUpdate:modelValue":e[3]||(e[3]=r=>t.updateState("openWB/general/chargemode_config/phase_switch_delay",r))},{help:o(()=>e[20]||(e[20]=[i(" Um zu viele Umschaltungen zu vermeiden, wird Anhand dieses Wertes definiert, wann die Umschaltung erfolgen soll. Ist für durchgehend x Minuten die Maximalstromstärke erreicht, wird auf mehrphasige Ladung ⇑ umgestellt. Ist die Ladung nur für ein Intervall unterhalb der Maximalstromstärke, beginnt das Intervall für die Umschaltung erneut. Ist die Ladung im mehrphasigen Modus für 16 - x Minuten auf der Minimalstromstärke, wird wieder auf einphasige Ladung ⇓ gewechselt."),l("br",null,null,-1),i(" Ist ausreichend Überschuss vorhanden, wird beim Ladestart die Umschaltverzögerung nicht abgewartet, sondern direkt mit mehrphasiger Ladung begonnen. ")])),_:1},8,["model-value"]),e[24]||(e[24]=l("hr",null,null,-1)),n(v,null,{help:o(()=>e[21]||(e[21]=[i(" Zur Berechnung der Ladekosten im Lade-Protokoll werden stundenweise die Anteile der Stromquellen (Speicher, Netz, PV) berechnet und mit den hier angegebenen Preisen multipliziert."),l("br",null,null,-1),i(" Ist die Abrechnung über das Ladeprotokoll, z.B. mit dem Arbeitgeber, vereinbart, ist bei allen drei Feldern der vereinbarte Preis einzutragen. ")])),default:o(()=>[e[22]||(e[22]=i(" Berechnung der Ladekosten "))]),_:1}),t.$store.state.mqtt["openWB/optional/et/provider"]&&t.$store.state.mqtt["openWB/optional/et/provider"].type?(a(),W(d,{key:1,subtype:"info"},{default:o(()=>e[23]||(e[23]=[i(" Für den Netzbezug wird der dynamische Strompreis des Anbieters für variable Stromtarife verwendet. ")])),_:1})):(a(),u("div",X,[n(_,{title:"Preis für Netzbezug",step:.001,precision:3,unit:"ct/kWh",required:"","model-value":t.$store.state.mqtt["openWB/general/prices/grid"]*1e5,"onUpdate:modelValue":e[4]||(e[4]=r=>t.updateState("openWB/general/prices/grid",parseFloat((r/1e5).toFixed(7))))},null,8,["model-value"])])),n(_,{title:"Preis für Speicherentladung",step:.001,precision:3,unit:"ct/kWh",required:"","model-value":t.$store.state.mqtt["openWB/general/prices/bat"]*1e5,"onUpdate:modelValue":e[5]||(e[5]=r=>t.updateState("openWB/general/prices/bat",parseFloat((r/1e5).toFixed(7))))},null,8,["model-value"]),n(_,{title:"Preis für PV-Strom",step:.001,precision:3,unit:"ct/kWh",required:"","model-value":t.$store.state.mqtt["openWB/general/prices/pv"]*1e5,"onUpdate:modelValue":e[6]||(e[6]=r=>t.updateState("openWB/general/prices/pv",parseFloat((r/1e5).toFixed(7))))},null,8,["model-value"])]))]),_:1}),n(w,{title:"Optional"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(a(),u("div",Y,[n(d,{subtype:"info"},{default:o(()=>e[25]||(e[25]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(a(),u("div",ee,[n(v,null,{default:o(()=>e[26]||(e[26]=[i(" Variable Stromtarife ")])),_:1}),n(d,{subtype:"info"},{default:o(()=>e[27]||(e[27]=[i(" Bei Sofort- und Zeitladen wird nur geladen, wenn der Strompreis unter dem angegebenen maximalen Strompreis liegt. Für Zielladen wird die Ladedauer ermittelt und dann zu den günstigsten Stunden geladen."),l("br",null,null,-1),i(" Wenn keine Preise abgefragt werden können, wird bei Sofort- und Zeitladen immer geladen und bei Zielladen zunächst mit PV-Überschuss und zum Erreichen des Zieltermins mit Netzstrom. ")])),_:1}),n(S,{class:"mb-2",title:"Anbieter",options:g.electricityTariffList,"model-value":t.$store.state.mqtt["openWB/optional/et/provider"]?t.$store.state.mqtt["openWB/optional/et/provider"].type:"","onUpdate:modelValue":e[7]||(e[7]=r=>g.updateSelectedElectricityTariff(r))},null,8,["options","model-value"]),t.$store.state.mqtt["openWB/optional/et/provider"]&&t.$store.state.mqtt["openWB/optional/et/provider"].type?(a(),u("div",te,[n($,{"electricity-tariff":t.$store.state.mqtt["openWB/optional/et/provider"],"onUpdate:configuration":e[8]||(e[8]=r=>g.updateConfiguration("openWB/optional/et/provider",r))},null,8,["electricity-tariff"])])):y("",!0)])),e[31]||(e[31]=l("hr",null,null,-1)),n(v,null,{default:o(()=>e[28]||(e[28]=[i(" Speicher-Entladung ins Fahrzeug steuern ")])),_:1}),t.$store.state.mqtt["openWB/bat/get/power_limit_controllable"]===!0?(a(),u("div",ne,[n(p,{title:"Speicher-Entladung",buttons:[{buttonValue:"no_limit",text:"immer"},{buttonValue:"limit_stop",text:"gesperrt, wenn Fahrzeug lädt"},{buttonValue:"limit_to_home_consumption",text:"für Hausverbrauch"}],"model-value":t.$store.state.mqtt["openWB/bat/config/power_limit_mode"],"onUpdate:modelValue":e[9]||(e[9]=r=>t.updateState("openWB/bat/config/power_limit_mode",r))},{help:o(()=>e[29]||(e[29]=[i(" Wenn das Entladen des Speichers immer erlaubt ist, wird das Fahrzeug aus dem Speicher geladen anstatt Strom aus dem Netz zu beziehen. "),l("br",null,null,-1),i(' Im Modus "gesperrt, wenn Fahrzeug lädt", wird die Entladung nur zugelassen, wenn alle Fahrzeuge im Modus PV-Laden ohne Mindeststrom oder Zielladen mit PV-Überschuss laden.'),l("br",null,null,-1),i(' Wenn das Entladen des Speichers auf den Hausverbrauch begrenzt ist und mindestens Fahrzeuge nicht im Modus PV-Laden ohne Mindeststrom oder Zielladen lädt, wird die Entladung des Speichers in Höhe des Hausverbrauchs zugelassen. Kann die Entladung am Speicher nur komplett gesperrt werden, verhält sich diese Einstellung wie "gesperrt, wenn Fahrzeug lädt".'),l("br",null,null,-1),i(" Diese Einstellung übersteuert ggf die Einstellungen zur Speicher-Beachtung im Modus PV-Laden. ")])),_:1},8,["model-value"])])):(a(),u("div",ie,[n(d,{subtype:"info"},{default:o(()=>e[30]||(e[30]=[i(" Die Speicher-Entladung ins Fahrzeug kann nicht gesteuert werden, da die Entladeleistung nicht an den/die konfigurierten Speicher übergeben werden kann. ")])),_:1})]))]),_:1}),n(w,{title:"OCPP Anbindung"},{default:o(()=>{var r,P,E,C;return[n(p,{title:"OCPP aktivieren",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(r=t.$store.state.mqtt["openWB/optional/ocpp/config"])==null?void 0:r.active,"onUpdate:modelValue":e[10]||(e[10]=f=>t.updateState("openWB/optional/ocpp/config",f,"active"))},null,8,["model-value"]),((P=t.$store.state.mqtt["openWB/optional/ocpp/config"])==null?void 0:P.active)===!0?(a(),u("div",re,[n(d,{subtype:"info"},{default:o(()=>e[32]||(e[32]=[i(" Die Ladepunkte übermitteln den ID-Tag, Heartbeat und den Zählerstand zum Zeitpunkt des Ansteckens, Absteckens und alle 5 Minuten. Eine Steuerung per OCPP ist nicht möglich."),l("br",null,null,-1),i(" Alle Ladepunkte, die ihre Daten an das OCPP-Backend übermitteln sollen, müssen zunächst im OCPP-Backend angelegt werden. Die dort eingetragene Chargebox ID muss in der openWB in den Einstellungen des Ladepunkts eingetragen werden. ")])),_:1}),n(V,{title:"URL des OCPP-Backends",subtype:"host","model-value":(E=t.$store.state.mqtt["openWB/optional/ocpp/config"])==null?void 0:E.url,"onUpdate:modelValue":e[11]||(e[11]=f=>t.updateState("openWB/optional/ocpp/config",f,"url"))},null,8,["model-value"]),n(S,{title:"Version","not-selected":"Bitte auswählen",options:[{value:"ocpp1.6",text:"OCPP 1.6"},{value:"ocpp2.0.1",text:"OCPP 2.0.1"}],"model-value":(C=t.$store.state.mqtt["openWB/optional/ocpp/config"])==null?void 0:C.version,"onUpdate:modelValue":e[12]||(e[12]=f=>t.updateState("openWB/optional/ocpp/config",f,"version"))},null,8,["model-value"])])):y("",!0)]}),_:1}),n(T,{"form-name":"generalChargeConfigForm",onSave:e[13]||(e[13]=r=>t.$emit("save")),onReset:e[14]||(e[14]=r=>t.$emit("reset")),onDefaults:e[15]||(e[15]=r=>t.$emit("defaults"))})])])}const ae=h(G,[["render",oe],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/GeneralChargeConfig.vue"]]),de=Object.freeze(Object.defineProperty({__proto__:null,default:ae},Symbol.toStringTag,{value:"Module"}));export{A as E,de as G}; diff --git a/web/settings/assets/GeneralConfig-b1531208.js b/web/settings/assets/GeneralConfig-b1531208.js deleted file mode 100644 index 0bdc0e1b5f..0000000000 --- a/web/settings/assets/GeneralConfig-b1531208.js +++ /dev/null @@ -1 +0,0 @@ -import{l as J,X,Y as Q,F,R as Y,K as ee,z as te,a4 as ne,a5 as oe,a6 as ae}from"./vendor-fortawesome-3d19d475.js";import{_ as L,C as re}from"./index-e2dbf7bf.js";import{_ as j}from"./dynamic-import-helper-be004503.js";import{_ as h,u as b,k as l,l as d,z as v,E as o,y as a,F as c,G as n,x as s,a1 as M,a2 as I,N as G,B as _}from"./vendor-06e11d0e.js";const ie={props:{webTheme:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},le=h(ie,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/web_themes/WebThemeConfigMixin.vue"]]),se={name:"WebThemeFallback",mixins:[le]},ue={class:"web-theme-fallback"},de={key:1};function pe(t,e,p,B,y,m){const g=b("openwb-base-alert"),r=b("openwb-base-textarea");return l(),d("div",ue,[Object.keys(t.webTheme.configuration).length==0?(l(),v(g,{key:0,subtype:"info"},{default:o(()=>[a(' Das Web Theme "'+c(t.webTheme.name)+'" bietet keine Einstellungen. ',1)]),_:1})):(l(),d("div",de,[n(g,{subtype:"warning"},{default:o(()=>[a(' Es wurde keine Konfigurationsseite für das Web Theme "'+c(t.webTheme.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),n(r,{title:"Theme Konfiguration",subtype:"json","model-value":t.webTheme.configuration,"onUpdate:modelValue":e[0]||(e[0]=w=>t.updateConfiguration(w,"configuration"))},{help:o(()=>e[1]||(e[1]=[a(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),n(g,{subtype:"info"},{default:o(()=>[s("pre",null,c(JSON.stringify(t.webTheme.configuration,void 0,2)),1)]),_:1})]))])}const ge=h(se,[["render",pe],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/web_themes/OpenwbWebThemeFallback.vue"]]);J.add(X,Q);const me={name:"OpenwbWebThemeProxy",components:{FontAwesomeIcon:F},props:{webTheme:{type:Object,required:!0}},emits:["update:configuration"],computed:{myComponent(){return console.debug(`loading web theme: ${this.webTheme.name}`),M({loader:()=>j(Object.assign({}),`./${this.webTheme.type}/webTheme.vue`),errorComponent:ge})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function be(t,e,p,B,y,m){const g=b("font-awesome-icon"),r=b("openwb-base-alert"),w=b("openwb-base-heading");return l(),d(G,null,[p.webTheme.official?(l(),v(r,{key:0,subtype:"success"},{default:o(()=>[n(g,{"fixed-width":"",icon:["fas","certificate"]}),a(' Das ausgewählte Web Theme "'+c(p.webTheme.name)+'" wird von openWB gepflegt. ',1)]),_:1})):(l(),v(r,{key:1,subtype:"info"},{default:o(()=>[n(g,{"fixed-width":"",icon:["fas","people-group"]}),e[1]||(e[1]=a(" Das ausgewählte Theme wird in unserer Community gepflegt. Rückfragen oder Probleme bitte im Forum diskutieren. "))]),_:1})),n(w,null,{default:o(()=>[a(' Einstellungen für Web Theme "'+c(p.webTheme.name)+'" ',1)]),_:1}),(l(),v(I(m.myComponent),{"web-theme":p.webTheme,"onUpdate:configuration":e[0]||(e[0]=W=>m.updateConfiguration(W))},null,40,["web-theme"]))],64)}const fe=h(me,[["render",be],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/web_themes/OpenwbWebThemeProxy.vue"]]),ce={props:{rippleControlReceiver:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},_e=h(ce,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/RippleControlReceiverConfigMixin.vue"]]),ve={name:"RippleControlReceiverConfigFallback",mixins:[_e]},we={class:"ripple-control-receiver-fallback"},he={key:1};function We(t,e,p,B,y,m){const g=b("openwb-base-alert"),r=b("openwb-base-textarea");return l(),d("div",we,[Object.keys(t.rippleControlReceiver.configuration).length==0?(l(),v(g,{key:0,subtype:"info"},{default:o(()=>[a(' Das RSE-Modul "'+c(t.rippleControlReceiver.name)+'" bietet keine Einstellungen. ',1)]),_:1})):(l(),d("div",he,[n(g,{subtype:"warning"},{default:o(()=>[a(' Es wurde keine Konfigurationsseite für das RSE-Modul "'+c(t.rippleControlReceiver.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),n(r,{title:"Konfiguration",subtype:"json","model-value":t.rippleControlReceiver.configuration,"onUpdate:modelValue":e[0]||(e[0]=w=>t.updateConfiguration(w,"configuration"))},{help:o(()=>e[1]||(e[1]=[a(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),n(g,{subtype:"info"},{default:o(()=>[s("pre",null,c(JSON.stringify(t.rippleControlReceiver.configuration,void 0,2)),1)]),_:1})]))])}const Be=h(ve,[["render",We],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/OpenwbRippleControlReceiverConfigFallback.vue"]]),ye={name:"OpenwbRippleControlReceiverProxy",props:{rippleControlReceiver:{type:Object,required:!0}},emits:["update:configuration","sendCommand"],computed:{myComponent(){return console.debug(`loading backup cloud: ${this.rippleControlReceiver.type}`),M({loader:()=>j(Object.assign({"./dimm_kit/ripple_control_receiver.vue":()=>L(()=>import("./ripple_control_receiver-d3be5fec.js"),["assets/ripple_control_receiver-d3be5fec.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./gpio/ripple_control_receiver.vue":()=>L(()=>import("./ripple_control_receiver-9492b87f.js"),["assets/ripple_control_receiver-9492b87f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.rippleControlReceiver.type}/ripple_control_receiver.vue`),errorComponent:Be})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)},sendCommand(t){this.$emit("sendCommand",t)}}};function Se(t,e,p,B,y,m){const g=b("openwb-base-heading");return l(),d(G,null,[n(g,null,{default:o(()=>[a(' Einstellungen für RSE-Modul "'+c(p.rippleControlReceiver.name)+'" ',1)]),_:1}),(l(),v(I(m.myComponent),{"ripple-control-receiver":p.rippleControlReceiver,"onUpdate:configuration":e[0]||(e[0]=r=>m.updateConfiguration(r)),onSendCommand:e[1]||(e[1]=r=>m.sendCommand(r))},null,40,["ripple-control-receiver"]))],64)}const ke=h(ye,[["render",Se],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/OpenwbRippleControlReceiverProxy.vue"]]);J.add(Y,ee,te,ne,oe,ae);const Ve={name:"OpenwbGeneralConfigView",components:{OpenwbWebThemeProxy:fe,OpenwbRippleControlReceiverProxy:ke,FontAwesomeIcon:F},mixins:[re],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/charge_log_data_config","openWB/general/control_interval","openWB/general/extern","openWB/general/external_buttons_hw","openWB/general/grid_protection_configured","openWB/general/http_api","openWB/general/modbus_control","openWB/general/notifications/configuration","openWB/general/notifications/plug","openWB/general/notifications/selected","openWB/general/notifications/smart_home","openWB/general/notifications/start_charging","openWB/general/notifications/stop_charging","openWB/general/price_kwh","openWB/general/range_unit","openWB/general/ripple_control_receiver/module","openWB/general/web_theme","openWB/system/configurable/ripple_control_receivers","openWB/system/configurable/web_themes","openWB/system/ip_address"]}},computed:{webThemeList:{get(){return this.$store.state.mqtt["openWB/system/configurable/web_themes"]}},webThemeGroupList:{get(){let t=[{label:"openWB",options:[]},{label:"Community",options:[]}];return this.webThemeList.forEach(e=>{e.official===!0?t[0].options.push(e):t[1].options.push(e)}),t}},rippleControlReceiverList(){return this.$store.state.mqtt["openWB/system/configurable/ripple_control_receivers"]}},methods:{getIpAddress(){return this.$store.state.mqtt["openWB/system/ip_address"]},getWebThemeDefaults(t){const e=this.webThemeList.find(p=>p.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...JSON.parse(JSON.stringify(e.defaults))}:(console.warn("no default configuration found for web theme type!",t),{})},updateSelectedWebTheme(t){this.updateState("openWB/general/web_theme",this.getWebThemeDefaults(t))},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)},getRippleControlReceiverDefaultConfiguration(t){const e=this.rippleControlReceiverList.find(p=>p.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...e.defaults}:(console.warn("no default configuration found for electricity tariff type!",t),{})},updateSelectedRippleControlReceiverModule(t){this.updateState("openWB/general/ripple_control_receiver/module",t,"type"),this.updateState("openWB/general/ripple_control_receiver/module",this.getRippleControlReceiverDefaultConfiguration(t))}}},Ce={class:"generalConfig"},Re={name:"generalConfigForm"},$e={key:0},Te={key:1},qe={key:1},ze={class:"border border-info w-100 p-1"},Oe={class:"border border-info w-100 p-1"},De={key:0},Ee={key:1},Ne={key:0},Ae={key:2},Pe={key:0},xe={key:0},Ue={key:1},Le={key:0},Je={key:0},Fe={key:1};function je(t,e,p,B,y,m){const g=b("openwb-base-alert"),r=b("openwb-base-button-group-input"),w=b("openwb-base-copy-to-clipboard"),W=b("openwb-base-card"),S=b("openwb-base-heading"),k=b("openwb-base-select-input"),K=b("openwb-ripple-control-receiver-proxy"),H=b("openwb-web-theme-proxy"),f=b("font-awesome-icon"),Z=b("openwb-base-submit-buttons");return l(),d("div",Ce,[s("form",Re,[n(W,{title:"Steuerungsmodus"},{default:o(()=>[n(g,{subtype:"info"},{default:o(()=>e[29]||(e[29]=[s("p",null,' Wird für den Steuerungsmodus "primary" gewählt, übernimmt diese openWB die alleinige Regelung und steuert ggf. vorhandene weitere openWB (z.B. externe openWB im Steuerungsmodus secondary, openWB Pro, Satellit u.a.) fern. Sie werden in den Ladepunkt-Einstellungen der primary-openWB hinzugefügt. ',-1),s("p",null,[a(' Wird für den Steuerungsmodus "secondary" gewählt, übernimmt diese openWB keine Regelung und muss von einer anderen primary openWB ferngesteuert werden. Wichtig ist, dass in der secondary-openWB eine "interne openWB" mit der korrekten Bauart (= openWB-Hardwarevariante z.B. "Custom, Standard, Standard+, Duo, Buchse") konfiguriert ist. Bei einer Duo sind zwei "interne openWB" zu konfigurieren. Im "secondary"-Modus bleiben alle ausgeblendeten Einstellungen unbeachtet.'),s("br"),a(" Eine bebilderte Anleitung zur Konfiguration der Ladepunkte findest Du auf der "),s("a",{href:"https://openwb.de/main/?page_id=1025",target:"_blank",rel:"noopener noreferrer"}," Homepage "),a(". ")],-1)])),_:1}),n(r,{title:"Steuerungsmodus",buttons:[{buttonValue:!1,text:"primary",class:"btn-outline-danger"},{buttonValue:!0,text:"secondary",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/extern"],"onUpdate:modelValue":e[0]||(e[0]=u=>t.updateState("openWB/general/extern",u))},null,8,["model-value"]),p.installAssistantActive?_("",!0):(l(),d("div",$e,[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),v(r,{key:0,title:"Steuerung über Modbus als secondary",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/modbus_control"],"onUpdate:modelValue":e[1]||(e[1]=u=>t.updateState("openWB/general/modbus_control",u))},{help:o(()=>e[30]||(e[30]=[a(" Im secondary-Modus kann die openWB über die Modbus-Schnittstelle gesteuert werden. Die Register sind "),s("a",{href:"https://openwb.de/main/wp-content/uploads/2023/10/ModbusTCP-openWB-series2-Pro-1.pdf",target:"_blank",rel:"noopener noreferrer"}," hier ",-1),a(" dokumentiert. Bei aktivierter Modbus-Schnittstelle darf die openWB nicht von einer primary-openWB gesteuert werden. ")])),_:1},8,["model-value"])):_("",!0),t.$store.state.mqtt["openWB/general/extern"]===!0&&t.$store.state.mqtt["openWB/general/modbus_control"]!==!0?(l(),d("div",Te,[n(g,{subtype:"info",class:"mb-2"},{default:o(()=>e[31]||(e[31]=[a(' Wenn die Steuerung über Modbus auf "Aus" geändert wird, muss danach ein Neustart durchgeführt werden! ')])),_:1})])):_("",!0)])),p.installAssistantActive?_("",!0):(l(),d("div",qe,[n(r,{title:"HTTP-API",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/http_api"],"onUpdate:modelValue":e[2]||(e[2]=u=>t.updateState("openWB/general/http_api",u))},{help:o(()=>[e[38]||(e[38]=s("p",null," Mit der HTTP-API kann man den Wert eines MQTT-Topics per HTTPs (Port 8443) abfragen oder neu setzen. Topics können über GET oder POST abgefragt, neue Werte nur mit POST gesetzt werden. ",-1)),e[39]||(e[39]=s("p",null,"Beispiel 1: Abfrage des aktuellen Systemzeitstempels",-1)),s("ul",null,[s("li",null,[e[32]||(e[32]=a(" GET-Request:")),e[33]||(e[33]=s("br",null,null,-1)),n(w,{class:"text-info",tooltip:"URL kopieren"},{default:o(()=>[a(" https://"+c(m.getIpAddress())+":8443/v1/?topic=openWB/system/time ",1)]),_:1})]),s("li",null,[e[34]||(e[34]=a(" POST-Request über 'curl' mit privatem SSL-Zertifikat und Verarbeitung durch 'jq':")),e[35]||(e[35]=s("br",null,null,-1)),n(w,{class:"text-info",tooltip:"Befehl kopieren"},{default:o(()=>[a(` curl -k -s -X POST --data '{"topic":"openWB/system/time"}' https://`+c(m.getIpAddress())+":8443/v1/ | jq . ",1)]),_:1})])]),e[40]||(e[40]=s("p",null,"Die zurückgegebenen Daten sind im JSON-Format. Der Inhalt ist nach folgendem Schema aufgebaut:",-1)),s("pre",ze,c(JSON.stringify({status:"success",topic:"openWB/system/time",message:1721287000646975e-6},null,4)),1),e[41]||(e[41]=s("p",null,'Im Fehlerfall wird der Status auf "failed" gesetzt und eine Fehlermeldung zurückgegeben.',-1)),e[42]||(e[42]=s("p",null,"Beispiel 2: integriertes Display abschalten",-1)),s("ul",null,[s("li",null,[e[36]||(e[36]=a(" POST-Request über 'curl' mit privatem SSL-Zertifikat und Verarbeitung durch 'jq':")),e[37]||(e[37]=s("br",null,null,-1)),n(w,{class:"text-info",tooltip:"Befehl kopieren"},{default:o(()=>[a(` curl -k -s -X POST --data '{"topic": "openWB/set/optional/int_display/active", "message": false}' https://`+c(m.getIpAddress())+":8443/v1/ | jq . ",1)]),_:1})])]),e[43]||(e[43]=s("p",null,"Die zurückgegebenen Daten sind im JSON-Format. Der Inhalt ist nach folgendem Schema aufgebaut:",-1)),s("pre",Oe,c(JSON.stringify({status:"success",topic:"openWB/set/optional/int_display/active",message:!1},null,4)),1)]),_:1},8,["model-value"])]))]),_:1}),n(W,{title:"Hardware"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),d("div",De,[n(g,{subtype:"info"},{default:o(()=>e[44]||(e[44]=[a(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):_("",!0),p.installAssistantActive?_("",!0):(l(),d("div",Ee,[t.$store.state.mqtt["openWB/general/extern"]===!1?(l(),d("div",Ne,[n(r,{title:"Geschwindigkeit Regelintervall",buttons:[{buttonValue:10,text:"Normal",class:"btn-outline-success"},{buttonValue:20,text:"Langsam",class:"btn-outline-warning"},{buttonValue:60,text:"Sehr Langsam",class:"btn-outline-danger"}],"model-value":t.$store.state.mqtt["openWB/general/control_interval"],"onUpdate:modelValue":e[3]||(e[3]=u=>t.updateState("openWB/general/control_interval",u))},{help:o(()=>e[45]||(e[45]=[a(' Sollten Probleme oder Fehlermeldungen auftauchen, stelle bitte zunächst das Regelintervall auf "Normal". Werden Module genutzt, welche z.B. eine Online-API zur Abfrage nutzen (höhere Latenzzeiten) oder möchte man weniger Regeleingriffe, so kann man das Regelintervall auf "Langsam" (20 Sekunden) herabsetzen. Die Einstellung „Sehr Langsam“ führt zu einer Regelzeit von 60 Sekunden.'),s("br",null,null,-1),s("span",{class:"text-danger"},' Nicht nur die Regelung der PV geführten Ladung, sondern auch die Ladestromänderung, beispielsweise “Stop“ etc., werden dann nur noch in diesem Intervall ausgeführt. Die Regelung wird insgesamt träger. Solange es keinen triftigen Grund gibt, sollte "Normal" gewählt werden. ',-1)])),_:1},8,["model-value"]),n(r,{title:"Netzschutz",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/general/grid_protection_configured"],"onUpdate:modelValue":e[4]||(e[4]=u=>t.updateState("openWB/general/grid_protection_configured",u))},{help:o(()=>e[46]||(e[46]=[a(' Diese Option ist standardmäßig aktiviert und sollte so belassen werden. Bei Unterschreitung einer kritischen Frequenz des Stromnetzes wird die Ladung nach einer zufälligen Zeit zwischen 1 und 90 Sekunden pausiert. Der Lademodus wechselt auf "Stop". Sobald die Frequenz wieder in einem normalen Bereich ist wird automatisch der zuletzt gewählte Lademodus wieder aktiviert. Ebenso wird die Ladung bei Überschreiten von 51,8 Hz unterbrochen. Dies ist dann der Fall, wenn der Energieversorger Wartungsarbeiten am (Teil-)Netz durchführt und auf einen vorübergehenden Generator-Betrieb umschaltet. Die Erhöhung der Frequenz wird durchgeführt, um die PV Anlagen abzuschalten.'),s("br",null,null,-1),s("span",{class:"text-danger"}," Die Option ist nur aktiv, wenn der EVU-Zähler die Frequenz übermittelt. ",-1)])),_:1},8,["model-value"])])):_("",!0),e[47]||(e[47]=s("hr",null,null,-1))])),t.$store.state.mqtt["openWB/general/extern"]===!1?(l(),d("div",Ae,[n(S,{class:"mt-0"},{default:o(()=>e[48]||(e[48]=[a(" Steuerbare Verbrauchseinrichtung ")])),_:1}),n(g,{sub_type:"info"},{default:o(()=>e[49]||(e[49]=[a(' Aktuell unterstützt openWB die eingehende Steuerung als "Steuerbare Verbrauchseinrichtung" nur über potentialfreie Kontakte (Rundsteuerempfänger, RSE). Ebenfalls können derzeit bei Auslösung des RSE nur alle Ladevorgänge komplett beendet werden. Die Unterstützung von "Dimmung" im Sinne von §14a EnWG wird umgesetzt, sobald wir weitere Informationen von den Netzbetreibern erhalten, wie die Ansteuerung technisch umgesetzt wird. ')])),_:1}),n(k,{class:"mb-2",title:"Anbindung RSE-Kontakt",options:m.rippleControlReceiverList,"model-value":t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"]?t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"].type:"","onUpdate:modelValue":e[5]||(e[5]=u=>m.updateSelectedRippleControlReceiverModule(u))},null,8,["options","model-value"]),t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"]&&t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"].type?(l(),d("div",Pe,[n(K,{"ripple-control-receiver":t.$store.state.mqtt["openWB/general/ripple_control_receiver/module"],"onUpdate:configuration":e[6]||(e[6]=u=>m.updateConfiguration("openWB/general/ripple_control_receiver/module",u))},null,8,["ripple-control-receiver"])])):_("",!0)])):_("",!0)]),_:1}),p.installAssistantActive?_("",!0):(l(),v(W,{key:0,title:"Darstellung"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),d("div",xe,[n(g,{subtype:"info"},{default:o(()=>e[50]||(e[50]=[a(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(l(),d("div",Ue,[n(S,{class:"mt-0"},{default:o(()=>e[51]||(e[51]=[a(" Hauptseite ")])),_:1}),t.$store.state.mqtt["openWB/general/web_theme"]!==void 0?(l(),d("div",Le,[n(k,{class:"mb-2",title:"Theme",groups:m.webThemeGroupList,"model-value":t.$store.state.mqtt["openWB/general/web_theme"].type,"onUpdate:modelValue":e[7]||(e[7]=u=>m.updateSelectedWebTheme(u))},null,8,["groups","model-value"]),t.$store.state.mqtt["openWB/general/web_theme"].type?(l(),v(H,{key:0,"web-theme":t.$store.state.mqtt["openWB/general/web_theme"],"onUpdate:configuration":e[8]||(e[8]=u=>m.updateConfiguration("openWB/general/web_theme",u))},null,8,["web-theme"])):_("",!0)])):_("",!0)]))]),_:1})),p.installAssistantActive?_("",!0):(l(),v(W,{key:1,title:"Lade-Protokoll"},{default:o(()=>{var u,V,C,R,$,T,q,z,O,D,E,N,A,P,x,U;return[t.$store.state.mqtt["openWB/general/extern"]===!0?(l(),d("div",Je,[n(g,{subtype:"info"},{default:o(()=>e[52]||(e[52]=[a(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(l(),d("div",Fe,[n(r,{title:"Einheit für Entfernungen","model-value":t.$store.state.mqtt["openWB/general/range_unit"],buttons:[{buttonValue:"km",text:"Kilometer"},{buttonValue:"mi",text:"Meilen"}],"onUpdate:modelValue":e[9]||(e[9]=i=>t.updateState("openWB/general/range_unit",i))},null,8,["model-value"]),n(S,null,{default:o(()=>e[53]||(e[53]=[a(" Auswahl der Datenfelder ")])),_:1}),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(u=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:u.time_begin,"onUpdate:modelValue":e[10]||(e[10]=i=>t.updateState("openWB/general/charge_log_data_config",i,"time_begin"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","calendar"]}),e[54]||(e[54]=a(" Beginn "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(V=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:V.time_end,"onUpdate:modelValue":e[11]||(e[11]=i=>t.updateState("openWB/general/charge_log_data_config",i,"time_end"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","calendar"]}),e[55]||(e[55]=a(" Ende "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(C=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:C.time_time_charged,"onUpdate:modelValue":e[12]||(e[12]=i=>t.updateState("openWB/general/charge_log_data_config",i,"time_time_charged"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","clock"]}),e[56]||(e[56]=a(" Dauer "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(R=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:R.data_costs,"onUpdate:modelValue":e[13]||(e[13]=i=>t.updateState("openWB/general/charge_log_data_config",i,"data_costs"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","coins"]}),e[57]||(e[57]=a(" Kosten "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":($=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:$.data_power_source,"onUpdate:modelValue":e[14]||(e[14]=i=>t.updateState("openWB/general/charge_log_data_config",i,"data_power_source"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","pie-chart"]}),e[58]||(e[58]=a(" Energieaufteilung "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(T=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:T.vehicle_name,"onUpdate:modelValue":e[15]||(e[15]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_name"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[59]||(e[59]=a(" Name "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(q=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:q.vehicle_chargemode,"onUpdate:modelValue":e[16]||(e[16]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_chargemode"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[60]||(e[60]=a(" Lademodus "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(z=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:z.vehicle_prio,"onUpdate:modelValue":e[17]||(e[17]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_prio"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[61]||(e[61]=a(" Priorität "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(O=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:O.vehicle_rfid,"onUpdate:modelValue":e[18]||(e[18]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_rfid"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[62]||(e[62]=a(" ID-Tag "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(D=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:D.vehicle_soc_at_start,"onUpdate:modelValue":e[19]||(e[19]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_soc_at_start"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[63]||(e[63]=a(" SoC bei Ladebeginn "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(E=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:E.vehicle_soc_at_end,"onUpdate:modelValue":e[20]||(e[20]=i=>t.updateState("openWB/general/charge_log_data_config",i,"vehicle_soc_at_end"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","car"]}),e[64]||(e[64]=a(" SoC bei Ladende "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(N=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:N.chargepoint_name,"onUpdate:modelValue":e[21]||(e[21]=i=>t.updateState("openWB/general/charge_log_data_config",i,"chargepoint_name"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[65]||(e[65]=a(" Name "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(A=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:A.chargepoint_serial_number,"onUpdate:modelValue":e[22]||(e[22]=i=>t.updateState("openWB/general/charge_log_data_config",i,"chargepoint_serial_number"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[66]||(e[66]=a(" Seriennummer "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(P=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:P.data_imported_since_mode_switch,"onUpdate:modelValue":e[23]||(e[23]=i=>t.updateState("openWB/general/charge_log_data_config",i,"data_imported_since_mode_switch"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[67]||(e[67]=a(" Geladene Energie "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(x=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:x.chargepoint_imported_at_start,"onUpdate:modelValue":e[24]||(e[24]=i=>t.updateState("openWB/general/charge_log_data_config",i,"chargepoint_imported_at_start"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[68]||(e[68]=a(" Zählerstand bei Ladebeginn "))]),_:1},8,["model-value"]),n(r,{buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":(U=t.$store.state.mqtt["openWB/general/charge_log_data_config"])==null?void 0:U.chargepoint_imported_at_end,"onUpdate:modelValue":e[25]||(e[25]=i=>t.updateState("openWB/general/charge_log_data_config",i,"chargepoint_imported_at_end"))},{title:o(()=>[n(f,{"fixed-width":"",icon:["fas","charging-station"]}),e[69]||(e[69]=a(" Zählerstand bei Ladeende "))]),_:1},8,["model-value"])]))]}),_:1})),n(Z,{"form-name":"generalConfigForm",onSave:e[26]||(e[26]=u=>t.$emit("save")),onReset:e[27]||(e[27]=u=>t.$emit("reset")),onDefaults:e[28]||(e[28]=u=>t.$emit("defaults"))})])])}const Me=h(Ve,[["render",je],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/GeneralConfig.vue"]]),Ze=Object.freeze(Object.defineProperty({__proto__:null,default:Me},Symbol.toStringTag,{value:"Module"}));export{Me as G,_e as R,Ze as a}; diff --git a/web/settings/assets/HardwareInstallation-79ea1bc6.js b/web/settings/assets/HardwareInstallation-79ea1bc6.js deleted file mode 100644 index 8c49e70880..0000000000 --- a/web/settings/assets/HardwareInstallation-79ea1bc6.js +++ /dev/null @@ -1 +0,0 @@ -import{l as S,d as q,t as U,a7 as N,a0 as G,P as F,O as H,N as K,F as $}from"./vendor-fortawesome-3d19d475.js";import{_ as e,C as J}from"./index-e2dbf7bf.js";import{_ as x}from"./dynamic-import-helper-be004503.js";import{_ as I,u as p,k as s,l as g,z as E,E as r,y as d,F as V,G as u,x as c,a1 as z,a2 as Z,B as R,N as L,M as k,q as Q}from"./vendor-06e11d0e.js";const X={props:{device:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,o=void 0){this.$emit("update:configuration",{value:t,object:o})}}},B=I(X,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/DeviceConfigMixin.vue"]]),Y={name:"DeviceFallback",mixins:[B]},ee={class:"device-fallback"},oe={key:1};function te(t,o,i,m,v,n){const l=p("openwb-base-alert"),T=p("openwb-base-textarea");return s(),g("div",ee,[Object.keys(t.device.configuration).length==0?(s(),E(l,{key:0,subtype:"info"},{default:r(()=>[d(' Der Gerät-Typ "'+V(t.device.type)+'" bietet keine Einstellungen. ',1)]),_:1})):(s(),g("div",oe,[u(l,{subtype:"warning"},{default:r(()=>[d(' Es wurde keine Konfigurationsseite für den Geräte-Typ "'+V(t.device.type)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),u(T,{title:"Konfiguration",subtype:"json","model-value":t.device.configuration,"onUpdate:modelValue":o[0]||(o[0]=O=>t.updateConfiguration(O,"configuration"))},{help:r(()=>o[1]||(o[1]=[d(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),u(l,{subtype:"info"},{default:r(()=>[c("pre",null,V(JSON.stringify(t.device.configuration,void 0,2)),1)]),_:1})]))])}const _e=I(Y,[["render",te],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/OpenwbDeviceConfigFallback.vue"]]),ie={mixins:[B],props:{component:{type:Object,required:!0}}},re=I(ie,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/ComponentConfigMixin.vue"]]),ne={name:"ComponentFallback",mixins:[re]},ue={class:"component-fallback"},de={key:1};function se(t,o,i,m,v,n){const l=p("openwb-base-alert"),T=p("openwb-base-textarea");return s(),g("div",ue,[Object.keys(t.component.configuration).length==0?(s(),E(l,{key:0,subtype:"info"},{default:r(()=>[d(' Der Komponenten-Typ "'+V(t.component.type)+'" bietet keine Einstellungen. ',1)]),_:1})):(s(),g("div",de,[u(l,{subtype:"warning"},{default:r(()=>[d(' Es wurde keine Konfigurationsseite für den Komponenten-Typ "'+V(t.component.type)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),u(T,{title:"Konfiguration",subtype:"json","model-value":t.component.configuration,"onUpdate:modelValue":o[0]||(o[0]=O=>t.updateConfiguration(O,"configuration"))},{help:r(()=>o[1]||(o[1]=[d(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),u(l,{subtype:"info"},{default:r(()=>[c("pre",null,V(JSON.stringify(t.component.configuration,void 0,2)),1)]),_:1})]))])}const ve=I(ne,[["render",se],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/OpenwbComponentConfigFallback.vue"]]),ae={name:"OpenwbConfigProxy",props:{device:{type:Object,required:!0},component:{type:Object,required:!1,default:void 0}},emits:["update:configuration"],computed:{myComponent(){var t;return console.debug(`loading component: ${this.device.type} / ${(t=this.component)==null?void 0:t.type}`),this.component!==void 0?z({loader:()=>x(Object.assign({"./alpha_ess/alpha_ess/device.vue":()=>e(()=>import("./device-43ef21f8.js"),["assets/device-43ef21f8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./azzurro_zcs/azzurro_zcs/device.vue":()=>e(()=>import("./device-608338dd.js"),["assets/device-608338dd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./batterx/batterx/device.vue":()=>e(()=>import("./device-9088801d.js"),["assets/device-9088801d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./benning/benning/device.vue":()=>e(()=>import("./device-9447d94e.js"),["assets/device-9447d94e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./byd/byd/device.vue":()=>e(()=>import("./device-7a1e589b.js"),["assets/device-7a1e589b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./carlo_gavazzi/carlo_gavazzi/counter.vue":()=>e(()=>import("./counter-1e0a8642.js"),["assets/counter-1e0a8642.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./carlo_gavazzi/carlo_gavazzi/device.vue":()=>e(()=>import("./device-02e133ba.js"),["assets/device-02e133ba.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/bat.vue":()=>e(()=>import("./bat-01b464b5.js"),["assets/bat-01b464b5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/counter.vue":()=>e(()=>import("./counter-d291954a.js"),["assets/counter-d291954a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/device.vue":()=>e(()=>import("./device-c200bc3a.js"),["assets/device-c200bc3a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/inverter.vue":()=>e(()=>import("./inverter-64c827d4.js"),["assets/inverter-64c827d4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./discovergy/discovergy/counter.vue":()=>e(()=>import("./counter-60a6165d.js"),["assets/counter-60a6165d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./discovergy/discovergy/device.vue":()=>e(()=>import("./device-a6c25668.js"),["assets/device-a6c25668.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./discovergy/discovergy/inverter.vue":()=>e(()=>import("./inverter-8fc88738.js"),["assets/inverter-8fc88738.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./e3dc/e3dc/device.vue":()=>e(()=>import("./device-17c54bdf.js"),["assets/device-17c54bdf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./enphase/enphase/counter.vue":()=>e(()=>import("./counter-84be4565.js"),["assets/counter-84be4565.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./enphase/enphase/device.vue":()=>e(()=>import("./device-81b5a1dc.js"),["assets/device-81b5a1dc.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./enphase/enphase/inverter.vue":()=>e(()=>import("./inverter-efb146a6.js"),["assets/inverter-efb146a6.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fems/fems/bat.vue":()=>e(()=>import("./bat-4e057349.js"),["assets/bat-4e057349.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fems/fems/device.vue":()=>e(()=>import("./device-d083e666.js"),["assets/device-d083e666.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/bat.vue":()=>e(()=>import("./bat-4d59f497.js"),["assets/bat-4d59f497.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/counter.vue":()=>e(()=>import("./counter-2ca429aa.js"),["assets/counter-2ca429aa.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/device.vue":()=>e(()=>import("./device-169018ea.js"),["assets/device-169018ea.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/inverter.vue":()=>e(()=>import("./inverter-e4fbde1b.js"),["assets/inverter-e4fbde1b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/bat.vue":()=>e(()=>import("./bat-54247809.js"),["assets/bat-54247809.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/counter_sm.vue":()=>e(()=>import("./counter_sm-9fb2ccb8.js"),["assets/counter_sm-9fb2ccb8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/device.vue":()=>e(()=>import("./device-bdb06f88.js"),["assets/device-bdb06f88.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/inverter_secondary.vue":()=>e(()=>import("./inverter_secondary-68726adb.js"),["assets/inverter_secondary-68726adb.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/bat.vue":()=>e(()=>import("./bat-7b31b22e.js"),["assets/bat-7b31b22e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/counter.vue":()=>e(()=>import("./counter-08617a3b.js"),["assets/counter-08617a3b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/device.vue":()=>e(()=>import("./device-bd9e0b65.js"),["assets/device-bd9e0b65.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/inverter.vue":()=>e(()=>import("./inverter-4f0fa47c.js"),["assets/inverter-4f0fa47c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/bat.vue":()=>e(()=>import("./bat-bc9a716a.js"),["assets/bat-bc9a716a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/counter.vue":()=>e(()=>import("./counter-e5a2028c.js"),["assets/counter-e5a2028c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/device.vue":()=>e(()=>import("./device-44720467.js"),["assets/device-44720467.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/inverter.vue":()=>e(()=>import("./inverter-b50b5606.js"),["assets/inverter-b50b5606.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/bat.vue":()=>e(()=>import("./bat-cb002c2d.js"),["assets/bat-cb002c2d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/counter.vue":()=>e(()=>import("./counter-0a146406.js"),["assets/counter-0a146406.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/device.vue":()=>e(()=>import("./device-1b0d178b.js"),["assets/device-1b0d178b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/inverter.vue":()=>e(()=>import("./inverter-0a929761.js"),["assets/inverter-0a929761.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/virtual/counter.vue":()=>e(()=>import("./counter-7be0c89b.js"),["assets/counter-7be0c89b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./good_we/good_we/device.vue":()=>e(()=>import("./device-0fe1ea59.js"),["assets/device-0fe1ea59.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./growatt/growatt/device.vue":()=>e(()=>import("./device-e51669c4.js"),["assets/device-e51669c4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei/device.vue":()=>e(()=>import("./device-6178cdc7.js"),["assets/device-6178cdc7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/bat.vue":()=>e(()=>import("./bat-12a8b04a.js"),["assets/bat-12a8b04a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/counter.vue":()=>e(()=>import("./counter-f2249b53.js"),["assets/counter-f2249b53.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/device.vue":()=>e(()=>import("./device-d2eeb63d.js"),["assets/device-d2eeb63d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/inverter.vue":()=>e(()=>import("./inverter-f8401435.js"),["assets/inverter-f8401435.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./janitza/janitza/counter.vue":()=>e(()=>import("./counter-d7a9c7cb.js"),["assets/counter-d7a9c7cb.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./janitza/janitza/device.vue":()=>e(()=>import("./device-84a227ed.js"),["assets/device-84a227ed.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko/counter.vue":()=>e(()=>import("./counter-d28a479e.js"),["assets/counter-d28a479e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko/device.vue":()=>e(()=>import("./device-084b7b34.js"),["assets/device-084b7b34.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko/inverter.vue":()=>e(()=>import("./inverter-3e46cbb1.js"),["assets/inverter-3e46cbb1.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko_old/device.vue":()=>e(()=>import("./device-bf5c69b8.js"),["assets/device-bf5c69b8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_plenticore/counter.vue":()=>e(()=>import("./counter-faeac71e.js"),["assets/counter-faeac71e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_plenticore/device.vue":()=>e(()=>import("./device-e7688f93.js"),["assets/device-e7688f93.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_sem/counter.vue":()=>e(()=>import("./counter-03e6c31d.js"),["assets/counter-03e6c31d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_sem/device.vue":()=>e(()=>import("./device-941a8f87.js"),["assets/device-941a8f87.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_steca/device.vue":()=>e(()=>import("./device-1195cbe4.js"),["assets/device-1195cbe4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_steca/inverter.vue":()=>e(()=>import("./inverter-5fe84449.js"),["assets/inverter-5fe84449.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./lg/lg/device.vue":()=>e(()=>import("./device-838299c5.js"),["assets/device-838299c5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/bat.vue":()=>e(()=>import("./bat-e19ed371.js"),["assets/bat-e19ed371.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/counter.vue":()=>e(()=>import("./counter-b5c5d729.js"),["assets/counter-b5c5d729.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/device.vue":()=>e(()=>import("./device-333add34.js"),["assets/device-333add34.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/inverter.vue":()=>e(()=>import("./inverter-f5c3d836.js"),["assets/inverter-f5c3d836.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./opendtu/opendtu/device.vue":()=>e(()=>import("./device-eee1b1e7.js"),["assets/device-eee1b1e7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_bat_kit/bat.vue":()=>e(()=>import("./bat-338f9f8c.js"),["assets/bat-338f9f8c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_evu_kit/bat.vue":()=>e(()=>import("./bat-0796e8c5.js"),["assets/bat-0796e8c5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_evu_kit/counter.vue":()=>e(()=>import("./counter-d260631b.js"),["assets/counter-d260631b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_evu_kit/inverter.vue":()=>e(()=>import("./inverter-cc1c8210.js"),["assets/inverter-cc1c8210.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/bat.vue":()=>e(()=>import("./bat-afe949d7.js"),["assets/bat-afe949d7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/consumption_counter.vue":()=>e(()=>import("./consumption_counter-222cd10a.js"),["assets/consumption_counter-222cd10a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/counter.vue":()=>e(()=>import("./counter-9927602b.js"),["assets/counter-9927602b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/device.vue":()=>e(()=>import("./device-bc869b08.js"),["assets/device-bc869b08.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/inverter.vue":()=>e(()=>import("./inverter-4682710d.js"),["assets/inverter-4682710d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_pv_kit/inverter.vue":()=>e(()=>import("./inverter-0862515d.js"),["assets/inverter-0862515d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerdog/powerdog/counter.vue":()=>e(()=>import("./counter-99f6452c.js"),["assets/counter-99f6452c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerdog/powerdog/device.vue":()=>e(()=>import("./device-57d44def.js"),["assets/device-57d44def.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerfox/powerfox/counter.vue":()=>e(()=>import("./counter-212ab5d9.js"),["assets/counter-212ab5d9.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerfox/powerfox/device.vue":()=>e(()=>import("./device-88966de4.js"),["assets/device-88966de4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerfox/powerfox/inverter.vue":()=>e(()=>import("./inverter-9ef308b9.js"),["assets/inverter-9ef308b9.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./qcells/qcells/device.vue":()=>e(()=>import("./device-8925e61a.js"),["assets/device-8925e61a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./rct/rct/device.vue":()=>e(()=>import("./device-eadbbfcc.js"),["assets/device-eadbbfcc.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./saxpower/saxpower/device.vue":()=>e(()=>import("./device-cca02a4f.js"),["assets/device-cca02a4f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./shelly/shelly/counter.vue":()=>e(()=>import("./counter-b0e2f51e.js"),["assets/counter-b0e2f51e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./shelly/shelly/device.vue":()=>e(()=>import("./device-e21ae64d.js"),["assets/device-e21ae64d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./siemens/siemens/device.vue":()=>e(()=>import("./device-51673e43.js"),["assets/device-51673e43.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./siemens/siemens_sentron/device.vue":()=>e(()=>import("./device-6eb7214d.js"),["assets/device-6eb7214d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/bat.vue":()=>e(()=>import("./bat-4b4b1544.js"),["assets/bat-4b4b1544.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/counter.vue":()=>e(()=>import("./counter-7288db20.js"),["assets/counter-7288db20.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/device.vue":()=>e(()=>import("./device-919238af.js"),["assets/device-919238af.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/inverter.vue":()=>e(()=>import("./inverter-4fd40d49.js"),["assets/inverter-4fd40d49.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_shm/counter.vue":()=>e(()=>import("./counter-b807495f.js"),["assets/counter-b807495f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_shm/inverter.vue":()=>e(()=>import("./inverter-e1deb4b5.js"),["assets/inverter-e1deb4b5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/bat.vue":()=>e(()=>import("./bat-d4b53396.js"),["assets/bat-d4b53396.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/bat_smart_energy.vue":()=>e(()=>import("./bat_smart_energy-544a23e0.js"),["assets/bat_smart_energy-544a23e0.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/counter.vue":()=>e(()=>import("./counter-10c3bcf9.js"),["assets/counter-10c3bcf9.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/device.vue":()=>e(()=>import("./device-febe33bf.js"),["assets/device-febe33bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/inverter.vue":()=>e(()=>import("./inverter-a8e6cd81.js"),["assets/inverter-a8e6cd81.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_island/bat.vue":()=>e(()=>import("./bat-67223423.js"),["assets/bat-67223423.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_island/device.vue":()=>e(()=>import("./device-79cf1a20.js"),["assets/device-79cf1a20.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_webbox/device.vue":()=>e(()=>import("./device-40027363.js"),["assets/device-40027363.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smart_me/smart_me/counter.vue":()=>e(()=>import("./counter-2c44c2a8.js"),["assets/counter-2c44c2a8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smart_me/smart_me/device.vue":()=>e(()=>import("./device-26dae5a4.js"),["assets/device-26dae5a4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smart_me/smart_me/inverter.vue":()=>e(()=>import("./inverter-8ac2f8f6.js"),["assets/inverter-8ac2f8f6.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smartfox/smartfox/device.vue":()=>e(()=>import("./device-00acf0a2.js"),["assets/device-00acf0a2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sofar/sofar/device.vue":()=>e(()=>import("./device-67242aab.js"),["assets/device-67242aab.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_log/solar_log/counter.vue":()=>e(()=>import("./counter-254f0cfd.js"),["assets/counter-254f0cfd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_log/solar_log/device.vue":()=>e(()=>import("./device-47571cec.js"),["assets/device-47571cec.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_view/solar_view/device.vue":()=>e(()=>import("./device-08f6c1c3.js"),["assets/device-08f6c1c3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_view/solar_view/inverter.vue":()=>e(()=>import("./inverter-0c3f0824.js"),["assets/inverter-0c3f0824.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_watt/solar_watt/device.vue":()=>e(()=>import("./device-2c90706d.js"),["assets/device-2c90706d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_world/solar_world/device.vue":()=>e(()=>import("./device-dcc3398c.js"),["assets/device-dcc3398c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/bat.vue":()=>e(()=>import("./bat-66db2541.js"),["assets/bat-66db2541.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/counter.vue":()=>e(()=>import("./counter-cdf8a350.js"),["assets/counter-cdf8a350.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/device.vue":()=>e(()=>import("./device-c4964fb6.js"),["assets/device-c4964fb6.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/external_inverter.vue":()=>e(()=>import("./external_inverter-56630198.js"),["assets/external_inverter-56630198.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/inverter.vue":()=>e(()=>import("./inverter-80f6eda4.js"),["assets/inverter-80f6eda4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solarmax/solarmax/bat.vue":()=>e(()=>import("./bat-db010135.js"),["assets/bat-db010135.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solarmax/solarmax/device.vue":()=>e(()=>import("./device-39d88706.js"),["assets/device-39d88706.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solarmax/solarmax/inverter.vue":()=>e(()=>import("./inverter-fd3793d4.js"),["assets/inverter-fd3793d4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solax/solax/device.vue":()=>e(()=>import("./device-aa710e76.js"),["assets/device-aa710e76.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/bat.vue":()=>e(()=>import("./bat-d2ded368.js"),["assets/bat-d2ded368.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/counter.vue":()=>e(()=>import("./counter-1ee33dcc.js"),["assets/counter-1ee33dcc.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/device.vue":()=>e(()=>import("./device-d5a5c7fd.js"),["assets/device-d5a5c7fd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/inverter.vue":()=>e(()=>import("./inverter-9003395a.js"),["assets/inverter-9003395a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sonnen/sonnenbatterie/counter.vue":()=>e(()=>import("./counter-195f9f44.js"),["assets/counter-195f9f44.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sonnen/sonnenbatterie/device.vue":()=>e(()=>import("./device-6e2770dd.js"),["assets/device-6e2770dd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./studer/studer/bat.vue":()=>e(()=>import("./bat-302453bb.js"),["assets/bat-302453bb.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./studer/studer/device.vue":()=>e(()=>import("./device-7b2a48ce.js"),["assets/device-7b2a48ce.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./studer/studer/inverter.vue":()=>e(()=>import("./inverter-741a82d0.js"),["assets/inverter-741a82d0.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sungrow/sungrow/counter.vue":()=>e(()=>import("./counter-cfb8942f.js"),["assets/counter-cfb8942f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sungrow/sungrow/device.vue":()=>e(()=>import("./device-4cacbc73.js"),["assets/device-4cacbc73.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sunways/sunways/device.vue":()=>e(()=>import("./device-4d6b19fd.js"),["assets/device-4d6b19fd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tasmota/tasmota/device.vue":()=>e(()=>import("./device-501cd96e.js"),["assets/device-501cd96e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tesla/tesla/counter.vue":()=>e(()=>import("./counter-b591cf05.js"),["assets/counter-b591cf05.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tesla/tesla/device.vue":()=>e(()=>import("./device-ec258531.js"),["assets/device-ec258531.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./varta/varta/device.vue":()=>e(()=>import("./device-c005be93.js"),["assets/device-c005be93.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./varta/varta/inverter.vue":()=>e(()=>import("./inverter-fdbe3f37.js"),["assets/inverter-fdbe3f37.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/bat.vue":()=>e(()=>import("./bat-8556224e.js"),["assets/bat-8556224e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/counter.vue":()=>e(()=>import("./counter-e70162c9.js"),["assets/counter-e70162c9.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/device.vue":()=>e(()=>import("./device-db1a4525.js"),["assets/device-db1a4525.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/inverter.vue":()=>e(()=>import("./inverter-192019df.js"),["assets/inverter-192019df.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vzlogger/vzlogger/counter.vue":()=>e(()=>import("./counter-f1fbea9a.js"),["assets/counter-f1fbea9a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vzlogger/vzlogger/device.vue":()=>e(()=>import("./device-6c36210a.js"),["assets/device-6c36210a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vzlogger/vzlogger/inverter.vue":()=>e(()=>import("./inverter-ab6f3eb3.js"),["assets/inverter-ab6f3eb3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./youless/youless/device.vue":()=>e(()=>import("./device-b86cd7b6.js"),["assets/device-b86cd7b6.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./youless/youless/inverter.vue":()=>e(()=>import("./inverter-6f2beb5c.js"),["assets/inverter-6f2beb5c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.device.vendor}/${this.device.type}/${this.component.type}.vue`),errorComponent:ve}):z({loader:()=>x(Object.assign({"./alpha_ess/alpha_ess/device.vue":()=>e(()=>import("./device-43ef21f8.js"),["assets/device-43ef21f8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./azzurro_zcs/azzurro_zcs/device.vue":()=>e(()=>import("./device-608338dd.js"),["assets/device-608338dd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./batterx/batterx/device.vue":()=>e(()=>import("./device-9088801d.js"),["assets/device-9088801d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./benning/benning/device.vue":()=>e(()=>import("./device-9447d94e.js"),["assets/device-9447d94e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./byd/byd/device.vue":()=>e(()=>import("./device-7a1e589b.js"),["assets/device-7a1e589b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./carlo_gavazzi/carlo_gavazzi/device.vue":()=>e(()=>import("./device-02e133ba.js"),["assets/device-02e133ba.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./deye/deye/device.vue":()=>e(()=>import("./device-c200bc3a.js"),["assets/device-c200bc3a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./discovergy/discovergy/device.vue":()=>e(()=>import("./device-a6c25668.js"),["assets/device-a6c25668.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./e3dc/e3dc/device.vue":()=>e(()=>import("./device-17c54bdf.js"),["assets/device-17c54bdf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./enphase/enphase/device.vue":()=>e(()=>import("./device-81b5a1dc.js"),["assets/device-81b5a1dc.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fems/fems/device.vue":()=>e(()=>import("./device-d083e666.js"),["assets/device-d083e666.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fox_ess/fox_ess/device.vue":()=>e(()=>import("./device-169018ea.js"),["assets/device-169018ea.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./fronius/fronius/device.vue":()=>e(()=>import("./device-bdb06f88.js"),["assets/device-bdb06f88.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/http/device.vue":()=>e(()=>import("./device-bd9e0b65.js"),["assets/device-bd9e0b65.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/json/device.vue":()=>e(()=>import("./device-44720467.js"),["assets/device-44720467.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./generic/mqtt/device.vue":()=>e(()=>import("./device-1b0d178b.js"),["assets/device-1b0d178b.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./good_we/good_we/device.vue":()=>e(()=>import("./device-0fe1ea59.js"),["assets/device-0fe1ea59.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./growatt/growatt/device.vue":()=>e(()=>import("./device-e51669c4.js"),["assets/device-e51669c4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei/device.vue":()=>e(()=>import("./device-6178cdc7.js"),["assets/device-6178cdc7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./huawei/huawei_smartlogger/device.vue":()=>e(()=>import("./device-d2eeb63d.js"),["assets/device-d2eeb63d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./janitza/janitza/device.vue":()=>e(()=>import("./device-84a227ed.js"),["assets/device-84a227ed.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko/device.vue":()=>e(()=>import("./device-084b7b34.js"),["assets/device-084b7b34.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_piko_old/device.vue":()=>e(()=>import("./device-bf5c69b8.js"),["assets/device-bf5c69b8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_plenticore/device.vue":()=>e(()=>import("./device-e7688f93.js"),["assets/device-e7688f93.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_sem/device.vue":()=>e(()=>import("./device-941a8f87.js"),["assets/device-941a8f87.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kostal/kostal_steca/device.vue":()=>e(()=>import("./device-1195cbe4.js"),["assets/device-1195cbe4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./lg/lg/device.vue":()=>e(()=>import("./device-838299c5.js"),["assets/device-838299c5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mtec/mtec/device.vue":()=>e(()=>import("./device-333add34.js"),["assets/device-333add34.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./opendtu/opendtu/device.vue":()=>e(()=>import("./device-eee1b1e7.js"),["assets/device-eee1b1e7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./openwb/openwb_flex/device.vue":()=>e(()=>import("./device-bc869b08.js"),["assets/device-bc869b08.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerdog/powerdog/device.vue":()=>e(()=>import("./device-57d44def.js"),["assets/device-57d44def.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./powerfox/powerfox/device.vue":()=>e(()=>import("./device-88966de4.js"),["assets/device-88966de4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./qcells/qcells/device.vue":()=>e(()=>import("./device-8925e61a.js"),["assets/device-8925e61a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./rct/rct/device.vue":()=>e(()=>import("./device-eadbbfcc.js"),["assets/device-eadbbfcc.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./saxpower/saxpower/device.vue":()=>e(()=>import("./device-cca02a4f.js"),["assets/device-cca02a4f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./shelly/shelly/device.vue":()=>e(()=>import("./device-e21ae64d.js"),["assets/device-e21ae64d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./siemens/siemens/device.vue":()=>e(()=>import("./device-51673e43.js"),["assets/device-51673e43.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./siemens/siemens_sentron/device.vue":()=>e(()=>import("./device-6eb7214d.js"),["assets/device-6eb7214d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sigenergy/sigenergy/device.vue":()=>e(()=>import("./device-919238af.js"),["assets/device-919238af.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_boy/device.vue":()=>e(()=>import("./device-febe33bf.js"),["assets/device-febe33bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_sunny_island/device.vue":()=>e(()=>import("./device-79cf1a20.js"),["assets/device-79cf1a20.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sma/sma_webbox/device.vue":()=>e(()=>import("./device-40027363.js"),["assets/device-40027363.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smart_me/smart_me/device.vue":()=>e(()=>import("./device-26dae5a4.js"),["assets/device-26dae5a4.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smartfox/smartfox/device.vue":()=>e(()=>import("./device-00acf0a2.js"),["assets/device-00acf0a2.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sofar/sofar/device.vue":()=>e(()=>import("./device-67242aab.js"),["assets/device-67242aab.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_log/solar_log/device.vue":()=>e(()=>import("./device-47571cec.js"),["assets/device-47571cec.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_view/solar_view/device.vue":()=>e(()=>import("./device-08f6c1c3.js"),["assets/device-08f6c1c3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_watt/solar_watt/device.vue":()=>e(()=>import("./device-2c90706d.js"),["assets/device-2c90706d.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solar_world/solar_world/device.vue":()=>e(()=>import("./device-dcc3398c.js"),["assets/device-dcc3398c.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solaredge/solaredge/device.vue":()=>e(()=>import("./device-c4964fb6.js"),["assets/device-c4964fb6.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solarmax/solarmax/device.vue":()=>e(()=>import("./device-39d88706.js"),["assets/device-39d88706.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solax/solax/device.vue":()=>e(()=>import("./device-aa710e76.js"),["assets/device-aa710e76.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./solis/solis/device.vue":()=>e(()=>import("./device-d5a5c7fd.js"),["assets/device-d5a5c7fd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sonnen/sonnenbatterie/device.vue":()=>e(()=>import("./device-6e2770dd.js"),["assets/device-6e2770dd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./studer/studer/device.vue":()=>e(()=>import("./device-7b2a48ce.js"),["assets/device-7b2a48ce.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sungrow/sungrow/device.vue":()=>e(()=>import("./device-4cacbc73.js"),["assets/device-4cacbc73.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./sunways/sunways/device.vue":()=>e(()=>import("./device-4d6b19fd.js"),["assets/device-4d6b19fd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tasmota/tasmota/device.vue":()=>e(()=>import("./device-501cd96e.js"),["assets/device-501cd96e.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tesla/tesla/device.vue":()=>e(()=>import("./device-ec258531.js"),["assets/device-ec258531.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./varta/varta/device.vue":()=>e(()=>import("./device-c005be93.js"),["assets/device-c005be93.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./victron/victron/device.vue":()=>e(()=>import("./device-db1a4525.js"),["assets/device-db1a4525.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vzlogger/vzlogger/device.vue":()=>e(()=>import("./device-6c36210a.js"),["assets/device-6c36210a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./youless/youless/device.vue":()=>e(()=>import("./device-b86cd7b6.js"),["assets/device-b86cd7b6.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.device.vendor}/${this.device.type}/device.vue`),errorComponent:_e})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function me(t,o,i,m,v,n){return s(),E(Z(n.myComponent),{device:i.device,component:i.component,configuration:i.component?i.component.configuration:i.device.configuration,"device-id":i.device.id,"device-type":i.device.type,"component-id":i.component?i.component.id:void 0,"component-type":i.component?i.component.type:void 0,"onUpdate:configuration":o[0]||(o[0]=l=>n.updateConfiguration(l))},null,40,["device","component","configuration","device-id","device-type","component-id","component-type"])}const pe=I(ae,[["render",me],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/OpenwbConfigProxy.vue"]]);S.add(q,U,N,G,F,H,K);const le={name:"OpenwbHardwareInstallationView",components:{FontAwesomeIcon:$,OpenwbConfigProxy:pe},mixins:[J],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/counter/get/hierarchy","openWB/system/device/+/config","openWB/system/device/+/component/+/config","openWB/system/configurable/devices_components"],selectedVendor:void 0,deviceToAdd:void 0,showDeviceRemoveModal:!1,modalDevice:void 0,modalDeviceName:"",componentToAdd:[],showComponentRemoveModal:!1,modalComponent:void 0,modalComponentName:""}},computed:{installedDevices:{get(){return this.getWildcardTopics("openWB/system/device/+/config")}},installedComponents:{get(){return this.getWildcardTopics("openWB/system/device/+/component/+/config")}},vendorList:{get(){return this.$store.state.mqtt["openWB/system/configurable/devices_components"]===void 0?[]:Object.entries(this.$store.state.mqtt["openWB/system/configurable/devices_components"]).map(([t,o])=>({label:o.group_name,options:Object.entries(o.vendors).map(([i,m])=>({value:[t,i],text:m.vendor_name})).sort((i,m)=>i.text.localeCompare(m.text))})).sort((t,o)=>-t.label.localeCompare(o.label))}},deviceList:{get(){if(this.selectedVendor===void 0)return[];let[t,o]=this.selectedVendor;return Object.entries(this.$store.state.mqtt["openWB/system/configurable/devices_components"][t].vendors[o].devices).map(([i,m])=>({value:[o,i],text:m.device_name})).sort((i,m)=>i.text.localeCompare(m.text))}}},methods:{getComponentTypeClass(t){return t.match(/^(.+_)?counter(_.+)?$/)?"danger":t.match(/^(.+_)?inverter(_.+)?$/)?"success":t.match(/^(.+_)?bat(_.+)?$/)?"warning":"dark"},getComponentTypeIcon(t){return t.match(/^(.+_)?counter(_.+)?$/)?["fas","fa-gauge-high"]:t.match(/^(.+_)?inverter(_.+)?$/)?["fas","fa-solar-panel"]:t.match(/^(.+_)?bat(_.+)?$/)?["fas","fa-car-battery"]:["fas","fa-microchip"]},getMyInstalledComponents(t){return this.getWildcardTopics("openWB/system/device/"+t+"/component/+/config")},deviceHasConfiguredComponents(t){return Object.keys(this.getMyInstalledComponents(t)).length>0},addDevice(){this.$emit("sendCommand",{command:"addDevice",data:{vendor:this.deviceToAdd[0],type:this.deviceToAdd[1]}})},removeDeviceModal(t,o,i){i.stopPropagation(),this.modalDevice=t,this.modalDeviceName=o,this.showDeviceRemoveModal=!0},removeDevice(t){this.showDeviceRemoveModal=!1,t=="confirm"&&(console.info("request removal of device '"+this.modalDevice+"'"),this.$emit("sendCommand",{command:"removeDevice",data:{id:this.modalDevice}}))},addComponent(t,o,i,m){this.$emit("sendCommand",{command:"addComponent",data:{deviceId:t,deviceType:i,deviceVendor:o,type:m}})},removeComponentModal(t,o,i,m,v){v.stopPropagation(),this.modalComponent={deviceId:t,id:o,type:i},this.modalComponentName=m,this.showComponentRemoveModal=!0},removeComponent(t){this.showComponentRemoveModal=!1,t=="confirm"&&(console.info("request removal of component '"+this.modalComponent.id+"' from device '"+this.modalComponent.deviceId+"' type '"+this.modalComponent.type+"'"),this.$emit("sendCommand",{command:"removeComponent",data:this.modalComponent}))},getComponentList(t,o){if(t===void 0||o===void 0)return[];console.debug("finding components for",t,o);let i=[];return Object.values(this.$store.state.mqtt["openWB/system/configurable/devices_components"]).every(m=>m.vendors[t]!==void 0?(m.vendors[t].devices[o]!==void 0&&(i=Object.entries(m.vendors[t].devices[o].components).map(([n,l])=>({value:n,text:l.component_name}))),!1):!0),i},updateConfiguration(t,o){console.debug("updateConfiguration",t,o),this.updateState(t,o.value,o.object)}}},ce={class:"hardwareInstallation"},Ee={name:"hardwareInstallationForm"},ge={key:0},fe={key:1},Ve={key:1},be={key:0};function Oe(t,o,i,m,v,n){const l=p("openwb-base-modal-dialog"),T=p("router-link"),O=p("openwb-base-alert"),A=p("font-awesome-icon"),D=p("openwb-base-avatar"),P=p("openwb-base-text-input"),C=p("openwb-config-proxy"),M=p("openwb-base-heading"),w=p("openwb-base-card"),y=p("openwb-base-select-input"),j=p("openwb-base-submit-buttons");return s(),g(L,null,[u(l,{show:v.showDeviceRemoveModal,title:"Gerät löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:n.removeDevice},{default:r(()=>[d(' Wollen Sie das Gerät "'+V(v.modalDeviceName)+'" inklusive aller Komponenten wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show","onModalResult"]),u(l,{show:v.showComponentRemoveModal,title:"Komponente löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:n.removeComponent},{default:r(()=>[d(' Wollen Sie die Komponente "'+V(v.modalComponentName)+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show","onModalResult"]),c("div",ce,[c("form",Ee,[i.installAssistantActive?R("",!0):(s(),E(O,{key:0,subtype:"info"},{default:r(()=>[o[7]||(o[7]=d(" Wenn neue Komponenten - insbesondere Zähler - konfiguriert wurden, ist auch das ")),u(T,{to:"/LoadManagementConfiguration"},{default:r(()=>o[6]||(o[6]=[d(" Lastmanagement ")])),_:1}),o[8]||(o[8]=d(" zu prüfen! "))]),_:1})),u(w,{title:"Geräte und Komponenten"},{default:r(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(s(),g("div",ge,[u(O,{subtype:"info"},{default:r(()=>o[9]||(o[9]=[d(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),g("div",fe,[(s(!0),g(L,null,k(n.installedDevices,(_,h)=>(s(),E(w,{key:h,collapsible:!0,collapsed:!0,subtype:"dark"},{header:r(()=>[u(A,{"fixed-width":"",icon:["fas","network-wired"]}),d(" "+V(_==null?void 0:_.name),1)]),actions:r(a=>[a.collapsed?(s(),g("div",Ve,[(s(!0),g(L,null,k(n.getMyInstalledComponents(_==null?void 0:_.id),f=>(s(),E(D,{key:f.id,class:Q("ml-1 bg-"+n.getComponentTypeClass(f.type))},{default:r(()=>[u(A,{"fixed-width":"",icon:n.getComponentTypeIcon(f.type)},null,8,["icon"])]),_:2},1032,["class"]))),128))])):(s(),E(D,{key:0,class:"bg-danger clickable",onClick:f=>n.removeDeviceModal(_==null?void 0:_.id,_==null?void 0:_.name,f)},{default:r(()=>[u(A,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),default:r(()=>[u(P,{title:"Bezeichnung",subtype:"text","model-value":_==null?void 0:_.name,"onUpdate:modelValue":a=>t.updateState(h,a,"name")},null,8,["model-value","onUpdate:modelValue"]),o[17]||(o[17]=c("hr",null,null,-1)),u(C,{device:_,"onUpdate:configuration":a=>n.updateConfiguration(h,a)},null,8,["device","onUpdate:configuration"]),o[18]||(o[18]=c("hr",null,null,-1)),u(M,null,{default:r(()=>[...o[10]||(o[10]=[d("Komponenten")])]),_:1}),n.deviceHasConfiguredComponents(_==null?void 0:_.id)?R("",!0):(s(),E(O,{key:0,subtype:"warning"},{default:r(()=>[...o[11]||(o[11]=[d(" Es wurden noch keine Komponenten zu diesem Gerät angelegt. ")])]),_:1})),(s(!0),g(L,null,k(n.getMyInstalledComponents(_.id),(a,f)=>(s(),E(w,{key:a.id,collapsible:!0,collapsed:!0,subtype:n.getComponentTypeClass(a.type)},{header:r(()=>[u(A,{"fixed-width":"",icon:n.getComponentTypeIcon(a.type)},null,8,["icon"]),d(" "+V(a.name),1)]),actions:r(b=>[b.collapsed?R("",!0):(s(),E(D,{key:0,class:"bg-danger clickable",onClick:W=>n.removeComponentModal(_.id,a.id,a.type,a.name,W)},{default:r(()=>[u(A,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),default:r(()=>[u(P,{title:"Bezeichnung",subtype:"text","model-value":a.name,"onUpdate:modelValue":b=>t.updateState(f,b,"name")},null,8,["model-value","onUpdate:modelValue"]),u(P,{title:"Hersteller",subtype:"text","model-value":a.info.manufacturer,"onUpdate:modelValue":b=>t.updateState(f,b,"info.manufacturer")},{help:r(()=>[...o[12]||(o[12]=[d(" Optional: zusätzliche Information für den Systembericht. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),u(P,{title:"Modell",subtype:"text","model-value":a.info.model,"onUpdate:modelValue":b=>t.updateState(f,b,"info.model")},{help:r(()=>[...o[13]||(o[13]=[d(" Optional: zusätzliche Information für den Systembericht. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o[14]||(o[14]=c("hr",null,null,-1)),u(C,{device:_,component:a,"onUpdate:configuration":b=>n.updateConfiguration(f,b)},null,8,["device","component","onUpdate:configuration"])]),_:2},1032,["subtype"]))),128)),o[19]||(o[19]=c("hr",null,null,-1)),n.getComponentList(_.vendor,_.type).length?(s(),E(y,{key:1,title:"Verfügbare Komponenten","not-selected":"Bitte auswählen",options:n.getComponentList(_.vendor,_.type),"model-value":v.componentToAdd[_.id],"add-button":!0,"onUpdate:modelValue":a=>v.componentToAdd[_.id]=a,"onInput:add":a=>n.addComponent(_.id,_.vendor,_.type,v.componentToAdd[_.id])},{help:r(()=>[...o[15]||(o[15]=[d(" Bitte eine Komponente auswählen, die hinzugefügt werden soll. Für jeden Datensatz, z.B. Wechselrichter- und Batteriedaten, muss eine Wechselrichter- und eine Batteriekomponente hinzugefügt werden. ")])]),_:2},1032,["options","model-value","onUpdate:modelValue","onInput:add"])):(s(),E(O,{key:2,subtype:"info"},{default:r(()=>[...o[16]||(o[16]=[d(" Dieses System bietet keine Komponenten zur Installation an. ")])]),_:1}))]),_:2},1024))),128)),Object.keys(n.installedDevices).length>0?(s(),g("hr",be)):R("",!0),u(y,{modelValue:v.selectedVendor,"onUpdate:modelValue":o[0]||(o[0]=_=>v.selectedVendor=_),title:"Hersteller","not-selected":"Bitte auswählen",groups:n.vendorList},null,8,["modelValue","groups"]),u(y,{modelValue:v.deviceToAdd,"onUpdate:modelValue":[o[1]||(o[1]=_=>v.deviceToAdd=_),o[2]||(o[2]=_=>v.deviceToAdd=_)],title:"Verfügbare Geräte","not-selected":"Bitte auswählen",disabled:v.selectedVendor===void 0,options:n.deviceList,"model-value":v.deviceToAdd,"add-button":!0,"onInput:add":n.addDevice},{help:r(()=>o[20]||(o[20]=[c("p",null,[d(' Die openWB-Regelung ist auf Werte von Messpunkten (Zähler, Energy Meter usw.) angewiesen. Hierfür werden "Geräte" und "Komponenten" verwendet.'),c("br"),d(' Ein "Gerät" wird hierbei durch seine Verbindungseinstellungen (z.B. IP-Adresse) spezifiziert (häufig durch manuelle Eingabe oder manchmal automatisch ermittelt) und kann über mehrere untergeordnete "Komponenten" verfügen, z.B. einen Messpunkt für PV-Erzeugung, einen Messpunkt für Netzeinspeisung/-bezug am EVU-Punkt usw.. Ein "Gerät" bedingt somit immer mindestens eine zugehörige "Komponente". ')],-1),c("p",null,[d(' Bsp: Werden die Werte von verschiedenen Messpunkten (z.B. PV und EVU) über die gleiche IP-Adresse abgefragt, wird dafür ein "Gerät" mit zwei "Komponenten" für PV- und EVU- Messpunkt angelegt.'),c("br"),d(' Verfügt dagegen jeder Messpunkt über eine eigene IP-Adresse, wird jeder Messpunkt als eigenes "Gerät" mit nur einer "Komponente" angelegt. ')],-1),c("p",null,' Das "Gerät" wird in der Dropdown-Liste ausgewählt und mit "+" der Regelung hinzugefügt. Im Anschluss erfolgt die Konfiguration des "Gerätes" innerhalb des schwarzen "Geräte"-Reiters. ',-1)])),_:1},8,["modelValue","disabled","options","model-value","onInput:add"])]))]),_:1}),u(j,{"form-name":"hardwareInstallationForm",onSave:o[3]||(o[3]=_=>t.$emit("save")),onReset:o[4]||(o[4]=_=>t.$emit("reset")),onDefaults:o[5]||(o[5]=_=>t.$emit("defaults"))})])])],64)}const Ie=I(le,[["render",Oe],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/HardwareInstallation.vue"]]),Le=Object.freeze(Object.defineProperty({__proto__:null,default:Ie},Symbol.toStringTag,{value:"Module"}));export{re as C,B as D,Ie as H,Le as a}; diff --git a/web/settings/assets/InstallAssistant-0bd3b4d8.js b/web/settings/assets/InstallAssistant-0bd3b4d8.js deleted file mode 100644 index 13e993f8a2..0000000000 --- a/web/settings/assets/InstallAssistant-0bd3b4d8.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r,_ as t}from"./index-e2dbf7bf.js";import{_}from"./dynamic-import-helper-be004503.js";import{_ as m,a1 as p,u as d,k as i,l as u,G as A,E as v,z as E,a2 as I,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const P={name:"InstallAssistantView",mixins:[r],emits:["sendCommand","save","reset","defaults"],data(){return{currentPage:0,lastPage:10,showEndAssistantModal:!1}},computed:{myStepComponent(){return console.debug(`loading assistant page: ${this.currentPage}`),p({loader:()=>_(Object.assign({"../components/install_assistant/InstallAssistantStep0.vue":()=>t(()=>import("./InstallAssistantStep0-d04cfa93.js"),["assets/InstallAssistantStep0-d04cfa93.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css"]),"../components/install_assistant/InstallAssistantStep1.vue":()=>t(()=>import("./InstallAssistantStep1-2ed55f91.js"),["assets/InstallAssistantStep1-2ed55f91.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/DataManagement-2ea0a0a1.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStep10.vue":()=>t(()=>import("./InstallAssistantStep10-59925bb0.js"),["assets/InstallAssistantStep10-59925bb0.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css"]),"../components/install_assistant/InstallAssistantStep2.vue":()=>t(()=>import("./InstallAssistantStep2-46ec18be.js"),["assets/InstallAssistantStep2-46ec18be.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/System-684fe63a.js","assets/System-0f1d217b.css"]),"../components/install_assistant/InstallAssistantStep3.vue":()=>t(()=>import("./InstallAssistantStep3-2b3c1903.js"),["assets/InstallAssistantStep3-2b3c1903.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/GeneralConfig-b1531208.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStep4.vue":()=>t(()=>import("./InstallAssistantStep4-09557751.js"),["assets/InstallAssistantStep4-09557751.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/ChargePointInstallation-1b33cf58.js","assets/dynamic-import-helper-be004503.js","assets/ChargePointInstallation-7b9399a8.css"]),"../components/install_assistant/InstallAssistantStep5.vue":()=>t(()=>import("./InstallAssistantStep5-93dbef29.js"),["assets/InstallAssistantStep5-93dbef29.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/HardwareInstallation-79ea1bc6.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStep6.vue":()=>t(()=>import("./InstallAssistantStep6-cfa0befa.js"),["assets/InstallAssistantStep6-cfa0befa.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/ChargePointInstallation-1b33cf58.js","assets/dynamic-import-helper-be004503.js","assets/ChargePointInstallation-7b9399a8.css"]),"../components/install_assistant/InstallAssistantStep7.vue":()=>t(()=>import("./InstallAssistantStep7-3f595c88.js"),["assets/InstallAssistantStep7-3f595c88.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/LoadManagementConfig-b159973d.js","assets/OpenwbSortableList-ac8384c9.js","assets/OpenwbSortableList-7ba533e4.css"]),"../components/install_assistant/InstallAssistantStep8.vue":()=>t(()=>import("./InstallAssistantStep8-e82bd428.js"),["assets/InstallAssistantStep8-e82bd428.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/VehicleConfig-12242a8a.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStep9.vue":()=>t(()=>import("./InstallAssistantStep9-846bde46.js"),["assets/InstallAssistantStep9-846bde46.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-c95c4891.js","assets/InstallAssistantStepTemplate-ff479f80.css","assets/DataManagement-2ea0a0a1.js","assets/dynamic-import-helper-be004503.js"]),"../components/install_assistant/InstallAssistantStepTemplate.vue":()=>t(()=>import("./InstallAssistantStepTemplate-c95c4891.js"),["assets/InstallAssistantStepTemplate-c95c4891.js","assets/index-e2dbf7bf.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/InstallAssistantStepTemplate-ff479f80.css"])}),`../components/install_assistant/InstallAssistantStep${this.currentPage}.vue`)})}},methods:{switchPage(s){s>=0&&s<=this.lastPage?this.currentPage=s:console.error(`invalid assistant page number: ${s}`)},endAssistantModal(){this.currentPage!=this.lastPage?this.showEndAssistantModal=!0:this.endAssistant("confirm")},endAssistant(s){this.showEndAssistantModal=!1,s=="confirm"&&(this.updateState("openWB/system/installAssistantDone",!0),this.$root.doPublish("openWB/set/system/installAssistantDone",!0),this.$router.push("/Status"))}}};function S(s,e,f,g,o,n){const l=d("openwb-base-modal-dialog");return i(),u("div",null,[A(l,{show:o.showEndAssistantModal,title:"Assistent beenden",subtype:"danger",buttons:[{text:"Beenden",event:"confirm",subtype:"danger"}],onModalResult:n.endAssistant},{default:v(()=>e[4]||(e[4]=[c(" Wollen Sie den Assistenten wirklich vorzeitig beenden? ")])),_:1},8,["show","onModalResult"]),(i(),E(I(n.myStepComponent),{onSendCommand:e[0]||(e[0]=a=>s.$emit("sendCommand",a)),onSave:e[1]||(e[1]=a=>s.$emit("save")),onReset:e[2]||(e[2]=a=>s.$emit("reset")),onDefaults:e[3]||(e[3]=a=>s.$emit("defaults")),onSwitchPage:n.switchPage,onEndAssistant:n.endAssistantModal},null,40,["onSwitchPage","onEndAssistant"]))])}const L=m(P,[["render",S],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/InstallAssistant.vue"]]);export{L as default}; diff --git a/web/settings/assets/InstallAssistantStep0-d04cfa93.js b/web/settings/assets/InstallAssistantStep0-d04cfa93.js deleted file mode 100644 index 6d8fec8445..0000000000 --- a/web/settings/assets/InstallAssistantStep0-d04cfa93.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./index-e2dbf7bf.js";import d from"./InstallAssistantStepTemplate-c95c4891.js";import{_ as p,u as i,k as m,z as g,E as a,G as h,y as f,x as t}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const c={name:"InstallAssistantStep0",components:{InstallAssistantStepTemplate:d},mixins:[u],emits:["switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[],showModalWarning:!1}),methods:{requestNextPage(){this.showModalWarning=!0},nextPage(s){this.showModalWarning=!1,s==="confirm"&&this.$emit("switchPage",1)},previousPage(){},endAssistant(){this.$emit("endAssistant")}}};function b(s,e,A,w,P,n){const o=i("openwb-base-modal-dialog"),r=i("InstallAssistantStepTemplate");return m(),g(r,{title:"Start","hide-previous":!0,onNextPage:n.requestNextPage,onPreviousPage:n.previousPage,onEndAssistant:n.endAssistant},{content:a(()=>[h(o,{show:s.showModalWarning,title:"Achtung!",subtype:"danger",buttons:[{text:"Ok",event:"confirm",subtype:"success"}],onModalResult:e[0]||(e[0]=l=>n.nextPage(l))},{default:a(()=>e[1]||(e[1]=[f(" Bevor der Assistent gestartet wird, ist sicherzustellen, dass kein Ladevorgang aktiv ist! Zur Sicherheit bitte zusätzlich alle Fahrzeuge von der Ladestation / den Ladestationen abstecken! ")])),_:1},8,["show"]),e[2]||(e[2]=t("h2",null,"Vielen Dank, dass Du Dich für openWB entschieden hast.",-1)),e[3]||(e[3]=t("p",null,"Dieser Assistent führt Dich durch die Konfiguration der einzelnen Module:",-1)),e[4]||(e[4]=t("ol",null,[t("li",null,"Datensicherung der bestehenden Konfiguration"),t("li",null,"Aktualisierung des openWB-Systems"),t("li",null,"Allgemeine Einstellungen: Auswahl des Betriebsmodus primary (steuernd) bzw. secondary (gesteuerte WB)")],-1)),e[5]||(e[5]=t("p",null," Wird diese openWB als secondary betrieben, so werden nur die lokalen Ladepunkte eingerichtet. Im Betriebsmodus primary werden die folgenden zusätzlichen Schritte durchlaufen: ",-1)),e[6]||(e[6]=t("ol",{start:"4"},[t("li",null,"Energiesystem - Geräte und Komponenten einrichten"),t("li",null,"Einrichten der Ladepunkte (openWB als primary)"),t("li",null,"Konfiguration des Lastmanagements"),t("li",null,"Einrichten der Fahrzeuge"),t("li",null,"Datensicherung der neuen Konfiguration")],-1)),e[7]||(e[7]=t("p",null,"Danach ist die Grundkonfiguration abgeschlossen.",-1))]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const D=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep0.vue"]]);export{D as default}; diff --git a/web/settings/assets/InstallAssistantStep1-2ed55f91.js b/web/settings/assets/InstallAssistantStep1-2ed55f91.js deleted file mode 100644 index f091b9e55c..0000000000 --- a/web/settings/assets/InstallAssistantStep1-2ed55f91.js +++ /dev/null @@ -1 +0,0 @@ -import{C as m}from"./index-e2dbf7bf.js";import p from"./InstallAssistantStepTemplate-c95c4891.js";import{D as l}from"./DataManagement-2ea0a0a1.js";import{_ as d,u as a,k as u,z as g,E as o,x as f,G as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const A={name:"InstallAssistantStep1",components:{InstallAssistantStepTemplate:p,DataManagement:l},mixins:[m],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",2)},previousPage(){this.$emit("switchPage",0)},endAssistant(){this.$emit("endAssistant")}}};function P(t,e,c,S,w,n){const i=a("DataManagement"),r=a("InstallAssistantStepTemplate");return u(),g(r,{title:"1. Datensicherung der bestehenden Konfiguration",onNextPage:n.nextPage,onPreviousPage:n.previousPage,onEndAssistant:n.endAssistant},{help:o(()=>e[4]||(e[4]=[f("p",null," Wir empfehlen an dieser Stelle eine Sicherung der openWB zu erstellen, auf welche später zurückgegriffen werden kann, insbesondere, wenn die openWB schon konfiguriert war und der Assistent nun erneut ausgeführt wird. ",-1)])),content:o(()=>[v(i,{"install-assistant-active":!0,"show-backup-cloud-section":!1,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const N=d(A,[["render",P],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep1.vue"]]);export{N as default}; diff --git a/web/settings/assets/InstallAssistantStep10-59925bb0.js b/web/settings/assets/InstallAssistantStep10-59925bb0.js deleted file mode 100644 index d4817ca60a..0000000000 --- a/web/settings/assets/InstallAssistantStep10-59925bb0.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./index-e2dbf7bf.js";import o from"./InstallAssistantStepTemplate-c95c4891.js";import{_ as r,u as l,k as m,z as p,E as d,x as n}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const u={name:"InstallAssistantStep10",components:{InstallAssistantStepTemplate:o},mixins:[a],emits:["switchPage","endAssistant","sendCommand"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){},previousPage(){this.$emit("switchPage",9)},sendCommand(t){this.$emit("sendCommand",t)},endAssistant(){this.$emit("endAssistant")}}};function g(t,s,c,f,A,e){const i=l("InstallAssistantStepTemplate");return m(),p(i,{title:"Abgeschlossen","hide-next":!0,onNextPage:e.nextPage,onPreviousPage:e.previousPage,onEndAssistant:e.endAssistant},{content:d(()=>s[0]||(s[0]=[n("h2",null,"Die Grundkonfiguration ist abgeschlossen.",-1),n("p",null," Die grundlegende Konfiguration der openWB ist abgeschlossen. Du wirst mit Beendigung dieses Assistenten auf die Statusseite weitergeleitet. Bitte überprüfe die dargestellten Informationen und passe bei Unstimmigkeiten die Einstellungen in den jeweiligen Konfigurationsseiten an (openWB -> Einstellungen -> Konfiguration). ",-1)])),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const w=r(u,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep10.vue"]]);export{w as default}; diff --git a/web/settings/assets/InstallAssistantStep2-46ec18be.js b/web/settings/assets/InstallAssistantStep2-46ec18be.js deleted file mode 100644 index d5057ea9cb..0000000000 --- a/web/settings/assets/InstallAssistantStep2-46ec18be.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./index-e2dbf7bf.js";import u from"./InstallAssistantStepTemplate-c95c4891.js";import d from"./System-684fe63a.js";import{_ as p,u as a,k as f,z as g,E as o,x as s,G as S}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const c={name:"InstallAssistantStep2",components:{InstallAssistantStepTemplate:u,SystemView:d},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",3)},previousPage(){this.$emit("switchPage",1)},endAssistant(){this.$emit("endAssistant")}}};function A(t,e,w,k,v,i){const r=a("SystemView"),m=a("InstallAssistantStepTemplate");return f(),g(m,{title:"2. Aktualisierung des openWB-Systems",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:o(()=>e[4]||(e[4]=[s("p",null," Bitte ein System-Update durchführen, um die Software auf den neuesten Stand der Features und Funktionen zu bringen. ",-1),s("p",null," Hierzu Versions-Informationen / Aktualisierung auswählen, Informationen aktualisieren klicken und falls ein Update verfügbar ist, wird der Update-Button grün (zum Update bereit). ",-1),s("p",null," Bei openWB-Systemen mit integriertem Display muss nach Zurücksetzen auf Werkseinstellungen oder nach Ausführen eines Updates das Display wieder eingeschaltet werden. ",-1),s("p",null,' Ein Klick auf "Änderungen" zeigt die Modifikationen. Ein Klick auf "Update" startet die Aktualisierung, welche auch einen automatischen Reboot initiiert (bitte ca. 5 Minuten warten). Danach muss der Assistent neu gestartet werden. ',-1)])),content:o(()=>[S(r,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=n=>t.$emit("sendCommand",n)),onSave:e[1]||(e[1]=n=>t.$emit("save")),onReset:e[2]||(e[2]=n=>t.$emit("reset")),onDefaults:e[3]||(e[3]=n=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const z=p(c,[["render",A],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep2.vue"]]);export{z as default}; diff --git a/web/settings/assets/InstallAssistantStep3-2b3c1903.js b/web/settings/assets/InstallAssistantStep3-2b3c1903.js deleted file mode 100644 index b15c2357c2..0000000000 --- a/web/settings/assets/InstallAssistantStep3-2b3c1903.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./index-e2dbf7bf.js";import d from"./InstallAssistantStepTemplate-c95c4891.js";import{G as m}from"./GeneralConfig-b1531208.js";import{_ as p,u as a,k as g,z as f,E as i,x as n,G as w}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"InstallAssistantStep3",components:{InstallAssistantStepTemplate:d,GeneralConfigView:m},mixins:[u],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:["openWB/general/extern"]}),methods:{nextPage(){this.$emit("switchPage",this.$store.state.mqtt["openWB/general/extern"]?4:5)},previousPage(){this.$emit("switchPage",2)},endAssistant(){this.$emit("endAssistant")}}};function B(t,e,S,c,h,r){const o=a("GeneralConfigView"),l=a("InstallAssistantStepTemplate");return g(),f(l,{title:"3. Allgemeine Einstellungen: Auswahl des Betriebsmodus primary (steuernd) bzw. secondary (gesteuerte WB)",onNextPage:r.nextPage,onPreviousPage:r.previousPage,onEndAssistant:r.endAssistant},{help:i(()=>e[4]||(e[4]=[n("p",null," Hier wird abgefragt, ob Dein System mit mehreren openWBs oder nur mit einer openWB betrieben wird. Eine openWB kann andere openWBs steuern. ",-1),n("p",null,' Zuerst ist im Feld "Steuerungsmodus" festzulegen, ob die openWB als "steuernd" (primary) oder als ferngesteuert (secondary) arbeiten soll. Die Einstellung gilt für genau die WB, auf der aktuell konfiguriert wird (korrekte IP-Adresse beachten). ',-1),n("p",null," Eine openWB standalone hat keinen Ladepunkt und arbeitet nur als Steuerteil (primary). Eine openWB Standard(+), custom, Duo und Buchse können sowohl als steuernder primary oder als ferngesteuerte secondary betrieben werden (Duo mit 2 Ladepunkten). Eine openWB Pro und Satellit können nur als s.g. Ladepunkt genutzt werden und benötigen zwingend einen separaten primary als Steuerteil. ",-1),n("p",null,' Sofern openWB als Energiemanagementsystem für steuerbare Verbrauchseinrichtungen (SteuVE) gemäß §14a EnWG verwendet werden soll, so ist für die VNB-Signaleingänge die entsprechende Hardware auszuwählen. -> s. Beschreibung zu "Steuerbare Verbrauchseinrichtung". ',-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:i(()=>[w(o,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const x=p(b,[["render",B],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep3.vue"]]);export{x as default}; diff --git a/web/settings/assets/InstallAssistantStep4-09557751.js b/web/settings/assets/InstallAssistantStep4-09557751.js deleted file mode 100644 index ca45b03173..0000000000 --- a/web/settings/assets/InstallAssistantStep4-09557751.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./index-e2dbf7bf.js";import p from"./InstallAssistantStepTemplate-c95c4891.js";import{b as u}from"./ChargePointInstallation-1b33cf58.js";import{_ as m,u as a,k as g,z as f,E as o,x as n,G as w}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"InstallAssistantStep4",components:{InstallAssistantStepTemplate:p,ChargePointInstallationView:u},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",9)},previousPage(){this.$emit("switchPage",3)},endAssistant(){this.$emit("endAssistant")}}};function k(t,e,h,B,v,i){const r=a("ChargePointInstallationView"),d=a("InstallAssistantStepTemplate");return g(),f(d,{title:"4. Einrichten der Ladepunkte (openWB als secondary)",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:o(()=>e[4]||(e[4]=[n("p",null,' Diese hier vorzukonfigurierende openWB wurde als "secondary" eingestellt und wird von einer anderen openWB oder standalone ferngesteuert. ',-1),n("p",null," Bei vorkonfigurierten openWBs ist ab Werk bereits ein (zwei bei einer DUO) interner Ladepunkt eingetragen, es müssen keine weiteren Ladepunkte hinzugefügt werden. ",-1),n("p",null,' Tragen Sie unter Ladepunkte bei verfügbare Ladepunkte "Interne openWB" ein und wählen Sie die Bauart der openWB (z.B. openWB series 1/2 custom, Standard (+) oder Buchse) aus. ',-1),n("p",null," Wenn eine openWB Duo gewählt wird, so sind zwei Ladepunkte mit Ladepunkt-Nummer 1 und 2 zu konfigurieren. Bei der openWB Pro und Satellit sind keine Einstellungen notwendig. ",-1),n("p",null,"Weitere Einstellungen sind bei der Vorkonfiguration einer secondary nicht notwendig.",-1),n("p",null," Bitte lesen Sie auch die Hinweistexte, welche durch Klicken auf das Fragezeichensymbol erscheinen. Hier sind weiterführende Informationen zu den Eingabefeldern zu finden. ",-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:o(()=>[w(r,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const E=m(c,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep4.vue"]]);export{E as default}; diff --git a/web/settings/assets/InstallAssistantStep5-93dbef29.js b/web/settings/assets/InstallAssistantStep5-93dbef29.js deleted file mode 100644 index 1eeddb1b5c..0000000000 --- a/web/settings/assets/InstallAssistantStep5-93dbef29.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./index-e2dbf7bf.js";import m from"./InstallAssistantStepTemplate-c95c4891.js";import{H as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as r,k as g,z as f,E as a,x as n,G as w}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const h={name:"InstallAssistantStep5",components:{InstallAssistantStepTemplate:m,HardwareInstallationView:u},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",6)},previousPage(){this.$emit("switchPage",3)},endAssistant(){this.$emit("endAssistant")}}};function c(t,e,v,S,b,i){const o=r("HardwareInstallationView"),d=r("InstallAssistantStepTemplate");return g(),f(d,{title:"4. Energiesystem - Geräte und Komponenten einrichten",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:a(()=>e[4]||(e[4]=[n("p",null,' Diese openWB wurde als "primary" konfiguriert und übernimmt die Steuerung anderer openWBs, falls vorhanden, sowie die alleinige Regelung des Systems. Dazu müssen im Folgenden die Geräte und Komponenten eingerichtet werden. ',-1),n("p",null," Sofern das System nicht zurückgesetzt wurde, ist im Auslieferungszustand für erste Ladetests nach der WB-Montage ein virtueller Zähler vorkonfiguriert. Dieser muss zuerst gelöscht werden, wenn das im Gebäude installierte Energiesystem bestehend aus EVU-Zähler, PV-Anlage und ggf. Speicher in openWB konfiguriert wird. ",-1),n("p",null," Jedes verfügbare Gerät wird durch eine eigene IP-Adresse definiert. Dieses Gerät ist über den Herstellernamen des Energiesystems im Auswahlmenü der verfügbaren Geräte auszuwählen. Unterhalb des Gerätes werden die zugehörigen Komponenten EVU-Zähler, WR und Speicher konfiguriert. Es können je nach Bedarf beliebig viele Geräte und Komponenten miteinander kombiniert werden. ",-1),n("p",null," Bitte lesen Sie auch die Hinweistexte, welche durch Klicken auf das Fragezeichensymbol erscheinen. Hier sind weiterführende Informationen zu den Eingabefeldern zu finden. ",-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:a(()=>[w(o,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const x=p(h,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep5.vue"]]);export{x as default}; diff --git a/web/settings/assets/InstallAssistantStep6-cfa0befa.js b/web/settings/assets/InstallAssistantStep6-cfa0befa.js deleted file mode 100644 index 9c15c8b4d2..0000000000 --- a/web/settings/assets/InstallAssistantStep6-cfa0befa.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./index-e2dbf7bf.js";import u from"./InstallAssistantStepTemplate-c95c4891.js";import{b as p}from"./ChargePointInstallation-1b33cf58.js";import{_ as m,u as a,k as g,z as h,E as r,x as n,G as w}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const P={name:"InstallAssistantStep6",components:{InstallAssistantStepTemplate:u,ChargePointInstallationView:p},mixins:[d],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",7)},previousPage(){this.$emit("switchPage",5)},endAssistant(){this.$emit("endAssistant")}}};function f(t,e,c,k,b,i){const o=a("ChargePointInstallationView"),l=a("InstallAssistantStepTemplate");return g(),h(l,{title:"5. Einrichten der Ladepunkte (openWB als primary)",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:r(()=>e[4]||(e[4]=[n("p",null,' Enthält die steuernde openWB (primary) Ladetechnik, wird bei "Verfügbare Ladepunkte" Interne openWB ausgewählt. Weitere LP werden im primary als Externe openWB (als secondary konfigurierte openWB) oder andere WB-Typen wie Pro, Satellit eingebunden. ',-1),n("p",null,"Bei openWBs ab Werk kann hier bereits ein Ladepunkt eingetragen sein.",-1),n("p",null," Nachfolgend werden die Eigenschaften des Ladepunktes wie IP-Adresse und elektrischer Anschluss definiert. Die meisten openWB werden 3-phasig angeschlossen! Bei mehreren Ladepunkten ist auf phasenrotierten Anschluss der openWB-Zuleitung zu achten! Abschließend wird die korrekte Zuordnung der Phase 1 des Ladekabels zur zugehörigen EVU-Zählerphase konfiguriert. Dies ist sehr wichtig, um optimales Lastmanagement sicherzustellen! ",-1),n("p",null," Tipp zur Zuordnung: Verwende ein nur 1-phasig ladendes Auto (z.B. Hybrid) oder stelle bei openWB mit 1p3p-Phasenumschaltung temporär unter Sofortladen (s. Einstellungen -> Ladeeinstellungen) auf einphasig, um eine 1-phasige Ladung zu erzwingen. Gehe unter Status und vergleiche die Leistungen bzw. Ströme der 3 Phasen am EVU-Zähler (rot) beim und nach dem Autoladen (Sofortladen mit 16A/ Stop). Diejenige EVU-Phase, die deutlich erhöhte Werte anzeigt, ist die auszuwählende EVU-Phase. ",-1),n("p",null," Im grauen Menü Ladepunkt-Profile können neben dem Standard-Ladepunkt-Profil auch weitere Ladepunkt-Profile, die andere WB-Typen abbilden, erstellt werden. Dort sind Eintragungen bzgl. des Ladepunkt-Maximalstroms bei einer Phase bzw. mehreren Phasen vorzunehmen. Die Profile werden abschließend im jeweiligen blauen Ladepunkt mittels Auswahlmenü zugeordnet. ",-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:r(()=>[w(o,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const $=m(P,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep6.vue"]]);export{$ as default}; diff --git a/web/settings/assets/InstallAssistantStep7-3f595c88.js b/web/settings/assets/InstallAssistantStep7-3f595c88.js deleted file mode 100644 index 4754692ee0..0000000000 --- a/web/settings/assets/InstallAssistantStep7-3f595c88.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./index-e2dbf7bf.js";import m from"./InstallAssistantStepTemplate-c95c4891.js";import p from"./LoadManagementConfig-b159973d.js";import{_ as u,u as r,k as g,z as h,E as a,x as n,G as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./OpenwbSortableList-ac8384c9.js";const f={name:"InstallAssistantStep7",components:{InstallAssistantStepTemplate:m,LoadManagementConfigView:p},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",8)},previousPage(){this.$emit("switchPage",6)},endAssistant(){this.$emit("endAssistant")}}};function b(t,e,S,w,A,i){const o=r("LoadManagementConfigView"),d=r("InstallAssistantStepTemplate");return g(),h(d,{title:"6. Konfiguration des Lastmanagements",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:a(()=>e[4]||(e[4]=[n("p",null," Im Lastmanagement werden die maximale Leistung sowie die maximalen Ströme für jede Phase des Zählermoduls sowie bei Hybrid-Systemen (per DC-angebundener Speicher) die maximale Ausgangsleistung des Wechselrichters der PV-Anlage eingetragen, falls eine solche vorhanden ist. ",-1),n("p",null,' Der erste Zähler ist in der Regel der Zähler am EVU-Punkt (Position des PV/Speicher-Smartmeters direkt hinter dem VNB-Zähler). In openWB ist hierzu auf die unterhalb der "Vorhandene Zählermodule" liegende (rote) EVU-Zähler-Komponente zu klicken, in welche die maximale EVU-Leistung sowie die Phasenströme eingetragen werden, für die der Hausanschluss abgesichert ist (Elektriker fragen, typisch f. EFH: 24kW/3x35A, 43kW/3x63A). ',-1),n("p",null," Ist ein Wechselrichter mit DC-angebundenem Speicher unter Geräte hinzugefügt worden, dann ist unter der (grünen) WR-Komponente noch die maximale Ausgangsleistung des WR einzutragen. ",-1),n("p",null," Der EVU-Zähler (rot) schließt alle weiteren Komponenten wie WR und Speicher unter sich ein. Bei AC-eingebundenen Speichern befinden sich WR und Speicher in derselben Ebene, bei DC-eingebundenen Speichern (Hybrid) der Speicher unterhalb des WR. Die Ladepunkte (z.B. Externe openWB) befinden sich auf derselben Ebene wie der WR und unterhalb des EVU-Zählers. Anpassungen der Anordnungen sind über die Pfeil-Bereiche der Komponenten durch einfaches Verschieben mit der Maus oder am Smartphone möglich. ",-1),n("p",null,null,-1),n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1)])),content:a(()=>[c(o,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const I=u(f,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep7.vue"]]);export{I as default}; diff --git a/web/settings/assets/InstallAssistantStep8-e82bd428.js b/web/settings/assets/InstallAssistantStep8-e82bd428.js deleted file mode 100644 index 50a1d86221..0000000000 --- a/web/settings/assets/InstallAssistantStep8-e82bd428.js +++ /dev/null @@ -1 +0,0 @@ -import{C as g}from"./index-e2dbf7bf.js";import p from"./InstallAssistantStepTemplate-c95c4891.js";import{a as h}from"./VehicleConfig-12242a8a.js";import{F as f}from"./vendor-fortawesome-3d19d475.js";import{_ as z,u as r,k as w,z as P,E as a,x as n,y as o,G as d}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const F={name:"InstallAssistantStep8",components:{InstallAssistantStepTemplate:p,VehicleConfigView:h,FontAwesomeIcon:f},mixins:[g],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:[]}),methods:{nextPage(){this.$emit("switchPage",9)},previousPage(){this.$emit("switchPage",7)},endAssistant(){this.$emit("endAssistant")}}},A={class:"font-weight-bold"};function v(t,e,c,S,V,i){const l=r("FontAwesomeIcon"),u=r("VehicleConfigView"),m=r("InstallAssistantStepTemplate");return w(),P(m,{title:"7. Einrichten der Fahrzeuge",onNextPage:i.nextPage,onPreviousPage:i.previousPage,onEndAssistant:i.endAssistant},{help:a(()=>[e[6]||(e[6]=n("p",null,"Vor dem eigentlichen Fahrzeug werden zuerst die Fahrzeug- und Lade-Profile konfiguriert.",-1)),e[7]||(e[7]=n("p",null," Bei nur einem Fahrzeug reicht das Standard-Fahrzeug-Profil aus. Bei mehreren Fahrzeugtypen werden weitere Fahrzeug-Profile hinzugefügt. Im Anschluss werden die Fahrzeug-Profile mit den passenden Einstellungen des Fahrzeugtyps versehen (Mindeststromstärke, Maximalstromstärke bei einer/mehreren Phase/n sowie Angaben zur Batterie und Handhabung der Phasen entsprechend den Daten des Automobilherstellers. Im Zweifelsfall den Hersteller des Autos oder im openWB-Forum nachfragen). ",-1)),n("p",A,[e[4]||(e[4]=o(' Wichtig: Die "Angaben zur Handhabung von Phasen" des Fahrzeugs sind richtig einzutragen! Beachte die Hilfstexte, die Du durch Klick auf ')),d(l,{icon:["far","question-circle"]}),e[5]||(e[5]=o(" anzeigen kannst. "))]),e[8]||(e[8]=n("p",null," Bei nur einem Fahrzeug reicht das Standard-Lade-Profil aus. Bei mehreren Fahrzeugen können weitere Lade-Profile hinzugefügt werden. Dies erlaubt die Nutzung unterschiedlicher Lademodi je Fahrzeug (z.B. EV1 = Sofortladen, EV2 = PV-Laden). Im Anschluss werden die Voreinstellungen zu den verschiedenen Lademodi konfiguriert. ",-1)),e[9]||(e[9]=n("p",null," Nun wird das eigentliche Fahrzeug angelegt und mit dem gewünschten Fahrzeug-Profil / Lade-Profil versehen. Ist nur ein Fahrzeug vorhanden, reicht das Standard-Fahrzeug aus. ",-1)),e[10]||(e[10]=n("p",{class:"font-weight-bold"},"Änderungen werden nur durch Klicken auf Speichern wirksam!",-1))]),content:a(()=>[d(u,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["onNextPage","onPreviousPage","onEndAssistant"])}const T=z(F,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep8.vue"]]);export{T as default}; diff --git a/web/settings/assets/InstallAssistantStep9-846bde46.js b/web/settings/assets/InstallAssistantStep9-846bde46.js deleted file mode 100644 index f6217a360a..0000000000 --- a/web/settings/assets/InstallAssistantStep9-846bde46.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./index-e2dbf7bf.js";import p from"./InstallAssistantStepTemplate-c95c4891.js";import{D as u}from"./DataManagement-2ea0a0a1.js";import{_ as d,u as i,k as g,z as f,E as o,x as a,G as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"InstallAssistantStep9",components:{InstallAssistantStepTemplate:p,DataManagement:u},mixins:[l],emits:["save","reset","defaults","sendCommand","switchPage","endAssistant"],data:()=>({mqttTopicsToSubscribe:["openWB/general/extern"]}),computed:{stepNumber(){return this.$store.state.mqtt["openWB/general/extern"]?5:8}},methods:{nextPage(){this.$emit("switchPage",10)},previousPage(){this.$emit("switchPage",this.$store.state.mqtt["openWB/general/extern"]?4:8)},endAssistant(){this.$emit("endAssistant")}}};function h(t,e,P,S,$,n){const r=i("DataManagement"),m=i("InstallAssistantStepTemplate");return g(),f(m,{title:`${n.stepNumber}. Datensicherung der neuen Konfiguration`,onNextPage:n.nextPage,onPreviousPage:n.previousPage,onEndAssistant:n.endAssistant},{help:o(()=>e[4]||(e[4]=[a("p",null," Wir empfehlen an dieser Stelle eine manuell initiierte Sicherung der neu konfigurierten openWB zu erstellen. ",-1),a("p",null," Dieser Vorgang sollte im Betrieb regelmäßig wiederholt werden (mindestens vor Updates), um sowohl die individuellen Log-Daten als auch auf ältere Konfigurationen zurückgreifen zu können (Backups). ",-1),a("p",null,' Die Sicherung kann auch automatisiert auf einem Cloud-Dienst durchgeführt werden. Hierzu bitte im unteren Bereich "Backup-Cloud" die entsprechenden Einstellungen vornehmen. ',-1)])),content:o(()=>[v(r,{"install-assistant-active":!0,onSendCommand:e[0]||(e[0]=s=>t.$emit("sendCommand",s)),onSave:e[1]||(e[1]=s=>t.$emit("save")),onReset:e[2]||(e[2]=s=>t.$emit("reset")),onDefaults:e[3]||(e[3]=s=>t.$emit("defaults"))})]),_:1},8,["title","onNextPage","onPreviousPage","onEndAssistant"])}const W=d(c,[["render",h],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStep9.vue"]]);export{W as default}; diff --git a/web/settings/assets/InstallAssistantStepTemplate-c95c4891.js b/web/settings/assets/InstallAssistantStepTemplate-c95c4891.js deleted file mode 100644 index 73af82c854..0000000000 --- a/web/settings/assets/InstallAssistantStepTemplate-c95c4891.js +++ /dev/null @@ -1 +0,0 @@ -import{C as g}from"./index-e2dbf7bf.js";import{l as v,ak as y,al as w,F as x}from"./vendor-fortawesome-3d19d475.js";import{_ as k,u as r,k as i,l as a,G as t,E as s,x as n,y as c,B as p,m as _}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const B="/openWB/web/settings/img/openWB_logo_light.png";v.add(y,w);const h={name:"InstallAssistantStepTemplate",components:{FontAwesomeIcon:x},mixins:[g],props:{title:{type:String,required:!0},hidePrevious:{type:Boolean,required:!1,default:!1},hideNext:{type:Boolean,required:!1,default:!1},hideEnd:{type:Boolean,required:!1,default:!1}},emits:["previousPage","nextPage","endAssistant"],methods:{nextPage(){window.scrollTo(0,0),this.$emit("nextPage")},previousPage(){window.scrollTo(0,0),this.$emit("previousPage")},endAssistant(){this.$emit("endAssistant")}}},A={class:"row justify-content-center mb-1"},C={key:0,class:"col-md-4 d-flex py-1 justify-content-center"},P={key:1,class:"col-md-4 d-flex py-1 justify-content-center"},S={key:2,class:"col-md-4 d-flex py-1 justify-content-center"},T={class:"row justify-content-center"},I={class:"page-help-text col-md-3 py-2"},N={class:"col py-2"};function $(u,e,o,j,W,l){const m=r("font-awesome-icon"),d=r("openwb-base-click-button"),b=r("openwb-base-card");return i(),a("div",null,[t(b,{title:o.title,class:"p-0 mx-3"},{footer:s(()=>[n("div",A,[o.hidePrevious?p("",!0):(i(),a("div",C,[t(d,{class:"btn-block btn-warning",onButtonClicked:e[0]||(e[0]=f=>l.previousPage())},{default:s(()=>[t(m,{"fixed-width":"",icon:["fas","caret-left"]}),e[3]||(e[3]=c(" Zurück "))]),_:1})])),o.hideNext?p("",!0):(i(),a("div",P,[t(d,{class:"btn-block btn-success",onButtonClicked:e[1]||(e[1]=f=>l.nextPage())},{default:s(()=>[e[4]||(e[4]=c(" Weiter ")),t(m,{"fixed-width":"",icon:["fas","caret-right"]})]),_:1})])),o.hideEnd?p("",!0):(i(),a("div",S,[t(d,{class:"btn-block btn-danger",onButtonClicked:e[2]||(e[2]=f=>l.endAssistant())},{default:s(()=>e[5]||(e[5]=[c(" Assistent beenden ")])),_:1})]))])]),default:s(()=>[n("div",T,[n("div",I,[_(u.$slots,"help",{},()=>[e[6]||(e[6]=n("img",{src:B,alt:"openWB Logo",class:"w-100"},null,-1))],!0)]),n("div",N,[_(u.$slots,"content",{},void 0,!0)])])]),_:3},8,["title"])])}const Z=k(h,[["render",$],["__scopeId","data-v-db9e78cb"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/install_assistant/InstallAssistantStepTemplate.vue"]]);export{Z as default}; diff --git a/web/settings/assets/InstantChargeConfig-fe6ed126.js b/web/settings/assets/InstantChargeConfig-fe6ed126.js deleted file mode 100644 index dbdf046014..0000000000 --- a/web/settings/assets/InstantChargeConfig-fe6ed126.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./index-e2dbf7bf.js";import{_ as b,u as o,k as a,l as i,x as _,G as s,E as r,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const f={name:"OpenwbInstantChargeConfigView",mixins:[l],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/chargemode_config/instant_charging/phases_to_use"]}}},h={class:"instantChargeConfig"},c={name:"instantChargeConfigForm"},v={key:0},w={key:1};function C(t,e,$,B,k,V){const p=o("openwb-base-alert"),m=o("openwb-base-button-group-input"),g=o("openwb-base-card"),d=o("openwb-base-submit-buttons");return a(),i("div",h,[_("form",c,[s(g,{title:"Phasenumschaltung"},{default:r(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(a(),i("div",v,[s(p,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[u(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(a(),i("div",w,[s(m,{title:"Anzahl Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/instant_charging/phases_to_use"],"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateState("openWB/general/chargemode_config/instant_charging/phases_to_use",n))},{help:r(()=>e[5]||(e[5]=[u(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "Sofortladen" mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen 1- und 3-phasig (s.g. 1p3p). ')])),_:1},8,["model-value"])]))]),_:1}),s(d,{"form-name":"instantChargeConfigForm",onSave:e[1]||(e[1]=n=>t.$emit("save")),onReset:e[2]||(e[2]=n=>t.$emit("reset")),onDefaults:e[3]||(e[3]=n=>t.$emit("defaults"))})])])}const F=b(f,[["render",C],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/InstantChargeConfig.vue"]]);export{F as default}; diff --git a/web/settings/assets/LegalSettings-cbf72384.js b/web/settings/assets/LegalSettings-cbf72384.js deleted file mode 100644 index 42ba64a398..0000000000 --- a/web/settings/assets/LegalSettings-cbf72384.js +++ /dev/null @@ -1 +0,0 @@ -import{l as _,a3 as k,F as y}from"./vendor-fortawesome-3d19d475.js";import{C as v}from"./index-e2dbf7bf.js";import{_ as B,u as n,k as i,l as h,x as a,G as o,E as r,z as m,y as d,B as p}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";_.add(k);const z={name:"OpenwbDataProtectionView",components:{FontAwesomeIcon:y},mixins:[v],emits:["sendCommand","save"],data(){return{mqttTopicsToSubscribe:["openWB/system/dataprotection_acknowledged"]}},methods:{sendSystemCommand(t,e={}){this.$emit("sendCommand",{command:t,data:e})}}},S={class:"dataProtection"},$={name:"dataProtectionForm"},C={class:"row justify-content-center"},V={class:"col-md-4 d-flex justify-content-center"};function W(t,e,N,x,A,b){const u=n("openwb-base-button-group-input"),c=n("font-awesome-icon"),g=n("openwb-base-click-button"),l=n("openwb-base-alert"),w=n("openwb-base-submit-buttons"),f=n("openwb-base-card");return i(),h("div",S,[a("form",$,[o(f,{title:"Nutzungsbedingungen & Datenschutzerklärung"},{footer:r(()=>[o(w,{"form-name":"dataProtectionForm","hide-reset":!0,"hide-defaults":!0,onSave:e[3]||(e[3]=s=>t.$emit("save"))})]),default:r(()=>[e[7]||(e[7]=a("iframe",{src:"dataProtection-usageTerms.html",width:"100%",height:"400px",class:"bg-light"},null,-1)),e[8]||(e[8]=a("hr",null,null,-1)),o(u,{title:"Nutzungsbedingungen",buttons:[{buttonValue:!1,text:"Ablehnen",class:"btn-outline-danger"},{buttonValue:!0,text:"Akzeptieren",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/system/usage_terms_acknowledged"],"onUpdate:modelValue":e[0]||(e[0]=s=>t.updateState("openWB/system/usage_terms_acknowledged",s))},null,8,["model-value"]),t.$store.state.mqtt["openWB/system/usage_terms_acknowledged"]?p("",!0):(i(),m(l,{key:0,subtype:"danger",class:"mb-1"},{default:r(()=>[e[5]||(e[5]=d(" Sie müssen die Nutzungsbedingungen akzeptieren, bevor openWB eingesetzt werden kann. ")),a("div",C,[a("div",V,[o(g,{class:"btn-danger",onButtonClicked:e[1]||(e[1]=s=>b.sendSystemCommand("systemShutdown"))},{default:r(()=>[e[4]||(e[4]=d(" Nicht akzeptieren und ausschalten ")),o(c,{"fixed-width":"",icon:["fas","power-off"]})]),_:1})])])]),_:1})),o(u,{title:"Datenschutzerklärung",buttons:[{buttonValue:!1,text:"Ablehnen",class:"btn-outline-danger"},{buttonValue:!0,text:"Akzeptieren",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/system/dataprotection_acknowledged"],"onUpdate:modelValue":e[2]||(e[2]=s=>t.updateState("openWB/system/dataprotection_acknowledged",s))},null,8,["model-value"]),t.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]?p("",!0):(i(),m(l,{key:1,subtype:"warning"},{default:r(()=>e[6]||(e[6]=[d(" Wenn Du nicht einwilligst, wird eine ggf. konfigurierte Cloud-Anbindung gelöscht. Die openWB arbeitet autark wie gewohnt weiter. Fernzugriff und Remote-Support sind dann nicht mehr möglich! ")])),_:1}))]),_:1})])])}const L=B(z,[["render",W],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/LegalSettings.vue"]]);export{L as default}; diff --git a/web/settings/assets/LoadManagementConfig-b159973d.js b/web/settings/assets/LoadManagementConfig-b159973d.js deleted file mode 100644 index 4887f9b3f7..0000000000 --- a/web/settings/assets/LoadManagementConfig-b159973d.js +++ /dev/null @@ -1 +0,0 @@ -import{l as y,O as C,N as L,F as x}from"./vendor-fortawesome-3d19d475.js";import{C as V}from"./index-e2dbf7bf.js";import{S as $}from"./OpenwbSortableList-ac8384c9.js";import{_ as q,u as l,k as u,l as m,x as d,G as s,E as o,y as i,N as w,M as v,z as W,F as _}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";y.add(C,L);const Z={name:"OpenwbLoadManagementConfigView",components:{SortableList:$,FontAwesomeIcon:x},mixins:[V],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/counter/config/home_consumption_source_id","openWB/counter/config/consider_less_charging","openWB/counter/get/hierarchy","openWB/system/device/+/component/+/config","openWB/counter/+/config/max_power_errorcase","openWB/counter/+/config/max_currents","openWB/counter/+/config/max_total_power","openWB/pv/+/config/max_ac_out","openWB/chargepoint/+/config"]}},computed:{componentConfigurations(){return this.getWildcardTopics("openWB/system/device/+/component/+/config")},counterConfigs:{get(){let t=this.getWildcardTopics("openWB/system/device/+/component/+/config");return Object.keys(t).filter(e=>{var n;return(n=t[e])==null?void 0:n.type.includes("counter")}).reduce((e,n)=>({...e,[n]:t[n]}),{})}},counterOptions(){var t=[];for(const e of Object.values(this.componentConfigurations))this.isComponentType(e==null?void 0:e.type,"counter")&&t.push({value:e.id,text:e.name});return t.sort((e,n)=>e.text==n.text?0:e.text>n.text?1:-1)},inverterConfigs:{get(){let t=this.getWildcardTopics("openWB/system/device/+/component/+/config");return Object.keys(t).filter(e=>{var n;return(n=t[e])==null?void 0:n.type.includes("inverter")}).reduce((e,n)=>({...e,[n]:t[n]}),{})}},hierarchyLabels:{get(){let t={};for(const e of Object.values(this.$store.state.mqtt["openWB/counter/get/hierarchy"]))t={...t,...this.getElementTreeNames(e)};return t}},getHcSourceIdOptions(){let t=[{value:null,text:"von openWB berechnen (in 99% der Fälle die richtige Einstellung)"}],e=[{label:"Eingerichtete Zähler-Komponenten",options:[...this.counterOptions]}];return{options:t,groups:e}}},methods:{getElementTreeNames(t){let e={};if(t.type=="cp"){let n=this.getChargePoint(t.id);n&&(e[t.id]=n.name)}else{let n=this.getComponent(t.id);n&&(e[t.id]=n.name)}return t.children.forEach(n=>{e={...e,...this.getElementTreeNames(n)}}),e},getComponent(t){let e;return Object.keys(this.$store.state.mqtt).forEach(n=>{n.match("^openWB/system/device/[0-9]+/component/"+t+"/config$")&&(e=this.$store.state.mqtt[n])}),e},getChargePoint(t){let e;return Object.keys(this.$store.state.mqtt).forEach(n=>{n.match("^openWB/chargepoint/"+t+"/config$")&&(e=this.$store.state.mqtt[n])}),e},isComponentType(t,e){return t==null?void 0:t.split("_").includes(e)}}},M={class:"loadManagementConfig"},U={name:"loadManagementConfigForm"},A={key:0},E={key:1},F={key:0},D={key:1};function O(t,e,n,P,H,g){const h=l("openwb-base-alert"),k=l("openwb-base-button-group-input"),B=l("openwb-base-select-input"),f=l("openwb-base-heading"),b=l("font-awesome-icon"),p=l("openwb-base-number-input"),c=l("openwb-base-card"),S=l("sortable-list"),z=l("openwb-base-submit-buttons");return u(),m("div",M,[d("form",U,[s(c,{title:"Einstellungen",collapsible:!0,collapsed:!1},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(u(),m("div",A,[s(h,{subtype:"info"},{default:o(()=>e[6]||(e[6]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(u(),m("div",E,[s(k,{title:"Fahrzeuge, die nicht mit Sollstrom laden",buttons:[{buttonValue:!1,text:"nicht berücksichtigen",class:"btn-outline-danger"},{buttonValue:!0,text:"berücksichtigen",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/counter/config/consider_less_charging"],"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateState("openWB/counter/config/consider_less_charging",r))},{help:o(()=>e[7]||(e[7]=[d("p",null," Wenn angesteckte Fahrzeuge, die nicht oder nicht mit der Sollstromstärke laden, im Lastmanagement berücksichtigt werden, wird für diese der Sollstrom reserviert. Dadurch können bei Eingreifen des Lastmanagements andere Fahrzeuge möglicherweise nur mit reduzierter Stromstärke laden und der reservierte Strom wird nicht genutzt. Wenn die Fahrzeuge wieder Leistung beziehen, z.B. um vorzuklimatisieren, nutzen sie den für sie reservierten Strom. ",-1),d("p",null," Wenn angesteckte Fahrzeuge, die nicht oder nicht mit der Sollstromstärke laden, nicht im Lastmanagement berücksichtigt werden, wird für diese auch kein Strom bei vorliegender Ladefreigabe reserviert bzw. es wird nur der tatsächlich genutzte Strom im Lastmanagement berücksichtigt. Andere Fahrzeuge können dadurch mit höherer Stromstärke laden. Wenn die maximalen Lastmanagement-Grenzen fast erreicht sind und die Fahrzeuge wieder Leistung beziehen, z.B. um vorzuklimatisieren, kann es zu einer kurzzeitigen Überschreitung der Lastmanagement-Grenzen kommen, bis im nächsten Zyklus die Stromstärken aller Ladepunkte an die neue Situation angepasst wurden. Das kurzzeitige Überschreiten der Maximal-Werte stellt für die Sicherungen in der Regel kein Problem dar. ",-1)])),_:1},8,["model-value"]),s(B,{title:"Hausverbrauch",options:g.getHcSourceIdOptions.options,groups:g.getHcSourceIdOptions.groups,"model-value":t.$store.state.mqtt["openWB/counter/config/home_consumption_source_id"],"onUpdate:modelValue":e[1]||(e[1]=r=>t.updateState("openWB/counter/config/home_consumption_source_id",r))},{help:o(()=>e[8]||(e[8]=[i(" Meist ist der Zähler am EVU-Punkt installiert, dann muss hier 'von openWB berechnen' ausgewählt werden. Wenn der Zähler im Hausverbrauchszweig installiert ist, die Struktur wie im "),d("a",{href:"https://github.com/openWB/core/wiki/Hausverbrauchs-Zähler",target:"_blank",rel:"noopener noreferrer"}," Wiki ",-1),i(" beschrieben anordnen und hier den Hausverbrauchszähler auswählen. Dann wird dieser Wert abzüglich der Ladeleistung als Hausverbrauch erfasst. ")])),_:1},8,["options","groups","model-value"]),s(f,null,{default:o(()=>e[9]||(e[9]=[i(" Vorhandene Zählermodule ")])),_:1}),s(h,{subtype:"info"},{default:o(()=>e[10]||(e[10]=[i(" Die maximale Leistung wird nur für den EVU-Zähler berücksichtigt. Bei Zwischenzählern begrenzt das Lastmanagement rein anhand der maximalen Phasenströme."),d("br",null,null,-1),i(" Wenn ein Zähler nicht auslesbar ist, wird weiterhin versucht, diesen auszulesen und nach 60s die angenommene Leistung im Fehlerfall verwendet, die unten für jeden Zähler eingestellt wird, um eine Überlast zu vermeiden. Die angenommene Leistung wird gleichmäßig auf die Phasen verteilt."),d("br",null,null,-1),i(" Überlicherweise sind Hausanschlüsse mit 24kW und 3*35A bzw. 43kW und 3*63A abgesichert. ")])),_:1}),(u(!0),m(w,null,v(g.counterConfigs,r=>(u(),W(c,{key:r.id,collapsible:!0,collapsed:!0,subtype:"danger"},{header:o(()=>[s(b,{"fixed-width":"",icon:["fas","gauge-high"]}),i(" "+_(r.name),1)]),default:o(()=>[s(p,{title:"Maximale Leistung",min:1,step:.1,required:"",unit:"kW","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_total_power"]/1e3,"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_total_power",a*1e3)},{help:o(()=>[...e[11]||(e[11]=[i(" Maximal zulässige Leistung für diesen (Zwischen-)Zähler. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),s(p,{title:"Maximaler Strom L1",min:16,step:1,unit:"A",required:"","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_currents"][0],"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_currents",a,"0")},{help:o(()=>[...e[12]||(e[12]=[i(" Maximal zulässiger Strom für die Phase 1 dieses (Zwischen-)Zählers. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),s(p,{title:"Maximaler Strom L2",min:16,step:1,unit:"A",required:"","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_currents"][1],"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_currents",a,"1")},{help:o(()=>[...e[13]||(e[13]=[i(" Maximal zulässiger Strom für die Phase 2 dieses (Zwischen-)Zählers. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),s(p,{title:"Maximaler Strom L3",min:16,step:1,unit:"A",required:"","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_currents"][2],"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_currents",a,"2")},{help:o(()=>[...e[14]||(e[14]=[i(" Maximal zulässiger Strom für die Phase 3 dieses (Zwischen-)Zählers. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),s(p,{title:"Maximale Leistung im Fehlerfall",min:0,step:.1,unit:"kW","model-value":t.$store.state.mqtt["openWB/counter/"+r.id+"/config/max_power_errorcase"]/1e3,"onUpdate:modelValue":a=>t.updateState("openWB/counter/"+r.id+"/config/max_power_errorcase",a*1e3)},{help:o(()=>[...e[15]||(e[15]=[i(" Angenommen Leistung für diesen (Zwischen-)Zähler, falls vom Zähler keine Werte abgefragt werden können. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])]),_:2},1024))),128)),s(f,null,{default:o(()=>e[16]||(e[16]=[i(" Vorhandene Wechselrichtermodule ")])),_:1}),(u(!0),m(w,null,v(g.inverterConfigs,r=>(u(),W(c,{key:r.id,collapsible:!0,collapsed:!0,subtype:"success"},{header:o(()=>[s(b,{"fixed-width":"",icon:["fas","solar-panel"]}),i(" "+_(r.name),1)]),default:o(()=>[s(p,{title:"Maximale Ausgangsleistung des Wechselrichters",min:0,step:.1,unit:"kW",required:"","model-value":t.$store.state.mqtt["openWB/pv/"+r.id+"/config/max_ac_out"]/1e3,"onUpdate:modelValue":a=>t.updateState("openWB/pv/"+r.id+"/config/max_ac_out",a*1e3)},{help:o(()=>[...e[17]||(e[17]=[i(" Relevant bei Hybrid-Systemen mit DC-Speicher. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])]),_:2},1024))),128))]))]),_:1}),s(c,{title:"Struktur",collapsible:!0,collapsed:!0},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(u(),m("div",F,[s(h,{subtype:"info"},{default:o(()=>e[18]||(e[18]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(u(),m("div",D,[s(S,{title:"Anordnung der Komponenten","model-value":t.$store.state.mqtt["openWB/counter/get/hierarchy"],labels:g.hierarchyLabels,"onUpdate:modelValue":e[2]||(e[2]=r=>t.updateState("openWB/counter/get/hierarchy",r))},{help:o(()=>e[19]||(e[19]=[i(" Durch die Anordnung der Komponenten werden Abhängigkeiten abgebildet."),d("br",null,null,-1),i(" An erster Stelle muss eine Zählerkomponente stehen, die den Netzanschlusspunkt erfasst. Dafür kann auch ein virtueller Zähler genutzt werden."),d("br",null,null,-1),i(" Die weiteren Komponenten müssen hierarchisch so angeordnet werden, wie sie auch physisch im Stromnetz angeschlossen werden."),d("br",null,null,-1),i(" Bei DC-gekoppelten Speichern sind diese hinter dem zugehörigen Wechselrichter zu platzieren, damit die Abhängigkeit in der Regelung berücksichtigt werden kann. ")])),_:1},8,["model-value","labels"])]))]),_:1}),s(z,{"form-name":"loadManagementConfigForm",onSave:e[3]||(e[3]=r=>t.$emit("save")),onReset:e[4]||(e[4]=r=>t.$emit("reset")),onDefaults:e[5]||(e[5]=r=>t.$emit("defaults"))})])])}const Q=q(Z,[["render",O],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/LoadManagementConfig.vue"]]);export{Q as default}; diff --git a/web/settings/assets/MqttBridgeConfig-8dc81a60.js b/web/settings/assets/MqttBridgeConfig-8dc81a60.js deleted file mode 100644 index 55f61e77b1..0000000000 --- a/web/settings/assets/MqttBridgeConfig-8dc81a60.js +++ /dev/null @@ -1 +0,0 @@ -import{l as x,d as C,a0 as A,F as q}from"./vendor-fortawesome-3d19d475.js";import{C as z}from"./index-e2dbf7bf.js";import{_ as D,u,k as m,l as b,G as o,E as a,x as f,N as k,y as s,F as E,z as M,B as T,M as W}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";x.add(C,A);const y={name:"OpenwbMqttBridgeConfigurationView",components:{FontAwesomeIcon:q},mixins:[z],emits:["sendCommand","save","reset"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/system/mqtt/bridge/+"],showMqttBridgeModal:!1,modalMqttBridgeIndex:void 0}},computed:{configuredMqttBridges:{get(){let t=this.getWildcardTopics("openWB/system/mqtt/bridge/+");for(const[e,v]of Object.entries(t))v.remote.is_openwb_cloud&&delete t[e];return t}}},methods:{addMqttBridge(t){t.stopPropagation(),this.$emit("sendCommand",{command:"addMqttBridge",data:{}})},getMqttBridgeIndex(t){return parseInt(t.match(/(?:\/)(\d+)$/)[1])},removeMqttBridgeModal(t,e){e.stopPropagation(),this.modalMqttBridgeIndex=this.getMqttBridgeIndex(t),this.showMqttBridgeModal=!0},removeMqttBridge(t,e){this.showMqttBridgeModal=!1,e=="confirm"&&(console.info("request removal of mqtt bridge '"+t+"'"),this.$emit("sendCommand",{command:"removeMqttBridge",data:{bridge:t}}))},getMqttBridgeName(t){return this.$store.state.mqtt["openWB/system/mqtt/bridge/"+t]?this.$store.state.mqtt["openWB/system/mqtt/bridge/"+t].name:t}}},P={class:"mqttBridgeConfiguration"},Q={key:0},Z={key:1},I=["name"];function N(t,e,v,F,g,i){const U=u("openwb-base-modal-dialog"),c=u("openwb-base-alert"),h=u("font-awesome-icon"),w=u("openwb-base-avatar"),p=u("openwb-base-text-input"),d=u("openwb-base-button-group-input"),V=u("openwb-base-heading"),B=u("openwb-base-number-input"),S=u("openwb-base-submit-buttons"),_=u("openwb-base-card");return m(),b(k,null,[o(U,{show:g.showMqttBridgeModal,title:"MQTT-Brücke löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[0]||(e[0]=r=>i.removeMqttBridge(g.modalMqttBridgeIndex,r))},{default:a(()=>[s(' Wollen Sie die MQTT-Brücke "'+E(i.getMqttBridgeName(g.modalMqttBridgeIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),f("div",P,[o(c,{subtype:"danger"},{default:a(()=>e[1]||(e[1]=[s(" ACHTUNG: Die Konfiguration einer MQTT-Brücke erlaubt allen Nutzern mit Zugang zum entfernten MQTT-Server alle weitergeleiteten Daten dieser openWB einzusehen!"),f("br",null,null,-1),s(' Es wird dringend empfohlen, dies nur für nicht-öffentliche MQTT-Server unter Verwendung starker Transport-Verschlüsselung (TLS) mit persönlichem Login und strenger Zugriffskontrolle (zumindest für die MQTT-Themen unterhalb von "Entfernter Präfix") zu aktivieren! ')])),_:1}),o(_,{title:"Konfigurierte MQTT-Brücken"},{actions:a(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(m(),M(w,{key:0,class:"bg-success clickable",onClick:i.addMqttBridge},{default:a(()=>[o(h,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):T("",!0)]),default:a(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(m(),b("div",Q,[o(c,{subtype:"info"},{default:a(()=>e[2]||(e[2]=[s(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(m(),b("div",Z,[Object.keys(i.configuredMqttBridges).length===0?(m(),M(c,{key:0,subtype:"info"},{default:a(()=>e[3]||(e[3]=[s(" Es wurde noch keine MQTT-Brücke konfiguriert. ")])),_:1})):T("",!0),(m(!0),b(k,null,W(i.configuredMqttBridges,(r,l)=>(m(),b("form",{key:l,name:"mqttBridgeConfigurationForm"+i.getMqttBridgeIndex(l)},[o(_,{title:r.name,collapsible:!0,collapsed:!0,subtype:"primary"},{actions:a(()=>[o(w,{class:"bg-danger clickable",onClick:n=>i.removeMqttBridgeModal(l,n)},{default:a(()=>[o(h,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])]),footer:a(()=>[o(S,{"form-name":"mqttBridgeConfigurationForm"+i.getMqttBridgeIndex(l),"hide-defaults":!0,onSave:n=>t.$emit("save",[l]),onReset:n=>t.$emit("reset",[l])},null,8,["form-name","onSave","onReset"])]),default:a(()=>[o(p,{title:"Bezeichnung",subtype:"text",required:"",pattern:"[A-Za-z0-9]+","model-value":r.name,"onUpdate:modelValue":n=>t.updateState(l,n,"name")},{help:a(()=>[...e[4]||(e[4]=[s(" Die Bezeichnung darf nur aus Buchstaben ohne Umlaute und Zahlen bestehen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"Brücke aktivieren",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":r.active,"onUpdate:modelValue":n=>t.updateState(l,n,"active")},null,8,["model-value","onUpdate:modelValue"]),e[14]||(e[14]=f("hr",null,null,-1)),o(V,null,{default:a(()=>[...e[5]||(e[5]=[s(" Einstellungen zur Verbindung ")])]),_:1}),o(p,{title:"Entfernter Server",subtype:"host",required:"","model-value":r.remote.host,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.host")},null,8,["model-value","onUpdate:modelValue"]),o(B,{title:"Entfernter Port",required:"",min:1,max:65535,"model-value":r.remote.port,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.port")},null,8,["model-value","onUpdate:modelValue"]),o(p,{title:"Benutzername",subtype:"user",required:"",pattern:"[a-zA-Z0-9_\\-+.]+","model-value":r.remote.username,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.username")},null,8,["model-value","onUpdate:modelValue"]),o(p,{title:"Passwort",subtype:"password",required:"","model-value":r.remote.password,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.password")},null,8,["model-value","onUpdate:modelValue"]),o(p,{title:"Präfix",subtype:"text",pattern:"[A-Za-z0-9_\\-]+(\\/[A-Za-z0-9_\\-]+)?\\/","model-value":r.remote.prefix,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.prefix")},{help:a(()=>[...e[6]||(e[6]=[s(' Das Präfix darf nur aus Buchstaben ohne Umlaute, Zahlen, Binde- und Unterstrichen bestehen. Optional kann mit einem Schrägstrich "/" eine Topic-Struktur abgebildet werden. Am Ende des Präfixes muss ein Schrägstrich "/" stehen. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(p,{title:"Client ID",subtype:"text",required:"",pattern:"[A-Za-z0-9_\\-]+","model-value":r.remote.client_id,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.client_id")},{help:a(()=>[...e[7]||(e[7]=[s(" Die Client ID darf nur aus Buchstaben ohne Umlaute, Zahlen, Binde- und Unterstrichen bestehen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"MQTT Protokoll",required:"required",buttons:[{buttonValue:"mqttv31",text:"v3.1"},{buttonValue:"mqttv311",text:"v3.1.1"}],"model-value":r.remote.protocol,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.protocol")},null,8,["model-value","onUpdate:modelValue"]),o(d,{title:"TLS Version",buttons:[{buttonValue:"auto",text:"Automatisch",class:"btn-outline-success"},{buttonValue:"tlsv1.0",text:"v1.0",class:"btn-outline-warning"},{buttonValue:"tlsv1.1",text:"v1.1",class:"btn-outline-warning"},{buttonValue:"tlsv1.2",text:"v1.2"}],"model-value":r.remote.tls_version,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.tls_version")},{help:a(()=>[...e[8]||(e[8]=[s(' In der Einstellung "Automatisch" wird die Version zwischen Client und Server ausgehandelt. Wenn erforderlich, kann eine spezielle Version erzwungen werden. Versionen kleiner 1.2 gelten als veraltet und sollten nicht mehr verwendet werden. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"Brücke signalisieren",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":r.remote.try_private,"onUpdate:modelValue":n=>t.updateState(l,n,"remote.try_private")},{help:a(()=>[...e[9]||(e[9]=[s(" Aktiviert eine proprietäre Protokoll-Erweiterung des Mosquitto Brokers, welche dem entfernten Broker signalisiert, dass es sich um eine MQTT Brücke handelt. Ergibt bessere Leistung mit Mosquitto-Brokern, ist jedoch inkompatibel mit vielen anderen MQTT-Brokern. Daher bitte nur aktivieren, wenn der Ziel-Broker sicher ein Mosquitto-Broker ist. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),e[15]||(e[15]=f("hr",null,null,-1)),o(V,null,{default:a(()=>[...e[10]||(e[10]=[s(" Datenübertragung ")])]),_:1}),o(d,{title:"Alle Statusdaten",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":r.data_transfer.status,"onUpdate:modelValue":n=>t.updateState(l,n,"data_transfer.status")},{help:a(()=>[...e[11]||(e[11]=[s(" ToDo... ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"Datenserien für Diagramme",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":r.data_transfer.graph,"onUpdate:modelValue":n=>t.updateState(l,n,"data_transfer.graph")},{help:a(()=>[...e[12]||(e[12]=[s(" ToDo... ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),o(d,{title:"Fernkonfiguration ermöglichen",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":r.data_transfer.configuration,"onUpdate:modelValue":n=>t.updateState(l,n,"data_transfer.configuration")},{help:a(()=>[...e[13]||(e[13]=[s(" ToDo... ")])]),_:2},1032,["model-value","onUpdate:modelValue"])]),_:2},1032,["title"])],8,I))),128))]))]),_:1})])],64)}const J=D(y,[["render",N],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/MqttBridgeConfig.vue"]]);export{J as default}; diff --git a/web/settings/assets/OpenwbSortableList-ac8384c9.js b/web/settings/assets/OpenwbSortableList-ac8384c9.js deleted file mode 100644 index bac3e4a2d5..0000000000 --- a/web/settings/assets/OpenwbSortableList-ac8384c9.js +++ /dev/null @@ -1 +0,0 @@ -import{O as v}from"./index-e2dbf7bf.js";import{_ as m,a3 as V,u as l,k as o,z as i,E as d,x as p,q as k,G as f,B as O,y as _,F as g,D as S,m as b,l as L}from"./vendor-06e11d0e.js";import{l as B,a8 as N,K as E,P as x,O as C,N as q,F as A}from"./vendor-fortawesome-3d19d475.js";B.add(N,E,x,C,q);const $={name:"OpenwbNestedList",components:{draggable:V,FontAwesomeIcon:A},props:{list:{type:Object,required:!1,default:void 0},labels:{type:Object,required:!1,default:void 0}},methods:{classes(e){var t="";switch(e.type){case"bat":t+="battery";break;case"cp":t+="charge-point";break;default:t+=e.type;break}return t},getElementLabel(e){return this.labels&&e in this.labels?this.labels[e]:e},getElementIcon(e){switch(e.type){case"bat":return["fas","car-battery"];case"counter":return["fas","gauge-high"];case"cp":return["fas","charging-station"];case"inverter":return["fas","solar-panel"];default:return}}}};function j(e,t,n,h,w,a){const r=l("font-awesome-icon"),c=l("openwb-nested-list",!0),u=l("draggable");return o(),i(u,{class:"dragArea w-100 mb-0",tag:"ul",list:n.list,group:{name:"g1"},"item-key":"id",handle:".handle"},{item:d(({element:s})=>[p("li",null,[p("div",{class:k(["element-titel",a.classes(s)])},[p("span",null,[f(r,{class:"handle","fixed-width":"",icon:["fas","arrows-alt"]}),a.getElementIcon(s)?(o(),i(r,{key:0,"fixed-width":"",icon:a.getElementIcon(s)},null,8,["icon"])):O("",!0),_(" "+g(a.getElementLabel(s.id)),1)])],2),f(c,{modelValue:s.children,"onUpdate:modelValue":y=>s.children=y,labels:n.labels},null,8,["modelValue","onUpdate:modelValue","labels"])])]),_:1},8,["list"])}const D=m($,[["render",j],["__scopeId","data-v-82c9421a"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbNestedList.vue"]]),F={name:"OpenwbSortableList",components:{OpenwbBaseSettingElement:v,OpenwbNestedList:D},props:{id:{type:String,required:!1,default:void 0},title:{type:String,required:!1,default:""},modelValue:{type:Array,required:!1,default:void 0},labels:{type:Object,default:void 0}},emits:["update:modelValue"],computed:{value:{get(){return this.modelValue},set(e){console.debug("update in sortableList",e),this.$emit("update:modelValue",e)}}}},I={key:1};function U(e,t,n,h,w,a){const r=l("openwb-nested-list"),c=l("openwb-base-setting-element");return o(),i(c,null,S({title:d(()=>[b(e.$slots,"title",{},()=>[_(g(n.title),1)])]),default:d(()=>[a.value!==void 0?(o(),i(r,{key:0,modelValue:a.value,"onUpdate:modelValue":t[0]||(t[0]=u=>a.value=u),labels:n.labels},null,8,["modelValue","labels"])):(o(),L("div",I,"Warte auf Daten..."))]),_:2},[e.$slots.help?{name:"help",fn:d(()=>[b(e.$slots,"help")]),key:"0"}:void 0]),1024)}const P=m(F,[["render",U],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbSortableList.vue"]]);export{P as S}; diff --git a/web/settings/assets/OptionalComponents-62f1e823.js b/web/settings/assets/OptionalComponents-62f1e823.js deleted file mode 100644 index 0e8d2c30c3..0000000000 --- a/web/settings/assets/OptionalComponents-62f1e823.js +++ /dev/null @@ -1,2 +0,0 @@ -import{_ as $,C}from"./index-e2dbf7bf.js";import{_ as O}from"./dynamic-import-helper-be004503.js";import{l as S,X as z,Y as V,F as L}from"./vendor-fortawesome-3d19d475.js";import{_ as v,u as p,k as s,l as r,z as y,E as o,y as i,F as g,G as n,x as l,a1 as E,a2 as I,N as q,B as _}from"./vendor-06e11d0e.js";const F={props:{displayTheme:{type:Object,required:!0}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},M=v(F,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/display_themes/DisplayThemeConfigMixin.vue"]]),N={name:"DisplayThemeFallback",mixins:[M]},j={class:"display-theme-fallback"},x={key:1};function A(t,e,u,c,w,b){const d=p("openwb-base-alert"),m=p("openwb-base-textarea");return s(),r("div",j,[Object.keys(t.displayTheme.configuration).length==0?(s(),y(d,{key:0,subtype:"info"},{default:o(()=>[i(' Das Display-Theme "'+g(t.displayTheme.name)+'" bietet keine Einstellungen. ',1)]),_:1})):(s(),r("div",x,[n(d,{subtype:"warning"},{default:o(()=>[i(' Es wurde keine Konfigurationsseite für das Display-Theme "'+g(t.displayTheme.name)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),n(m,{title:"Konfiguration",subtype:"json","model-value":t.displayTheme.configuration,"onUpdate:modelValue":e[0]||(e[0]=f=>t.updateConfiguration(f,"configuration"))},{help:o(()=>e[1]||(e[1]=[i(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),n(d,{subtype:"info"},{default:o(()=>[l("pre",null,g(JSON.stringify(t.displayTheme.configuration,void 0,2)),1)]),_:1})]))])}const P=v(N,[["render",A],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/display_themes/OpenwbDisplayThemeFallback.vue"]]);S.add(z,V);const U={name:"OpenwbDisplayThemeProxy",components:{FontAwesomeIcon:L},props:{displayTheme:{type:Object,required:!0}},emits:["update:configuration"],computed:{myComponent(){return console.debug(`loading display theme: ${this.displayTheme.type}`),E({loader:()=>O(Object.assign({"./cards/displayTheme.vue":()=>$(()=>import("./displayTheme-0aa46487.js"),["assets/displayTheme-0aa46487.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/index-e2dbf7bf.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.displayTheme.type}/displayTheme.vue`),errorComponent:P})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function H(t,e,u,c,w,b){const d=p("font-awesome-icon"),m=p("openwb-base-alert"),f=p("openwb-base-heading");return s(),r(q,null,[u.displayTheme.official?(s(),y(m,{key:0,subtype:"success"},{default:o(()=>[n(d,{"fixed-width":"",icon:["fas","certificate"]}),i(' Das ausgewählte Display Theme "'+g(u.displayTheme.name)+'" wird von openWB gepflegt. ',1)]),_:1})):(s(),y(m,{key:1,subtype:"info"},{default:o(()=>[n(d,{"fixed-width":"",icon:["fas","people-group"]}),i(' Das ausgewählte Display Theme "'+g(u.displayTheme.name)+'" wird in unserer Community gepflegt. Rückfragen oder Probleme bitte im Forum diskutieren. ',1)]),_:1})),n(f,null,{default:o(()=>[i(' Einstellungen für Display Theme "'+g(u.displayTheme.name)+'" ',1)]),_:1}),(s(),y(I(b.myComponent),{"display-theme":u.displayTheme,"onUpdate:configuration":e[0]||(e[0]=h=>b.updateConfiguration(h))},null,40,["display-theme"]))],64)}const R=v(U,[["render",H],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/display_themes/OpenwbDisplayThemeProxy.vue"]]),J={name:"OpenwbOptionalComponentsView",components:{OpenwbDisplayThemeProxy:R},mixins:[C],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/chargepoint/+/config","openWB/chargepoint/+/get/rfid","openWB/chargepoint/+/get/rfid_timestamp","openWB/chargepoint/+/set/rfid","openWB/optional/rfid/active","openWB/optional/led/active","ToDo/optional/led/instant_blocked","ToDo/optional/led/pv_blocked","ToDo/optional/led/scheduled_blocked","ToDo/optional/led/standby_blocked","ToDo/optional/led/stop_blocked","ToDo/optional/led/instant","ToDo/optional/led/pv","ToDo/optional/led/scheduled","ToDo/optional/led/standby","ToDo/optional/led/stop","openWB/optional/int_display/active","openWB/optional/int_display/standby","openWB/optional/int_display/rotation","openWB/optional/int_display/on_if_plugged_in","openWB/optional/int_display/pin_active","openWB/optional/int_display/pin_code","openWB/optional/int_display/theme","openWB/optional/int_display/only_local_charge_points","openWB/system/configurable/display_themes","openWB/optional/et/active","openWB/optional/et/config/provider","openWB/optional/et/config/max_price"],tempIdTagList:{}}},computed:{idTagList(){return Object.values(this.updateIdTagList())},displayThemeList(){return this.$store.state.mqtt["openWB/system/configurable/display_themes"]},displayThemeGroupList(){let t=[{label:"openWB",options:[]},{label:"Community",options:[]}];return this.displayThemeList.forEach(e=>{e.official===!0?t[0].options.push(e):t[1].options.push(e)}),t}},methods:{getIdFromTopic(t){return t.match(/(?:\/)([0-9]+)(?=\/)*/g)[0].replace(/[^0-9]+/g,"")},updateIdTagList(){return Object.entries(this.getWildcardTopics("^openWB/chargepoint/[^+/]+/[gs]et/rfid$",!0)).forEach(t=>{t[1]!==null&&(this.tempIdTagList[t[1]]=`${t[1]} (${t[0].includes("/set/")?"zugewiesen":"erfasst"} an ${this.getChargePointName(this.getIdFromTopic(t[0]))})`)}),this.tempIdTagList},getChargePointName(t){return this.$store.state.mqtt["openWB/chargepoint/"+t+"/config"]?this.$store.state.mqtt["openWB/chargepoint/"+t+"/config"].name:"Ladepunkt "+t},getDisplayThemeDefaults(t){const e=this.displayThemeList.find(u=>u.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...JSON.parse(JSON.stringify(e.defaults))}:(console.warn("no default configuration found for display theme type!",t),{})},updateSelectedDisplayTheme(t){this.updateState("openWB/optional/int_display/theme",this.getDisplayThemeDefaults(t))},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)}}},G={class:"optionalComponents"},K={name:"optionalComponentsForm"},Z={key:0},X={key:1},Y={key:0},Q=["innerHTML"],ee={key:0},te={key:1},ne={key:2},oe={key:0};function ie(t,e,u,c,w,b){const d=p("openwb-base-alert"),m=p("openwb-base-button-group-input"),f=p("openwb-base-textarea"),h=p("openwb-base-card"),T=p("openwb-base-heading"),B=p("openwb-base-range-input"),D=p("openwb-base-select-input"),W=p("openwb-display-theme-proxy"),k=p("openwb-base-submit-buttons");return s(),r("div",G,[l("form",K,[n(h,{title:"Identifikation"},{default:o(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(s(),r("div",Z,[n(d,{subtype:"info"},{default:o(()=>e[10]||(e[10]=[i(' Weitere Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),r("div",X,[n(m,{title:"Identifikation aktivieren","model-value":t.$store.state.mqtt["openWB/optional/rfid/active"],buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[0]||(e[0]=a=>t.updateState("openWB/optional/rfid/active",a))},{help:o(()=>e[11]||(e[11]=[i(" Die Identifikation kann zum Entsperren von Ladepunkten und/oder zur Zuordnung von Fahrzeugen genutzt werden und kann auf mehreren Wegen erfolgen: "),l("ul",null,[l("li",null," Über einen in der openWB verbauten RFID-Reader (optional, z.B. anhand des Lieferscheins prüfen). "),l("li",null," Durch die automatische Erkennung an einer openWB Pro (muss in den Einstellungen aktiviert werden). "),l("li",null,"Durch manuelle Eingabe einer ID am Display einer openWB.")],-1)])),_:1},8,["model-value"]),t.$store.state.mqtt["openWB/optional/rfid/active"]===!0?(s(),r("div",Y,[n(d,{subtype:"info",class:"mb-1"},{default:o(()=>[e[12]||(e[12]=i(" Die ID-Tags müssen in den Einstellungen der Fahrzeuge diesen zugeordnet werden.")),e[13]||(e[13]=l("br",null,null,-1)),e[14]||(e[14]=i(" Es kann zuerst das Fahrzeug angesteckt und dann der ID-Tag erfasst werden oder andersherum. Im letzten Fall muss innerhalb von 5 Minuten ein Fahrzeug angesteckt werden, sonst wird der ID-Tag verworfen.")),e[15]||(e[15]=l("br",null,null,-1)),l("span",{innerHTML:t.$store.state.text.rfidWiki},null,8,Q)]),_:1}),n(f,{title:"Erkannte ID-Tags",readonly:"",disabled:"","model-value":b.idTagList.join(` -`)},{help:o(()=>e[16]||(e[16]=[i(" Solange diese Seite geöffnet ist, werden alle erfassten ID-Tags in dieser Liste aufgeführt. ")])),_:1},8,["model-value"])])):_("",!0)]))]),_:1}),n(h,{title:"Display (intern oder extern)"},{default:o(()=>[n(m,{title:"Integriertes Display","model-value":t.$store.state.mqtt["openWB/optional/int_display/active"],buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"onUpdate:modelValue":e[1]||(e[1]=a=>t.updateState("openWB/optional/int_display/active",a))},{help:o(()=>e[17]||(e[17]=[i(' Je nach Bestellung kann die openWB mit oder ohne Display geliefert worden sein. Auch die Variante "Standalone" bietet beide Optionen. Bitte prüfe zuerst die Hardwareausstattung deiner openWB (z.B. Lieferschein). ')])),_:1},8,["model-value"]),t.$store.state.mqtt["openWB/optional/int_display/active"]==!0?(s(),r("div",ee,[n(m,{title:"Orientierung","model-value":t.$store.state.mqtt["openWB/optional/int_display/rotation"],buttons:[{buttonValue:0,text:"0°"},{buttonValue:90,text:"90°"},{buttonValue:180,text:"180°"},{buttonValue:270,text:"270°"}],"onUpdate:modelValue":e[2]||(e[2]=a=>t.updateState("openWB/optional/int_display/rotation",a))},{help:o(()=>e[18]||(e[18]=[i(" Mit dieser Einstellung kann das Display im Uhrzeigersinn gedreht werden, falls erforderlich. Nach einer Änderung ist ein Neustart erforderlich!"),l("br",null,null,-1),i(" Diese Einstellung erfordert ein Raspberry Pi Display. Für eine openWB series2 mit integriertem Display muss 0° ausgewählt werden, für eine Standalone mit Display 180°. Anzeigen, welche über HDMI angeschlossen sind, werden nicht unterstützt. ")])),_:1},8,["model-value"]),e[21]||(e[21]=l("hr",null,null,-1)),n(T,null,{default:o(()=>e[19]||(e[19]=[i(" Display Standby ")])),_:1}),n(B,{title:"Ausschaltzeit",min:0,max:12,step:1,"model-value":t.$store.state.mqtt["openWB/optional/int_display/standby"],unit:"Sek",labels:[{label:"Immer an",value:0},{label:5,value:5},{label:10,value:10},{label:15,value:15},{label:30,value:30},{label:45,value:45},{label:"1 Min",value:60},{label:"1,5 Min",value:90},{label:"2 Min",value:120},{label:"3 Min",value:180},{label:"4 Min",value:240},{label:"5 Min",value:300},{label:"10 Min",value:600}],"onUpdate:modelValue":e[3]||(e[3]=a=>t.updateState("openWB/optional/int_display/standby",a))},{help:o(()=>e[20]||(e[20]=[i(" Hier kann eine Zeitspanne angegeben werden, nach der das Display ausgeschaltet wird. ")])),_:1},8,["model-value"])])):_("",!0),t.$store.state.mqtt["openWB/general/extern"]===!0?(s(),r("div",te,[e[23]||(e[23]=l("hr",null,null,-1)),n(d,{subtype:"info"},{default:o(()=>e[22]||(e[22]=[i(' Weitere Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),r("div",ne,[e[26]||(e[26]=l("hr",null,null,-1)),n(m,{title:"Ladepunkte auf externen openWB","model-value":t.$store.state.mqtt["openWB/optional/int_display/only_local_charge_points"],buttons:[{buttonValue:!1,text:"Alle",class:"btn-outline-danger"},{buttonValue:!0,text:"Nur Lokale",class:"btn-outline-success"}],"onUpdate:modelValue":e[4]||(e[4]=a=>t.updateState("openWB/optional/int_display/only_local_charge_points",a))},{help:o(()=>e[24]||(e[24]=[i(" Hiermit kann festgelegt werden, ob an angebundenen externen openWB alle oder nur die jeweils lokalen Ladepunkte angezeigt werden sollen. ")])),_:1},8,["model-value"]),e[27]||(e[27]=l("hr",null,null,-1)),t.$store.state.mqtt["openWB/optional/int_display/theme"]!==void 0?(s(),r("div",oe,[n(D,{class:"mb-2",title:"Theme des Displays",groups:b.displayThemeGroupList,"model-value":t.$store.state.mqtt["openWB/optional/int_display/theme"].type,"onUpdate:modelValue":e[5]||(e[5]=a=>b.updateSelectedDisplayTheme(a))},{help:o(()=>e[25]||(e[25]=[i(" Hier können unterschiedliche Display-Anzeigen, s.g. Themes, ausgewählt werden. Die Anzahl der Themes wird sich mit zukünftigen Releases erhöhen. ")])),_:1},8,["groups","model-value"]),t.$store.state.mqtt["openWB/optional/int_display/theme"].type?(s(),y(W,{key:0,"display-theme":t.$store.state.mqtt["openWB/optional/int_display/theme"],"onUpdate:configuration":e[6]||(e[6]=a=>b.updateConfiguration("openWB/optional/int_display/theme",a))},null,8,["display-theme"])):_("",!0)])):_("",!0)]))]),_:1}),n(k,{"form-name":"optionalComponentsForm",onSave:e[7]||(e[7]=a=>t.$emit("save")),onReset:e[8]||(e[8]=a=>t.$emit("reset")),onDefaults:e[9]||(e[9]=a=>t.$emit("defaults"))})])])}const ae=v(J,[["render",ie],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/OptionalComponents.vue"]]),de=Object.freeze(Object.defineProperty({__proto__:null,default:ae},Symbol.toStringTag,{value:"Module"}));export{M as D,de as O}; diff --git a/web/settings/assets/PVChargeConfig-1a8a15f2.js b/web/settings/assets/PVChargeConfig-1a8a15f2.js deleted file mode 100644 index eeffc2a536..0000000000 --- a/web/settings/assets/PVChargeConfig-1a8a15f2.js +++ /dev/null @@ -1 +0,0 @@ -import{C as B}from"./index-e2dbf7bf.js";import{l as S,P as V,Z as k,_ as z,F as y}from"./vendor-fortawesome-3d19d475.js";import{_ as E,u as g,k as s,l as u,x as o,G as i,E as a,y as t,z as _,B as f}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";S.add(V,k,z);const C={name:"OpenwbPVChargeConfigView",components:{FontAwesomeIcon:y},mixins:[B],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/chargemode_config/pv_charging/control_range","openWB/general/chargemode_config/pv_charging/feed_in_yield","openWB/general/chargemode_config/pv_charging/switch_on_threshold","openWB/general/chargemode_config/pv_charging/switch_on_delay","openWB/general/chargemode_config/pv_charging/switch_off_threshold","openWB/general/chargemode_config/pv_charging/switch_off_delay","openWB/general/chargemode_config/pv_charging/phases_to_use","openWB/general/chargemode_config/pv_charging/bat_mode","openWB/general/chargemode_config/pv_charging/bat_power_reserve","openWB/general/chargemode_config/pv_charging/bat_power_reserve_active","openWB/general/chargemode_config/pv_charging/bat_power_discharge","openWB/general/chargemode_config/pv_charging/bat_power_discharge_active","openWB/general/chargemode_config/pv_charging/min_bat_soc"],calculatedControlMode:void 0}},computed:{controlMode:{get(){if(this.calculatedControlMode!==void 0)return this.calculatedControlMode;const n="openWB/general/chargemode_config/pv_charging/control_range";let e=this.$store.state.mqtt[n];var p="individual";return typeof e<"u"&&(e[0]===-230&&e[1]===0?p="export":e[0]===0&&e[1]===230?p="import":e[0]===-115&&e[1]===115?p="balanced":p="individual"),p},set(n){const e="openWB/general/chargemode_config/pv_charging/control_range";switch(this.calculatedControlMode=n,n){case"export":this.updateState(e,[-230,0]);break;case"import":this.updateState(e,[0,230]);break;case"balanced":this.updateState(e,[-115,115]);break}}},batMode:{get(){return this.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_mode"]},set(n){this.updateState("openWB/general/chargemode_config/pv_charging/bat_mode",n)}}},watch:{controlMode(n){this.calculatedControlMode=n}}},M={class:"pvChargeConfig"},q={name:"pvChargeConfigForm"},L={key:0},P={key:1},U={key:0},$={key:1},A={key:0},R={key:1},F={key:0};function D(n,e,p,N,I,d){const b=g("openwb-base-alert"),m=g("openwb-base-button-group-input"),l=g("openwb-base-number-input"),c=g("openwb-base-card"),h=g("font-awesome-icon"),w=g("openwb-base-range-input"),v=g("openwb-base-heading"),W=g("openwb-base-submit-buttons");return s(),u("div",M,[o("form",q,[i(c,{title:"Regelparameter"},{default:a(()=>[n.$store.state.mqtt["openWB/general/extern"]===!0?(s(),u("div",L,[i(b,{subtype:"info"},{default:a(()=>e[18]||(e[18]=[t(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),u("div",P,[i(m,{modelValue:d.controlMode,"onUpdate:modelValue":e[0]||(e[0]=r=>d.controlMode=r),title:"Regelmodus",buttons:[{buttonValue:"export",text:"Einspeisung"},{buttonValue:"import",text:"Bezug"},{buttonValue:"balanced",text:"Ausgewogen"},{buttonValue:"individual",text:"Individuell"}]},{help:a(()=>e[19]||(e[19]=[t(" Die Ladeleistung kann nicht mit absoluter Genauigkeit eingestellt werden, sodass am EVU-Punkt nicht auf exakt 0W geregelt werden kann. Der Regelmodus legt fest, ob diese Differenz am EVU-Punkt (ca. 200-300W) zu geringem Netzbezug oder geringer Netzeinspeisung führen soll."),o("br",null,null,-1),t(" Bei Speichervorrang erzeugt die Regelung bei Bedarf unabhängig vom eingestellten Regelmodus Einspeisung, damit der Speicher seine Ladeleistung erhöht."),o("br",null,null,-1),t(" Achtung: bei unlogischen Einstellungen kann die Regelung gestört werden! Im Zweifel bitte unsere vordefinierten Modi verwenden. ")])),_:1},8,["modelValue"]),i(l,{disabled:d.controlMode!=="individual",readonly:d.controlMode!=="individual",title:"Minimum",step:.005,unit:"kW",required:"","model-value":Array.isArray(n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/control_range"])?n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/control_range"][0]/1e3:void 0,"onUpdate:modelValue":e[1]||(e[1]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/control_range",r*1e3,"0"))},{help:a(()=>e[20]||(e[20]=[t(" Untere Grenze des Regelbereichs. ")])),_:1},8,["disabled","readonly","model-value"]),i(l,{disabled:d.controlMode!=="individual",readonly:d.controlMode!=="individual",title:"Maximum",step:.005,unit:"kW",required:"","model-value":Array.isArray(n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/control_range"])?n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/control_range"][1]/1e3:void 0,"onUpdate:modelValue":e[2]||(e[2]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/control_range",r*1e3,"1"))},{help:a(()=>e[21]||(e[21]=[t(" Obere Grenze des Regelbereichs. ")])),_:1},8,["disabled","readonly","model-value"]),e[27]||(e[27]=o("hr",null,null,-1)),i(l,{title:"Einschaltschwelle",min:0,step:.05,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/switch_on_threshold"]/1e3,"onUpdate:modelValue":e[3]||(e[3]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/switch_on_threshold",r*1e3))},{help:a(()=>e[22]||(e[22]=[t(" Wird der Regelbereich in Richtung Einspeisung um diese Leistung überschritten, so wird der Ladevorgang gestartet."),o("br",null,null,-1),t(" Dieser Wert wird pro Phase genutzt und ist daher immer für eine Phase anzugeben. ")])),_:1},8,["model-value"]),i(l,{title:"Einschaltverzögerung",min:0,step:1,unit:"s",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/switch_on_delay"],"onUpdate:modelValue":e[4]||(e[4]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/switch_on_delay",r))},{help:a(()=>e[23]||(e[23]=[t(" Die Einschaltschwelle muss für die hier angegebene Zeit dauerhaft überschritten werden, bevor ein Ladevorgang gestartet wird."),o("br",null,null,-1),t(" Wenn ein Ladevorgang aktiv ist und auf PV-Laden umgeschaltet wird, wird weiter geladen, wenn die Abschaltschwelle nicht unterschritten wird. ")])),_:1},8,["model-value"]),e[28]||(e[28]=o("hr",null,null,-1)),i(l,{title:"Abschaltschwelle",step:.05,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/switch_off_threshold"]/1e3,"onUpdate:modelValue":e[5]||(e[5]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/switch_off_threshold",r*1e3))},{help:a(()=>e[24]||(e[24]=[t(" Wird der Regelbereich in Richtung Netzbezug um diese Leistung überschritten, so wird der Ladevorgang beendet. Wenn ein Speicher im System vorhanden ist, gilt die Abschaltschwelle auch für die Speicherentladung. Die Abschaltschwelle übersteuert den Mindest-SoC des Speichers (siehe Speicher-Beachtung unten)."),o("br",null,null,-1),t(" Dieser Wert ist unabhängig von der Anzahl genutzter Phasen. ")])),_:1},8,["model-value"]),i(l,{title:"Abschaltverzögerung",min:0,step:1,unit:"s",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/switch_off_delay"],"onUpdate:modelValue":e[6]||(e[6]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/switch_off_delay",r))},{help:a(()=>e[25]||(e[25]=[t(" Die Abschaltschwelle muss für die hier angegebene Zeit dauerhaft unterschritten werden, bevor ein Ladevorgang beendet wird."),o("br",null,null,-1),t(" Wenn ein Ladevorgang aktiv ist und auf PV-Laden umgeschaltet wird, wird die Ladung sofort beendet, wenn die Abschaltschwelle unterschritten wird. ")])),_:1},8,["model-value"]),e[29]||(e[29]=o("hr",null,null,-1)),i(l,{title:"Regelpunkt Einspeisegrenze",min:0,step:.05,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/feed_in_yield"]/1e3,"onUpdate:modelValue":e[7]||(e[7]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/feed_in_yield",r*1e3))},{help:a(()=>e[26]||(e[26]=[t(" Ein Wert größer 0kW bewirkt, dass weniger PV-Leistung zum Laden benutzt wird."),o("br",null,null,-1),t(" Die Nutzung dieser Option ergibt nur Sinn, wenn ein Wechselrichter mit separatem Smart-Meter am EVU-Punkt verbaut ist (nicht der originale Zähler des Versorgers!), welches eine dynamische Begrenzung der Einspeiseleistung am EVU-Punkt durch den PV-Wechselrichter bietet (bitte bei ev. Problemen immer vorab prüfen lassen)."),o("br",null,null,-1),t(' Ist eine Einspeiseleistungsreduzierung verbaut (in vielen älteren, privaten Einspeiseverträgen z.B. als 70% Regelung bekannt), wird mit Eingabe des Wertes "Regelpunkt Einspeisegrenze" ein eigenverbrauchsoptimiertes Fahrzeugladen mit PV-Überschussenergie möglich, die sonst abgeregelt werden würde (Nutzung der PV-Peaks).'),o("br",null,null,-1),t(' Wird in einem "Ladeprofil" die Option "Einspeisegrenze beachten" eingeschaltet, so wird der Regelpunkt auf diesen Wert verschoben und die Ladung startet erst, wenn der hinterlegte Wert "Regelpunkt Einspeisegrenze" überschritten wird.'),o("br",null,null,-1),t(" Zur optimalen Eigenverbrauchssteuerung sollte der Wert einige hundert Watt UNTER der im Wechselrichter hinterlegten EVU-Einspeiseleistungsgrenze liegen, damit openWB die Ladung freigibt, BEVOR der Wechselrichter begrenzt wird. ")])),_:1},8,["model-value"])]))]),_:1}),i(c,{title:"Phasenumschaltung"},{default:a(()=>[n.$store.state.mqtt["openWB/general/extern"]===!0?(s(),u("div",U,[i(b,{subtype:"info"},{default:a(()=>e[30]||(e[30]=[t(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),u("div",$,[i(m,{title:"Anzahl Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"},{buttonValue:0,text:"Automatik"}],"model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/phases_to_use"],"onUpdate:modelValue":e[8]||(e[8]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/phases_to_use",r))},{help:a(()=>e[31]||(e[31]=[t(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "PV-Laden" mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Im Modus "Automatik" entscheidet die Regelung, welche Einstellung genutzt wird, um den verfügbaren Überschuss in die Fahrzeuge zu laden. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen einer und mehreren Phasen (sog. 1p3p). ')])),_:1},8,["model-value"])]))]),_:1}),i(c,{title:"Speicher-Beachtung"},{default:a(()=>[n.$store.state.mqtt["openWB/general/extern"]===!0?(s(),u("div",A,[i(b,{subtype:"info"},{default:a(()=>e[32]||(e[32]=[t(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(s(),u("div",R,[i(m,{modelValue:d.batMode,"onUpdate:modelValue":e[9]||(e[9]=r=>d.batMode=r),title:"Laden mit Überschuss",buttons:[{buttonValue:"ev_mode"},{buttonValue:"bat_mode"},{buttonValue:"min_soc_bat_mode"}]},{"label-ev_mode":a(()=>[i(h,{"fixed-width":"",icon:["fas","car-side"]}),e[33]||(e[33]=t(" Fahrzeuge "))]),"label-bat_mode":a(()=>[i(h,{"fixed-width":"",icon:["fas","fa-car-battery"]}),e[34]||(e[34]=t(" Speicher "))]),"label-min_soc_bat_mode":a(()=>[i(h,{"fixed-width":"",icon:["fas","fa-battery-half"]}),e[35]||(e[35]=t(" Mindest-SoC des Speichers "))]),help:a(()=>[e[42]||(e[42]=o("p",null,' Sofern ein Hausstromspeicher (im Folgenden "Speicher" genannt) im Energiesystem verbaut ist, kann dieser beim Fahrzeugladen mit berücksichtigt werden. Dies erfolgt passiv über die Berücksichtigung der Speicherleistungswerte und des Speicher-SoC. Eine aktive Speichersteuerung durch openWB ist aktuell mangels Speicherschnittstelle nicht möglich. ',-1)),o("p",null,[e[36]||(e[36]=t(' Bei Auswahl " ')),i(h,{"fixed-width":"",icon:["fas","car-side"]}),e[37]||(e[37]=t(' Fahrzeuge" wird der gesamte Überschuss in das EV geladen. Ist die maximale Ladeleistung der Fahrzeuge erreicht und es wird eingespeist, wird dieser Überschuss in den Speicher geladen. '))]),o("p",null,[e[38]||(e[38]=t(' Bei Auswahl " ')),i(h,{"fixed-width":"",icon:["fas","fa-car-battery"]}),e[39]||(e[39]=t(' Speicher" wird der gesamte Überschuss in den Speicher geladen. Ist die maximale Ladeleistung des Speichers erreicht und es wird eingespeist, wird dieser Überschuss unter Beachtung der Einschaltschwelle in die Fahrzeuge geladen. '))]),o("p",null,[e[40]||(e[40]=t(' Bei Auswahl " ')),i(h,{"fixed-width":"",icon:["fas","fa-battery-half"]}),e[41]||(e[41]=t(' Mindest-SoC des Speichers" wird der Überschuss bis zum Mindest-SoC in den Speicher geladen. Ist die maximale Ladeleistung des Speichers erreicht und es wird eingespeist, wird dieser Überschuss in die Fahrzeuge geladen. Wird der Mindest-SoC überschritten, wird der Überschuss ins Fahrzeug geladen. '))])]),_:1},8,["modelValue"]),d.batMode==="min_soc_bat_mode"?(s(),u("div",F,[i(w,{title:"Mindest-SoC des Speichers",min:0,max:100,step:1,unit:"%",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/min_bat_soc"],"onUpdate:modelValue":e[10]||(e[10]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/min_bat_soc",r))},null,8,["model-value"]),i(v,null,{default:a(()=>e[43]||(e[43]=[t(" Speicher-SoC unterhalb Mindest-SoC ")])),_:1}),i(m,{title:"Ladeleistung für Speicher reservieren",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_reserve_active"],"onUpdate:modelValue":e[11]||(e[11]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/bat_power_reserve_active",r))},{help:a(()=>e[44]||(e[44]=[t(" ACHTUNG: Der hier eingestellte Wert darf die maximale Ladeleistung des Speichers nicht überschreiten."),o("br",null,null,-1),t(" Wird der Mindest-SoC des Speichers nicht erreicht, wird der Speicher mit der hier eingestellten Leistung geladen. Mit dem verbleibenden Überschuss werden die Fahrzeuge geladen. ")])),_:1},8,["model-value"]),n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_reserve_active"]?(s(),_(l,{key:0,title:"Reserve Ladeleistung",min:.1,step:.1,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_reserve"]/1e3,"onUpdate:modelValue":e[12]||(e[12]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/bat_power_reserve",r*1e3))},null,8,["model-value"])):f("",!0),i(v,null,{default:a(()=>e[45]||(e[45]=[t(" Speicher-SoC oberhalb Mindest-SoC ")])),_:1}),i(m,{title:"Entladung des Speichers erlauben",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_discharge_active"],"onUpdate:modelValue":e[13]||(e[13]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/bat_power_discharge_active",r))},{help:a(()=>e[46]||(e[46]=[t(" Wird der Mindest-SoC überschritten, wird der Überschuss ins Fahrzeug geladen und der Speicher mit der hier eingestellten Leistung in die Fahrzeuge entladen. Die Entladeleistung des Speichers wird dem Überschuss zum Erreichen der Einschaltschwelle hinzugerechnet. ")])),_:1},8,["model-value"]),n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_discharge_active"]?(s(),_(l,{key:1,title:"Erlaubte Entladeleistung",min:.1,step:.1,unit:"kW",required:"","model-value":n.$store.state.mqtt["openWB/general/chargemode_config/pv_charging/bat_power_discharge"]/1e3,"onUpdate:modelValue":e[14]||(e[14]=r=>n.updateState("openWB/general/chargemode_config/pv_charging/bat_power_discharge",r*1e3))},null,8,["model-value"])):f("",!0)])):f("",!0)]))]),_:1}),i(W,{"form-name":"pvChargeConfigForm",onSave:e[15]||(e[15]=r=>n.$emit("save")),onReset:e[16]||(e[16]=r=>n.$emit("reset")),onDefaults:e[17]||(e[17]=r=>n.$emit("defaults"))})])])}const j=E(C,[["render",D],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/PVChargeConfig.vue"]]);export{j as default}; diff --git a/web/settings/assets/ScheduledChargeConfig-6a7a9e08.js b/web/settings/assets/ScheduledChargeConfig-6a7a9e08.js deleted file mode 100644 index 64e1bc320a..0000000000 --- a/web/settings/assets/ScheduledChargeConfig-6a7a9e08.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./index-e2dbf7bf.js";import{_ as h,u as s,k as i,l as u,x as b,G as o,E as a,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const c={name:"OpenwbScheduledChargeConfigView",mixins:[p],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/chargemode_config/scheduled_charging/phases_to_use","openWB/general/chargemode_config/scheduled_charging/phases_to_use_pv"]}}},_={class:"scheduledChargeConfig"},f={name:"scheduledChargeConfigForm"},v={key:0},w={key:1};function k(t,e,C,V,B,$){const l=s("openwb-base-alert"),d=s("openwb-base-button-group-input"),g=s("openwb-base-card"),m=s("openwb-base-submit-buttons");return i(),u("div",_,[b("form",f,[o(g,{title:"Phasenumschaltung"},{default:a(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(i(),u("div",v,[o(l,{subtype:"info"},{default:a(()=>e[5]||(e[5]=[r(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(i(),u("div",w,[o(d,{title:"Anzahl Phasen Zielladen",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"},{buttonValue:0,text:"Automatik"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/scheduled_charging/phases_to_use"],"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateState("openWB/general/chargemode_config/scheduled_charging/phases_to_use",n))},{help:a(()=>e[6]||(e[6]=[r(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "Zielladen" mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Im Modus "Automatik" entscheidet die Regelung, welche Einstellung genutzt wird, um das Ziel zu erreichen. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen 1- und 3-phasig (sog. 1p3p). ')])),_:1},8,["model-value"]),o(d,{title:"Anzahl Phasen bei PV-Überschuss",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"},{buttonValue:0,text:"Automatik"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/scheduled_charging/phases_to_use_pv"],"onUpdate:modelValue":e[1]||(e[1]=n=>t.updateState("openWB/general/chargemode_config/scheduled_charging/phases_to_use_pv",n))},{help:a(()=>e[7]||(e[7]=[r(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "Zielladen" bei Laden mit PV-Überschuss mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Im Modus "Automatik" entscheidet die Regelung, welche Einstellung genutzt wird, um das Ziel zu erreichen. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen 1- und 3-phasig (sog. 1p3p). ')])),_:1},8,["model-value"])]))]),_:1}),o(m,{"form-name":"scheduledChargeConfigForm",onSave:e[2]||(e[2]=n=>t.$emit("save")),onReset:e[3]||(e[3]=n=>t.$emit("reset")),onDefaults:e[4]||(e[4]=n=>t.$emit("defaults"))})])])}const P=h(c,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/ScheduledChargeConfig.vue"]]);export{P as default}; diff --git a/web/settings/assets/Status-907a1b1e.js b/web/settings/assets/Status-907a1b1e.js deleted file mode 100644 index 91725c881d..0000000000 --- a/web/settings/assets/Status-907a1b1e.js +++ /dev/null @@ -1 +0,0 @@ -import{C as y}from"./index-e2dbf7bf.js";import{l as W,K as L,F as x,L as k,M as C,c as q,N as E,O as S,P as A,Q as z,R as M,S as V}from"./vendor-fortawesome-3d19d475.js";import{_ as w,u as o,k as r,z as l,E as p,G as n,y as c,F as b,x as g,B as T,l as I,N as P,M as $}from"./vendor-06e11d0e.js";import{C as H,p as Z,a as F,L as K,b as G,P as J,c as Q,T as U,i as X,d as Y,e as ee}from"./vendor-chartjs-888a84c2.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-luxon-8ddd27a0.js";W.add(L);const te={name:"ChargePointSumCard",components:{FontAwesomeIcon:x},mixins:[y]};function ne(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-text-input"),d=o("openwb-base-heading"),u=o("openwb-base-card");return r(),l(u,{subtype:"primary",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","charging-station"]}),t[0]||(t[0]=c(" Alle Ladepunkte "))]),default:p(()=>[n(m,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/chargepoint/get/power",3,3,.001)},null,8,["model-value"]),n(m,{title:"Zählerstand laden",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/get/imported",3,3,.001)},null,8,["model-value"]),n(m,{title:"Zählerstand entladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/get/exported",3,3,.001)},null,8,["model-value"]),n(d,null,{default:p(()=>t[1]||(t[1]=[c("Historie")])),_:1}),n(m,{title:"Heute geladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/get/daily_imported",3,3,.001)},null,8,["model-value"]),n(m,{title:"Heute entladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/get/daily_exported",3,3,.001)},null,8,["model-value"])]),_:1})}const oe=w(te,[["render",ne],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/ChargePointSumCard.vue"]]);W.add(k,C,q,L);const ae={name:"ChargePointCard",components:{FontAwesomeIcon:x},mixins:[y],props:{installedChargePointKey:{type:String,required:!0},installedChargePoint:{type:Object,required:!0}},data(){return{statusLevel:["success","warning","danger"]}},computed:{chargePointIndex:{get(){return parseInt(this.installedChargePointKey.match(/(?:\/)(\d+)(?=\/)/)[1])}}}},re={style:{"white-space":"pre-wrap"}},se={style:{"white-space":"pre-wrap"}};function le(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-checkbox-input"),u=o("openwb-base-text-input"),h=o("openwb-base-heading"),B=o("openwb-base-card");return r(),l(B,{subtype:"primary",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","charging-station"]}),c(" "+b(a.installedChargePoint.name)+" (ID: "+b(s.chargePointIndex)+") ",1)]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",re,b(e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/fault_str"]),1)]),_:1},8,["subtype"]),n(m,{subtype:"info"},{default:p(()=>[t[2]||(t[2]=c(" Statusmeldung:")),t[3]||(t[3]=g("br",null,null,-1)),g("span",se,b(e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/state_str"]),1)]),_:1}),n(d,{title:"Fahrzeug angesteckt",disabled:"","model-value":e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/plug_state"]==1},null,8,["model-value"]),n(d,{title:"Ladevorgang aktiv",disabled:"","model-value":e.$store.state.mqtt["openWB/chargepoint/"+s.chargePointIndex+"/get/charge_state"]==1},null,8,["model-value"]),n(u,{title:"Zählerstand laden",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Zählerstand entladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/exported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Heute geladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/daily_imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Heute entladen",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/daily_exported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Wirkleistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/power",3,3,.001)},null,8,["model-value"]),n(u,{title:"Ladestromvorgabe",readonly:"",class:"text-right text-monospace",step:"0.01",unit:"A","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/set/current",2)},null,8,["model-value"]),n(u,{title:"Netzfrequenz",readonly:"",class:"text-right text-monospace",step:"0.01",unit:"Hz","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/frequency",2)},null,8,["model-value"]),n(h,null,{default:p(()=>t[4]||(t[4]=[c("Werte pro Phase")])),_:1}),n(u,{title:"Spannung",readonly:"",class:"text-right text-monospace",unit:"V","model-value":e.formatPhaseArrayNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/voltages",1)},null,8,["model-value"]),n(u,{title:"Strom",readonly:"",class:"text-right text-monospace",unit:"A","model-value":e.formatPhaseArrayNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/currents",2)},null,8,["model-value"]),n(u,{title:"Wirkleistung",readonly:"",class:"text-right text-monospace",unit:"kW","model-value":e.formatPhaseArrayNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/powers",3,3,.001)},null,8,["model-value"]),n(u,{title:"Leistungsfaktor",readonly:"",class:"text-right text-monospace","model-value":e.formatPhaseArrayNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/power_factors",2)},null,8,["model-value"]),n(h,null,{default:p(()=>t[5]||(t[5]=[c("Phasen")])),_:1}),e.$store.state.mqtt["openWB/general/extern"]===!0?(r(),l(u,{key:0,title:"Vorgabe",readonly:"",class:"text-right text-monospace","model-value":e.formatNumberTopic("openWB/internal_chargepoint/"+s.chargePointIndex+"/data/phases_to_use")},null,8,["model-value"])):(r(),l(u,{key:1,title:"Vorgabe",readonly:"",class:"text-right text-monospace","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/set/phases_to_use")},null,8,["model-value"])),n(u,{title:"Aktuell",readonly:"",class:"text-right text-monospace","model-value":e.formatNumberTopic("openWB/chargepoint/"+s.chargePointIndex+"/get/phases_in_use")},null,8,["model-value"])]),_:1})}const ie=w(ae,[["render",le],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/ChargePointCard.vue"]]);W.add(k,C,q,E);const ue={name:"CounterCard",components:{FontAwesomeIcon:x},mixins:[y],props:{counter:{type:Object,required:!0}},data(){return{statusLevel:["success","warning","danger"]}}},pe={style:{"white-space":"pre-wrap"}},de={style:{"white-space":"pre-wrap"}};function ce(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-heading"),u=o("openwb-base-text-input"),h=o("openwb-base-card");return r(),l(h,{subtype:"danger",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","gauge-high"]}),c(" "+b(a.counter.name)+" (ID: "+b(a.counter.id)+") ",1)]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",pe,b(e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/fault_str"]),1)]),_:1},8,["subtype"]),e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/state_str"]!=null?(r(),l(m,{key:0,subtype:"info"},{default:p(()=>[t[2]||(t[2]=c(" Statusmeldung:")),t[3]||(t[3]=g("br",null,null,-1)),g("span",de,b(e.$store.state.mqtt["openWB/counter/"+a.counter.id+"/get/state_str"]),1)]),_:1})):T("",!0),n(d,null,{default:p(()=>t[4]||(t[4]=[c("Zählerstände")])),_:1}),n(u,{title:"Export",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/counter/"+a.counter.id+"/get/exported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Import",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/counter/"+a.counter.id+"/get/imported",3,3,.001)},null,8,["model-value"]),n(d,null,{default:p(()=>t[5]||(t[5]=[c("Saldierte Werte")])),_:1}),n(u,{title:"Wirkleistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/counter/"+a.counter.id+"/get/power",3,3,.001)},null,8,["model-value"]),n(u,{title:"Netzfrequenz",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"Hz","model-value":e.formatNumberTopic("openWB/counter/"+a.counter.id+"/get/frequency",3)},null,8,["model-value"]),n(d,null,{default:p(()=>t[6]||(t[6]=[c("Werte pro Phase")])),_:1}),n(u,{title:"Spannung",readonly:"",class:"text-right text-monospace",unit:"V","model-value":e.formatPhaseArrayNumberTopic("openWB/counter/"+a.counter.id+"/get/voltages",1)},null,8,["model-value"]),n(u,{title:"Strom",readonly:"",class:"text-right text-monospace",unit:"A","model-value":e.formatPhaseArrayNumberTopic("openWB/counter/"+a.counter.id+"/get/currents",2)},null,8,["model-value"]),n(u,{title:"Wirkleistung",readonly:"",class:"text-right text-monospace",unit:"kW","model-value":e.formatPhaseArrayNumberTopic("openWB/counter/"+a.counter.id+"/get/powers",3,3,.001)},null,8,["model-value"]),n(u,{title:"Leistungsfaktor",readonly:"",class:"text-right text-monospace","model-value":e.formatPhaseArrayNumberTopic("openWB/counter/"+a.counter.id+"/get/power_factors",2)},null,8,["model-value"])]),_:1})}const me=w(ue,[["render",ce],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/CounterCard.vue"]]);W.add(k,C,q,S);const ge={name:"InverterSumCard",components:{FontAwesomeIcon:x},mixins:[y],data(){return{statusLevel:["success","warning","danger"]}}},fe={style:{"white-space":"pre-wrap"}};function be(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-text-input"),u=o("openwb-base-heading"),h=o("openwb-base-card");return r(),l(h,{subtype:"success",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","solar-panel"]}),t[0]||(t[0]=c(" Alle Wechselrichter "))]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/pv/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/pv/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/pv/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[1]||(t[1]=c(" Modulmeldung:")),t[2]||(t[2]=g("br",null,null,-1)),g("span",fe,b(e.$store.state.mqtt["openWB/pv/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,{title:"Zählerstand",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/get/exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/pv/get/power",3,3,.001)},null,8,["model-value"]),n(u,null,{default:p(()=>t[3]||(t[3]=[c("Erträge")])),_:1}),n(d,{title:"Heute",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/get/daily_exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Dieser Monat",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/get/monthly_exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Dieses Jahr",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/get/yearly_exported",3,3,.001)},null,8,["model-value"])]),_:1})}const _e=w(ge,[["render",be],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/InverterSumCard.vue"]]);W.add(k,C,q,S);const he={name:"InverterCard",components:{FontAwesomeIcon:x},mixins:[y],props:{inverter:{type:Object,required:!0}},data(){return{statusLevel:["success","warning","danger"]}}},ve={style:{"white-space":"pre-wrap"}};function ye(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-text-input"),u=o("openwb-base-heading"),h=o("openwb-base-card");return r(),l(h,{subtype:"success",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","solar-panel"]}),c(" "+b(a.inverter.name)+" (ID: "+b(a.inverter.id)+") ",1)]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/pv/"+a.inverter.id+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/pv/"+a.inverter.id+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/pv/"+a.inverter.id+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",ve,b(e.$store.state.mqtt["openWB/pv/"+a.inverter.id+"/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,{title:"Zählerstand",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/power",3,3,.001)},null,8,["model-value"]),n(u,null,{default:p(()=>t[2]||(t[2]=[c("Erträge")])),_:1}),n(d,{title:"Heute",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/daily_exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Dieser Monat",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/monthly_exported",3,3,.001)},null,8,["model-value"]),n(d,{title:"Dieses Jahr",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/pv/"+a.inverter.id+"/get/yearly_exported",3,3,.001)},null,8,["model-value"])]),_:1})}const we=w(he,[["render",ye],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/InverterCard.vue"]]);W.add(k,C,q,A);const We={name:"BatterySumCard",components:{FontAwesomeIcon:x},mixins:[y],data(){return{statusLevel:["success","warning","danger"]}}},xe={style:{"white-space":"pre-wrap"}};function Be(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-heading"),u=o("openwb-base-text-input"),h=o("openwb-base-number-input"),B=o("openwb-base-card");return r(),l(B,{subtype:"warning",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","car-battery"]}),t[0]||(t[0]=c(" Alle Speicher "))]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/bat/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/bat/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/bat/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[1]||(t[1]=c(" Modulmeldung:")),t[2]||(t[2]=g("br",null,null,-1)),g("span",xe,b(e.$store.state.mqtt["openWB/bat/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,null,{default:p(()=>t[3]||(t[3]=[c("Zählerstände")])),_:1}),n(u,{title:"Ladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/get/imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Entladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/get/exported",3,3,.001)},null,8,["model-value"]),n(d,null,{default:p(()=>t[4]||(t[4]=[c("Tageswerte")])),_:1}),n(u,{title:"Ladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/get/daily_imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Entladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/get/daily_exported",3,3,.001)},null,8,["model-value"]),n(d,null,{default:p(()=>t[5]||(t[5]=[c("Saldierte Werte")])),_:1}),n(u,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/bat/get/power",3,3,.001)},null,8,["model-value"]),n(h,{title:"Ladestand",readonly:"",class:"text-right text-monospace",unit:"%","model-value":e.$store.state.mqtt["openWB/bat/get/soc"]},null,8,["model-value"])]),_:1})}const ke=w(We,[["render",Be],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/BatterySumCard.vue"]]);W.add(k,C,q,A);const Ce={name:"BatteryCard",components:{FontAwesomeIcon:x},mixins:[y],props:{battery:{type:Object,required:!0}},data(){return{statusLevel:["success","warning","danger"]}}},qe={style:{"white-space":"pre-wrap"}};function Te(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-heading"),u=o("openwb-base-text-input"),h=o("openwb-base-number-input"),B=o("openwb-base-card");return r(),l(B,{subtype:"warning",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","car-battery"]}),c(" "+b(a.battery.name)+" (ID: "+b(a.battery.id)+") ",1)]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",qe,b(e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,null,{default:p(()=>t[2]||(t[2]=[c("Aktuelle Werte")])),_:1}),n(u,{title:"Leistung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kW","model-value":e.formatNumberTopic("openWB/bat/"+a.battery.id+"/get/power",3,3,.001)},null,8,["model-value"]),n(h,{title:"Ladestand",readonly:"",class:"text-right text-monospace",unit:"%","model-value":e.$store.state.mqtt["openWB/bat/"+a.battery.id+"/get/soc"]},null,8,["model-value"]),n(d,null,{default:p(()=>t[3]||(t[3]=[c("Zählerstände")])),_:1}),n(u,{title:"Ladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/"+a.battery.id+"/get/imported",3,3,.001)},null,8,["model-value"]),n(u,{title:"Entladung",readonly:"",class:"text-right text-monospace",step:"0.001",unit:"kWh","model-value":e.formatNumberTopic("openWB/bat/"+a.battery.id+"/get/exported",3,3,.001)},null,8,["model-value"])]),_:1})}const Ie=w(Ce,[["render",Te],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/BatteryCard.vue"]]);W.add(k,C,q,z);const Ne={name:"RippleControlReceiverCard",components:{FontAwesomeIcon:x},mixins:[y],data(){return{mqttTopicsToSubscribe:["openWB/general/ripple_control_receiver/get/fault_state","openWB/general/ripple_control_receiver/get/fault_str","openWB/general/ripple_control_receiver/get/override_value","openWB/general/ripple_control_receiver/module"],statusLevel:["success","warning","danger"]}}},Pe={style:{"white-space":"pre-wrap"}};function $e(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-text-input"),u=o("openwb-base-card");return e.$store.state.mqtt["openWB/general/ripple_control_receiver/module"]&&e.$store.state.mqtt["openWB/general/ripple_control_receiver/module"].type?(r(),l(u,{key:0,subtype:"secondary",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{icon:["fas","tower-broadcast"]}),t[0]||(t[0]=c(" Steuerbare Verbrauchseinrichtung (RSE) "))]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[1]||(t[1]=c(" Modulmeldung:")),t[2]||(t[2]=g("br",null,null,-1)),g("span",Pe,b(e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,{title:"Status",readonly:"","model-value":e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/override_value"]==0?"Laden gesperrt":"Laden erlaubt ("+e.$store.state.mqtt["openWB/general/ripple_control_receiver/get/override_value"]+"%)"},null,8,["model-value"])]),_:1})):T("",!0)}const Le=w(Ne,[["render",$e],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/RippleControlReceiver.vue"]]);W.add(k,C,q,M);const Se={name:"VehicleCard",components:{FontAwesomeIcon:x},mixins:[y],props:{vehicle:{type:Object,required:!1,default:void 0},vehicleKey:{type:String,required:!0},vehicleName:{type:String,default:""}},data(){return{statusLevel:["success","warning","danger"]}},computed:{vehicleIndex:{get(){return parseInt(this.vehicleKey.match(/(?:\/)(\d+)(?=\/)/)[1])}},socTimestamp:{get(){return this.$store.state.mqtt["openWB/vehicle/"+this.vehicleIndex+"/get/soc_timestamp"]!==void 0?new Date(this.$store.state.mqtt["openWB/vehicle/"+this.vehicleIndex+"/get/soc_timestamp"]*1e3).toLocaleString():"-"}},socRange:{get(){return this.$store.state.mqtt["openWB/vehicle/"+this.vehicleIndex+"/get/range"]!==void 0?Math.round(this.$store.state.mqtt["openWB/vehicle/"+this.vehicleIndex+"/get/range"]):0}}}},Ae={style:{"white-space":"pre-wrap"}};function Oe(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-heading"),u=o("openwb-base-number-input"),h=o("openwb-base-text-input"),B=o("openwb-base-card");return r(),l(B,{subtype:"info",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","car"]}),c(" "+b(a.vehicleName)+" (ID: "+b(s.vehicleIndex)+") ",1)]),default:p(()=>[e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_state"]!==void 0?(r(),l(m,{key:0,subtype:f.statusLevel[e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[0]||(t[0]=c(" Modulmeldung:")),t[1]||(t[1]=g("br",null,null,-1)),g("span",Ae,b(e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/fault_str"]),1)]),_:1},8,["subtype"])):T("",!0),n(d,null,{default:p(()=>t[2]||(t[2]=[c("Fahrzeugdaten")])),_:1}),n(u,{title:"Ladestand",readonly:"",class:"text-right text-monospace",unit:"%","model-value":e.$store.state.mqtt["openWB/vehicle/"+s.vehicleIndex+"/get/soc"]},null,8,["model-value"]),n(u,{title:"Reichweite",readonly:"",class:"text-right text-monospace",unit:"km","model-value":s.socRange},null,8,["model-value"]),n(h,{title:"Letzter Zeitstempel",readonly:"",class:"text-right text-monospace","model-value":s.socTimestamp},null,8,["model-value"])]),_:1})}const je=w(Se,[["render",Oe],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/VehicleCard.vue"]]);W.add(k,C,q,V);H.register(Z,F,K,G,J,Q,U,X,Y);const De={name:"ElectricityTariffCard",components:{ChartjsLine:ee,FontAwesomeIcon:x},mixins:[y],data(){return{mqttTopicsToSubscribe:["openWB/optional/et/provider","openWB/optional/et/get/fault_state","openWB/optional/et/get/fault_str","openWB/optional/et/get/prices"],statusLevel:["success","warning","danger"],chartDatasets:{datasets:[{label:"Stromtarif",unit:"ct/kWh",type:"line",stepped:!0,borderColor:"rgba(255, 0, 0, 0.7)",backgroundColor:"rgba(255, 10, 13, 0.3)",fill:!1,pointStyle:"circle",pointRadius:0,pointHoverRadius:4,cubicInterpolationMode:"monotone",hidden:!1,borderWidth:1,data:void 0,yAxisID:"y",parsing:{xAxisKey:"timestamp",yAxisKey:"price"}}]},chartOptions:{plugins:{title:{display:!1},tooltip:{enabled:!0},legend:{display:!1}},elements:{point:{radius:2}},responsive:!0,maintainAspectRatio:!1,interaction:{mode:"index",intersect:!1},scales:{x:{type:"time",time:{unit:"hour",text:"Zeit",maxTicksLimit:24},display:!0,title:{display:!0,text:"Uhrzeit"},ticks:{font:{size:12},maxTicksLimit:0},grid:{}},y:{position:"left",type:"linear",display:"auto",title:{font:{size:12},display:!0,text:"Preis [ct/kWh]"},grid:{},ticks:{font:{size:12},stepSize:.01,maxTicksLimit:11}}}}}},computed:{electricityTariffConfigured(){const e=this.$store.state.mqtt["openWB/optional/et/provider"];return e!==void 0?e.type!==null:!1},chartDataRead(){return this.chartDataObject.datasets[0].data!=null},chartDataObject(){if(this.$store.state.mqtt["openWB/optional/et/get/prices"]){var e=this.$store.state.mqtt["openWB/optional/et/get/prices"],t=[];for(const[f,s]of Object.entries(e))t.push({timestamp:f*1e3,price:s*1e5});const _=t.slice(-1)[0];t.push({timestamp:_.timestamp+(60*60-1)*1e3,price:_.price})}const a=this.chartDatasets;return a.datasets[0].data=t,a}}},Re={style:{"white-space":"pre-wrap"}},Ee={class:"openwb-chart"};function ze(e,t,a,_,f,s){const i=o("font-awesome-icon"),m=o("openwb-base-alert"),d=o("openwb-base-text-input"),u=o("chartjs-line"),h=o("openwb-base-card");return s.electricityTariffConfigured?(r(),l(h,{key:0,subtype:"secondary",collapsible:!0,collapsed:!0},{header:p(()=>[n(i,{"fixed-width":"",icon:["fas","ranking-star"]}),t[0]||(t[0]=c(" Variabler Stromtarif "))]),default:p(()=>[n(m,{subtype:f.statusLevel[e.$store.state.mqtt["openWB/optional/et/get/fault_state"]]},{default:p(()=>[e.$store.state.mqtt["openWB/optional/et/get/fault_state"]==1?(r(),l(i,{key:0,"fixed-width":"",icon:["fas","exclamation-triangle"]})):e.$store.state.mqtt["openWB/optional/et/get/fault_state"]==2?(r(),l(i,{key:1,"fixed-width":"",icon:["fas","times-circle"]})):(r(),l(i,{key:2,"fixed-width":"",icon:["fas","check-circle"]})),t[1]||(t[1]=c(" Modulmeldung:")),t[2]||(t[2]=g("br",null,null,-1)),g("span",Re,b(e.$store.state.mqtt["openWB/optional/et/get/fault_str"]),1)]),_:1},8,["subtype"]),n(d,{title:"Anbieter",readonly:"","model-value":e.$store.state.mqtt["openWB/optional/et/provider"].name},null,8,["model-value"]),g("div",Ee,[s.chartDataRead?(r(),l(u,{key:0,ref:"myChart",data:s.chartDataObject,options:f.chartOptions},null,8,["data","options"])):T("",!0)])]),_:1})):T("",!0)}const Me=w(De,[["render",ze],["__scopeId","data-v-f4769d2f"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/status/ElectricityTariffCard.vue"]]);const Ve={name:"OpenwbStatusView",components:{ChargePointSumCard:oe,ChargePointCard:ie,CounterCard:me,InverterSumCard:_e,InverterCard:we,BatterySumCard:ke,BatteryCard:Ie,RippleControlReceiverCard:Le,VehicleCard:je,ElectricityTariffCard:Me},mixins:[y],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/chargepoint/get/power","openWB/chargepoint/get/imported","openWB/chargepoint/get/exported","openWB/chargepoint/get/daily_imported","openWB/chargepoint/get/daily_exported","openWB/chargepoint/+/config","openWB/chargepoint/+/get/+","openWB/chargepoint/+/get/connected_vehicle/info","openWB/chargepoint/+/set/+","openWB/internal_chargepoint/+/data/phases_to_use","openWB/system/device/+/component/+/config","openWB/counter/+/get/+","openWB/pv/get/+","openWB/pv/+/get/+","openWB/bat/get/+","openWB/bat/+/get/+","openWB/vehicle/+/name","openWB/vehicle/+/get/+"]}},computed:{installedChargePoints:{get(){let e=this.getWildcardTopics("openWB/chargepoint/+/config"),t={};for(const[a,_]of Object.entries(e))(_.type==="internal_openwb"||this.$store.state.mqtt["openWB/general/extern"]===!1)&&(t[a]=_);return t}},numChargePointsInstalled:{get(){return Object.keys(this.installedChargePoints).length}},counterConfigs:{get(){return this.$store.state.mqtt["openWB/general/extern"]===!0?{}:this.filterComponentsByType(this.getWildcardTopics("openWB/system/device/+/component/+/config"),"counter")}},numInvertersInstalled:{get(){return Object.keys(this.inverterConfigs).length}},inverterConfigs:{get(){return this.$store.state.mqtt["openWB/general/extern"]===!0?{}:this.filterComponentsByType(this.getWildcardTopics("openWB/system/device/+/component/+/config"),"inverter")}},numBatteriesInstalled:{get(){return Object.keys(this.batteryConfigs).length}},batteryConfigs:{get(){return this.$store.state.mqtt["openWB/general/extern"]===!0?{}:this.filterComponentsByType(this.getWildcardTopics("openWB/system/device/+/component/+/config"),"bat")}},vehicleNames:{get(){return this.$store.state.mqtt["openWB/general/extern"]===!0?{}:this.getWildcardTopics("openWB/vehicle/+/name")}}},methods:{filterComponentsByType(e,t){return Object.keys(e).filter(a=>e[a].type.includes(t)).reduce((a,_)=>({...a,[_]:e[_]}),{})}}},He={class:"status"};function Ze(e,t,a,_,f,s){const i=o("charge-point-sum-card"),m=o("charge-point-card"),d=o("counter-card"),u=o("inverter-sum-card"),h=o("inverter-card"),B=o("battery-sum-card"),O=o("battery-card"),j=o("vehicle-card"),D=o("electricity-tariff-card"),R=o("ripple-control-receiver-card");return r(),I("div",He,[s.numChargePointsInstalled>1&&e.$store.state.mqtt["openWB/general/extern"]===!1?(r(),l(i,{key:0})):T("",!0),(r(!0),I(P,null,$(s.installedChargePoints,(v,N)=>(r(),l(m,{key:N,"installed-charge-point":v,"installed-charge-point-key":N},null,8,["installed-charge-point","installed-charge-point-key"]))),128)),(r(!0),I(P,null,$(s.counterConfigs,v=>(r(),l(d,{key:v.id,counter:v},null,8,["counter"]))),128)),s.numInvertersInstalled>1&&e.$store.state.mqtt["openWB/general/extern"]===!1?(r(),l(u,{key:1})):T("",!0),(r(!0),I(P,null,$(s.inverterConfigs,v=>(r(),l(h,{key:v.id,inverter:v},null,8,["inverter"]))),128)),s.numBatteriesInstalled>1&&e.$store.state.mqtt["openWB/general/extern"]===!1?(r(),l(B,{key:2})):T("",!0),(r(!0),I(P,null,$(s.batteryConfigs,v=>(r(),l(O,{key:v.id,battery:v},null,8,["battery"]))),128)),(r(!0),I(P,null,$(s.vehicleNames,(v,N)=>(r(),l(j,{key:N,"vehicle-key":N,"vehicle-name":v},null,8,["vehicle-key","vehicle-name"]))),128)),n(D),n(R)])}const tt=w(Ve,[["render",Ze],["__scopeId","data-v-051028a3"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/Status.vue"]]);export{tt as default}; diff --git a/web/settings/assets/Support-06bb9955.js b/web/settings/assets/Support-06bb9955.js deleted file mode 100644 index 73facdeccd..0000000000 --- a/web/settings/assets/Support-06bb9955.js +++ /dev/null @@ -1,3 +0,0 @@ -import{l as D,g as V,F as W}from"./vendor-fortawesome-3d19d475.js";import{C as z}from"./index-e2dbf7bf.js";import{_ as A,u,k as f,l as c,x as r,z as k,E as s,G as o,D as C,B as w,y as n,q as F}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";D.add(V);const x={name:"OpenwbSupportView",components:{FontAwesomeIcon:W},mixins:[z],emits:["sendCommand"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/system/dataprotection_acknowledged","openWB/system/serial_number","openWB/system/device/+/config","openWB/system/device/+/component/+/config","openWB/vehicle/+/name","openWB/vehicle/+/info"],email:void 0,components:void 0,vehicles:void 0,message:void 0,enableSendDebugButton:!0}},computed:{debugData(){return{email:this.email,serialNumber:this.$store.state.mqtt["openWB/system/serial_number"],installedComponents:this.installedComponents,vehicles:this.vehicleInfo,message:this.message}},installedComponents(){var b,m;if(this.components!==void 0)return this.components;let i="";const e=this.getWildcardTopics("openWB/system/device/+/component/+/config");for(const t of Object.values(e)){const a=t.id,d=((b=t.info)==null?void 0:b.manufacturer)||"N/A",p=((m=t.info)==null?void 0:m.model)||"N/A";i+=`(${a}) Hersteller: ${d}, Modell: ${p} -`}return i.trim()},vehicleInfo(){if(this.vehicles!==void 0)return this.vehicles;let i="";const e=this.getWildcardTopics("openWB/vehicle/+/info");for(const[b,m]of Object.entries(e)){const t=parseInt(b.split("/")[2]);if(t!==0){const a=m.manufacturer||"N/A",d=m.model||"N/A";i+=`(${t}) Hersteller: ${a}, Modell: ${d} -`}}return i.trim()}},methods:{sendDebugMessage(){if(document.forms.supportForm.reportValidity())this.$emit("sendCommand",{command:"sendDebug",data:this.debugData}),this.enableSendDebugButton=!1;else{console.warn("form invalid");return}}}},_={class:"support"},q={name:"supportForm"},I={key:1},N={key:0},T={class:"row justify-content-center"};function M(i,e,b,m,t,a){const d=u("router-link"),p=u("openwb-base-alert"),v=u("FontAwesomeIcon"),h=u("openwb-base-text-input"),g=u("openwb-base-textarea"),y=u("openwb-base-click-button"),B=u("openwb-base-card"),S=u("font-awesome-icon");return f(),c("div",_,[r("form",q,[i.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]!==!0?(f(),k(p,{key:0,subtype:"danger"},{default:s(()=>[e[6]||(e[6]=n(" Du musst der ")),o(d,{to:"/System/LegalSettings"},{default:s(()=>e[5]||(e[5]=[n(" Datenschutzerklärung ")])),_:1}),e[7]||(e[7]=n(" zustimmen, um einen Systembericht senden zu können. "))]),_:1})):(f(),c("div",I,[o(p,{subtype:"success"},{default:s(()=>[e[9]||(e[9]=n(" Du hast der ")),o(d,{to:"/System/LegalSettings"},{default:s(()=>e[8]||(e[8]=[n(" Datenschutzerklärung ")])),_:1}),e[10]||(e[10]=n(" zugestimmt und kannst Systemberichte senden. "))]),_:1}),o(B,{title:"Systembericht"},C({default:s(()=>[i.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]===!0?(f(),c("div",N,[o(p,{subtype:"info"},{default:s(()=>[r("ul",null,[r("li",null,[e[11]||(e[11]=n(" Lies bitte den Hilfetext, der durch Klick auf das ")),o(v,{icon:["far","question-circle"]}),e[12]||(e[12]=n(" angezeigt wird. Nimm das Wiki zur Hilfe. "))]),e[13]||(e[13]=r("li",null,'Vergewissere Dich , dass mindestens die aktuelle "Release" Version installiert ist.',-1)),e[14]||(e[14]=r("li",null," Stelle beim Absenden des Berichtes die Fehlerkonditionen her. Lädt ein Fahrzeug nicht, sollte es angeschlossen und nicht voll geladen sein. Ist PV laden betroffen, sollte die Sonne auch scheinen. Der Systembericht muss dann versendet werden, wenn der Fehler aktuell vorliegt. ",-1)),e[15]||(e[15]=r("li",null," Stelle sicher, dass der Lademodus gewählt ist und im Falle von nicht ladenden ladenden Fahrzeugen, dass der Ladepunkt auch entsperrt wurde. ",-1)),e[16]||(e[16]=r("li",null," Das Auslesen der Systemkonfiguration erfolgt direkt nach den Klick auf Absenden und kann einige Zeit in Anspruch nehmen. Du erhältst ca. 15 bis 30 Minuten nach Versand des Systemberichtes von uns automatisch eine E-Mail mit der Ticketnummer unter der die Anfrage bei uns registriert wurde. Wir melden uns bei Dir. Bitte kontrolliere daher immer auch den Spam Ordner auf eingehende Nachrichten. Erhältst Du trotzdem keine Ticketnummer, ist das Versenden des Systemberichtes vermutlich fehlgeschlagen. ",-1))])]),_:1}),o(h,{modelValue:t.email,"onUpdate:modelValue":e[0]||(e[0]=l=>t.email=l),title:"E-Mail",required:"",subtype:"email"},{help:s(()=>e[17]||(e[17]=[n(" Deine E-Mail-Adresse, an die der Support Dir antwortet. ")])),_:1},8,["modelValue"]),o(h,{title:"openWB Seriennummer",required:"","model-value":i.$store.state.mqtt["openWB/system/serial_number"],"onUpdate:modelValue":e[1]||(e[1]=l=>i.updateState("openWB/system/serial_number",l))},{help:s(()=>e[18]||(e[18]=[n(" Die Seriennummer der openWB findest Du außen am, bei älteren Installationen innen im Gehäuse. Du kannst uns aber auch eine Bestellnummer oder Rechnungsnummer übermitteln. Das Gehäuse muss nicht extra geöffnet werden!"),r("br",null,null,-1),n(" Bei einer gekauften openWB wird die Seriennummer automatisch ermittelt. ")])),_:1},8,["model-value"]),o(g,{title:"Verwendete Komponenten",required:"",minlength:"3",maxlength:"500","model-value":a.installedComponents,"onUpdate:modelValue":e[2]||(e[2]=l=>t.components=l)},{help:s(()=>[e[20]||(e[20]=n(" Gib hier möglichst detailliert an, welche Anlagenkomponenten (EVU, PV, Speicher) angebunden sind.")),e[21]||(e[21]=r("br",null,null,-1)),o(d,{to:"/HardwareInstallation"},{default:s(()=>e[19]||(e[19]=[n(" Die Angaben können auch direkt in der Konfiguration der Komponenten dauerhaft gespeichert werden. ")])),_:1})]),_:1},8,["model-value"]),o(g,{title:"Fahrzeuge",required:"",minlength:"3",maxlength:"500","model-value":a.vehicleInfo,"onUpdate:modelValue":e[3]||(e[3]=l=>t.vehicles=l)},{help:s(()=>[e[23]||(e[23]=n(" Gib hier an, welche Fahrzeuge geladen (Hersteller, Modell, Baujahr).")),e[24]||(e[24]=r("br",null,null,-1)),o(d,{to:"/VehicleConfiguration"},{default:s(()=>e[22]||(e[22]=[n(" Die Angaben können auch direkt in der Konfiguration der Fahrzeuge dauerhaft gespeichert werden. ")])),_:1})]),_:1},8,["model-value"]),o(g,{modelValue:t.message,"onUpdate:modelValue":e[4]||(e[4]=l=>t.message=l),title:"Problembeschreibung",required:"",minlength:"20",maxlength:"500"},null,8,["modelValue"])])):w("",!0)]),_:2},[i.$store.state.mqtt["openWB/system/dataprotection_acknowledged"]===!0?{name:"footer",fn:s(()=>[r("div",T,[o(y,{class:F(["col-4",t.enableSendDebugButton?"btn-success":"btn-outline-success"]),disabled:!t.enableSendDebugButton,onButtonClicked:a.sendDebugMessage},{default:s(()=>e[25]||(e[25]=[n(" Absenden ")])),_:1},8,["class","disabled","onButtonClicked"])])]),key:"0"}:void 0]),1024),t.enableSendDebugButton?w("",!0):(f(),k(p,{key:0,subtype:"success"},{default:s(()=>[e[26]||(e[26]=n(" Die Daten für den Fehlerbericht werden im Hintergrund zusammengestellt. Du kannst diese Seite jetzt verlassen. ")),o(S,{"fixed-width":"",icon:["fas","check"]})]),_:1}))]))])])}const $=A(x,[["render",M],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/Support.vue"]]);export{$ as default}; diff --git a/web/settings/assets/System-684fe63a.js b/web/settings/assets/System-684fe63a.js deleted file mode 100644 index 70d54ca485..0000000000 --- a/web/settings/assets/System-684fe63a.js +++ /dev/null @@ -1 +0,0 @@ -import{l as W,ae as A,p as q,a3 as C,U as S,af as z,F as U}from"./vendor-fortawesome-3d19d475.js";import{C as x}from"./index-e2dbf7bf.js";import{_ as E,u as b,k as c,l as h,z as _,E as a,B as w,x as r,G as t,y as i,q as B,N as $,M as F,F as j}from"./vendor-06e11d0e.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";W.add(A,q,C,S,z);const T={name:"OpenwbSystemView",components:{FontAwesomeIcon:U},mixins:[x],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand"],data(){return{mqttTopicsToSubscribe:["openWB/system/optionBackup","openWB/system/current_commit","openWB/system/current_branch_commit","openWB/system/current_missing_commits","openWB/system/available_branches","openWB/system/current_branch","openWB/system/version"],warningAcknowledged:!1,selectedTag:"*HEAD*"}},computed:{updateAvailable(){return this.$store.state.mqtt["openWB/system/current_branch_commit"]&&this.$store.state.mqtt["openWB/system/current_branch_commit"]!=this.$store.state.mqtt["openWB/system/current_commit"]},releaseChangeValid(){return this.$store.state.mqtt["openWB/system/current_branch"]in this.$store.state.mqtt["openWB/system/available_branches"]&&"tags"in this.$store.state.mqtt["openWB/system/available_branches"][this.$store.state.mqtt["openWB/system/current_branch"]]&&this.selectedTag in this.$store.state.mqtt["openWB/system/available_branches"][this.$store.state.mqtt["openWB/system/current_branch"]].tags}},methods:{sendSystemCommand(n,e={}){this.$emit("sendCommand",{command:n,data:e})},getBranchGroups(){const n="Release",e="Beta",u="master",v=[n,e],p=(l,d)=>l.value==d.value?0:l.value==n?-1:d.value==n?1:l.value==e?-1:d.value==e?1:l.value==u?-1:d.value==u||l.value>d.value?1:l.value[e[12]||(e[12]=r("h2",null,"Achtung!",-1)),e[13]||(e[13]=r("p",null," Vor allen Aktionen auf dieser Seite ist sicherzustellen, dass kein Ladevorgang aktiv ist! Zur Sicherheit bitte zusätzlich alle Fahrzeuge von der Ladestation / den Ladestationen abstecken! ",-1)),t(f,{modelValue:p.warningAcknowledged,"onUpdate:modelValue":e[0]||(e[0]=s=>p.warningAcknowledged=s),title:"Ich habe die Warnung verstanden",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}]},null,8,["modelValue"])]),_:1})),p.warningAcknowledged||u.installAssistantActive?(c(),h("div",L,[r("form",N,[t(d,{title:"Versions-Informationen / Aktualisierung",subtype:"success",collapsible:!0,collapsed:!u.installAssistantActive},{footer:a(()=>[r("div",Z,[r("div",I,[t(y,{class:"btn-info",onButtonClicked:e[5]||(e[5]=s=>o.sendSystemCommand("systemFetchVersions"))},{default:a(()=>[e[16]||(e[16]=i(" Informationen aktualisieren ")),t(g,{"fixed-width":"",icon:["fas","download"]})]),_:1})]),r("div",O,[t(y,{class:B(o.updateAvailable?"btn-success clickable":"btn-outline-success"),disabled:!o.updateAvailable,onButtonClicked:e[6]||(e[6]=s=>o.systemUpdate())},{default:a(()=>[e[17]||(e[17]=i(" Update ")),t(g,{"fixed-width":"",icon:["fas","arrow-alt-circle-up"]})]),_:1},8,["class","disabled"])])])]),default:a(()=>[t(l,{modelValue:n.$store.state.mqtt["openWB/system/current_branch"],"onUpdate:modelValue":e[1]||(e[1]=s=>n.$store.state.mqtt["openWB/system/current_branch"]=s),title:"Entwicklungszweig",readonly:""},null,8,["modelValue"]),t(l,{modelValue:n.$store.state.mqtt["openWB/system/version"],"onUpdate:modelValue":e[2]||(e[2]=s=>n.$store.state.mqtt["openWB/system/version"]=s),title:"Bezeichnung",readonly:""},null,8,["modelValue"]),t(l,{modelValue:n.$store.state.mqtt["openWB/system/current_commit"],"onUpdate:modelValue":e[3]||(e[3]=s=>n.$store.state.mqtt["openWB/system/current_commit"]=s),title:"installierte Version",readonly:"",class:B(o.updateAvailable?"text-danger":"text-success")},null,8,["modelValue","class"]),t(l,{modelValue:n.$store.state.mqtt["openWB/system/current_branch_commit"],"onUpdate:modelValue":e[4]||(e[4]=s=>n.$store.state.mqtt["openWB/system/current_branch_commit"]=s),title:"aktuellste Version",readonly:""},null,8,["modelValue"]),o.updateAvailable?(c(),_(d,{key:0,title:"Änderungen",subtype:"info",collapsible:!0,collapsed:!0},{default:a(()=>[r("ul",R,[(c(!0),h($,null,F(n.$store.state.mqtt["openWB/system/current_missing_commits"],(s,V)=>(c(),h("li",{key:V},j(s),1))),128))])]),_:1})):w("",!0),t(m,{subtype:"danger"},{default:a(()=>e[14]||(e[14]=[i(" Nach einem Update wird die Ladestation direkt neu gestartet! Es werden alle eventuell vorhandenen lokalen Änderungen am Programmcode mit dem Update verworfen! ")])),_:1}),n.$store.state.mqtt["openWB/system/current_branch"]!="Release"?(c(),_(m,{key:1,subtype:"danger"},{default:a(()=>e[15]||(e[15]=[i(' Du bist nicht auf dem für den normalen Gebrauch empfohlenen Entwicklungszweig "Release". Wir empfehlen, auf diesen Zweig zu wechseln, sobald dort eine neue Version verfügbar ist.'),r("br",null,null,-1),i(" Bevor ein Update angestoßen wird, sollte immer eine Sicherung erstellt werden! Es kann zwar wieder auf eine ältere Version gewechselt werden, jedoch ist nicht sichergestellt, dass es dabei keine Probleme gibt. Gerade wenn das Datenformat in der neuen Version angepasst wurde, wird eine ältere damit Fehler produzieren. ")])),_:1})):w("",!0)]),_:1},8,["collapsed"])]),u.installAssistantActive?w("",!0):(c(),h("form",G,[t(d,{title:"Betrieb",collapsible:!0,collapsed:!0},{footer:a(()=>[r("div",P,[r("div",H,[t(y,{class:"btn-warning",onButtonClicked:e[7]||(e[7]=s=>o.sendSystemCommand("systemReboot"))},{default:a(()=>[e[19]||(e[19]=i(" Neustart ")),t(g,{"fixed-width":"",icon:["fas","undo"]})]),_:1})]),r("div",J,[t(y,{class:"btn-danger",onButtonClicked:e[8]||(e[8]=s=>o.sendSystemCommand("systemShutdown"))},{default:a(()=>[e[20]||(e[20]=i(" Ausschalten ")),t(g,{"fixed-width":"",icon:["fas","power-off"]})]),_:1})])])]),default:a(()=>[t(m,{subtype:"danger"},{default:a(()=>e[18]||(e[18]=[i(" Wenn die Ladestation ausgeschaltet wird, muss sie komplett spannungsfrei geschaltet werden. Erst beim erneuten Zuschalten der Spannung fährt das System wieder hoch. ")])),_:1})]),_:1})])),u.installAssistantActive?w("",!0):(c(),h("form",M,[t(d,{title:"Entwicklungszweig",subtype:"danger",collapsible:!0,collapsed:!0},{footer:a(()=>[r("div",K,[r("div",Q,[t(y,{class:B(o.releaseChangeValid?"btn-danger clickable":"btn-outline-danger"),disabled:!o.releaseChangeValid,onButtonClicked:e[11]||(e[11]=s=>o.switchBranch())},{default:a(()=>[t(g,{"fixed-width":"",icon:["fas","skull-crossbones"]}),e[23]||(e[23]=i(" Branch und Tag wechseln ")),t(g,{"fixed-width":"",icon:["fas","skull-crossbones"]})]),_:1},8,["class","disabled"])])])]),default:a(()=>[t(m,{subtype:"danger"},{default:a(()=>e[21]||(e[21]=[i(" Nach einem Wechsel wird die Ladestation direkt neu gestartet! Es werden alle lokalen Änderungen mit dem Wechsel verworfen! ")])),_:1}),t(m,{subtype:"warning"},{default:a(()=>e[22]||(e[22]=[i(" Bevor auf einen neuen Entwicklungszweig gewechselt wird sollte immer eine Sicherung erstellt werden! Es kann zwar wieder auf eine ältere Version gewechselt werden, jedoch ist nicht sichergestellt, dass es dabei keine Probleme gibt. Gerade wenn das Datenformat in der neuen Version angepasst wurde, wird eine ältere damit Fehler produzieren."),r("br",null,null,-1),i(' Für den normalen Betrieb wird der Zweig "Release" empfohlen. Der Softwarestand wurde ausgiebig getestet, sodass ein Fehlverhalten relativ unwahrscheinlich ist.'),r("br",null,null,-1),i(' Der "Beta" Zweig beinhaltet Vorabversionen, bei denen die Entwicklung soweit abgeschlossen ist. Die enthaltenen Anpassungen wurden rudimentär getestet, können aber durchaus noch Fehler enthalten.'),r("br",null,null,-1),i(' Die aktuelle Softwareentwicklung findet im Zweig "master" statt. Die enthaltenen Anpassungen sind teilweise noch nicht getestet und enthalten potentiell Fehler.'),r("br",null,null,-1),i(' Einträge, die mit "feature" beginnen, sind experimentelle Entwicklungszweige, die nicht für den allgemeinen Gebrauch gedacht sind. ')])),_:1}),t(k,{title:"Entwicklungszweig",groups:o.getBranchGroups(),"model-value":n.$store.state.mqtt["openWB/system/current_branch"],"onUpdate:modelValue":e[9]||(e[9]=s=>n.updateState("openWB/system/current_branch",s))},null,8,["groups","model-value"]),t(k,{modelValue:p.selectedTag,"onUpdate:modelValue":e[10]||(e[10]=s=>p.selectedTag=s),title:"Tag",options:o.getBranchTagOptions()},null,8,["modelValue","options"])]),_:1})]))])):w("",!0)])}const oe=E(T,[["render",X],["__scopeId","data-v-059847f6"],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/System.vue"]]);export{oe as default}; diff --git a/web/settings/assets/TestingStore-9cfc4ccd.js b/web/settings/assets/TestingStore-9cfc4ccd.js deleted file mode 100644 index 2f2619e19f..0000000000 --- a/web/settings/assets/TestingStore-9cfc4ccd.js +++ /dev/null @@ -1 +0,0 @@ -import{C as k}from"./index-e2dbf7bf.js";import{S as B}from"./OpenwbSortableList-ac8384c9.js";import{_ as O,u as s,k as T,l as z,x as u,G as o,E as n,y as a,F as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const N={name:"OpenwbTestingStoreView",components:{SortableList:B},mixins:[k],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:[]}}},Z={class:"testingStore"},G={name:"testingStoreForm"};function L(t,e,D,j,A,J){const d=s("OpenwbBaseHeading"),S=s("OpenwbBaseSettingElement"),w=s("openwb-base-button-input"),b=s("openwb-base-button-group-input"),i=s("openwb-base-card"),p=s("openwb-base-text-input"),m=s("openwb-base-number-input"),x=s("openwb-base-textarea"),v=s("openwb-base-range-input"),f=s("openwb-base-select-input"),$=s("openwb-base-checkbox-input"),V=s("openwb-base-array-input"),E=s("openwb-base-heading"),r=s("openwb-base-alert"),U=s("sortable-list"),y=s("openwb-base-submit-buttons");return T(),z("div",Z,[u("form",G,[o(i,{title:"Elemente mit BaseSettingElement"},{default:n(()=>[o(d,null,{default:n(()=>e[28]||(e[28]=[a(" Basiselement ")])),_:1}),o(S,null,{help:n(()=>e[29]||(e[29]=[a(" Basis-Element für alle weiteren Elemente. Das ist ein "),u("a",{href:"test"},"Link",-1),a(". ")])),_:1}),o(d,null,{default:n(()=>e[30]||(e[30]=[a(" Abgeleitete Elemente ")])),_:1}),o(w,{title:"Button Input","button-text":"Klick mich",subtype:"info"},{help:n(()=>e[31]||(e[31]=[a(" Einfacher Click-Button für Aktionen. ")])),_:1}),o(b,{title:"Button Group Input",buttons:[{buttonValue:1,text:"Eins"},{buttonValue:2,text:"Zwei"}],"model-value":t.$store.state.examples.buttonGroup1,"onUpdate:modelValue":e[0]||(e[0]=l=>t.updateState("buttonGroup1",l))},{help:n(()=>e[32]||(e[32]=[a(" Button-Group Element zur Auswahl weniger Optionen. Bei vielen Optionen besser ein Dropdown verwenden. "),u("a",{href:"test"},"Link",-1),a(". ")])),_:1},8,["model-value"])]),_:1}),o(i,{title:"Einfache Eingabefelder"},{default:n(()=>[o(p,{title:"1. Text","model-value":t.$store.state.examples.text1,"onUpdate:modelValue":e[1]||(e[1]=l=>t.updateState("text1",l))},{help:n(()=>e[33]||(e[33]=[a(" Einfacher Text ")])),_:1},8,["model-value"]),o(p,{title:"2. Text (E-Mail)",subtype:"email","model-value":t.$store.state.examples.text2,"onUpdate:modelValue":e[2]||(e[2]=l=>t.updateState("text2",l))},{help:n(()=>e[34]||(e[34]=[a(" Eingabefeld für E-Mailadressen ")])),_:1},8,["model-value"]),o(p,{title:"3. Text (Host)",subtype:"host","model-value":t.$store.state.examples.text3,"onUpdate:modelValue":e[3]||(e[3]=l=>t.updateState("text3",l))},{help:n(()=>e[35]||(e[35]=[a(" Eingabefeld für Hosts (IP oder Namen) ")])),_:1},8,["model-value"]),o(p,{title:"4. Text (URL)",subtype:"url","model-value":t.$store.state.examples.text4,"onUpdate:modelValue":e[4]||(e[4]=l=>t.updateState("text4",l))},{help:n(()=>e[36]||(e[36]=[a(" Eingabefeld für URLs ")])),_:1},8,["model-value"]),o(p,{title:"5. Text (User)",subtype:"user","model-value":t.$store.state.examples.text5,"onUpdate:modelValue":e[5]||(e[5]=l=>t.updateState("text5",l))},{help:n(()=>e[37]||(e[37]=[a(" Eingabefeld für Benutzernamen ")])),_:1},8,["model-value"]),o(p,{title:"6. Text (Time)",subtype:"time","model-value":t.$store.state.examples.text6,"onUpdate:modelValue":e[6]||(e[6]=l=>t.updateState("text6",l))},{help:n(()=>e[38]||(e[38]=[a(" Eingabefeld für Zeiten ")])),_:1},8,["model-value"]),o(p,{title:"7. Text (Date)",subtype:"date","model-value":t.$store.state.examples.text7,"onUpdate:modelValue":e[7]||(e[7]=l=>t.updateState("text7",l))},{help:n(()=>e[39]||(e[39]=[a(" Eingabefeld für ein Datum ")])),_:1},8,["model-value"]),e[45]||(e[45]=u("hr",null,null,-1)),o(m,{title:"1. Zahl",min:5,max:9,step:2,unit:"kW","model-value":t.$store.state.examples.number1,"onUpdate:modelValue":e[8]||(e[8]=l=>t.updateState("number1",l))},{help:n(()=>e[40]||(e[40]=[a(" Zahl mit Einheit ")])),_:1},8,["model-value"]),o(m,{title:"2. Zahl",min:10,max:32,step:2,"model-value":t.$store.state.examples.number2,"onUpdate:modelValue":e[9]||(e[9]=l=>t.updateState("number2",l))},{help:n(()=>e[41]||(e[41]=[a(" Eingabefeld für Zahlen ohne Einheit ")])),_:1},8,["model-value"]),o(m,{title:"3. Zahl",min:-30,max:30,step:.01,precision:2,unit:"ct/kWh","model-value":t.$store.state.examples.number3*1e5,"onUpdate:modelValue":e[10]||(e[10]=l=>t.updateState("number3",parseFloat((l/1e5).toFixed(7))))},{help:n(()=>e[42]||(e[42]=[a(" Eingabefeld für Zahlen mit Einheit und Nachkommastellen"),u("br",null,null,-1),a(' Zusätzlich zum optionalen Parameter "step" sollte immer auch "precision" gesetzt sein, um unvermeidbare Darstellungsfehler zu vermeiden.'),u("br",null,null,-1),a(" Wenn der dargestellte Wert eine andere Genauigkeit/Einheit als der Wert im Backend hat (z.B. €/Wh <-> ct/kWh), dann ist bei der Umrechnung darauf zu achten, dass es nicht erneut zu Ungenauigkeiten bei Dezimalzahlen kommt. ")])),_:1},8,["model-value"]),o(p,{title:"1. Passwort",subtype:"password","model-value":t.$store.state.examples.password1,"onUpdate:modelValue":e[11]||(e[11]=l=>t.updateState("password1",l))},{help:n(()=>e[43]||(e[43]=[a(" Das Passwort kann per Klick auf das Auge angezeigt werden. ")])),_:1},8,["model-value"]),e[46]||(e[46]=u("hr",null,null,-1)),o(x,{title:"1. Textarea",maxlength:"50","model-value":t.$store.state.examples.textarea1,"onUpdate:modelValue":e[12]||(e[12]=l=>t.updateState("textarea1",l))},{help:n(()=>e[44]||(e[44]=[a(" Textarea mit maximaler Länge von 50 Zeichen. ")])),_:1},8,["model-value"])]),_:1}),o(i,{title:"Spezielle Elemente"},{default:n(()=>[o(v,{title:"1. Range",min:6,max:32,step:1,unit:"A","model-value":t.$store.state.examples.range1,"onUpdate:modelValue":e[13]||(e[13]=l=>t.updateState("range1",l))},{help:n(()=>e[47]||(e[47]=[a(" Range ohne spezielle Labels ")])),_:1},8,["model-value"]),o(v,{title:"2. Range",min:0,max:11,step:1,unit:"A",labels:[{label:"Aus",value:0},{label:6,value:6},{label:7,value:7},{label:8,value:8},{label:9,value:9},{label:10,value:10},{label:11,value:11},{label:12,value:12},{label:13,value:13},{label:14,value:14},{label:15,value:15},{label:16,value:16}],"model-value":t.$store.state.examples.range2,"onUpdate:modelValue":e[14]||(e[14]=l=>t.updateState("range2",l))},{help:n(()=>e[48]||(e[48]=[a(" Range mit speziellen Labels ")])),_:1},8,["model-value"]),e[53]||(e[53]=u("hr",null,null,-1)),o(f,{title:"1. Select","not-selected":"Bitte auswählen",options:[{value:1,text:"Eins"},{value:2,text:"Zwei"}],"model-value":t.$store.state.examples.select1,"onUpdate:modelValue":e[15]||(e[15]=l=>t.updateState("select1",l))},{help:n(()=>e[49]||(e[49]=[a(" Select mit einfachen Optionen ")])),_:1},8,["model-value"]),o(f,{title:"2. Select",groups:[{label:"Gruppe 1 (Number)",options:[{value:1,text:"Eins"},{value:2,text:"Zwei"}]},{label:"Gruppe 2 (String)",options:[{value:"three",text:"Drei"},{value:"four",text:"Vier"}]}],"not-selected":"Bitte auswählen","add-button":!0,"model-value":t.$store.state.examples.select2,"onUpdate:modelValue":e[16]||(e[16]=l=>t.updateState("select2",l)),"onInput:add":e[17]||(e[17]=l=>t.alert("add button pressed"))},{help:n(()=>e[50]||(e[50]=[a(" Select mit Gruppen und Add-Button. ")])),_:1},8,["model-value"]),e[54]||(e[54]=u("hr",null,null,-1)),o(b,{title:"1. Button-Group",buttons:[{buttonValue:1,text:"Eins"},{buttonValue:2,text:"Zwei"}],"model-value":t.$store.state.examples.buttonGroup1,"onUpdate:modelValue":e[18]||(e[18]=l=>t.updateState("buttonGroup1",l))},{help:n(()=>e[51]||(e[51]=[a(" Hilfetext ")])),_:1},8,["model-value"]),e[55]||(e[55]=u("hr",null,null,-1)),o($,{title:"1. Checkbox","model-value":t.$store.state.examples.checkbox1,"onUpdate:modelValue":e[19]||(e[19]=l=>t.updateState("checkbox1",l))},{help:n(()=>e[52]||(e[52]=[a(" Hilfetext ")])),_:1},8,["model-value"])]),_:1}),o(i,{title:"JSON Gruppe"},{default:n(()=>[o(p,{title:"JSON 1",subtype:"json","model-value":t.$store.state.examples.json1,"onUpdate:modelValue":e[20]||(e[20]=l=>t.updateState("json1",l))},{help:n(()=>e[56]||(e[56]=[a(" JSON Objekt ")])),_:1},8,["model-value"]),o(p,{title:"JSON 1 Text","model-value":t.$store.state.examples.json1.text,"onUpdate:modelValue":e[21]||(e[21]=l=>t.updateState("json1",l,"text"))},{help:n(()=>e[57]||(e[57]=[a(" Text im JSON Objekt ")])),_:1},8,["model-value"]),o(m,{title:"JSON 1 Zahl","model-value":t.$store.state.examples.json1.number,"onUpdate:modelValue":e[22]||(e[22]=l=>t.updateState("json1",l,"number"))},{help:n(()=>e[58]||(e[58]=[a(" Zahl im JSON Objekt ")])),_:1},8,["model-value"]),o(V,{title:"Tag Array","model-value":t.$store.state.examples.tags,"onUpdate:modelValue":e[23]||(e[23]=l=>t.updateState("tags",l))},{help:n(()=>[u("pre",null,g(JSON.stringify(t.$store.state.examples.tags,void 0,2)),1)]),_:1},8,["model-value"])]),_:1}),o(i,{title:"Meldungen"},{header:n(()=>e[59]||(e[59]=[u("span",{style:{"text-decoration":"underline","font-style":"italic"}},[a(" Styled "),u("span",{style:{"font-weight":"initial"}},"Header"),a(" Slot ")],-1)])),default:n(()=>[o(E,null,{help:n(()=>e[60]||(e[60]=[a(" Es sind auch Hilfetexte im #help Slot möglich. "),u("a",{href:"test"},"Link",-1)])),default:n(()=>[e[61]||(e[61]=a(" Das ist eine Überschrift "))]),_:1}),o(r,null,{default:n(()=>e[62]||(e[62]=[a(" Meldung ohne speziellen Subtype. ")])),_:1}),o(r,{subtype:"info"},{default:n(()=>e[63]||(e[63]=[a(" Infomeldung ")])),_:1}),o(r,{subtype:"warning"},{default:n(()=>e[64]||(e[64]=[a(" Warnmeldung ")])),_:1}),o(r,{subtype:"danger"},{default:n(()=>e[65]||(e[65]=[a(" Fehlermeldung ")])),_:1})]),_:1}),o(i,{title:"Listen"},{default:n(()=>[o(U,{modelValue:t.$store.state.examples.hierarchy1,"onUpdate:modelValue":e[24]||(e[24]=l=>t.$store.state.examples.hierarchy1=l),title:"Liste 1",labels:t.$store.state.examples.hierarchy1Labels},{help:n(()=>[u("pre",null,g(JSON.stringify(t.$store.state.examples.hierarchy1,void 0,2)),1)]),_:1},8,["modelValue","labels"])]),_:1}),o(y,{"form-name":"testingStoreForm",onSave:e[25]||(e[25]=l=>t.$emit("save")),onReset:e[26]||(e[26]=l=>t.$emit("reset")),onDefaults:e[27]||(e[27]=l=>t.$emit("defaults"))})])])}const K=O(N,[["render",L],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/TestingStore.vue"]]);export{K as default}; diff --git a/web/settings/assets/TimeChargeConfig-4b10d1c3.js b/web/settings/assets/TimeChargeConfig-4b10d1c3.js deleted file mode 100644 index 7685ad526a..0000000000 --- a/web/settings/assets/TimeChargeConfig-4b10d1c3.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./index-e2dbf7bf.js";import{_ as b,u as o,k as i,l as a,x as _,G as s,E as r,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";const f={name:"OpenwbTimeChargeConfigView",mixins:[l],emits:["save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/general/chargemode_config/time_charging/phases_to_use"]}}},h={class:"timeChargeConfig"},c={name:"timeChargeConfigForm"},v={key:0},w={key:1};function C(t,e,$,B,k,V){const u=o("openwb-base-alert"),p=o("openwb-base-button-group-input"),g=o("openwb-base-card"),d=o("openwb-base-submit-buttons");return i(),a("div",h,[_("form",c,[s(g,{title:"Phasenumschaltung"},{default:r(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(i(),a("div",v,[s(u,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[m(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(i(),a("div",w,[s(p,{title:"Anzahl Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:3,text:"Maximum"}],"model-value":t.$store.state.mqtt["openWB/general/chargemode_config/time_charging/phases_to_use"],"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateState("openWB/general/chargemode_config/time_charging/phases_to_use",n))},{help:r(()=>e[5]||(e[5]=[m(' Hier kann eingestellt werden, ob Ladevorgänge im Modus "Zeitladen" mit nur einer Phase oder dem möglichen Maximum in Abhängigkeit der "Ladepunkt"- und "Fahrzeug"-Einstellungen durchgeführt werden. Voraussetzung ist die verbaute Umschaltmöglichkeit zwischen 1- und 3-phasig (sog. 1p3p). ')])),_:1},8,["model-value"])]))]),_:1}),s(d,{"form-name":"timeChargeConfigForm",onSave:e[1]||(e[1]=n=>t.$emit("save")),onReset:e[2]||(e[2]=n=>t.$emit("reset")),onDefaults:e[3]||(e[3]=n=>t.$emit("defaults"))})])])}const q=b(f,[["render",C],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/TimeChargeConfig.vue"]]);export{q as default}; diff --git a/web/settings/assets/VehicleConfig-12242a8a.js b/web/settings/assets/VehicleConfig-12242a8a.js deleted file mode 100644 index 56b6ee82ae..0000000000 --- a/web/settings/assets/VehicleConfig-12242a8a.js +++ /dev/null @@ -1 +0,0 @@ -import{l as $,d as H,a0 as j,A as J,a9 as G,aa as Q,z as X,P as Y,ac as K,R as ee,ab as te,ad as ne,F as ae,I as le}from"./vendor-fortawesome-3d19d475.js";import{_ as k,C as ie}from"./index-e2dbf7bf.js";import{_ as oe}from"./dynamic-import-helper-be004503.js";import{_ as q,u as V,k as d,l as g,z as p,E as l,y as i,F as C,G as a,x as h,a1 as re,a2 as de,N as P,B as m,M as E,D as F,q as x,A as N}from"./vendor-06e11d0e.js";const ue={props:{vehicleId:{required:!0,type:Number},vehicle:{required:!0,type:Object}},emits:["update:configuration"],methods:{updateConfiguration(t,e=void 0){this.$emit("update:configuration",{value:t,object:e})}}},se=q(ue,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/VehicleConfigMixin.vue"]]),me={name:"VehicleConfigFallback",mixins:[se]},ge={class:"vehicle-fallback"},he={key:1};function ce(t,e,b,B,f,s){const W=V("openwb-base-alert"),v=V("openwb-base-textarea");return d(),g("div",ge,[Object.keys(t.vehicle.configuration).length==0?(d(),p(W,{key:0,subtype:"info"},{default:l(()=>[i(' Der Fahrzeug-Typ "'+C(t.vehicle.type)+'" bietet keine Einstellungen. ',1)]),_:1})):(d(),g("div",he,[a(W,{subtype:"warning"},{default:l(()=>[i(' Es wurde keine Konfigurationsseite für den Fahrzeug-Typ "'+C(t.vehicle.type)+'" gefunden. Die Einstellungen können als JSON direkt bearbeitet werden. ',1)]),_:1}),a(v,{title:"Konfiguration",subtype:"json","model-value":t.vehicle.configuration,"onUpdate:modelValue":e[0]||(e[0]=T=>t.updateConfiguration(T,"configuration"))},{help:l(()=>e[1]||(e[1]=[i(" Bitte prüfen Sie, ob die Eingaben richtig interpretiert werden. ")])),_:1},8,["model-value"]),a(W,{subtype:"info"},{default:l(()=>[h("pre",null,C(JSON.stringify(t.vehicle.configuration,void 0,2)),1)]),_:1})]))])}const pe=q(me,[["render",ce],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/OpenwbVehicleConfigFallback.vue"]]),be={name:"OpenwbVehicleProxy",props:{vehicleId:{type:Number,required:!0},vehicle:{type:Object,required:!0}},emits:["update:configuration"],computed:{myComponent(){return console.debug(`loading vehicle: ${this.vehicle.type}`),re({loader:()=>oe(Object.assign({"./bmw/vehicle.vue":()=>k(()=>import("./vehicle-91e49f3f.js"),["assets/vehicle-91e49f3f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./bmwbc/vehicle.vue":()=>k(()=>import("./vehicle-79b11b37.js"),["assets/vehicle-79b11b37.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./evcc/vehicle.vue":()=>k(()=>import("./vehicle-f59d95f7.js"),["assets/vehicle-f59d95f7.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./evnotify/vehicle.vue":()=>k(()=>import("./vehicle-87685481.js"),["assets/vehicle-87685481.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./http/vehicle.vue":()=>k(()=>import("./vehicle-bc60fac3.js"),["assets/vehicle-bc60fac3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./kia/vehicle.vue":()=>k(()=>import("./vehicle-6e8988b3.js"),["assets/vehicle-6e8988b3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./manual/vehicle.vue":()=>k(()=>import("./vehicle-0a92127a.js"),["assets/vehicle-0a92127a.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mercedeseq/vehicle.vue":()=>k(()=>import("./vehicle-30efc187.js"),["assets/vehicle-30efc187.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./mqtt/vehicle.vue":()=>k(()=>import("./vehicle-2b9ce8b6.js"),["assets/vehicle-2b9ce8b6.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./ovms/vehicle.vue":()=>k(()=>import("./vehicle-a85e3bc8.js"),["assets/vehicle-a85e3bc8.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./psa/vehicle.vue":()=>k(()=>import("./vehicle-c9ce9ffd.js"),["assets/vehicle-c9ce9ffd.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./renault/vehicle.vue":()=>k(()=>import("./vehicle-833b4868.js"),["assets/vehicle-833b4868.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./skodaconnect/vehicle.vue":()=>k(()=>import("./vehicle-73ea78bb.js"),["assets/vehicle-73ea78bb.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smarteq/vehicle.vue":()=>k(()=>import("./vehicle-5eabfff5.js"),["assets/vehicle-5eabfff5.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./smarthello/vehicle.vue":()=>k(()=>import("./vehicle-9348e485.js"),["assets/vehicle-9348e485.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tesla/vehicle.vue":()=>k(()=>import("./vehicle-82ee9ea0.js"),["assets/vehicle-82ee9ea0.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-axios-22b906fb.js","assets/index-e2dbf7bf.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./tronity/vehicle.vue":()=>k(()=>import("./vehicle-f86ab62f.js"),["assets/vehicle-f86ab62f.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"]),"./vwid/vehicle.vue":()=>k(()=>import("./vehicle-bbec57fb.js"),["assets/vehicle-bbec57fb.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/index-e2dbf7bf.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/index-25de8c12.css","assets/dynamic-import-helper-be004503.js"])}),`./${this.vehicle.type}/vehicle.vue`),errorComponent:pe})}},methods:{updateConfiguration(t){this.$emit("update:configuration",t)}}};function ve(t,e,b,B,f,s){const W=V("openwb-base-heading");return d(),g(P,null,[a(W,null,{default:l(()=>[i(' Einstellungen für SoC-Modul "'+C(b.vehicle.name)+'" ',1)]),_:1}),(d(),p(de(s.myComponent),{"vehicle-id":b.vehicleId,vehicle:b.vehicle,"onUpdate:configuration":e[0]||(e[0]=v=>s.updateConfiguration(v))},null,40,["vehicle-id","vehicle"]))],64)}const fe=q(be,[["render",ve],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/OpenwbVehicleProxy.vue"]]);$.add(H,j,J,G,Q,X,Y,K,ee,te,ne);const _e={name:"OpenwbVehicleConfigView",components:{FontAwesomeIcon:ae,FontAwesomeLayers:le,OpenwbVehicleProxy:fe},mixins:[ie],props:{installAssistantActive:{type:Boolean,required:!1,default:!1}},emits:["sendCommand","save","reset","defaults"],data(){return{mqttTopicsToSubscribe:["openWB/general/extern","openWB/optional/dc_charging","openWB/optional/et/provider","openWB/optional/rfid/active","openWB/vehicle/template/ev_template/+","openWB/vehicle/template/charge_template/+","openWB/vehicle/template/charge_template/+/chargemode/scheduled_charging/plans/+","openWB/vehicle/template/charge_template/+/time_charging/plans/+","openWB/vehicle/+/name","openWB/vehicle/+/info","openWB/vehicle/+/charge_template","openWB/vehicle/+/ev_template","openWB/vehicle/+/tag_id","openWB/system/configurable/soc_modules","openWB/vehicle/+/soc_module/general_config","openWB/vehicle/+/soc_module/config"],showVehicleModal:!1,modalVehicleIndex:void 0,showEvTemplateModal:!1,modalEvTemplateIndex:void 0,showChargeTemplateModal:!1,modalChargeTemplateIndex:void 0,showChargeTemplateSchedulePlanModal:!1,modalChargeTemplateSchedulePlanIndex:void 0,showChargeTemplateTimeChargingPlanModal:!1,modalChargeTemplateTimeChargingPlanIndex:void 0}},computed:{dcChargingEnabled:{get(){return this.$store.state.mqtt["openWB/optional/dc_charging"]}},vehicleIndexes:{get(){return this.getWildcardIndexList("openWB/vehicle/+/name")}},evTemplates:{get(){return this.getWildcardTopics("openWB/vehicle/template/ev_template/+")}},evTemplateList:{get(){let t=[];return Object.keys(this.evTemplates).forEach(e=>{let b=parseInt(e.match(/([0-9]+)$/g)[0]),B=this.$store.state.mqtt["openWB/vehicle/template/ev_template/"+b].name;t.push({value:b,text:B})}),t}},chargeTemplates:{get(){return this.getWildcardTopics("openWB/vehicle/template/charge_template/+")}},chargeTemplateList:{get(){let t=[];return Object.keys(this.chargeTemplates).forEach(e=>{let b=parseInt(e.match(/([0-9]+)$/g)[0]),B=this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+b].name;t.push({value:b,text:B})}),t}},socModuleList:{get(){return this.$store.state.mqtt["openWB/system/configurable/soc_modules"]}}},methods:{getChargeTemplateScheduledChargingPlans(t){let e=t.match(/([^/]+)$/)[0];return this.getWildcardTopics("openWB/vehicle/template/charge_template/"+e+"/chargemode/scheduled_charging/plans/+")},getChargeTemplateTimeChargingPlans(t){let e=t.match(/([^/]+)$/)[0];return this.getWildcardTopics("openWB/vehicle/template/charge_template/"+e+"/time_charging/plans/+")},addVehicle(t){t.stopPropagation(),console.info("requesting new vehicle..."),this.$emit("sendCommand",{command:"addVehicle",data:{}})},removeVehicleModal(t,e){e.stopPropagation(),this.modalVehicleIndex=t,this.showVehicleModal=!0},removeVehicle(t,e){this.showVehicleModal=!1,e=="confirm"&&(console.info("request removal of vehicle '"+t+"'"),this.$emit("sendCommand",{command:"removeVehicle",data:{id:t}}))},getVehicleName(t){return this.$store.state.mqtt["openWB/vehicle/"+t+"/name"]?this.$store.state.mqtt["openWB/vehicle/"+t+"/name"]:"Fahrzeug "+t},getSocDefaultConfiguration(t){const e=this.socModuleList.find(b=>b.value==t);return Object.prototype.hasOwnProperty.call(e,"defaults")?{...JSON.parse(JSON.stringify(e.defaults))}:(console.warn("no default configuration found for soc type!",t),{})},updateSelectedSocModule(t,e){this.updateState("openWB/vehicle/"+t+"/soc_module/config",e,"type"),this.updateState("openWB/vehicle/"+t+"/soc_module/config",this.getSocDefaultConfiguration(e))},updateConfiguration(t,e){console.debug("updateConfiguration",t,e),this.updateState(t,e.value,e.object)},addEvTemplate(t){t.stopPropagation(),console.info("requesting new ev template..."),this.$emit("sendCommand",{command:"addEvTemplate",data:{}})},removeEvTemplateModal(t,e){e.stopPropagation(),this.modalEvTemplateIndex=parseInt(t.match(/([^/]+)$/)[0]),this.showEvTemplateModal=!0},removeEvTemplate(t,e){this.showEvTemplateModal=!1,e=="confirm"&&(console.info("request removal of ev template '"+t+"'"),this.$emit("sendCommand",{command:"removeEvTemplate",data:{id:t}}))},getEvTemplateName(t){return this.$store.state.mqtt["openWB/vehicle/template/ev_template/"+t]?this.$store.state.mqtt["openWB/vehicle/template/ev_template/"+t].name:"Fahrzeug-Profil "+t},addChargeTemplate(t){t.stopPropagation(),console.info("requesting new charge template..."),this.$emit("sendCommand",{command:"addChargeTemplate",data:{}})},getChargeTemplateIndex(t){return parseInt(t.match(/([^/]+)$/)[0])},removeChargeTemplateModal(t,e){e.stopPropagation(),this.modalChargeTemplateIndex=this.getChargeTemplateIndex(t),this.showChargeTemplateModal=!0},removeChargeTemplate(t,e){this.showChargeTemplateModal=!1,e=="confirm"&&(console.info("request removal of charge template '"+t+"'"),this.$emit("sendCommand",{command:"removeChargeTemplate",data:{id:t}}))},getChargeTemplateName(t){return this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t]?this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t].name:"Lade-Profil "+t},getChargeTemplateSchedulePlanName(t,e){return this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t+"/chargemode/scheduled_charging/plans/"+e]?this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t+"/chargemode/scheduled_charging/plans/"+e].name:"Zielladen Zeitplan "+t+"/"+e},addChargeTemplateSchedulePlan(t,e){e.stopPropagation(),console.info("requesting new charge template schedule plan...");let b=parseInt(t.match(/([^/]+)$/)[0]);this.$emit("sendCommand",{command:"addChargeTemplateSchedulePlan",data:{template:b}})},removeChargeTemplateSchedulePlanModal(t,e,b){b.stopPropagation(),this.modalChargeTemplateIndex=parseInt(t.match(/([^/]+)$/)[0]),this.modalChargeTemplateSchedulePlanIndex=parseInt(e.match(/([^/]+)$/)[0]),this.showChargeTemplateSchedulePlanModal=!0},removeChargeTemplateSchedulePlan(t,e,b){this.showChargeTemplateSchedulePlanModal=!1,b=="confirm"&&(console.info("request removal of charge template '"+t+"' schedule plan '"+e+"'"),this.$emit("sendCommand",{command:"removeChargeTemplateSchedulePlan",data:{template:t,plan:e}}))},getChargeTemplateTimeChargingPlanName(t,e){return this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t+"/time_charging/plans/"+e]?this.$store.state.mqtt["openWB/vehicle/template/charge_template/"+t+"/time_charging/plans/"+e].name:"Zeitladen Zeitplan "+t+"/"+e},addChargeTemplateTimeChargingPlan(t,e){e.stopPropagation(),console.info("requesting new charge template time charging plan...");let b=parseInt(t.match(/([^/]+)$/)[0]);this.$emit("sendCommand",{command:"addChargeTemplateTimeChargingPlan",data:{template:b}})},removeChargeTemplateTimeChargingPlanModal(t,e,b){b.stopPropagation(),this.modalChargeTemplateIndex=parseInt(t.match(/([^/]+)$/)[0]),this.modalChargeTemplateTimeChargingPlanIndex=parseInt(e.match(/([^/]+)$/)[0]),this.showChargeTemplateTimeChargingPlanModal=!0},removeChargeTemplateTimeChargingPlan(t,e,b){this.showChargeTemplateTimeChargingPlanModal=!1,b=="confirm"&&(console.info("request removal of charge template '"+t+"' time charging plan '"+e+"'"),this.$emit("sendCommand",{command:"removeChargeTemplateTimeChargingPlan",data:{template:t,plan:e}}))}}},we={class:"vehicleConfig"},ke={name:"vehicleConfigForm"},Ve={key:0},Ce={key:1},Se={key:2},ze=["innerHTML"],Ue={key:3},Te={key:0},We={key:1},Le={key:0},Pe={key:1},Ae={key:0},ye={key:0},Ee={key:3},Be={key:0},Fe={key:1},qe={key:0},Me={key:0},De={key:0},Ze=["onClick"],xe={key:0},Ne={key:1},Oe={key:2},Re={key:3},Ie={key:4},$e={key:5},He={key:4},je=["onClick"],Je={key:0},Ge={key:1},Qe={key:2},Xe={key:3},Ye={key:4},Ke={key:5};function et(t,e,b,B,f,s){const W=V("openwb-base-modal-dialog"),v=V("font-awesome-icon"),T=V("openwb-base-avatar"),y=V("openwb-base-alert"),z=V("openwb-base-text-input"),M=V("openwb-base-select-input"),O=V("openwb-base-array-input"),_=V("openwb-base-button-group-input"),L=V("openwb-base-heading"),w=V("openwb-base-number-input"),R=V("openwb-vehicle-proxy"),A=V("openwb-base-card"),Z=V("font-awesome-layers"),S=V("openwb-base-range-input"),I=V("openwb-base-submit-buttons");return d(),g(P,null,[a(W,{show:f.showVehicleModal,title:"Fahrzeug löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[0]||(e[0]=o=>s.removeVehicle(f.modalVehicleIndex,o))},{default:l(()=>[i(' Wollen Sie das Fahrzeug "'+C(s.getVehicleName(f.modalVehicleIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),a(W,{show:f.showEvTemplateModal,title:"Fahrzeug-Profil löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[1]||(e[1]=o=>s.removeEvTemplate(f.modalEvTemplateIndex,o))},{default:l(()=>[i(' Wollen Sie das Fahrzeug-Profil "'+C(s.getEvTemplateName(f.modalEvTemplateIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),a(W,{show:f.showChargeTemplateModal,title:"Lade-Profil löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[2]||(e[2]=o=>s.removeChargeTemplate(f.modalChargeTemplateIndex,o))},{default:l(()=>[i(' Wollen Sie das Lade-Profil "'+C(s.getChargeTemplateName(f.modalChargeTemplateIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),a(W,{show:f.showChargeTemplateSchedulePlanModal,title:"Zielladen Zeitplan löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[3]||(e[3]=o=>s.removeChargeTemplateSchedulePlan(f.modalChargeTemplateIndex,f.modalChargeTemplateSchedulePlanIndex,o))},{default:l(()=>[i(' Wollen Sie den Zielladen Zeitplan "'+C(s.getChargeTemplateSchedulePlanName(f.modalChargeTemplateIndex,f.modalChargeTemplateSchedulePlanIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),a(W,{show:f.showChargeTemplateTimeChargingPlanModal,title:"Zeitladen Zeitplan löschen",subtype:"danger",buttons:[{text:"Löschen",event:"confirm",subtype:"danger"}],onModalResult:e[4]||(e[4]=o=>s.removeChargeTemplateTimeChargingPlan(f.modalChargeTemplateIndex,f.modalChargeTemplateTimeChargingPlanIndex,o))},{default:l(()=>[i(' Wollen Sie den Zeitladen Zeitplan "'+C(s.getChargeTemplateTimeChargingPlanName(f.modalChargeTemplateIndex,f.modalChargeTemplateTimeChargingPlanIndex))+'" wirklich entfernen? Dieser Vorgang kann nicht rückgängig gemacht werden! ',1)]),_:1},8,["show"]),h("div",we,[h("form",ke,[a(A,{subtype:"info",collapsible:!0,collapsed:t.$route.params.section!="vehicle"},{header:l(()=>[a(v,{"fixed-width":"",icon:["fas","car"]}),e[8]||(e[8]=i(" Fahrzeuge "))]),actions:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(d(),p(T,{key:0,class:"bg-success clickable",onClick:s.addVehicle},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):m("",!0)]),default:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(d(),g("div",Ve,[a(y,{subtype:"info"},{default:l(()=>e[9]||(e[9]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(d(),g("div",Ce,[(d(!0),g(P,null,E(s.vehicleIndexes,o=>(d(),p(A,{key:o,title:s.getVehicleName(o),collapsible:!0,collapsed:!(t.$route.params.section=="vehicle"&&parseInt(t.$route.params.section_index)==o),subtype:"info"},F({default:l(()=>[a(z,{title:"Bezeichnung","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/name"],disabled:o===0,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/name",r)},F({_:2},[o===0?{name:"help",fn:l(()=>[e[10]||(e[10]=i(" Das Standard-Fahrzeug kann nicht umbenannt werden. "))]),key:"0"}:void 0]),1032,["model-value","disabled","onUpdate:modelValue"]),o!==0?(d(),p(z,{key:0,title:"Fahrzeughersteller ","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/info"].manufacturer,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/info",r,"manufacturer")},{help:l(()=>[...e[11]||(e[11]=[i(" Optional: zusätzliche Information für den Systembericht. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),o!==0?(d(),p(z,{key:1,title:"Fahrzeugmodell","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/info"].model,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/info",r,"model")},{help:l(()=>[...e[12]||(e[12]=[i(" Optional: zusätzliche Information für den Systembericht."),h("br",null,null,-1),i(" Nach Möglichkeit auch Angabe des Baujahres, da es durchaus beim Verhalten des Fahrzeugs Unterschiede geben kann. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(y,{subtype:"info"},{default:l(()=>[...e[13]||(e[13]=[i(" Ein anderes Fahrzeug-Profil wird erst NACH dem Abstecken übernommen, da es sonst durch die Änderung bestimmter Einstellungen im laufenden Ladevorgang zu Widersprüchen kommen kann. ")])]),_:1}),a(M,{title:"Fahrzeug-Profil",options:s.evTemplateList,"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/ev_template"],"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/ev_template",r)},null,8,["options","model-value","onUpdate:modelValue"]),a(M,{title:"Lade-Profil",options:s.chargeTemplateList,"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/charge_template"],"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/charge_template",r)},null,8,["options","model-value","onUpdate:modelValue"]),e[24]||(e[24]=h("hr",null,null,-1)),t.$store.state.mqtt["openWB/optional/rfid/active"]===!0&&!b.installAssistantActive?(d(),g("div",Se,[a(O,{title:"Zugeordnete ID-Tags","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/tag_id"],"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/tag_id",r)},null,8,["model-value","onUpdate:modelValue"]),a(y,{subtype:"info"},{default:l(()=>[e[14]||(e[14]=i(" Die hier eingetragenen ID-Tags dienen ausschließlich der Fahrzeugzuordnung.")),e[15]||(e[15]=h("br",null,null,-1)),h("span",{innerHTML:t.$store.state.text.rfidWiki},null,8,ze)]),_:1}),e[16]||(e[16]=h("hr",null,null,-1))])):m("",!0),a(M,{class:"mb-2",title:"SoC-Modul des Fahrzeugs",options:s.socModuleList,"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/config"].type,"onUpdate:modelValue":r=>s.updateSelectedSocModule(o,r)},{help:l(()=>[...e[17]||(e[17]=[i(" Mit einem SoC-Modul kann der Ladestand des Fahrzeugs ermittelt und geregelt werden. Z.B. lassen sich unabhängig vom Fahrzeug bestimmte SoC-Werte einstellen, um den Fahrzeugakku zu schonen. Aktuell werden die SoC-Werte mittels der App-Zugangsdaten aus dem Herstellerserver des Fahrzeuges ausgelesen. Zukünftig soll auch eine direkte SoC-Auslesung aus dem Fahrzeug möglich werden (openWB Pro)."),h("br",null,null,-1),i(" Die SoC-Abfrage erfolgt automatisch beim Anstecken des Fahrzeuges und zusätzlich über einstellbare Abfrageintervalle während des Ladens und Nichtladens. Die Abfrage kann auch manuell durch Klick auf den Reload-Pfeil auf der Hauptseite ausgelöst werden."),h("br",null,null,-1),i(" Wenn eine Abfrage fehlschlägt, wird noch drei weitere Male im Abstand von 5 Minuten versucht, den SoC abzufragen. Wenn dies nicht erfolgreich ist, wird der SoC auf 0% gesetzt um zu vermeiden, dass ein Auto beim SoC-basierten Laden nicht geladen wird. Die Abfrage erfolgt dann wieder in den oben genannten Intervallen."),h("br",null,null,-1),i(" Da aktuell die SoC-Abfragen über Onlineserver der Fahrzeughersteller laufen, ist infolge möglicher Umstellungen/Wartungen keine 100%-ig sichere SoC-Abfrage garantiert. Auch kann es zu SoC-Abweichungen infolge von zeitlicher Verzögerungen kommen. Hilfestellung erfolgt primär im openWB-Forum. ")])]),_:2},1032,["options","model-value","onUpdate:modelValue"]),t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/config"].type?(d(),g("div",Ue,[a(_,{title:"SoC direkt aus Fahrzeug auslesen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/general_config"].use_soc_from_cp,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/soc_module/general_config",r,"use_soc_from_cp")},{help:l(()=>[...e[18]||(e[18]=[i(" Wenn Ladepunkt und Fahrzeug das direkte Auslesen des SoCs über das Ladekabel unterstützen, wird der SoC nach dem Anstecken aus dem Fahrzeug ausgelesen und während der Ladung berechnet. Das direkte Auslesen des SoC aus dem Fahrzeug ist aktuell nur mit einer openWB Pro möglich. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(L,null,{help:l(()=>[...e[19]||(e[19]=[i(" Einige Hersteller begrenzen die möglichen Abfragen. Sobald ein gewisses Limit in einem Zeitraum überschritten wird, werden weitere Anfragen blockiert. Die Zeitintervalle sollten daher nicht zu klein gewählt werden. ")])]),default:l(()=>[e[20]||(e[20]=i(" Aktualisierung der Fahrzeugdaten "))]),_:1}),a(w,{title:"Während der Ladung",unit:"Min.",min:1,required:"","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/general_config"].request_interval_charging/60,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/soc_module/general_config",r*60,"request_interval_charging")},{help:l(()=>[...e[21]||(e[21]=[i(" Der Ladestand des Fahrzeugs (SoC) wird bei einem laufenden Ladevorgang in dem hier eingestellten Intervall in Minuten abgefragt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(w,{title:"Ohne laufende Ladung",unit:"Min.",min:1,required:"","model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/general_config"].request_interval_not_charging/60,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/soc_module/general_config",r*60,"request_interval_not_charging")},{help:l(()=>[...e[22]||(e[22]=[i(" Der Ladestand des Fahrzeugs (SoC) wird in dem hier eingestellten Intervall in Minuten abgefragt, falls kein Ladevorgang aktiv ist. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Nur aktualisieren wenn angesteckt",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/general_config"].request_only_plugged,"onUpdate:modelValue":r=>t.updateState("openWB/vehicle/"+o+"/soc_module/general_config",r,"request_only_plugged")},{help:l(()=>[...e[23]||(e[23]=[i(' Wird hier "Ja" ausgewählt, dann wird der Ladestand des Fahrzeugs nur abgefragt, wenn das Ladekabel angesteckt ist. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(R,{"vehicle-id":o,vehicle:t.$store.state.mqtt["openWB/vehicle/"+o+"/soc_module/config"],"onUpdate:configuration":r=>s.updateConfiguration("openWB/vehicle/"+o+"/soc_module/config",r)},null,8,["vehicle-id","vehicle","onUpdate:configuration"])])):m("",!0)]),_:2},[o!==0?{name:"actions",fn:l(r=>[r.collapsed?m("",!0):(d(),p(T,{key:0,class:"bg-danger clickable",onClick:n=>s.removeVehicleModal(o,n)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),key:"0"}:void 0]),1032,["title","collapsed"]))),128))]))]),_:1},8,["collapsed"]),e[81]||(e[81]=h("hr",{class:"border-secondary"},null,-1)),a(L,null,{default:l(()=>e[25]||(e[25]=[i("Profile")])),_:1}),a(A,{collapsible:!0,collapsed:!0},{header:l(()=>[a(Z,{"fixed-width":"",class:"fa-lg"},{default:l(()=>[a(v,{"fixed-width":"",icon:["far","file"]}),a(v,{"fixed-width":"",icon:["fas","car"],transform:"shrink-8"})]),_:1}),e[26]||(e[26]=i(" Fahrzeug-Profile "))]),actions:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(d(),p(T,{key:0,class:"bg-success clickable",onClick:s.addEvTemplate},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):m("",!0)]),default:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(d(),g("div",Te,[a(y,{subtype:"info"},{default:l(()=>e[27]||(e[27]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(d(),g("div",We,[a(y,{subtype:"info"},{default:l(()=>e[28]||(e[28]=[i(" Ein anderes Fahrzeug-Profil wird erst "),h("span",{class:"text-uppercase font-weight-bold"}," nach dem Abstecken ",-1),i(" übernommen, da es sonst durch die Änderung bestimmter Einstellungen im laufenden Ladevorgang zu Widersprüchen kommen kann. ")])),_:1}),(d(!0),g(P,null,E(s.evTemplates,(o,r)=>(d(),p(A,{key:r,title:o.name?o.name:r,collapsible:!0,collapsed:!0},F({default:l(()=>[a(z,{title:"Bezeichnung","model-value":o.name,disabled:r.endsWith("/0"),"onUpdate:modelValue":n=>t.updateState(r,n,"name")},F({_:2},[r.endsWith("/0")?{name:"help",fn:l(()=>[e[29]||(e[29]=i(" Das Standard-Profil kann nicht umbenannt werden. "))]),key:"0"}:void 0]),1032,["model-value","disabled","onUpdate:modelValue"]),a(L,null,{default:l(()=>[...e[30]||(e[30]=[i(" Angaben zur Batterie ")])]),_:1}),a(w,{title:"Kapazität der Batterie",unit:"kWh",min:1,step:1,required:"","model-value":o.battery_capacity/1e3,"onUpdate:modelValue":n=>t.updateState(r,n*1e3,"battery_capacity")},{help:l(()=>[...e[31]||(e[31]=[i(" Angabe der Netto-Kapazität der Fahrzeugbatterie. Dient zur Berechnung des manuellen SoC und der geladenen Reichweite. Die Netto-Kapazität unterscheidet sich meist von den Angaben der Fahrzeughersteller. So besitzt ein Tesla Model S 90 z. B. nur ca. 83kWh und nicht die durch die Typenbezeichnung suggerierten 90kWh. Andere Hersteller begrenzen die nutzbare Kapazität absichtlich, um eine höhere Lebensdauer der Akkus zu erreichen. Gängig sind eine Drosselung auf 90% der angegebenen Brutto-Kapazität. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),b.installAssistantActive?m("",!0):(d(),g("div",Le,[a(w,{title:"Wirkungsgrad der Ladeelektronik",unit:"%",min:1,max:100,required:"","model-value":o.efficiency,"onUpdate:modelValue":n=>t.updateState(r,n,"efficiency")},{help:l(()=>[...e[32]||(e[32]=[i(" Durch Verluste in der Ladeelektronik (z. B. Umwandlung Wechselspannung in Gleichspannung) gelangt nicht die komplette Energie, welche durch den Zähler in der Wallbox gemessen wird, in den Akku des Fahrzeugs. Der anzugebende Wert liegt bei gängigen Fahrzeugen im Bereich 90-95%. Eine Ausnahme stellt der Zoe dar, dessen Chameleon-Lader je nach Modellversion und freigegebener Leistung der Wallbox teilweise nur auf ca. 50% kommt."),h("br",null,null,-1),i(" Liegen die Angaben der Wallbox und des Fahrzeugs nach der Ladung mehrere Prozent auseinander, dann kann mit dieser Einstellung eine Feinabstimmung erfolgen: "),h("br",null,null,-1),i(" SoC an der Wallbox zu hoch: Wirkungsgrad um ein paar Prozent reduzieren"),h("br",null,null,-1),i(" SoC an der Wallbox zu gering: Wirkungsgrad um ein paar Prozent erhöhen"),h("br",null,null,-1)])]),_:2},1032,["model-value","onUpdate:modelValue"])])),a(w,{title:"Durchschnittsverbrauch",unit:"kWh / 100km",min:1,step:.1,required:"","model-value":o.average_consump/1e3,"onUpdate:modelValue":n=>t.updateState(r,n*1e3,"average_consump")},null,8,["model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),g("div",Pe,[a(L,null,{default:l(()=>[...e[33]||(e[33]=[i(" Angaben zur Ladeleistung (DC) ")])]),_:1}),a(w,{title:"Mindestleistung",min:5,unit:"kW","model-value":t.ac_current2dc_power(o.dc_min_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"dc_min_current")},null,8,["model-value","onUpdate:modelValue"]),a(w,{title:"Maximalleistung",unit:"kW","model-value":t.ac_current2dc_power(o.dc_max_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"dc_max_current")},null,8,["model-value","onUpdate:modelValue"])])):m("",!0),a(L,null,{default:l(()=>[e[34]||(e[34]=i(" Angaben zum Ladestrom ")),s.dcChargingEnabled===!0?(d(),g("span",Ae," (AC) ")):m("",!0)]),_:1}),a(S,{title:"Mindeststrom",min:6,max:16,step:1,unit:"A","model-value":o.min_current,"onUpdate:modelValue":n=>t.updateState(r,n,"min_current")},null,8,["model-value","onUpdate:modelValue"]),a(S,{title:"Maximalstrom bei einer Phase",min:6,max:32,step:1,unit:"A","model-value":o.max_current_single_phase,"onUpdate:modelValue":n=>t.updateState(r,n,"max_current_single_phase")},null,8,["model-value","onUpdate:modelValue"]),a(S,{title:"Maximalstrom mehrere Phasen",min:6,max:32,step:1,unit:"A","model-value":o.max_current_multi_phases,"onUpdate:modelValue":n=>t.updateState(r,n,"max_current_multi_phases")},null,8,["model-value","onUpdate:modelValue"]),a(w,{title:"Erlaubte Stromabweichung",step:.1,unit:"A","model-value":o.nominal_difference,"onUpdate:modelValue":n=>t.updateState(r,n,"nominal_difference")},{help:l(()=>[...e[35]||(e[35]=[i(" In manchen Lademodi, z.B. bei der automatischen Phasenumschaltung, wird geprüft, ob das Fahrzeug mit der vorgegebenen Stromstärke lädt. Manche Fahrzeuge laden nicht exakt mit der vorgegebenen Stromstärke. Die erlaubte Abweichung kann hier eingestellt werden. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(L,null,{default:l(()=>[e[36]||(e[36]=i(" Angaben zur Handhabung von Phasen ")),s.dcChargingEnabled===!0?(d(),g("span",ye," (AC) ")):m("",!0)]),_:1}),a(_,{title:"Unterstützte Phasen",buttons:[{buttonValue:1,text:"1"},{buttonValue:2,text:"2"},{buttonValue:3,text:"3"}],"model-value":o.max_phases,"onUpdate:modelValue":n=>t.updateState(r,n,"max_phases")},{help:l(()=>[...e[37]||(e[37]=[i(" Anzahl der Phasen, die der Fahrzeuglader (s.g. OBC - OnboardCharger) bereitstellt. Plugin-Hybride haben meist nur eine Phase, reine E-Autos meist 2 bis 3 Phasen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"CP-Unterbrechung",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":o.control_pilot_interruption,"onUpdate:modelValue":n=>t.updateState(r,n,"control_pilot_interruption")},{help:l(()=>[...e[38]||(e[38]=[i(' Erläuterung siehe "Konfiguration - Ladepunkte" -> Hardware-Optionen ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),o.control_pilot_interruption?(d(),p(w,{key:2,title:"Dauer der CP-Unterbrechung",min:4,step:1,unit:"s","model-value":o.control_pilot_interruption_duration,"onUpdate:modelValue":n=>t.updateState(r,n,"control_pilot_interruption_duration")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Phasenumschaltung blockieren",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":o.prevent_phase_switch,"onUpdate:modelValue":n=>t.updateState(r,n,"prevent_phase_switch")},{help:l(()=>[...e[39]||(e[39]=[i(' Erläuterung zu 1p3p siehe "Ladeeinstellungen" ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Ladung aktiv halten",buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":o.prevent_charge_stop,"onUpdate:modelValue":n=>t.updateState(r,n,"prevent_charge_stop")},{help:l(()=>[...e[40]||(e[40]=[i(" Der Ladevorgang wird in den Lademodi PV- und Zielladen nach Ladebeginn nicht unterbrochen, selbst wenn nicht mehr genug Überschuss vorhanden ist. Diese Einstellung sollte bei Fahrzeugen aktiviert werden, die nach einer Ladungsunterbrechung keine Ladung mehr starten. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(w,{title:"Pause bei Phasenumschaltung",unit:"s",min:2,step:1,required:"","model-value":o.phase_switch_pause,"onUpdate:modelValue":n=>t.updateState(r,n,"phase_switch_pause")},null,8,["model-value","onUpdate:modelValue"]),b.installAssistantActive?m("",!0):(d(),g("div",Ee,[a(w,{title:"Mindestzeit zwischen Umschaltungen",unit:"s",min:2,step:1,required:"","model-value":o.keep_charge_active_duration,"onUpdate:modelValue":n=>t.updateState(r,n,"keep_charge_active_duration")},{help:l(()=>[...e[41]||(e[41]=[i(" Manche Fahrzeuge benötigen nach der Umschaltung einige Zeit, bis sie mit der vorgegebenen Phasenzahl laden. In dieser Zeit wird keine neue Phasenumschaltung angestoßen. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])]))]),_:2},[r.endsWith("/0")?void 0:{name:"actions",fn:l(n=>[t.$store.state.mqtt["openWB/general/extern"]===!1&&!n.collapsed?(d(),p(T,{key:0,class:"bg-danger clickable",onClick:c=>s.removeEvTemplateModal(r,c)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])):m("",!0)]),key:"0"}]),1032,["title"]))),128))]))]),_:1}),a(A,{collapsible:!0,collapsed:t.$route.params.section!="charge_template"},{header:l(()=>[a(Z,{"fixed-width":"",class:"fa-lg"},{default:l(()=>[a(v,{"fixed-width":"",icon:["far","file"]}),a(v,{"fixed-width":"",icon:["fas","plug"],transform:"shrink-8"})]),_:1}),e[42]||(e[42]=i(" Lade-Profile "))]),actions:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!1?(d(),p(T,{key:0,class:"bg-success clickable",onClick:s.addChargeTemplate},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:1},8,["onClick"])):m("",!0)]),default:l(()=>[t.$store.state.mqtt["openWB/general/extern"]===!0?(d(),g("div",Be,[a(y,{subtype:"info"},{default:l(()=>e[43]||(e[43]=[i(' Diese Einstellungen sind nicht verfügbar, solange sich diese openWB im Steuerungsmodus "secondary" befindet. ')])),_:1})])):(d(),g("div",Fe,[(d(!0),g(P,null,E(s.chargeTemplates,(o,r)=>(d(),p(A,{key:r,title:o.name?o.name:r,collapsible:!0,collapsed:!(t.$route.params.section=="charge_template"&&parseInt(t.$route.params.section_index)==s.getChargeTemplateIndex(r))},F({default:l(()=>[a(z,{title:"Bezeichnung","model-value":o.name,disabled:r.endsWith("/0"),"onUpdate:modelValue":n=>t.updateState(r,n,"name")},F({_:2},[r.endsWith("/0")?{name:"help",fn:l(()=>[e[44]||(e[44]=i(" Das Standard-Profil kann nicht umbenannt werden. "))]),key:"0"}:void 0]),1032,["model-value","disabled","onUpdate:modelValue"]),a(L,null,{default:l(()=>[...e[45]||(e[45]=[i(" Allgemeine Optionen ")])]),_:1}),a(_,{title:"Aktiver Lademodus",buttons:[{buttonValue:"instant_charging",text:"Sofortladen",class:"btn-outline-danger"},{buttonValue:"pv_charging",text:"PV",class:"btn-outline-success"},{buttonValue:"scheduled_charging",text:"Zielladen",class:"btn-outline-primary"},{buttonValue:"standby",text:"Standby",class:"btn-outline-secondary"},{buttonValue:"stop",text:"Stop",class:"btn-outline-dark"}],"model-value":o.chargemode.selected,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.selected")},{help:l(()=>[...e[46]||(e[46]=[i(" Diese Einstellung entspricht dem gewählten Lademodus auf der Hauptseite und ist aktiv, wenn ein zugehöriges Fahrzeug angesteckt ist."),h("br",null,null,-1),i(" Die zur Verfügung stehende Leistung wird intern anhand folgender Prioritätenliste auf die Fahrzeuge bzw. Ladepunkte verteilt:"),h("br",null,null,-1),h("ol",null,[h("li",null,"Zielladen (Sofortladen) mit Priorität"),h("li",null,"Zielladen (Sofortladen)"),h("li",null,"Zeitladen mit Priorität"),h("li",null,"Zeitladen"),h("li",null,"Sofortladen mit Priorität"),h("li",null,"Sofortladen"),h("li",null,"PV (Min-Anteil) mit Priorität"),h("li",null,"PV (Min-Anteil)"),h("li",null,"Zielladen (PV) mit Priorität"),h("li",null,"Zielladen (PV)"),h("li",null,"PV (PV-Anteil) mit Priorität"),h("li",null,"PV (PV-Anteil)")],-1)])]),_:2},1032,["model-value","onUpdate:modelValue"]),b.installAssistantActive?m("",!0):(d(),g("div",qe,[a(_,{title:"Priorität",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.prio,"onUpdate:modelValue":n=>t.updateState(r,n,"prio")},{help:l(()=>[...e[47]||(e[47]=[i(" Die Ladefreigabe mit dem jeweils eingestellten Mindeststrom erfolgt für alle Fahrzeuge, soweit die verfügbare Leistung ausreicht. Fahrzeuge mit Priorität werden bevorzugt mit mehr Leistung geladen, falls verfügbar. Erst wenn alle priorisierten Fahrzeuge die maximale Ladeleistung bekommen und noch zusätzlicher Überschuss vorhanden ist, wird auch für Fahrzeuge ohne Priorität mehr Leistung freigegeben. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Zeitladen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.time_charging.active,"onUpdate:modelValue":n=>t.updateState(r,n,"time_charging.active")},{help:l(()=>[...e[48]||(e[48]=[i(' Der Lademodus Zeitladen kann parallel zu einem der anderen Lademodi aktiviert werden. Die Auswahl des Lademodus, der in der Regelung genutzt wird, erfolgt anhand der Übersicht in der Hilfe bei "Aktiver Lademodus". Wenn kein Zeitplan aktiv ist oder das Limit des Zeitplans erreicht wurde, wird der Lademodus verwendet, der bei "Aktiver Lademodus" ausgewählt ist. ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Standard nach Abstecken",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.load_default,"onUpdate:modelValue":n=>t.updateState(r,n,"load_default")},{help:l(()=>[...e[49]||(e[49]=[i(" Falls diese Option aktiviert ist, wird der betroffene Ladepunkt nach dem Abstecken auf das Standard Fahrzeug zurückgesetzt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(_,{title:"Strompreisbasiert Laden",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.et.active,"onUpdate:modelValue":n=>t.updateState(r,n,"et.active")},null,8,["model-value","onUpdate:modelValue"]),o.et.active==!0?(d(),g("div",Me,[!t.$store.state.mqtt["openWB/optional/et/provider"]||!t.$store.state.mqtt["openWB/optional/et/provider"].type?(d(),g("div",De,[a(y,{subtype:"danger"},{default:l(()=>[...e[50]||(e[50]=[i(" Bitte in den übergreifenden Ladeeinstellungen einen Strompreis-Anbieter konfigurieren. ")])]),_:1})])):m("",!0),a(w,{title:"Preisgrenze für Zeit- & Sofortladen",min:"-80",max:"80",step:"0.01",precision:2,unit:"ct/kWh","model-value":o.et.max_price*1e5,"onUpdate:modelValue":n=>t.updateState(r,parseFloat((n/1e5).toFixed(7)),"et.max_price")},{help:l(()=>[...e[51]||(e[51]=[i(" Für Zielladen werden die günstigsten Stunden ermittelt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])])):m("",!0),e[52]||(e[52]=h("hr",null,null,-1))])),a(L,null,{default:l(()=>[...e[53]||(e[53]=[i("Sofortladen")])]),_:1}),a(S,{title:"Soll-Ladestrom"+(s.dcChargingEnabled?" (AC)":""),min:6,max:32,step:1,unit:"A","model-value":o.chargemode.instant_charging.current,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.instant_charging.current")},null,8,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:1,title:"Soll-Ladeleistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(o.chargemode.instant_charging.dc_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"chargemode.instant_charging.dc_current")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Begrenzung",buttons:[{buttonValue:"none",text:"Aus"},{buttonValue:"soc",text:"Fahrzeug-SoC"},{buttonValue:"amount",text:"Energie"}],"model-value":o.chargemode.instant_charging.limit.selected,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.instant_charging.limit.selected")},{help:l(()=>[...e[54]||(e[54]=[i(" Sofortladen kann ohne Fahrzeug-SoC-Begrenzung (Aus), mit Begrenzung des Fahrzeug-SoC (SoC) bei konfiguriertem SoC-Auslesemodul oder mittels Vorgabe eine gewünschten Energiemenge in kWh (Energie) genutzt werden. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(S,{title:"SoC-Limit für das Fahrzeug",min:5,max:100,step:5,unit:"%","model-value":o.chargemode.instant_charging.limit.soc,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.instant_charging.limit.soc")},{help:l(()=>[...e[55]||(e[55]=[i(' Um die Fahrzeug-SoC-Begrenzung nutzen zu können, muss ein SoC-Modul für das jeweilige Fahrzeug eingerichtet sein (siehe "Konfiguration" -> "Fahrzeuge" -> "SoC-Modul"). ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(w,{title:"Energie-Limit",unit:"kWh",min:1,step:1,"model-value":o.chargemode.instant_charging.limit.amount/1e3,"onUpdate:modelValue":n=>t.updateState(r,n*1e3,"chargemode.instant_charging.limit.amount")},{help:l(()=>[...e[56]||(e[56]=[i(" Die geladene Energiemenge wird beim Wechsel des Lademodus oder nach dem Anstecken, wenn Sofortladen schon ausgewählt ist, neu gezählt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),e[79]||(e[79]=h("hr",null,null,-1)),a(L,null,{default:l(()=>[...e[57]||(e[57]=[i("PV-Laden")])]),_:1}),a(S,{title:"Minimaler Dauerstrom"+(s.dcChargingEnabled?" (AC)":""),min:0,max:11,step:1,unit:"A",labels:[{label:"Aus",value:0},{label:6,value:6},{label:7,value:7},{label:8,value:8},{label:9,value:9},{label:10,value:10},{label:11,value:11},{label:12,value:12},{label:13,value:13},{label:14,value:14},{label:15,value:15},{label:16,value:16}],"model-value":o.chargemode.pv_charging.min_current,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.min_current")},{help:l(()=>[...e[58]||(e[58]=[i(' Hier kann eine Stromstärke eingestellt werden, mit dem unabhängig vom vorhandenen Überschuss durchgeladen wird. Hierdurch wird z.B. an Tagen mit häufigem Sonne/Wolken-Wechsel oder mit nur wenig PV-Ertrag ein Laden ohne Unterbrechung ermöglicht. Folglich kann auch Netzbezug für das Fahrzeugladen entstehen, weshalb der niedrigste Stromwert empfohlen wird. Diese Einstellung entspricht weitestgehend dem Lademodus "Min+PV" der Version 1.x. ')])]),_:2},1032,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:2,title:"Minimale Dauerleistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(o.chargemode.pv_charging.dc_min_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"chargemode.pv_charging.dc_min_current")},{help:l(()=>[...e[59]||(e[59]=[i(" Hier kann eine Leistung eingestellt werden, mit dem unabhängig vom vorhandenen Überschuss durchgeladen wird. Hierdurch wird z.B. an Tagen mit häufigem Sonne/Wolken-Wechsel oder mit nur wenig PV-Ertrag ein Laden ohne Unterbrechung ermöglicht. Folglich kann auch Netzbezug für das Fahrzeugladen entstehen, weshalb der niedrigste Leistungswert empfohlen wird. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(S,{title:"SoC-Limit für das Fahrzeug",min:0,max:20,step:1,unit:"%",labels:[{label:5,value:5},{label:10,value:10},{label:15,value:15},{label:20,value:20},{label:25,value:25},{label:30,value:30},{label:35,value:35},{label:40,value:40},{label:45,value:45},{label:50,value:50},{label:55,value:55},{label:60,value:60},{label:65,value:65},{label:70,value:70},{label:75,value:75},{label:80,value:80},{label:85,value:85},{label:90,value:90},{label:95,value:95},{label:100,value:100},{label:"Aus",value:101}],"model-value":o.chargemode.pv_charging.max_soc,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.max_soc")},{help:l(()=>[...e[60]||(e[60]=[i(' Bei der Einstellung "100%" wird die Ladung sofort mit Erreichen der 100% beendet. Dadurch erfolgt KEIN Balancing der Batteriezellen. Ist dies gewünscht (sollte ab und an durchgeführt werden), muss hier "Aus" gewählt werden (Schieberegler ganz nach rechts stellen), um die Ladung MIT Balancing bis zur Beendigung durch das Fahrzeug weiterlaufen zu lassen.'),h("br",null,null,-1),i(' Um die Fahrzeug-SoC-Begrenzung nutzen zu können, muss ein SoC-Modul für das jeweilige Fahrzeug eingerichtet sein (siehe "Konfiguration" -> "Fahrzeuge" -> "SoC-Modul"). ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(S,{title:"Mindest-SoC für das Fahrzeug",min:0,max:19,step:1,unit:"%",labels:[{label:"Aus",value:0},{label:5,value:5},{label:10,value:10},{label:15,value:15},{label:20,value:20},{label:25,value:25},{label:30,value:30},{label:35,value:35},{label:40,value:40},{label:45,value:45},{label:50,value:50},{label:55,value:55},{label:60,value:60},{label:65,value:65},{label:70,value:70},{label:75,value:75},{label:80,value:80},{label:85,value:85},{label:90,value:90},{label:95,value:95}],"model-value":o.chargemode.pv_charging.min_soc,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.min_soc")},{help:l(()=>[...e[61]||(e[61]=[i(' Liegt der Fahrzeug-Ladestand (SoC) unter dem hier eingestellten Wert, dann wird bis zum Erreichen dieses Wertes mit dem eingestellten "Mindest-SoC-Strom" geladen. Dies dient der Sicherstellung eines "Mindest-SoC" - z.B. für eine immer abzudeckende Fahrzeugreichweite - auch wenn kein oder zu wenig Überschuss verfügbar ist (=> Laden mit anteilig Netzstrom). Nach dem Erreichen des "Mindest-SoC" wird bei verfügbarem Überschuss geladen.'),h("br",null,null,-1),i(' Um die Fahrzeug-SoC-Begrenzung nutzen zu können, muss ein SoC-Modul für das jeweilige Fahrzeug eingerichtet sein (siehe "Konfiguration" -> "Fahrzeuge" -> "SoC-Modul"). ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(S,{title:"Mindest-SoC-Strom"+(s.dcChargingEnabled?" (AC)":""),min:6,max:32,step:1,unit:"A","model-value":o.chargemode.pv_charging.min_soc_current,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.min_soc_current")},{help:l(()=>[...e[62]||(e[62]=[i(' Wird der oben eingestellte "Mindest-SoC" des Fahrzeuges unterschritten, dann wird unabhängig vom Überschuss ein Ladevorgang mit dem hier festgelegten "Mindest-SoC-Strom" initiiert (ggf. mit anteilig Netzbezug). ')])]),_:2},1032,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:3,title:"Mindest-SoC-Leistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(o.chargemode.pv_charging.dc_min_soc_current),"onUpdate:modelValue":n=>t.updateState(r,t.dc_power2ac_current(n),"chargemode.pv_charging.dc_min_soc_current")},{help:l(()=>[...e[63]||(e[63]=[i(' Wird der oben eingestellte "Mindest-SoC" des Fahrzeuges unterschritten, dann wird unabhängig vom Überschuss ein Ladevorgang mit der hier festgelegten "Mindest-SoC-Leistung" initiiert (ggf. mit anteilig Netzbezug). ')])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Einspeisegrenze beachten",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":o.chargemode.pv_charging.feed_in_limit,"onUpdate:modelValue":n=>t.updateState(r,n,"chargemode.pv_charging.feed_in_limit")},{help:l(()=>[...e[64]||(e[64]=[i(' Erläuterung siehe "Ladeeinstellungen" -> "PV-Laden" -> "Regelparameter" -> "Regelpunkt Einspeisegrenze" ')])]),_:2},1032,["model-value","onUpdate:modelValue"]),e[80]||(e[80]=h("hr",null,null,-1)),a(L,null,{actions:l(()=>[a(T,{class:"bg-success clickable",onClick:n=>s.addChargeTemplateSchedulePlan(r,n)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:2},1032,["onClick"])]),help:l(()=>[...e[65]||(e[65]=[i(' Im Lademodus "Zielladen" wird der Ladestrom so angepasst, dass das Fahrzeug zum angegebenen Zeitpunkt den eingestellten SoC bzw. die einzuladende Energiemenge erreicht. Anhand des vorgegebenen Ladestroms wird der Zeitpunkt berechnet, an dem die Ladung spätestens starten muss.'),h("br",null,null,-1),i(' Ist der berechnete Zeitpunkt des Ladestarts noch nicht erreicht, wird mit Überschuss geladen. Auch nach Erreichen des Ziel-SoCs wird mit Überschuss geladen, solange bis das "SoC-Limit für das Fahrzeug" erreicht wird.'),h("br",null,null,-1),i(" Kann der Ziel-SoC bzw. die Energiemenge NICHT erreicht werden, z.B. weil das Auto zu spät angesteckt wurde oder das Lastmanagement eingegriffen hat, wird bis 20 Minuten nach dem angegebenen Termin mit der Maximalstromstärke geladen. Danach wird der Termin verworfen und mit Überschuss geladen. ")])]),default:l(()=>[e[66]||(e[66]=i(" Zielladen "))]),_:2},1024),(d(!0),g(P,null,E(s.getChargeTemplateScheduledChargingPlans(r),(n,c)=>(d(),p(A,{key:c,title:n.name,collapsible:!0,collapsed:!0},{actions:l(u=>[u.collapsed==!0?(d(),g("span",{key:0,class:x(["subheader pill clickable",n.active?"bg-success":"bg-danger"]),onClick:N(U=>t.updateState(c,!n.active,"active"),["stop"])},[n.limit.selected=="soc"?(d(),g("span",xe,[a(v,{"fixed-width":"",icon:["fas","car-battery"]}),i(" "+C(n.limit.soc_scheduled)+"% ",1)])):m("",!0),n.limit.selected=="amount"?(d(),g("span",Ne,[a(v,{"fixed-width":"",icon:["fas","bolt"]}),i(" "+C(n.limit.amount/1e3)+"kWh ",1)])):m("",!0),a(v,{"fixed-width":"",icon:["fas","clock"]}),i(" "+C(n.time)+" ",1),n.frequency.selected=="once"?(d(),g("span",Oe,[a(v,{"fixed-width":"",icon:["fas","calendar-day"]}),i(" "+C(t.formatDate(n.frequency.once)),1)])):m("",!0),n.frequency.selected=="daily"?(d(),g("span",Re,[a(v,{"fixed-width":"",icon:["fas","calendar-week"]})])):m("",!0),n.frequency.selected=="weekly"?(d(),g("span",Ie,[a(v,{"fixed-width":"",icon:["fas","calendar-alt"]})])):m("",!0)],10,Ze)):m("",!0),u.collapsed==!1?(d(),p(T,{key:1,class:"bg-danger clickable",onClick:U=>s.removeChargeTemplateSchedulePlanModal(r,c,U)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])):m("",!0)]),default:l(()=>[a(z,{title:"Bezeichnung","model-value":n.name,"onUpdate:modelValue":u=>t.updateState(c,u,"name")},null,8,["model-value","onUpdate:modelValue"]),a(_,{title:"Zeitpunkt aktiv",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.active,"onUpdate:modelValue":u=>t.updateState(c,u,"active")},null,8,["model-value","onUpdate:modelValue"]),a(z,{title:"Ziel-Uhrzeit",subtype:"time","model-value":n.time,"onUpdate:modelValue":u=>t.updateState(c,u,"time")},{help:l(()=>[...e[67]||(e[67]=[i(" Hier ist die gewünschte Uhrzeit einzustellen, zu welcher das Fahrzeug den gewünschten SoC bzw. die zu ladende Energiemenge BEREITS ERREICHT haben soll. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),a(S,{title:"Ladestrom"+(s.dcChargingEnabled?" (AC)":""),min:6,max:32,step:1,unit:"A","model-value":n.current,"onUpdate:modelValue":u=>t.updateState(c,u,"current")},{help:l(()=>[...e[68]||(e[68]=[i(" Mit dieser Stromstärke wird der Zeitpunkt berechnet, wann die Ladung mit Netzbezug gestartet werden muss. Wird der Ziel-SoC nicht zum angegebenen Termin erreicht, weil z.B. das Auto erst später angesteckt wurde, wird auch mit einer höheren Stromstärke geladen. Um etwas Puffer zu haben, empfiehlt es sich, etwas weniger als die Maximalstromstärke des Fahrzeugs zu wählen. ")])]),_:2},1032,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:0,title:"Ladeleistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(n.dc_current),"onUpdate:modelValue":u=>t.updateState(c,t.dc_power2ac_current(u),"dc_current")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Ziel",buttons:[{buttonValue:"soc",text:"Fahrzeug-SoC"},{buttonValue:"amount",text:"Energie"}],"model-value":n.limit.selected,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.selected")},{help:l(()=>[...e[69]||(e[69]=[i(" Bestimmt die Art der Grenze für den Ladevorgang. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),n.limit.selected=="soc"?(d(),p(S,{key:1,title:"Fahrzeug-SoC zum Zielzeitpunkt",min:5,max:100,step:5,unit:"%","model-value":n.limit.soc_scheduled,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.soc_scheduled")},{help:l(()=>[...e[70]||(e[70]=[i(" SoC, der zum angegebenen Zeitpunkt erreicht werden soll (Ziel-SoC). ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),n.limit.selected=="soc"?(d(),p(S,{key:2,title:"Fahrzeug-SoC mit Überschuss",min:5,max:100,step:5,unit:"%","model-value":n.limit.soc_limit,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.soc_limit")},{help:l(()=>[...e[71]||(e[71]=[i(" Nach Erreichen des Ziel-SoCs wird mit Überschuss weiter geladen, bis das SoC-Limit erreicht wird. Sobald das SoC-Limit erreicht wurde, findet keine Ladung mehr mit Überschuss statt! ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),n.limit.selected=="amount"?(d(),p(w,{key:3,title:"Ziel-Energie",unit:"kWh",min:1,step:.5,"model-value":n.limit.amount/1e3,"onUpdate:modelValue":u=>t.updateState(c,u*1e3,"limit.amount")},{help:l(()=>[...e[72]||(e[72]=[i(" Die geladene Energiemenge wird beim Wechsel des Lademodus, Wechsel des Plans oder nach dem Anstecken, wenn Zielladen schon ausgewählt ist, neu gezählt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Wiederholungen",buttons:[{buttonValue:"once",text:"Einmalig",class:"btn-outline-info"},{buttonValue:"daily",text:"Täglich",class:"btn-outline-info"},{buttonValue:"weekly",text:"Wöchentlich",class:"btn-outline-info"}],"model-value":n.frequency.selected,"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.selected")},null,8,["model-value","onUpdate:modelValue"]),n.frequency.selected=="once"?(d(),p(z,{key:4,title:"Datum",subtype:"date","model-value":n.frequency.once,"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.once")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),n.frequency.selected=="weekly"?(d(),g("div",$e,[(d(!0),g(P,null,E(t.weekdays,(u,U)=>(d(),p(_,{key:U,title:u,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":n.frequency.weekly[U],"onUpdate:modelValue":D=>t.updateState(c,D,"frequency.weekly."+U)},null,8,["title","model-value","onUpdate:modelValue"]))),128))])):m("",!0)]),_:2},1032,["title"]))),128)),b.installAssistantActive?m("",!0):(d(),g("div",He,[e[75]||(e[75]=h("hr",null,null,-1)),a(L,null,{actions:l(()=>[a(T,{class:"bg-success clickable",onClick:n=>s.addChargeTemplateTimeChargingPlan(r,n)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","plus"]})]),_:2},1032,["onClick"])]),help:l(()=>[...e[73]||(e[73]=[i(" Mit einem Zeitplan kann ein klar abgegrenzter Zeitbereich zum Fahrzeugladen definiert werden. Dies wird häufig genutzt, um einem Fahrzeug kurz vor der Abfahrt Strom anzubieten, damit dessen Vorklimatisierung nicht aus dem Fahrzeugakku, sondern aus der openWB bezogen wird (Enteisung, Vorwärmung, Abkühlung). Nicht von der Vorklimatisierung benötigter Strom erhöht dabei den Fahrzeug-SoC. Um das Stromnetz am Morgen nicht unnötig zu strapazieren, sollte eine moderate Stromvorgabe und ein beschränkter Zeitbereich vorgegeben werden (z.B. max. 10A; 30min - in Übereinstimmung mit den Fahrzeug-App-Vorklimatisierungsvorgaben). ")])]),default:l(()=>[e[74]||(e[74]=i(" Laden nach Zeitplan "))]),_:2},1024)])),(d(!0),g(P,null,E(s.getChargeTemplateTimeChargingPlans(r),(n,c)=>(d(),p(A,{key:c,title:n.name,collapsible:!0,collapsed:!0},{actions:l(u=>[u.collapsed==!0?(d(),g("span",{key:0,class:x(["subheader pill clickable",n.active?"bg-success":"bg-danger"]),onClick:N(U=>t.updateState(c,!n.active,"active"),["stop"])},[n.limit.selected=="soc"?(d(),g("span",Je,[a(v,{"fixed-width":"",icon:["fas","car-battery"]}),i(" "+C(n.limit.soc)+"% ",1)])):m("",!0),n.limit.selected=="amount"?(d(),g("span",Ge,[a(v,{"fixed-width":"",icon:["fas","bolt"]}),i(" "+C(n.limit.amount/1e3)+"kWh ",1)])):m("",!0),a(v,{"fixed-width":"",icon:["fas","clock"]}),i(" "+C(n.time[0])+" - "+C(n.time[1])+" ",1),n.frequency.selected=="once"?(d(),g("span",Qe,[a(v,{"fixed-width":"",icon:["fas","calendar-day"]}),i(" "+C(t.formatDate(n.frequency.once[0])==t.formatDate(n.frequency.once[1])?t.formatDate(n.frequency.once[0]):t.formatDate(n.frequency.once[0])+" - "+t.formatDate(n.frequency.once[1])),1)])):m("",!0),n.frequency.selected=="daily"?(d(),g("span",Xe,[a(v,{"fixed-width":"",icon:["fas","calendar-week"]})])):m("",!0),n.frequency.selected=="weekly"?(d(),g("span",Ye,[a(v,{"fixed-width":"",icon:["fas","calendar-alt"]})])):m("",!0)],10,je)):m("",!0),u.collapsed==!1?(d(),p(T,{key:1,class:"bg-danger clickable",onClick:U=>s.removeChargeTemplateTimeChargingPlanModal(r,c,U)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"])):m("",!0)]),default:l(()=>[a(z,{title:"Bezeichnung","model-value":n.name,"onUpdate:modelValue":u=>t.updateState(c,u,"name")},null,8,["model-value","onUpdate:modelValue"]),a(_,{title:"Zeitplan aktiv",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.active,"onUpdate:modelValue":u=>t.updateState(c,u,"active")},null,8,["model-value","onUpdate:modelValue"]),a(S,{title:"Ladestrom"+(s.dcChargingEnabled?" (AC)":""),min:6,max:32,step:1,unit:"A","model-value":n.current,"onUpdate:modelValue":u=>t.updateState(c,u,"current")},null,8,["title","model-value","onUpdate:modelValue"]),s.dcChargingEnabled===!0?(d(),p(w,{key:0,title:"Ladeleistung (DC)",unit:"kW",min:0,"model-value":t.ac_current2dc_power(n.dc_current),"onUpdate:modelValue":u=>t.updateState(c,t.dc_power2ac_current(u),"dc_current")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),a(_,{title:"Ziel",buttons:[{buttonValue:"none",text:"Aus"},{buttonValue:"soc",text:"Fahrzeug-SoC"},{buttonValue:"amount",text:"Energie"}],"model-value":n.limit.selected,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.selected")},{help:l(()=>[...e[76]||(e[76]=[i(" Bestimmt die Art der Grenze für den Ladevorgang. ")])]),_:2},1032,["model-value","onUpdate:modelValue"]),n.limit.selected=="soc"?(d(),p(S,{key:1,title:"Ziel-SoC für das Fahrzeug",min:5,max:100,step:5,unit:"%","model-value":n.limit.soc,"onUpdate:modelValue":u=>t.updateState(c,u,"limit.soc")},{help:l(()=>[...e[77]||(e[77]=[i(" Ladestand des Akku (State of Charge, SoC), bis zu welchem maximal geladen werden soll. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),n.limit.selected=="amount"?(d(),p(w,{key:2,title:"Ziel-Energie",unit:"kWh",min:1,step:.5,"model-value":n.limit.amount/1e3,"onUpdate:modelValue":u=>t.updateState(c,u*1e3,"limit.amount")},{help:l(()=>[...e[78]||(e[78]=[i(" Maximal zu ladende Energie innerhalb des Zeitfensters. Eignet sich immer dann wenn kein SoC zur Verfügung steht. Die geladene Energiemenge wird beim Wechsel des Lademodus, Wechsel des Plans oder nach dem Anstecken, wenn Zeitladen schon aktiv ist, neu gezählt. ")])]),_:2},1032,["model-value","onUpdate:modelValue"])):m("",!0),a(z,{title:"Zeitpunkt des Ladebeginns",subtype:"time","model-value":n.time[0],"onUpdate:modelValue":u=>t.updateState(c,u,"time.0")},null,8,["model-value","onUpdate:modelValue"]),a(z,{title:"Zeitpunkt des Ladeendes",subtype:"time","model-value":n.time[1],"onUpdate:modelValue":u=>t.updateState(c,u,"time.1")},null,8,["model-value","onUpdate:modelValue"]),a(_,{title:"Wiederholungen",buttons:[{buttonValue:"once",text:"Einmalig",class:"btn-outline-info"},{buttonValue:"daily",text:"Täglich",class:"btn-outline-info"},{buttonValue:"weekly",text:"Wöchentlich",class:"btn-outline-info"}],"model-value":n.frequency.selected,"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.selected")},null,8,["model-value","onUpdate:modelValue"]),n.frequency.selected=="once"?(d(),p(z,{key:3,title:"Gültig ab",subtype:"date","model-value":n.frequency.once[0],"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.once.0")},null,8,["model-value","onUpdate:modelValue"])):m("",!0),n.frequency.selected=="once"?(d(),p(z,{key:4,title:"Gültig bis",subtype:"date",min:n.frequency.once[0],"model-value":n.frequency.once[1],"onUpdate:modelValue":u=>t.updateState(c,u,"frequency.once.1")},null,8,["min","model-value","onUpdate:modelValue"])):m("",!0),n.frequency.selected=="weekly"?(d(),g("div",Ke,[(d(!0),g(P,null,E(t.weekdays,(u,U)=>(d(),p(_,{key:U,title:u,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"model-value":n.frequency.weekly[U],"onUpdate:modelValue":D=>t.updateState(c,D,"frequency.weekly."+U)},null,8,["title","model-value","onUpdate:modelValue"]))),128))])):m("",!0)]),_:2},1032,["title"]))),128))]),_:2},[r.endsWith("/0")?void 0:{name:"actions",fn:l(n=>[n.collapsed?m("",!0):(d(),p(T,{key:0,class:"bg-danger clickable",onClick:c=>s.removeChargeTemplateModal(r,c)},{default:l(()=>[a(v,{"fixed-width":"",icon:["fas","trash"]})]),_:2},1032,["onClick"]))]),key:"0"}]),1032,["title","collapsed"]))),128))]))]),_:1},8,["collapsed"]),a(I,{"form-name":"vehicleConfigForm",onSave:e[5]||(e[5]=o=>t.$emit("save")),onReset:e[6]||(e[6]=o=>t.$emit("reset")),onDefaults:e[7]||(e[7]=o=>t.$emit("defaults"))})])])],64)}const tt=q(_e,[["render",et],["__file","/opt/openWB-dev/openwb-ui-settings/src/views/VehicleConfig.vue"]]),ot=Object.freeze(Object.defineProperty({__proto__:null,default:tt},Symbol.toStringTag,{value:"Module"}));export{se as V,tt as a,ot as b}; diff --git a/web/settings/assets/backup_cloud-0f2cda4a.js b/web/settings/assets/backup_cloud-0f2cda4a.js deleted file mode 100644 index 8205893df5..0000000000 --- a/web/settings/assets/backup_cloud-0f2cda4a.js +++ /dev/null @@ -1 +0,0 @@ -import{B as r}from"./DataManagement-2ea0a0a1.js";import{_ as i,u as s,k as p,l as d,G as t,E as m,y as a,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"BackupCloudSamba",mixins:[r]},f={class:"backup-cloud-samba"};function g(o,e,v,C,k,c){const u=s("openwb-base-text-input");return p(),d("div",f,[t(u,{title:"Server",subtype:"host",required:"","model-value":o.backupCloud.configuration.smb_server,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.smb_server"))},null,8,["model-value"]),t(u,{title:"Freigabe",required:"","model-value":o.backupCloud.configuration.smb_share,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.smb_share"))},null,8,["model-value"]),t(u,{title:"Unterordner (optional)","model-value":o.backupCloud.configuration.smb_path,pattern:'(^\\/$)|(^([^\\\\:"\\|*?<>]+\\/)+$)',required:"","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.smb_path"))},{help:m(()=>e[5]||(e[5]=[a(" Jeder Unterordner muss mit / enden."),l("br",null,null,-1),a(' Die Zeichen \\:"|*?<> sind verboten!'),l("br",null,null,-1),a(" Beispiel 1: openwb/ "),l("br",null,null,-1),a(" Beispiel 2: openwb/lp2/ ")])),_:1},8,["model-value"]),t(u,{title:"Benutzer",subtype:"user","model-value":o.backupCloud.configuration.smb_user,"onUpdate:modelValue":e[3]||(e[3]=n=>o.updateConfiguration(n,"configuration.smb_user"))},null,8,["model-value"]),t(u,{title:"Kennwort",subtype:"password","model-value":o.backupCloud.configuration.smb_password,"onUpdate:modelValue":e[4]||(e[4]=n=>o.updateConfiguration(n,"configuration.smb_password"))},null,8,["model-value"])])}const E=i(b,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/samba/backup_cloud.vue"]]);export{E as default}; diff --git a/web/settings/assets/backup_cloud-27f00872.js b/web/settings/assets/backup_cloud-27f00872.js deleted file mode 100644 index ed7df49665..0000000000 --- a/web/settings/assets/backup_cloud-27f00872.js +++ /dev/null @@ -1 +0,0 @@ -import{B as r}from"./DataManagement-2ea0a0a1.js";import{_ as p,u,k as i,l,G as d,E as c,y as o,x as n}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"BackupCloudNfs",mixins:[r]},m={class:"backup-cloud-nfs"};function _(t,e,b,k,v,x){const a=u("openwb-base-text-input");return i(),l("div",m,[d(a,{title:"Pfad zum NFS Share",pattern:"^([^/: ]+):(\\/[^/: ]+)+$",required:"","model-value":t.backupCloud.configuration.nfs_share,"onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.nfs_share"))},{help:c(()=>e[1]||(e[1]=[o(" 1. IP basierter Pfad: 1.2.3.4:/pfad/zum/nfs-share"),n("br",null,null,-1),o(" 2. Host (FQDN) basierter Pfad: backupserver.domain.net:/pfad/zum/nfs-share"),n("br",null,null,-1),o(" Bitte entgegen der Syntax das Protokoll nicht davor schreiben. Falsch wäre, “nfs://” davor zu setzen. ")])),_:1},8,["model-value"])])}const V=p(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/nfs/backup_cloud.vue"]]);export{V as default}; diff --git a/web/settings/assets/backup_cloud-7ad59fca.js b/web/settings/assets/backup_cloud-7ad59fca.js deleted file mode 100644 index 6ee1793f1d..0000000000 --- a/web/settings/assets/backup_cloud-7ad59fca.js +++ /dev/null @@ -1 +0,0 @@ -import{B as s}from"./DataManagement-2ea0a0a1.js";import{_ as a,u as r,k as i,l,G as u,E as d,y as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"BackupCloudNextCloud",mixins:[s]},c={class:"backup-cloud-next-cloud"};function f(o,e,b,k,C,g){const n=r("openwb-base-text-input");return i(),l("div",c,[u(n,{title:"Cloud-URL",subtype:"host",required:"","model-value":o.backupCloud.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},{help:d(()=>e[3]||(e[3]=[p(" Die Cloud-URL wird in der Form 'https://nextcloud-url' und Benutzername im Eingabefeld oder mit Zugangstoken erwartet. Die URL kann je nach NextCloud Installation so 'https://nextcloud-url/s/user_token' oder so 'https://nextcloud-url/index.php/s/user_token' aussehen. ")])),_:1},8,["model-value"]),u(n,{title:"Benutzername",subtype:"user","model-value":o.backupCloud.configuration.user,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),u(n,{title:"Passwort",subtype:"password","model-value":o.backupCloud.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const $=a(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/nextcloud/backup_cloud.vue"]]);export{$ as default}; diff --git a/web/settings/assets/backup_cloud-8019e353.js b/web/settings/assets/backup_cloud-8019e353.js deleted file mode 100644 index f2bd88fa7f..0000000000 --- a/web/settings/assets/backup_cloud-8019e353.js +++ /dev/null @@ -1 +0,0 @@ -import{B as c}from"./DataManagement-2ea0a0a1.js";import{_ as m,u as a,k as b,l as f,G as t,E as r,y as n,x as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"BackupCloudOneDrive",mixins:[c]},v={class:"backup-cloud-one-drive"};function k(o,e,h,w,B,C){const d=a("openwb-base-alert"),u=a("openwb-base-text-input"),p=a("openwb-base-heading"),l=a("openwb-base-button-input");return b(),f("div",v,[t(d,{subtype:"info"},{default:r(()=>e[3]||(e[3]=[n(" Zum Abruf der Zugangsberechtigung bitte die Konfiguration speichern, dann die Schritte 1-4 durchführen und danach die Konfiguration erneut speichern. "),i("br",null,null,-1),n(" Auth Code und URL werden nur einmal benötigt werden nach erfolgreicher Autorisierung wieder gelöscht. ")])),_:1}),t(u,{title:"Backupverzeichnis in OneDrive",subtype:"text",required:"",pattern:"^/(.*/)*","model-value":o.backupCloud.configuration.backuppath,"onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.backuppath"))},{help:r(()=>e[4]||(e[4]=[n(" In diesem Verzeichnis werden die Backupdateien erstellt. Bitte den Pfad mit / beenden. "),i("br",null,null,-1),n(" Beispiel: /openWB/Backup/ ")])),_:1},8,["model-value"]),t(u,{title:"Anmeldedaten auf openWB gespeichert",readonly:"","model-value":o.backupCloud.configuration.persistent_tokencache?"Ja":"Nein"},null,8,["model-value"]),t(p,null,{default:r(()=>e[5]||(e[5]=[n(" Zugang zu OneDrive für diese openWB autorisieren ")])),_:1}),t(l,{title:"1. Anmeldeanforderung erstellen","button-text":"Autorisierungs-Code anfordern",subtype:"success",onButtonClicked:e[1]||(e[1]=s=>o.sendSystemCommand("requestMSALAuthCode",{}))},{help:r(()=>e[6]||(e[6]=[n(" Es werden Zugangstokens für OneDrive angefordert. Diese werden nur lokal auf dieser openWB gespeichert. Genutzt wird Device Flow mit public application."),i("br",null,null,-1),n(" Weitere Infos:"),i("br",null,null,-1),i("a",{href:"https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-device-code",target:"_blank",rel:"noopener noreferrer"},"https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-device-code",-1),i("a",{href:"https://learn.microsoft.com/en-us/azure/active-directory/develop/msal-client-applications",target:"_blank",rel:"noopener noreferrer"},"https://learn.microsoft.com/en-us/azure/active-directory/develop/msal-client-applications",-1)])),_:1}),t(u,{title:"2. Diesen Code kopieren",subtype:"text",readonly:"","model-value":o.backupCloud.configuration.authcode},null,8,["model-value"]),t(u,{title:"3. Anmelde-URL aufrufen",subtype:"url",readonly:"","model-value":o.backupCloud.configuration.authurl},{help:r(()=>e[7]||(e[7]=[n(" Diese URL im Browser öffnen und den Code eingeben. Dies erzeugt die notwendigen Zugangsberechtigung für diese openWB. ")])),_:1},8,["model-value"]),t(l,{title:"4. Token abrufen und speichern","button-text":"Autorisierungs-Token abrufen",subtype:"success",onButtonClicked:e[2]||(e[2]=s=>o.sendSystemCommand("retrieveMSALTokens",{}))},{help:r(()=>e[8]||(e[8]=[n(" Zugangstoken wird abgerufen und gespeichert, damit das Backup durchgeführt werden kann. Zugangstoken werden nur lokal auf dieser openWB gespeichert. ")])),_:1})])}const L=m(g,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/backup_clouds/onedrive/backup_cloud.vue"]]);export{L as default}; diff --git a/web/settings/assets/bat-01b464b5.js b/web/settings/assets/bat-01b464b5.js deleted file mode 100644 index cb1841f5b9..0000000000 --- a/web/settings/assets/bat-01b464b5.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as n,k as m,l as d,G as t,E as u,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceDeyeBat",mixins:[r]},_={class:"device-deye-bat"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),d("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[l(" Einstellungen für Deye Batteriespeicher ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const h=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/deye/deye/bat.vue"]]);export{h as default}; diff --git a/web/settings/assets/bat-0796e8c5.js b/web/settings/assets/bat-0796e8c5.js deleted file mode 100644 index 23cf7cc5b3..0000000000 --- a/web/settings/assets/bat-0796e8c5.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as r,u as o,k as l,l as u,G as n,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbEvukitBat",mixins:[a]},_={class:"device-openwb-evukit-bat"};function v(t,e,b,f,w,g){const i=o("openwb-base-heading"),s=o("openwb-base-select-input");return l(),u("div",_,[n(i,null,{default:m(()=>e[1]||(e[1]=[c(" Einstellungen für openWB EVU-Kit Batteriespeicher ")])),_:1}),n(s,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"SDM120"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":t.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=p=>t.updateConfiguration(p,"configuration.version"))},null,8,["model-value"])])}const $=r(d,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_evu_kit/bat.vue"]]);export{$ as default}; diff --git a/web/settings/assets/bat-12a8b04a.js b/web/settings/assets/bat-12a8b04a.js deleted file mode 100644 index 3505b1629d..0000000000 --- a/web/settings/assets/bat-12a8b04a.js +++ /dev/null @@ -1 +0,0 @@ -import{C as s}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as t,k as p,l as u,G as n,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceHuaweiSmartLoggerBat",mixins:[s]},c={class:"device-huawei-smart-logger-bat"};function b(o,e,g,f,w,v){const i=t("openwb-base-heading"),a=t("openwb-base-number-input");return p(),u("div",c,[n(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Huawei SmartLogger Batteriespeicher ")])),_:1}),n(a,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const H=m(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei_smartlogger/bat.vue"]]);export{H as default}; diff --git a/web/settings/assets/bat-302453bb.js b/web/settings/assets/bat-302453bb.js deleted file mode 100644 index 63e87d11fa..0000000000 --- a/web/settings/assets/bat-302453bb.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as t,k as u,l as d,G as n,E as m,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceStuderBat",mixins:[a]},_={class:"device-studer-bat"};function b(o,e,f,v,g,w){const i=t("openwb-base-heading"),s=t("openwb-base-number-input");return u(),d("div",_,[n(i,null,{default:m(()=>e[1]||(e[1]=[l(" Einstellungen für Studer Batteriespeicher ")])),_:1}),n(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const M=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/studer/studer/bat.vue"]]);export{M as default}; diff --git a/web/settings/assets/bat-338f9f8c.js b/web/settings/assets/bat-338f9f8c.js deleted file mode 100644 index ec1debb230..0000000000 --- a/web/settings/assets/bat-338f9f8c.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as r,u as o,k as l,l as m,G as n,E as u,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbBatkitBat",mixins:[p]},_={class:"device-openwb-batkit-bat"};function b(t,e,f,v,w,g){const i=o("openwb-base-heading"),s=o("openwb-base-select-input");return l(),m("div",_,[n(i,null,{default:u(()=>e[1]||(e[1]=[c(" Einstellungen für openWB EVU-Kit Batteriespeicher ")])),_:1}),n(s,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"SDM120"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":t.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=a=>t.updateConfiguration(a,"configuration.version"))},null,8,["model-value"])])}const $=r(d,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_bat_kit/bat.vue"]]);export{$ as default}; diff --git a/web/settings/assets/bat-4b4b1544.js b/web/settings/assets/bat-4b4b1544.js deleted file mode 100644 index 8adc59a601..0000000000 --- a/web/settings/assets/bat-4b4b1544.js +++ /dev/null @@ -1 +0,0 @@ -import{C as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as n,k as u,l,G as t,E as i,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSigenergyBat",mixins:[m]},b={class:"device-sigenergy-bat"};function _(o,e,c,f,v,y){const r=n("openwb-base-heading"),a=n("openwb-base-number-input");return u(),l("div",b,[t(r,null,{default:i(()=>e[1]||(e[1]=[s(" Einstellungen für Sigenergy Batteriespeicher ")])),_:1}),t(a,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=p=>o.updateConfiguration(p,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[s(" Die Standard-Modbus-ID von Sigenergy ist 247 ")])),_:1},8,["model-value"])])}const M=d(g,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sigenergy/sigenergy/bat.vue"]]);export{M as default}; diff --git a/web/settings/assets/bat-4d59f497.js b/web/settings/assets/bat-4d59f497.js deleted file mode 100644 index 2c87f2475b..0000000000 --- a/web/settings/assets/bat-4d59f497.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceFoxEssBat",mixins:[r]},c={class:"device-fox_ess-bat"};function b(o,e,f,x,v,g){const s=n("openwb-base-heading"),i=n("openwb-base-number-input");return m(),u("div",c,[t(s,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für FoxEss Batteriespeicher ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const F=p(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fox_ess/fox_ess/bat.vue"]]);export{F as default}; diff --git a/web/settings/assets/bat-4e057349.js b/web/settings/assets/bat-4e057349.js deleted file mode 100644 index cd65c88f8d..0000000000 --- a/web/settings/assets/bat-4e057349.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as o,k as m,l as u,G as t,E as l,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceFemsBat",mixins:[r]},f={class:"device-fems-bat"};function _(n,e,b,v,g,C){const i=o("openwb-base-heading"),s=o("openwb-base-number-input");return m(),u("div",f,[t(i,null,{default:l(()=>e[1]||(e[1]=[c(" Einstellungen für openEMS, Fenecon FEMS, CENTURIO 10, Kaco Hy-Control Batteriespeicher ")])),_:1}),t(s,{title:"Anzahl der verbauten Speicher",required:"",min:1,max:2,"model-value":n.component.configuration.num,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.num"))},null,8,["model-value"])])}const N=p(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fems/fems/bat.vue"]]);export{N as default}; diff --git a/web/settings/assets/bat-54247809.js b/web/settings/assets/bat-54247809.js deleted file mode 100644 index 52fbbf94c1..0000000000 --- a/web/settings/assets/bat-54247809.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceFroniusBat",mixins:[a]},_={class:"device-fronius-bat"};function f(o,e,b,v,g,w){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),u("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Fronius Batteriespeicher ")])),_:1}),t(r,{title:"Meter ID",required:"",min:"0",max:"65535","model-value":o.component.configuration.meter_id,"onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.meter_id"))},null,8,["model-value"])])}const F=p(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fronius/fronius/bat.vue"]]);export{F as default}; diff --git a/web/settings/assets/bat-66db2541.js b/web/settings/assets/bat-66db2541.js deleted file mode 100644 index 2a2c8abd32..0000000000 --- a/web/settings/assets/bat-66db2541.js +++ /dev/null @@ -1 +0,0 @@ -import{C as s}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as n,k as d,l as m,G as t,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolaredgeBat",mixins:[s]},_={class:"device-solaredge-bat"};function b(o,e,f,g,v,w){const i=n("openwb-base-heading"),a=n("openwb-base-number-input");return d(),m("div",_,[t(i,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für SolarEdge Batteriespeicher ")])),_:1}),t(a,{title:"SolarEdge-Geräte-ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const D=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/bat.vue"]]);export{D as default}; diff --git a/web/settings/assets/bat-67223423.js b/web/settings/assets/bat-67223423.js deleted file mode 100644 index d884e94039..0000000000 --- a/web/settings/assets/bat-67223423.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as o,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSunnyIslandBat",mixins:[r]},c={class:"device-sunnyisland-bat"};function b(n,e,f,v,g,w){const s=o("openwb-base-heading"),i=o("openwb-base-number-input");return m(),u("div",c,[t(s,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Sunny Island Batteriespeicher ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const h=p(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_island/bat.vue"]]);export{h as default}; diff --git a/web/settings/assets/bat-7b31b22e.js b/web/settings/assets/bat-7b31b22e.js deleted file mode 100644 index 2309b8e412..0000000000 --- a/web/settings/assets/bat-7b31b22e.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as s,k as p,l as g,G as r,E as i,y as n,x as o}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const h={name:"DeviceHttpBat",mixins:[u]},b={class:"device-http-bat"};function f(t,e,v,w,c,k){const d=s("openwb-base-heading"),l=s("openwb-base-text-input");return p(),g("div",b,[r(d,null,{default:i(()=>e[4]||(e[4]=[n(" Einstellungen für Http Batteriespeicher ")])),_:1}),r(l,{title:"Pfad für Leistung",subtype:"text",required:"",pattern:"^/[-a-zA-Z0-9@:%_\\+.~#?&/=]*","model-value":t.component.configuration.power_path,"onUpdate:modelValue":e[0]||(e[0]=a=>t.updateConfiguration(a,"configuration.power_path"))},{help:i(()=>e[5]||(e[5]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),o("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. ")])),_:1},8,["model-value"]),r(l,{title:"Pfad für Ladestand",subtype:"text",required:"",pattern:"^/[-a-zA-Z0-9@:%_\\+.~#?&/=]*","model-value":t.component.configuration.soc_path,"onUpdate:modelValue":e[1]||(e[1]=a=>t.updateConfiguration(a,"configuration.soc_path"))},{help:i(()=>e[6]||(e[6]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),o("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen Ladestand (SoC) in Prozent darstellt. ")])),_:1},8,["model-value"]),r(l,{title:"Pfad für Zählerstand laden",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.imported_path,"onUpdate:modelValue":e[2]||(e[2]=a=>t.updateConfiguration(a,"configuration.imported_path"))},{help:i(()=>e[7]||(e[7]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),o("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt. ")])),_:1},8,["model-value"]),r(l,{title:"Pfad für Zählerstand entladen",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.exported_path,"onUpdate:modelValue":e[3]||(e[3]=a=>t.updateConfiguration(a,"configuration.exported_path"))},{help:i(()=>e[8]||(e[8]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),o("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt."),o("br",null,null,-1),n(" Wird dieses Feld leer gelassen, werden keine Phasenströme ermittelt und es kann kein Lastmanagement berechnet werden! ")])),_:1},8,["model-value"])])}const A=m(h,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/http/bat.vue"]]);export{A as default}; diff --git a/web/settings/assets/bat-8556224e.js b/web/settings/assets/bat-8556224e.js deleted file mode 100644 index 8377bf88d0..0000000000 --- a/web/settings/assets/bat-8556224e.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as n,k as m,l as u,G as t,E as d,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceVictronBat",mixins:[a]},_={class:"device-victron-bat"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),u("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[c(" Einstellungen für Victron Batteriespeicher ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const M=p(l,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/victron/victron/bat.vue"]]);export{M as default}; diff --git a/web/settings/assets/bat-afe949d7.js b/web/settings/assets/bat-afe949d7.js deleted file mode 100644 index 1bea9c8a20..0000000000 --- a/web/settings/assets/bat-afe949d7.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./HardwareInstallation-79ea1bc6.js";import{_ as r,u as t,k as u,l as m,G as i,E as d,y as b}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceOpenwbFlexBat",mixins:[l]},f={class:"device-openwb-flex-bat"};function _(o,e,v,w,g,x){const a=t("openwb-base-heading"),p=t("openwb-base-select-input"),s=t("openwb-base-number-input");return u(),m("div",f,[i(a,null,{default:d(()=>e[2]||(e[2]=[b(" Einstellungen für openWB-Flex Batteriespeicher ")])),_:1}),i(p,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"SDM120"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":o.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.version"))},null,8,["model-value"]),i(s,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":o.component.configuration.id,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.id"))},null,8,["model-value"])])}const h=r(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/bat.vue"]]);export{h as default}; diff --git a/web/settings/assets/bat-bc9a716a.js b/web/settings/assets/bat-bc9a716a.js deleted file mode 100644 index 4e42694bf2..0000000000 --- a/web/settings/assets/bat-bc9a716a.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as l,k as p,l as m,G as o,E as a,y as r,x as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceJsonBat",mixins:[d]},b={class:"device-json-bat"};function w(t,e,v,j,q,_){const s=l("openwb-base-heading"),i=l("openwb-base-text-input");return p(),m("div",b,[o(s,null,{default:a(()=>e[4]||(e[4]=[r(" Einstellungen für JSON Batteriespeicher ")])),_:1}),o(i,{title:"Abfrage für Leistung",subtype:"text",required:"","model-value":t.component.configuration.jq_power,"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateConfiguration(n,"configuration.jq_power"))},{help:a(()=>e[5]||(e[5]=[r(' Zur Analyse der Werte aus dem json-Objekt wird jq benutzt. Ist die Json Antwort z.B. {"PowerInstalledPeak":4655, "PowerProduced":132, "PowerOut":897.08172362555717, "PowerSelfSupplied":234.9182763744428} So muss hier .PowerOut eingetragen werden. '),g("br",null,null,-1),r(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt (positiv Ladung, negativ Entladung) darstellt. ")])),_:1},8,["model-value"]),o(i,{title:"Abfrage für Ladestand",subtype:"text",required:"","model-value":t.component.configuration.jq_soc,"onUpdate:modelValue":e[1]||(e[1]=n=>t.updateConfiguration(n,"configuration.jq_soc"))},null,8,["model-value"]),o(i,{title:"Abfrage für Zählerstand Ladung",subtype:"text","model-value":t.component.configuration.jq_imported,"onUpdate:modelValue":e[2]||(e[2]=n=>t.updateConfiguration(n,"configuration.jq_imported"))},{help:a(()=>e[6]||(e[6]=[r(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"]),o(i,{title:"Abfrage für Zählerstand Entladung",subtype:"text","model-value":t.component.configuration.jq_exported,"onUpdate:modelValue":e[3]||(e[3]=n=>t.updateConfiguration(n,"configuration.jq_exported"))},{help:a(()=>e[7]||(e[7]=[r(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"])])}const E=u(f,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/json/bat.vue"]]);export{E as default}; diff --git a/web/settings/assets/bat-cb002c2d.js b/web/settings/assets/bat-cb002c2d.js deleted file mode 100644 index 28ee02707a..0000000000 --- a/web/settings/assets/bat-cb002c2d.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as p,k as b,l as g,G as l,E as i,y as t,x as n,F as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceMqttBat",mixins:[a]},k={class:"device-mqtt-bat"};function B(o,e,z,x,w,W){const u=p("openwb-base-heading"),s=p("openwb-base-copy-to-clipboard"),d=p("openwb-base-alert");return b(),g("div",k,[l(u,null,{default:i(()=>e[0]||(e[0]=[t(" Einstellungen für MQTT Batteriespeicher ")])),_:1}),l(d,{subtype:"info"},{default:i(()=>[e[26]||(e[26]=t(" Die folgenden Topics sind für einen reibungslosen Betrieb unbedingt erforderlich: ")),n("ul",null,[n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/bat/"+r(o.component.id)+"/get/power ",1)]),_:1}),e[1]||(e[1]=n("br",null,null,-1)),e[2]||(e[2]=t(" Speicherleistung in Watt, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, positiv Ladung, negativ Entladung")),e[3]||(e[3]=n("br",null,null,-1)),e[4]||(e[4]=t(" Beispiel: ")),e[5]||(e[5]=n("span",{class:"text-info"},"-123",-1))]),n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/bat/"+r(o.component.id)+"/get/imported ",1)]),_:1}),e[6]||(e[6]=n("br",null,null,-1)),e[7]||(e[7]=t(" Geladene Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),e[8]||(e[8]=n("br",null,null,-1)),e[9]||(e[9]=t(" Beispiel: ")),e[10]||(e[10]=n("span",{class:"text-info"},"123.45",-1))]),n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/bat/"+r(o.component.id)+"/get/exported ",1)]),_:1}),e[11]||(e[11]=n("br",null,null,-1)),e[12]||(e[12]=t(" Entladene Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),e[13]||(e[13]=n("br",null,null,-1)),e[14]||(e[14]=t(" Beispiel: ")),e[15]||(e[15]=n("span",{class:"text-info"},"123.45",-1))]),n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/bat/"+r(o.component.id)+"/get/soc ",1)]),_:1}),e[16]||(e[16]=n("br",null,null,-1)),e[17]||(e[17]=t(" Ladestand des Speichers, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, gültige Werte 0 bis 100")),e[18]||(e[18]=n("br",null,null,-1)),e[19]||(e[19]=t(" Beispiel: ")),e[20]||(e[20]=n("span",{class:"text-info"},"95",-1))])]),e[27]||(e[27]=t(" Optional: Wenn der Speicher dies unterstützt, kann folgendes Topic abonniert werden, um die Entladeleistung im Speicher zu setzen. Der Modus, um die Speicher-Entladung ins Fahrzeug zu steuern, kann in den übergreifenden Ladeeinstellungen gesetzt werden. ")),n("ul",null,[n("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/bat/"+r(o.component.id)+"/set/power_limit ",1)]),_:1}),e[21]||(e[21]=n("br",null,null,-1)),e[22]||(e[22]=t(" Entladeleistung in Watt (Float), die im Speicher gesetzt werden muss.")),e[23]||(e[23]=n("br",null,null,-1)),e[24]||(e[24]=t(" Beispiel: ")),e[25]||(e[25]=n("span",{class:"text-info"},"123.0",-1))])])]),_:1})])}const I=m(f,[["render",B],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/mqtt/bat.vue"]]);export{I as default}; diff --git a/web/settings/assets/bat-d2ded368.js b/web/settings/assets/bat-d2ded368.js deleted file mode 100644 index 3020be6784..0000000000 --- a/web/settings/assets/bat-d2ded368.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as n,k as m,l,G as t,E as u,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolisBat",mixins:[r]},_={class:"device-solis-bat"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),l("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[d(" Einstellungen für Solis Batteriespeicher ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const M=p(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solis/solis/bat.vue"]]);export{M as default}; diff --git a/web/settings/assets/bat-d4b53396.js b/web/settings/assets/bat-d4b53396.js deleted file mode 100644 index b34d7776ee..0000000000 --- a/web/settings/assets/bat-d4b53396.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSunnyBoyBat",mixins:[r]},b={class:"device-sunnyboy-bat"};function c(o,e,f,v,y,g){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),u("div",b,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für SMA Sunny Boy/Tripower Batteriespeicher ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const V=p(_,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/bat.vue"]]);export{V as default}; diff --git a/web/settings/assets/bat-db010135.js b/web/settings/assets/bat-db010135.js deleted file mode 100644 index 17a5b81754..0000000000 --- a/web/settings/assets/bat-db010135.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as t,k as p,l,G as n,E as u,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolarmaxBat",mixins:[r]},b={class:"device-solarmax-bat"};function _(o,e,f,x,v,g){const a=t("openwb-base-alert"),s=t("openwb-base-number-input");return p(),l("div",b,[n(a,{subtype:"info"},{default:u(()=>e[1]||(e[1]=[d(" Solarmax MAX.STORAGE / MAX.STORAGE Ultimate Batteriespeicher sind Teil eines Hybridsystems. Daher muss auch eine Komponente Wechselrichter angelegt werden. ")])),_:1}),n(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=i=>o.updateConfiguration(i,"configuration.modbus_id"))},null,8,["model-value"])])}const T=m(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solarmax/solarmax/bat.vue"]]);export{T as default}; diff --git a/web/settings/assets/bat-e19ed371.js b/web/settings/assets/bat-e19ed371.js deleted file mode 100644 index 638b5797dd..0000000000 --- a/web/settings/assets/bat-e19ed371.js +++ /dev/null @@ -1 +0,0 @@ -import{C as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as t,k as d,l as c,G as i,E as a,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceMTecBat",mixins:[m]},_={class:"device-mtec-bat"};function f(o,e,v,g,w,C){const p=t("openwb-base-heading"),r=t("openwb-base-select-input"),u=t("openwb-base-number-input");return d(),c("div",_,[i(p,null,{default:a(()=>e[2]||(e[2]=[s(" Einstellungen für M-Tec Batteriespeicher ")])),_:1}),i(r,{title:"Generation","not-selected":"Bitte auswählen",options:[{value:2,text:"Gen 2"},{value:3,text:"Gen 3"}],"model-value":o.component.configuration.generation,required:"","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.generation"))},null,8,["model-value"]),i(u,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},{help:a(()=>e[3]||(e[3]=[s(" Die Standard-Modbus-ID von M-Tec ist 247 ")])),_:1},8,["model-value"])])}const E=l(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/mtec/mtec/bat.vue"]]);export{E as default}; diff --git a/web/settings/assets/bat_smart_energy-544a23e0.js b/web/settings/assets/bat_smart_energy-544a23e0.js deleted file mode 100644 index f9830b8fbd..0000000000 --- a/web/settings/assets/bat_smart_energy-544a23e0.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as o,k as p,l as u,G as t,E as d,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceSunnyBoyBatSmartEnergy",mixins:[a]},b={class:"device-sunnyboy-bat-smart-energy"};function c(n,e,f,y,g,v){const s=o("openwb-base-heading"),r=o("openwb-base-number-input");return p(),u("div",b,[t(s,null,{default:d(()=>e[1]||(e[1]=[_(" Einstellungen für SMA Sunny Boy Smart Energy Batteriespeicher ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.modbus_id"))},null,8,["model-value"])])}const V=m(l,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/bat_smart_energy.vue"]]);export{V as default}; diff --git a/web/settings/assets/chargePoint-076f1f25.js b/web/settings/assets/chargePoint-076f1f25.js deleted file mode 100644 index 80faf9b058..0000000000 --- a/web/settings/assets/chargePoint-076f1f25.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./ChargePointInstallation-1b33cf58.js";import{_ as i,u as a,k as p,l as s,G as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"ChargePointOpenwbDcAdapter",mixins:[r]},m={class:"charge-point-openwb-dc-adapter"};function u(e,o,_,l,f,g){const t=a("openwb-base-text-input");return p(),s("div",m,[d(t,{title:"IP oder Hostname",subtype:"host",required:"","model-value":e.chargePoint.configuration.ip_address,"onUpdate:modelValue":o[0]||(o[0]=n=>e.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"])])}const B=i(c,[["render",u],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/openwb_dc_adapter/chargePoint.vue"]]);export{B as default}; diff --git a/web/settings/assets/chargePoint-1f06a345.js b/web/settings/assets/chargePoint-1f06a345.js deleted file mode 100644 index 468e77e9a9..0000000000 --- a/web/settings/assets/chargePoint-1f06a345.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./ChargePointInstallation-1b33cf58.js";import{_ as p,u as t,k as i,l as d,G as m,z as l,E as c,y as g,B as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"ChargePointInternalOpenwb",mixins:[u],methods:{updateMode(e){(e=="series"||e=="socket")&&this.updateConfiguration(0,"configuration.duo_num"),this.updateConfiguration(e,"configuration.mode")}}},h={class:"charge-point-internal-openwb"};function b(e,n,B,w,k,a){const r=t("openwb-base-select-input"),s=t("openwb-base-number-input");return i(),d("div",h,[m(r,{title:"Bauart","not-selected":"Bitte auswählen",required:"",options:[{value:"series",text:"openWB series1/2 in den Varianten custom, standard & standard+"},{value:"duo",text:"openWB series1/2 Duo"},{value:"socket",text:"openWB series1/2 Buchse"}],"model-value":e.chargePoint.configuration.mode,"onUpdate:modelValue":n[0]||(n[0]=o=>a.updateMode(o))},null,8,["model-value"]),e.chargePoint.configuration.mode=="duo"?(i(),l(s,{key:0,title:"Ladepunkt-Nummer",required:"",min:1,max:2,"model-value":e.chargePoint.configuration.duo_num+1,"onUpdate:modelValue":n[1]||(n[1]=o=>e.updateConfiguration(o-1,"configuration.duo_num"))},{help:c(()=>n[2]||(n[2]=[g(' Bei einfachen Ladepunkten ist hier immer eine "1" einzutragen. Lediglich bei einer openWB Duo kann mit "2" der zweite enthaltene Ladepunkt angesprochen werden. ')])),_:1},8,["model-value"])):f("",!0)])}const M=p(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/internal_openwb/chargePoint.vue"]]);export{M as default}; diff --git a/web/settings/assets/chargePoint-35762788.js b/web/settings/assets/chargePoint-35762788.js deleted file mode 100644 index 2f8a184515..0000000000 --- a/web/settings/assets/chargePoint-35762788.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./ChargePointInstallation-1b33cf58.js";import{_ as s,u as t,k as u,l as m,G as i,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"ChargePointExternalOpenwb",mixins:[p]},c={class:"charge-point-external-openwb"};function g(n,e,b,f,h,w){const r=t("openwb-base-text-input"),a=t("openwb-base-number-input");return u(),m("div",c,[i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.chargePoint.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Ladepunkt-Nummer",required:"",min:1,max:2,"model-value":n.chargePoint.configuration.duo_num+1,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o-1,"configuration.duo_num"))},{help:d(()=>e[2]||(e[2]=[l(' Bei einfachen Ladepunkten ist hier immer eine "1" einzutragen. Lediglich bei einer openWB Duo kann mit "2" der zweite enthaltene Ladepunkt angesprochen werden. ')])),_:1},8,["model-value"])])}const E=s(_,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/external_openwb/chargePoint.vue"]]);export{E as default}; diff --git a/web/settings/assets/chargePoint-482f5c7d.js b/web/settings/assets/chargePoint-482f5c7d.js deleted file mode 100644 index 1d06066d11..0000000000 --- a/web/settings/assets/chargePoint-482f5c7d.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./ChargePointInstallation-1b33cf58.js";import{_ as g,u,k as a,l as f,G as e,E as i,y as t,x as l,F as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"ChargePointMqtt",mixins:[d]},b={class:"charge-point-mqtt"};function k(o,n,B,v,w,W){const p=u("openwb-base-alert"),s=u("openwb-base-copy-to-clipboard");return a(),f("div",b,[e(p,{subtype:"danger"},{default:i(()=>n[0]||(n[0]=[t(" Dieser Ladepunkt-Typ darf nur in Kombination mit dem Simulator zur Fehleranalyse genutzt werden. Eine andere Verwendung ist laut den Nutzungsbedingungen untersagt. ")])),_:1}),e(p,{subtype:"info"},{default:i(()=>[n[72]||(n[72]=t(" Das MQTT Modul stellt keine aktive Verbindung her, sondern erwartet, dass die Daten von speziellen Topics im Broker gelesen bzw. geschrieben werden.")),n[73]||(n[73]=l("br",null,null,-1)),n[74]||(n[74]=t(" Alle Daten werden als gültiges JSON gesendet und auch so erwartet! Zahlen mit Nachkommastellen (Float) verwenden einen Punkt als Dezimaltrenner (internationales Format). ")),l("ol",null,[l("li",null,[n[11]||(n[11]=t(" von openWB gesendete Topics ")),l("ul",null,[l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/chargepoint/"+r(o.chargePoint.id)+"/set/current ",1)]),_:1}),n[1]||(n[1]=l("br",null,null,-1)),n[2]||(n[2]=t(" Sollwert des Ladestroms, mit Nachkommastellen (Float), positiv (laden) oder negativ (entladen, falls vom Ladepunkt unterstützt).")),n[3]||(n[3]=l("br",null,null,-1)),n[4]||(n[4]=t(" Beispiel: ")),n[5]||(n[5]=l("span",{class:"text-info"},"12.34",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/chargepoint/"+r(o.chargePoint.id)+"/set/phases_to_use ",1)]),_:1}),n[6]||(n[6]=l("br",null,null,-1)),n[7]||(n[7]=t(" Sollwert für die Anzahl Phasen als Ganzzahl (Integer). Mögliche Werte: 1 oder 3")),n[8]||(n[8]=l("br",null,null,-1)),n[9]||(n[9]=t(" Beispiel: ")),n[10]||(n[10]=l("span",{class:"text-info"},"1",-1))])])]),l("li",null,[n[37]||(n[37]=t(" von openWB zwingend erwartete Topics ")),l("ul",null,[l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/currents ",1)]),_:1}),n[12]||(n[12]=l("br",null,null,-1)),n[13]||(n[13]=t(" Aktuelle Phasenströme des Ladepunktes, Array mit drei Zahlen (Float), positiv (laden) oder negativ (entladen, falls vom Ladepunkt unterstützt).")),n[14]||(n[14]=l("br",null,null,-1)),n[15]||(n[15]=t(" Beispiel: ")),n[16]||(n[16]=l("span",{class:"text-info"},"[6.78,6.89,6.94]",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/power ",1)]),_:1}),n[17]||(n[17]=l("br",null,null,-1)),n[18]||(n[18]=t(" Leistung in Watt, mit Nachkommastellen (Float), positiv (laden) oder negativ (entladen, falls vom Ladepunkt unterstützt).")),n[19]||(n[19]=l("br",null,null,-1)),n[20]||(n[20]=t(" Beispiel: ")),n[21]||(n[21]=l("span",{class:"text-info"},"123.45",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/plug_state ",1)]),_:1}),n[22]||(n[22]=l("br",null,null,-1)),n[23]||(n[23]=t(" Zeigt an, ob aktuell ein Fahrzeug angesteckt ist, Wahrheitswert (Bool).")),n[24]||(n[24]=l("br",null,null,-1)),n[25]||(n[25]=t(" Beispiel: ")),n[26]||(n[26]=l("span",{class:"text-info"},"true",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/charge_state ",1)]),_:1}),n[27]||(n[27]=l("br",null,null,-1)),n[28]||(n[28]=t(" Zeigt an, ob ein Ladevorgang aktiv ist, Wahrheitswert (Bool).")),n[29]||(n[29]=l("br",null,null,-1)),n[30]||(n[30]=t(" Beispiel: ")),n[31]||(n[31]=l("span",{class:"text-info"},"true",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/phases_in_use ",1)]),_:1}),n[32]||(n[32]=l("br",null,null,-1)),n[33]||(n[33]=t(" Anzahl der Phasen, mit denen geladen wird, Ganzzahl (Integer). Mögliche Werte: 0 bis 3")),n[34]||(n[34]=l("br",null,null,-1)),n[35]||(n[35]=t(" Beispiel: ")),n[36]||(n[36]=l("span",{class:"text-info"},"3",-1))])])]),l("li",null,[n[71]||(n[71]=t(" optionale Topics ")),l("ul",null,[l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/imported ",1)]),_:1}),n[38]||(n[38]=l("br",null,null,-1)),n[39]||(n[39]=t(" Geladene Energie in Wh, mit Nachkommastellen (Float), nur positiv")),n[40]||(n[40]=l("br",null,null,-1)),n[41]||(n[41]=t(" Wird dieses Topic nicht vom Ladepunkt gesendet, so wird intern ein Zählerstand anhand der Leistung simuliert.")),n[42]||(n[42]=l("br",null,null,-1)),n[43]||(n[43]=t(" Beispiel: ")),n[44]||(n[44]=l("span",{class:"text-info"},"123.45",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/exported ",1)]),_:1}),n[45]||(n[45]=l("br",null,null,-1)),n[46]||(n[46]=t(" Entladene Energie in Wh, mit Nachkommastellen (Float), nur positiv")),n[47]||(n[47]=l("br",null,null,-1)),n[48]||(n[48]=t(" Wird dieses Topic nicht vom Ladepunkt gesendet, so wird intern ein Zählerstand anhand der Leistung simuliert.")),n[49]||(n[49]=l("br",null,null,-1)),n[50]||(n[50]=t(" Beispiel: ")),n[51]||(n[51]=l("span",{class:"text-info"},"123.45",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/voltages ",1)]),_:1}),n[52]||(n[52]=l("br",null,null,-1)),n[53]||(n[53]=t(" Aktuelle Phasenspannungen des Ladepunktes, Array mit drei Zahlen (Float), nur positiv.")),n[54]||(n[54]=l("br",null,null,-1)),n[55]||(n[55]=t(" Die Spannungen werden nicht verarbeitet, sondern lediglich im Status angezeigt.")),n[56]||(n[56]=l("br",null,null,-1)),n[57]||(n[57]=t(" Beispiel: ")),n[58]||(n[58]=l("span",{class:"text-info"},"[230.12,231.08,232.54]",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/power_factors ",1)]),_:1}),n[59]||(n[59]=l("br",null,null,-1)),n[60]||(n[60]=t(" Aktuelle Leistungsfaktoren des Ladepunktes, Array mit drei Zahlen (Float), Wertebereich von -1 bis 1.")),n[61]||(n[61]=l("br",null,null,-1)),n[62]||(n[62]=t(" Die Leistungsfaktoren werden nicht verarbeitet, sondern lediglich im Status angezeigt.")),n[63]||(n[63]=l("br",null,null,-1)),n[64]||(n[64]=t(" Beispiel: ")),n[65]||(n[65]=l("span",{class:"text-info"},"[-0.87,0.96,1.0]",-1))]),l("li",null,[e(s,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/chargepoint/"+r(o.chargePoint.id)+"/get/rfid_tag ",1)]),_:1}),n[66]||(n[66]=l("br",null,null,-1)),n[67]||(n[67]=t(" Eine Zeichenfolge, die einen eingelesenen Tag für openWB repräsentiert.")),n[68]||(n[68]=l("br",null,null,-1)),n[69]||(n[69]=t(" Beispiel: ")),n[70]||(n[70]=l("span",{class:"text-info"},'"123654"',-1))])])])])]),_:1})])}const Z=g(m,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/mqtt/chargePoint.vue"]]);export{Z as default}; diff --git a/web/settings/assets/chargePoint-74843c64.js b/web/settings/assets/chargePoint-74843c64.js deleted file mode 100644 index c9aaaa5fbd..0000000000 --- a/web/settings/assets/chargePoint-74843c64.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./ChargePointInstallation-1b33cf58.js";import{_ as i,u as p,k as s,l as a,G as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"ChargePointOpenwbPro",mixins:[r]},d={class:"charge-point-openwb-pro"};function u(o,e,_,l,f,g){const t=p("openwb-base-text-input");return s(),a("div",d,[m(t,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.chargePoint.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"])])}const B=i(c,[["render",u],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/openwb_pro/chargePoint.vue"]]);export{B as default}; diff --git a/web/settings/assets/chargePoint-c5192d41.js b/web/settings/assets/chargePoint-c5192d41.js deleted file mode 100644 index 3c670e7561..0000000000 --- a/web/settings/assets/chargePoint-c5192d41.js +++ /dev/null @@ -1 +0,0 @@ -import{C as s}from"./ChargePointInstallation-1b33cf58.js";import{_ as p,u as n,k as u,l as m,G as i,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"ChargePointSmartwb",mixins:[s]},b={class:"charge-point-smartwb"};function c(t,e,f,_,w,v){const r=n("openwb-base-text-input"),a=n("openwb-base-number-input");return u(),m("div",b,[i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.chargePoint.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Wartezeit",required:"",min:2,max:10,unit:"s","model-value":t.chargePoint.configuration.timeout,"onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.timeout"))},{help:d(()=>e[2]||(e[2]=[l(" Zeitangabe in Sekunden, für die auf eine Antwort des Ladepunktes gewartet wird. Wird diese Zeit überschritten, so wird von einer Kommunikationsstörung ausgegangen. ")])),_:1},8,["model-value"])])}const q=p(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/smartwb/chargePoint.vue"]]);export{q as default}; diff --git a/web/settings/assets/chargePoint-dc8c8304.js b/web/settings/assets/chargePoint-dc8c8304.js deleted file mode 100644 index 2071ebd0d4..0000000000 --- a/web/settings/assets/chargePoint-dc8c8304.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./ChargePointInstallation-1b33cf58.js";import{_ as s,u as t,k as u,l as m,G as i,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"ChargePointSatellite",mixins:[p]},c={class:"charge-point-openwb-satellite"};function g(n,e,f,b,h,w){const r=t("openwb-base-text-input"),a=t("openwb-base-number-input");return u(),m("div",c,[i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.chargePoint.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Ladepunkt-Nummer",required:"",min:1,max:2,"model-value":n.chargePoint.configuration.duo_num+1,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o-1,"configuration.duo_num"))},{help:d(()=>e[2]||(e[2]=[l(' Bei einfachen Ladepunkten ist hier immer eine "1" einzutragen. Lediglich bei einer openWB Duo kann mit "2" der zweite enthaltene Ladepunkt angesprochen werden. ')])),_:1},8,["model-value"])])}const N=s(_,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/openwb_series2_satellit/chargePoint.vue"]]);export{N as default}; diff --git a/web/settings/assets/commands-ff2cd0dc.js b/web/settings/assets/commands-ff2cd0dc.js deleted file mode 100644 index 8c6c383e31..0000000000 --- a/web/settings/assets/commands-ff2cd0dc.js +++ /dev/null @@ -1 +0,0 @@ -import{a as i}from"./ChargePointInstallation-1b33cf58.js";import{_ as r,u as p,k as d,l as c,G as u,E as m,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"ChargePointCommandsOpenwbPro",mixins:[i],methods:{async triggerUpdate(){let t=new FormData;t.append("command","update"),t.append("data",'{"ip_address":"'+this.chargePoint.configuration.ip_address+'"}');const o="Die Aktualisierung der openWB Pro wird gestartet...";this.$root.postClientMessage(o,"info"),console.debug(location),this.axios.post(location.protocol+"//"+location.host+"/openWB/web/settings/modules/charge_points/openwb_pro/commands.php",t,{timeout:5e3}).then(()=>{const e="Die Aktualisierung der openWB Pro wurde erfolgreich gestartet.";this.$root.postClientMessage(e,"success")}).catch(e=>{var s="Aktualisierung fehlgeschlagen!
";e.response?(console.error(e.response.status,e.response.data),s+=e.response.status+": "+e.response.data):e.request?(console.error(e.request),s+="Es wurde keine Antwort vom Server empfangen."):(console.error("Error",e.message),s+="Es ist ein unbekannter Fehler aufgetreten."),this.$root.postClientMessage(s,"danger")})}}},h={class:"charge-point-commands-openwb-pro"};function _(t,o,e,s,f,n){const a=p("openwb-base-button-input");return d(),c("div",h,[u(a,{title:"Ladepunkt aktualisieren","button-text":"Update anfordern",subtype:"success",disabled:t.chargePoint.configuration.ip_address==null,onButtonClicked:n.triggerUpdate},{help:m(()=>o[0]||(o[0]=[l(" Mit diesem Befehl können Sie die Aktualisierung der openWB Pro anstoßen. Bitte beachten Sie, dass kein Fahrzeug angesteckt ist. ")])),_:1},8,["disabled","onButtonClicked"])])}const $=r(g,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/charge_points/openwb_pro/commands.vue"]]);export{$ as default}; diff --git a/web/settings/assets/consumption_counter-222cd10a.js b/web/settings/assets/consumption_counter-222cd10a.js deleted file mode 100644 index d62c1c3b35..0000000000 --- a/web/settings/assets/consumption_counter-222cd10a.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as o,k as b,l as c,G as t,E as s,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceOpenwbFlexConsumptionCounter",mixins:[d]},f={class:"device-openwb-flex-consumption-counter"};function g(n,e,w,v,x,B){const l=o("openwb-base-heading"),u=o("openwb-base-alert"),p=o("openwb-base-select-input"),a=o("openwb-base-number-input");return b(),c("div",f,[t(l,null,{default:s(()=>e[2]||(e[2]=[r(" Einstellungen für openWB-Flex Verbrauchszähler ")])),_:1}),t(u,{subtype:"info"},{default:s(()=>e[3]||(e[3]=[r(" Bei saldierenden Zählern (B23) werden die Zählerstände für Einspeisung und Bezug aus dem Zähler ausgelesen. Bei Zählern, die nicht saldierend arbeiten (SDM120, SDM630, SDM72D-M), wird der Zählerstand für den Bezug aus dem Zähler ausgelesen. Eine Messung der Einspeisung ist nicht möglich. ")])),_:1}),t(p,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:"sdm120",text:"SDM120"},{value:"sdm630",text:"SDM630/SDM72D-M"},{value:"b23",text:"B23"}],"model-value":n.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.version"))},null,8,["model-value"]),t(a,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":n.component.configuration.id,"onUpdate:modelValue":e[1]||(e[1]=i=>n.updateConfiguration(i,"configuration.id"))},null,8,["model-value"])])}const k=m(_,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/consumption_counter.vue"]]);export{k as default}; diff --git a/web/settings/assets/counter-03e6c31d.js b/web/settings/assets/counter-03e6c31d.js deleted file mode 100644 index db326de1ca..0000000000 --- a/web/settings/assets/counter-03e6c31d.js +++ /dev/null @@ -1 +0,0 @@ -import{C as o}from"./HardwareInstallation-79ea1bc6.js";import{_ as s,u as n,k as r,l as i,G as a,E as p,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceKostalSemCounter",mixins:[o]},l={class:"device-kostal-sem-counter"};function d(_,e,u,f,b,h){const t=n("openwb-base-alert");return r(),i("div",l,[a(t,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[c(" Diese Komponente ist nur richtig, wenn der Zähler NICHT direkt am Wechselrichter (Kostal Plenticore) angeschlossen ist und daher separat abgefragt werden muss. ")])),_:1})])}const N=s(m,[["render",d],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_sem/counter.vue"]]);export{N as default}; diff --git a/web/settings/assets/counter-08617a3b.js b/web/settings/assets/counter-08617a3b.js deleted file mode 100644 index 51a4fd7a5e..0000000000 --- a/web/settings/assets/counter-08617a3b.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as s,k as p,l as g,G as i,E as a,y as n,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const h={name:"DeviceHttpCounter",mixins:[u]},b={class:"device-http-counter"};function f(t,e,w,v,k,S){const d=s("openwb-base-heading"),o=s("openwb-base-text-input");return p(),g("div",b,[i(d,null,{default:a(()=>e[6]||(e[6]=[n(" Einstellungen für Http Zähler ")])),_:1}),i(o,{title:"Pfad für Leistung",subtype:"text",required:"",pattern:"^/[-a-zA-Z0-9@:%_\\+.~#?&/=]*","model-value":t.component.configuration.power_path,"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateConfiguration(r,"configuration.power_path"))},{help:a(()=>e[7]||(e[7]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Zählerstand Bezug",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.imported_path,"onUpdate:modelValue":e[1]||(e[1]=r=>t.updateConfiguration(r,"configuration.imported_path"))},{help:a(()=>e[8]||(e[8]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, wird der Zählerstand intern simuliert. ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Zählerstand Einspeisung",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.exported_path,"onUpdate:modelValue":e[2]||(e[2]=r=>t.updateConfiguration(r,"configuration.exported_path"))},{help:a(()=>e[9]||(e[9]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, wird der Zählerstand intern simuliert. ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Strom Phase 1",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.current_l1_path,"onUpdate:modelValue":e[3]||(e[3]=r=>t.updateConfiguration(r,"configuration.current_l1_path"))},{help:a(()=>e[10]||(e[10]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Stromstärke der 1. Phase in Ampere darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, werden keine Phasenströme ermittelt und es kann kein Lastmanagement berechnet werden! ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Strom Phase 2",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.current_l2_path,"onUpdate:modelValue":e[4]||(e[4]=r=>t.updateConfiguration(r,"configuration.current_l2_path"))},{help:a(()=>e[11]||(e[11]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Stromstärke der 2. Phase in Ampere darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, werden keine Phasenströme ermittelt und es kann kein Lastmanagement berechnet werden! ")])),_:1},8,["model-value"]),i(o,{title:"Pfad für Strom Phase 3",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.current_l3_path,"onUpdate:modelValue":e[5]||(e[5]=r=>t.updateConfiguration(r,"configuration.current_l3_path"))},{help:a(()=>e[12]||(e[12]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),l("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Stromstärke der 3. Phase in Ampere darstellt."),l("br",null,null,-1),n(" Wird dieses Feld leer gelassen, werden keine Phasenströme ermittelt und es kann kein Lastmanagement berechnet werden! ")])),_:1},8,["model-value"])])}const F=m(h,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/http/counter.vue"]]);export{F as default}; diff --git a/web/settings/assets/counter-0a146406.js b/web/settings/assets/counter-0a146406.js deleted file mode 100644 index d36d903753..0000000000 --- a/web/settings/assets/counter-0a146406.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u,k as f,l as g,G as l,E as o,y as t,x as e,F as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceMqttCounter",mixins:[d]},k={class:"device-mqtt-counter"};function B(i,n,z,x,v,w){const p=u("openwb-base-heading"),s=u("openwb-base-copy-to-clipboard"),m=u("openwb-base-alert");return f(),g("div",k,[l(p,null,{default:o(()=>n[0]||(n[0]=[t(" Einstellungen für MQTT Zähler ")])),_:1}),l(m,{subtype:"info"},{default:o(()=>[n[41]||(n[41]=t(" Die folgenden Topics sind für einen reibungslosen Betrieb unbedingt erforderlich: ")),e("ul",null,[e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/power ",1)]),_:1}),n[1]||(n[1]=e("br",null,null,-1)),n[2]||(n[2]=t(" Bezugsleistung in Watt, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, positiv Bezug, negativ Einspeisung")),n[3]||(n[3]=e("br",null,null,-1)),n[4]||(n[4]=t(" Beispiel: ")),n[5]||(n[5]=e("span",{class:"text-info"},"-123.45",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/imported ",1)]),_:1}),n[6]||(n[6]=e("br",null,null,-1)),n[7]||(n[7]=t(" Bezogene Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),n[8]||(n[8]=e("br",null,null,-1)),n[9]||(n[9]=t(" Beispiel: ")),n[10]||(n[10]=e("span",{class:"text-info"},"123.45",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/exported ",1)]),_:1}),n[11]||(n[11]=e("br",null,null,-1)),n[12]||(n[12]=t(" Eingespeiste Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),n[13]||(n[13]=e("br",null,null,-1)),n[14]||(n[14]=t(" Beispiel: ")),n[15]||(n[15]=e("span",{class:"text-info"},"123.45",-1))])]),n[42]||(n[42]=t(" Ströme je Phase sind für phasenbasiertes Lastmanagement unbedingt erforderlich, sonst erfolgt das Lastmanagement ausschließlich auf Basis der Gesamtleistung am EVU-Punkt: ")),e("ul",null,[e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/currents ",1)]),_:1}),n[16]||(n[16]=e("br",null,null,-1)),n[17]||(n[17]=t(" Array mit den Strömen je Phase in Ampere, mit Nachkommastellen (Float), positiv Bezug, negativ Einspeisung")),n[18]||(n[18]=e("br",null,null,-1)),n[19]||(n[19]=t(" Beispiel: ")),n[20]||(n[20]=e("span",{class:"text-info"},"[1.2,2.3,-2.1]",-1))])]),n[43]||(n[43]=t(" Die Netzfrequenz, Spannungen, Leistungen und Leistungsfaktoren jeder Phase werden ausschließlich zu Anzeigezwecken verwendet: ")),e("ul",null,[e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/frequency ",1)]),_:1}),n[21]||(n[21]=e("br",null,null,-1)),n[22]||(n[22]=t(" Netzfrequenz in Hz, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen")),n[23]||(n[23]=e("br",null,null,-1)),n[24]||(n[24]=t(" Beispiel: ")),n[25]||(n[25]=e("span",{class:"text-info"},"50.12",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/voltages ",1)]),_:1}),n[26]||(n[26]=e("br",null,null,-1)),n[27]||(n[27]=t(" Array mit den Spannungen je Phase in Volt, mit Nachkommastellen (Float)")),n[28]||(n[28]=e("br",null,null,-1)),n[29]||(n[29]=t(" Beispiel: ")),n[30]||(n[30]=e("span",{class:"text-info"},"[222.2,223.3,222.3]",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/powers ",1)]),_:1}),n[31]||(n[31]=e("br",null,null,-1)),n[32]||(n[32]=t(" Array mit den Leistungen je Phase in Watt, mit Nachkommastellen (Float)")),n[33]||(n[33]=e("br",null,null,-1)),n[34]||(n[34]=t(" Beispiel: ")),n[35]||(n[35]=e("span",{class:"text-info"},"[12.3,23.4,-12.3]",-1))]),e("li",null,[l(s,{class:"text-info",tooltip:"Topic kopieren"},{default:o(()=>[t(" openWB/set/counter/"+r(i.component.id)+"/get/power_factors ",1)]),_:1}),n[36]||(n[36]=e("br",null,null,-1)),n[37]||(n[37]=t(" Array mit den Leistungsfaktoren je Phase, mit Nachkommastellen (Float), Wertebereich -1 bis 1")),n[38]||(n[38]=e("br",null,null,-1)),n[39]||(n[39]=t(" Beispiel: ")),n[40]||(n[40]=e("span",{class:"text-info"},"[0.95,0.96,-0.95]",-1))])])]),_:1})])}const q=a(b,[["render",B],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/mqtt/counter.vue"]]);export{q as default}; diff --git a/web/settings/assets/counter-10c3bcf9.js b/web/settings/assets/counter-10c3bcf9.js deleted file mode 100644 index a6ff6ba718..0000000000 --- a/web/settings/assets/counter-10c3bcf9.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as n,k as a,l as m,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSunnyBoyCounter",mixins:[p]},_={class:"device-sunnyboy-counter"};function b(o,e,f,v,y,g){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return a(),m("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für SMA Sunny Boy/Tripower Zähler ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const V=u(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/counter.vue"]]);export{V as default}; diff --git a/web/settings/assets/counter-195f9f44.js b/web/settings/assets/counter-195f9f44.js deleted file mode 100644 index 324c074e4a..0000000000 --- a/web/settings/assets/counter-195f9f44.js +++ /dev/null @@ -1 +0,0 @@ -import{C as t}from"./HardwareInstallation-79ea1bc6.js";import{_ as o,u as s,k as i,l as r,G as a,E as p,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSonnenbatterieCounter",mixins:[t]},d={class:"device-sonnenbatterie-counter"};function _(l,e,u,f,b,v){const n=s("openwb-base-alert");return i(),r("div",d,[a(n,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[m(" Mit diesem Modul ist kein phasenbasiertes Lastmanagement möglich, da keine Ströme der einzelnen Phasen gemessen werden. ")])),_:1})])}const y=o(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sonnen/sonnenbatterie/counter.vue"]]);export{y as default}; diff --git a/web/settings/assets/counter-1e0a8642.js b/web/settings/assets/counter-1e0a8642.js deleted file mode 100644 index c7ba2d2d41..0000000000 --- a/web/settings/assets/counter-1e0a8642.js +++ /dev/null @@ -1 +0,0 @@ -import{C as t}from"./HardwareInstallation-79ea1bc6.js";import{_ as n,u as r,k as s,l as a,G as i,E as p,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceCarloGavazziCounter",mixins:[t]},_={class:"device-carlo-gavazzi-counter"};function l(u,e,d,v,f,z){const o=r("openwb-base-alert");return s(),a("div",_,[i(o,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[c(" ModbusTCP muss aktiviert sein. ")])),_:1})])}const E=n(m,[["render",l],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/carlo_gavazzi/carlo_gavazzi/counter.vue"]]);export{E as default}; diff --git a/web/settings/assets/counter-1ee33dcc.js b/web/settings/assets/counter-1ee33dcc.js deleted file mode 100644 index 459bae9e5c..0000000000 --- a/web/settings/assets/counter-1ee33dcc.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as n,k as m,l as u,G as t,E as l,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolisCounter",mixins:[p]},_={class:"device-solis-counter"};function b(o,e,f,v,g,C){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),u("div",_,[t(i,null,{default:l(()=>e[1]||(e[1]=[d(" Einstellungen für Solis Zähler ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const M=a(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solis/solis/counter.vue"]]);export{M as default}; diff --git a/web/settings/assets/counter-212ab5d9.js b/web/settings/assets/counter-212ab5d9.js deleted file mode 100644 index 7bfad47832..0000000000 --- a/web/settings/assets/counter-212ab5d9.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as t,k as c,l as m,G as r,E as i,y as n,x as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DevicePowerfoxCounter",mixins:[u]},b={class:"device-powerfox-counter"};function g(o,e,w,x,_,h){const a=t("openwb-base-heading"),p=t("openwb-base-text-input");return c(),m("div",b,[r(a,null,{default:i(()=>e[1]||(e[1]=[n(" Einstellungen für Powerfox Zähler ")])),_:1}),r(p,{title:"ID",required:"","model-value":o.component.configuration.id,"onUpdate:modelValue":e[0]||(e[0]=d=>o.updateConfiguration(d,"configuration.id"))},{help:i(()=>e[2]||(e[2]=[n(" Um die ID herauszufinden mit dem Browser die Adresse "),s("a",{href:"https://backend.powerfox.energy/api/2.0/my/all/devices",target:"_blank",rel:"noopener noreferrer"}," https://backend.powerfox.energy/api/2.0/my/all/devices ",-1),n(" aufrufen und dort Benutzername und Passwort eingeben. Die DeviceID ist exakt so einzutragen, wie in der Antwort des Servers. Das bedeutet insbesondere auch, die Groß-/Kleinschreibung ist zu beachten! In dem Feld ist nur die Zeichenfolge direkt hinter "),s("span",{class:"font-weight-bold text-monospace",style:{display:"contents"}},' "DeviceID" ',-1),n(" ohne den Doppelpunkt und Anführungszeichen einzutragen. ")])),_:1},8,["model-value"])])}const $=l(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerfox/powerfox/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter-254f0cfd.js b/web/settings/assets/counter-254f0cfd.js deleted file mode 100644 index fddb9564bc..0000000000 --- a/web/settings/assets/counter-254f0cfd.js +++ /dev/null @@ -1 +0,0 @@ -import{C as n}from"./HardwareInstallation-79ea1bc6.js";import{_ as s,u as a,k as i,l,G as p,E as c,x as e,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceSolarLogCounter",mixins:[n]},u={class:"device-solar_log-counter"};function d(_,o,g,h,f,b){const t=a("openwb-base-alert");return i(),l("div",u,[p(t,{subtype:"info"},{default:c(()=>o[0]||(o[0]=[e("span",{class:"text-danger"},[r(" Solar-Log Zähler geben keine Ströme aus, sodass nur ein Lastmanagement anhand der Gesamtleistung, aber nicht phasenbasiert möglich ist."),e("br")],-1),r(" Solar-Log Zähler sind Hausverbrauchs-Zähler. Um die Werte am EVU-Punkt zu ermitteln, muss ein virtueller Zähler konfiguriert werden. Eine Beispiel-Konfiguration mit Solar-Log Zähler findest Du im "),e("a",{href:"https://github.com/openWB/core/wiki/Hausverbrauchs-Z%C3%A4hler",target:"_blank",rel:"noopener noreferrer"}," Wiki für Hausverbrauchs-Zähler ",-1),r(". ")])),_:1})])}const E=s(m,[["render",d],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_log/solar_log/counter.vue"]]);export{E as default}; diff --git a/web/settings/assets/counter-2c44c2a8.js b/web/settings/assets/counter-2c44c2a8.js deleted file mode 100644 index 9f18ff98f6..0000000000 --- a/web/settings/assets/counter-2c44c2a8.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as t,k as p,l as u,G as n,E as l,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmartMeCounter",mixins:[a]},_={class:"device-smart-me-counter"};function f(o,e,b,v,g,x){const r=t("openwb-base-heading"),i=t("openwb-base-text-input");return p(),u("div",_,[n(r,null,{default:l(()=>e[1]||(e[1]=[d(" Einstellungen für smart-me Zähler ")])),_:1}),n(i,{title:"Geräte-ID",required:"","model-value":o.component.configuration.id,"onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.id"))},null,8,["model-value"])])}const G=m(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/smart_me/smart_me/counter.vue"]]);export{G as default}; diff --git a/web/settings/assets/counter-2ca429aa.js b/web/settings/assets/counter-2ca429aa.js deleted file mode 100644 index 452ecfaf83..0000000000 --- a/web/settings/assets/counter-2ca429aa.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceFoxEssCounter",mixins:[p]},c={class:"device-fox_ess-counter"};function f(o,e,b,x,v,g){const s=n("openwb-base-heading"),i=n("openwb-base-number-input");return m(),u("div",c,[t(s,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für FoxEss Zähler ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const F=a(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fox_ess/fox_ess/counter.vue"]]);export{F as default}; diff --git a/web/settings/assets/counter-60a6165d.js b/web/settings/assets/counter-60a6165d.js deleted file mode 100644 index 8fd5ff899a..0000000000 --- a/web/settings/assets/counter-60a6165d.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as n,k as m,l as c,G as r,E as i,y as o,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceDiscovergyCounter",mixins:[d]},g={class:"device-discovergy-counter"};function _(t,e,v,b,w,x){const s=n("openwb-base-heading"),a=n("openwb-base-text-input");return m(),c("div",g,[r(s,null,{default:i(()=>e[1]||(e[1]=[o(" Einstellungen für Discovergy Zähler ")])),_:1}),r(a,{title:"Meter-ID",required:"","model-value":t.component.configuration.meter_id,"onUpdate:modelValue":e[0]||(e[0]=p=>t.updateConfiguration(p,"configuration.meter_id"))},{help:i(()=>e[2]||(e[2]=[o(" Um die ID herauszufinden mit dem Browser die Adresse "),l("a",{href:"https://api.discovergy.com/public/v1/meters",target:"_blank",rel:"noopener noreferrer"}," https://api.discovergy.com/public/v1/meters ",-1),o(" aufrufen und dort Benutzername und Passwort eingeben. Hier wird nun u.a. die ID des Zählers angezeigt. ")])),_:1},8,["model-value"])])}const E=u(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/discovergy/discovergy/counter.vue"]]);export{E as default}; diff --git a/web/settings/assets/counter-7288db20.js b/web/settings/assets/counter-7288db20.js deleted file mode 100644 index 13fce16659..0000000000 --- a/web/settings/assets/counter-7288db20.js +++ /dev/null @@ -1 +0,0 @@ -import{C as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as n,k as d,l,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSigenergyCounter",mixins:[m]},_={class:"device-sigenergy-counter"};function c(o,e,b,f,v,y){const s=n("openwb-base-heading"),p=n("openwb-base-number-input");return d(),l("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für Sigenergy Zähler ")])),_:1}),t(p,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[r(" Die Standard-Modbus-ID von Sigenergy ist 247 ")])),_:1},8,["model-value"])])}const M=u(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sigenergy/sigenergy/counter.vue"]]);export{M as default}; diff --git a/web/settings/assets/counter-7be0c89b.js b/web/settings/assets/counter-7be0c89b.js deleted file mode 100644 index 13a3f55629..0000000000 --- a/web/settings/assets/counter-7be0c89b.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as t,k as m,l as d,G as o,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceVirtualCounter",mixins:[p]},_={class:"device-virtual-counter"};function f(n,e,b,g,v,h){const s=t("openwb-base-heading"),a=t("openwb-base-number-input");return m(),d("div",_,[o(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für virtuelle Zähler ")])),_:1}),o(a,{title:"Zusätzlicher Verbrauch",min:0,step:.05,unit:"kW",required:"","model-value":n.component.configuration.external_consumption/1e3,"onUpdate:modelValue":e[0]||(e[0]=u=>n.updateConfiguration(u*1e3,"configuration.external_consumption"))},{help:i(()=>e[2]||(e[2]=[r(" Die hier angegebene Leistung wird pauschal zu dem Leistungen der hinter dem Zähler liegenden Komponenten addiert. Damit lässt sich z. B. eine Reserve für nicht erfasste Verbraucher einstellen. ")])),_:1},8,["model-value"])])}const E=l(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/virtual/counter.vue"]]);export{E as default}; diff --git a/web/settings/assets/counter-84be4565.js b/web/settings/assets/counter-84be4565.js deleted file mode 100644 index 9fadffb810..0000000000 --- a/web/settings/assets/counter-84be4565.js +++ /dev/null @@ -1 +0,0 @@ -import{C as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as o,k as d,l,G as t,E as i,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceEnphaseCounter",mixins:[m]},_={class:"device-enphase-counter"};function f(n,e,b,v,g,E){const p=o("openwb-base-heading"),r=o("openwb-base-number-input");return d(),l("div",_,[t(p,null,{default:i(()=>e[1]||(e[1]=[s(" Einstellungen für Enphase Envoy / IQ Gateway Zähler ")])),_:1}),t(r,{title:"EID",required:"","model-value":n.component.configuration.eid,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.eid"))},{help:i(()=>e[2]||(e[2]=[s(' EID für "net-consumption" ')])),_:1},8,["model-value"])])}const I=u(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/enphase/enphase/counter.vue"]]);export{I as default}; diff --git a/web/settings/assets/counter-9927602b.js b/web/settings/assets/counter-9927602b.js deleted file mode 100644 index 18fe2941b8..0000000000 --- a/web/settings/assets/counter-9927602b.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as o,k as b,l as c,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceOpenwbFlexCounter",mixins:[d]},_={class:"device-openwb-flex-counter"};function v(n,e,w,g,M,x){const l=o("openwb-base-heading"),a=o("openwb-base-alert"),p=o("openwb-base-select-input"),u=o("openwb-base-number-input");return b(),c("div",_,[t(l,null,{default:r(()=>e[2]||(e[2]=[s(" Einstellungen für openWB-Flex Zähler ")])),_:1}),t(a,{subtype:"info"},{default:r(()=>e[3]||(e[3]=[s(" Bei saldierenden Zählern (MPM3PM, B23) werden die Zählerstände für Einspeisung und Bezug aus dem Zähler ausgelesen. Bei Zählern, die nicht saldierend arbeiten (Lovato, SDM630, SDM72D-M), werden die Zählerstände von der openWB berechnet. ")])),_:1}),t(p,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:3,text:"B23"},{value:1,text:"Lovato"},{value:0,text:"MPM3PM"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":n.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.version"))},null,8,["model-value"]),t(u,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":n.component.configuration.id,"onUpdate:modelValue":e[1]||(e[1]=i=>n.updateConfiguration(i,"configuration.id"))},null,8,["model-value"])])}const $=m(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter-99f6452c.js b/web/settings/assets/counter-99f6452c.js deleted file mode 100644 index 4ac128a108..0000000000 --- a/web/settings/assets/counter-99f6452c.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as t,k as a,l,G as n,E as d,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DevicePowerdogCounter",mixins:[p]},_={class:"device-powerdog-counter"};function b(e,o,f,g,v,w){const i=t("openwb-base-heading"),r=t("openwb-base-button-group-input");return a(),l("div",_,[n(i,null,{default:d(()=>o[1]||(o[1]=[m(" Einstellungen für Powerdog Zähler ")])),_:1}),n(r,{title:"Einbau-Position",buttons:[{buttonValue:!1,text:"Hausverbrauch"},{buttonValue:!0,text:"EVU-Punkt"}],"model-value":e.component.configuration.position_evu,"onUpdate:modelValue":o[0]||(o[0]=s=>e.updateConfiguration(s,"configuration.position_evu"))},null,8,["model-value"])])}const N=u(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerdog/powerdog/counter.vue"]]);export{N as default}; diff --git a/web/settings/assets/counter-b0e2f51e.js b/web/settings/assets/counter-b0e2f51e.js deleted file mode 100644 index 21b8c06de4..0000000000 --- a/web/settings/assets/counter-b0e2f51e.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as c,u as t,k as m,l as u,G as o,E as s,y as l,x as n,F as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceShellyCounter",mixins:[p]},f={class:"device-shelly-counter"},h={class:"small"};function b(r,e,y,g,x,v){const i=t("openwb-base-heading"),a=t("openwb-base-alert");return m(),u("div",f,[o(i,null,{default:s(()=>[e[0]||(e[0]=l(" Einstellungen für Shelly Zähler ")),n("span",h,"(Modul: "+d(r.$options.name)+")",1)]),_:1}),o(a,{subtype:"info"},{default:s(()=>e[1]||(e[1]=[n("span",{class:"text-danger"}," Als EVU-Zähler werden nur dreiphasige Shellys unterstützt (z.B. Shelly 3EM, Shelly Pro 3EM)",-1),n("br",null,null,-1),l(" Diese Komponente benötigt keine Einstellungen. ")])),_:1})])}const D=c(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/shelly/shelly/counter.vue"]]);export{D as default}; diff --git a/web/settings/assets/counter-b591cf05.js b/web/settings/assets/counter-b591cf05.js deleted file mode 100644 index d1aeaa8bd9..0000000000 --- a/web/settings/assets/counter-b591cf05.js +++ /dev/null @@ -1 +0,0 @@ -import{C as n}from"./HardwareInstallation-79ea1bc6.js";import{_ as o,u as s,k as r,l as a,G as i,E as m,y as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceTeslaCounter",mixins:[n]},l={class:"device-tesla-counter"};function _(d,e,u,f,v,x){const t=s("openwb-base-alert");return r(),a("div",l,[i(t,{subtype:"info"},{default:m(()=>e[0]||(e[0]=[p(" Je nach Firmware-Version ist nur ein Lastmanagement anhand der Gesamtleistung möglich, da nicht alle Firmware-Versionen Phasenströme liefern. ")])),_:1})])}const y=o(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/tesla/tesla/counter.vue"]]);export{y as default}; diff --git a/web/settings/assets/counter-b5c5d729.js b/web/settings/assets/counter-b5c5d729.js deleted file mode 100644 index 061dcf6632..0000000000 --- a/web/settings/assets/counter-b5c5d729.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as n,k as d,l as c,G as t,E as i,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceMTecCounter",mixins:[a]},_={class:"device-mtec-counter"};function b(o,e,f,v,g,C){const r=n("openwb-base-heading"),p=n("openwb-base-number-input");return d(),c("div",_,[t(r,null,{default:i(()=>e[1]||(e[1]=[s(" Einstellungen für M-Tec Zähler ")])),_:1}),t(p,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=m=>o.updateConfiguration(m,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[s(" Die Standard-Modbus-ID von M-Tec ist 247 ")])),_:1},8,["model-value"])])}const V=u(l,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/mtec/mtec/counter.vue"]]);export{V as default}; diff --git a/web/settings/assets/counter-b807495f.js b/web/settings/assets/counter-b807495f.js deleted file mode 100644 index b9416665e0..0000000000 --- a/web/settings/assets/counter-b807495f.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as t,k as l,l as d,G as r,E as i,y as n,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSmahmCounter",mixins:[p]},f={class:"device-smahm-counter"};function b(o,e,g,v,M,h){const s=t("openwb-base-heading"),a=t("openwb-base-number-input");return l(),d("div",f,[r(s,null,{default:i(()=>e[1]||(e[1]=[n(" Einstellungen für SMA-HM/EM Zähler ")])),_:1}),r(a,{title:"Seriennummer","model-value":o.component.configuration.serials,"onUpdate:modelValue":e[0]||(e[0]=m=>o.updateConfiguration(m,"configuration.serials"))},{help:i(()=>e[2]||(e[2]=[n(" Eine Seriennummer ist nur erforderlich, wenn mehrere SMA HomeManager in Betrieb sind."),c("br",null,null,-1),n(" Funktioniert auch mit Energy Meter anstatt Home Manager. ")])),_:1},8,["model-value"])])}const H=u(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_shm/counter.vue"]]);export{H as default}; diff --git a/web/settings/assets/counter-cdf8a350.js b/web/settings/assets/counter-cdf8a350.js deleted file mode 100644 index 27bad366ec..0000000000 --- a/web/settings/assets/counter-cdf8a350.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as r,k as p,l as f,G as n,E as s,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSolaredgeCounter",mixins:[d]},b={class:"device-solaredge-counter"};function c(o,e,_,v,w,C){const l=r("openwb-base-heading"),u=r("openwb-base-alert"),i=r("openwb-base-number-input");return p(),f("div",b,[n(l,null,{default:s(()=>e[2]||(e[2]=[a(" Einstellungen für SolarEdge Zähler ")])),_:1}),n(u,{subtype:"info"},{default:s(()=>e[3]||(e[3]=[a(" Hierfür muss ein EVU-Zähler am SolarEdge Wechselrichter per Modbus angebunden sein. Der Zähler muss an erster Position im Wechselrichter konfiguriert sein. ")])),_:1}),n(i,{title:"SolarEdge-Geräte-ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.modbus_id"))},null,8,["model-value"]),n(i,{title:"SolarEdge-Meter-ID","model-value":o.component.configuration.meter_id,min:"1",max:"255",required:"","onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.meter_id"))},null,8,["model-value"])])}const M=m(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/counter.vue"]]);export{M as default}; diff --git a/web/settings/assets/counter-cfb8942f.js b/web/settings/assets/counter-cfb8942f.js deleted file mode 100644 index 1daf4cc379..0000000000 --- a/web/settings/assets/counter-cfb8942f.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as o,k as m,l as d,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSungrowCounter",mixins:[p]},g={class:"device-sungrow-counter"};function _(n,e,b,f,v,w){const s=o("openwb-base-heading"),u=o("openwb-base-select-input");return m(),d("div",g,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für Sungrow Zähler ")])),_:1}),t(u,{title:"Version",options:[{value:0,text:"SH (Hybrid)"},{value:1,text:"SG (kein Hybrid)"},{value:2,text:"SG (kein Hybrid) mit WiNet Dongle"}],"model-value":n.component.configuration.version,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.version"))},{help:i(()=>e[2]||(e[2]=[r(" Die Variante SH ist nur über die LAN-IP mit openWB nutzbar. Hierzu hinter dem WiNet-S Dongle den Lan Anschluss nutzen. Den WiNet-S Dongle zusätzlich ins Heimnetz (per Lan oder Wlan) einbinden, um ISolarCloud nutzen zu können. ")])),_:1},8,["model-value"])])}const V=l(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sungrow/sungrow/counter.vue"]]);export{V as default}; diff --git a/web/settings/assets/counter-d260631b.js b/web/settings/assets/counter-d260631b.js deleted file mode 100644 index 4e2ce9c874..0000000000 --- a/web/settings/assets/counter-d260631b.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as t,k as l,l as u,G as n,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbEvukitCounter",mixins:[r]},v={class:"device-openwb-evukit-counter"};function _(o,e,f,b,w,x){const i=t("openwb-base-heading"),s=t("openwb-base-select-input");return l(),u("div",v,[n(i,null,{default:m(()=>e[1]||(e[1]=[c(" Einstellungen für openWB EVU-Kit Zähler ")])),_:1}),n(s,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:3,text:"B23"},{value:1,text:"Lovato"},{value:0,text:"MPM3PM"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":o.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=p=>o.updateConfiguration(p,"configuration.version"))},null,8,["model-value"])])}const $=a(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_evu_kit/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter-d28a479e.js b/web/settings/assets/counter-d28a479e.js deleted file mode 100644 index 2fbfe30a18..0000000000 --- a/web/settings/assets/counter-d28a479e.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as s,u as n,k as i,l as a,G as p,E as c,y as o,x as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceKostalPikoCounter",mixins:[r]},u={class:"device-kostal-piko-counter"};function _(d,e,f,b,h,k){const t=n("openwb-base-alert");return i(),a("div",u,[p(t,{subtype:"info"},{default:c(()=>e[0]||(e[0]=[o(" Wenn der Zähler im Hausverbrauchs-Zweig installiert ist, muss die Hierarchie wie im "),m("a",{href:"https://github.com/openWB/core/wiki/Hausverbrauchs-Zähler",target:"_blank",rel:"noopener noreferrer"},"Wiki für Hausverbrauchs-Zähler",-1),o(" beschrieben, angeordnet werden. ")])),_:1})])}const $=s(l,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_piko/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter-d291954a.js b/web/settings/assets/counter-d291954a.js deleted file mode 100644 index e10a815f0b..0000000000 --- a/web/settings/assets/counter-d291954a.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceDeyeCounter",mixins:[p]},_={class:"device-deye-counter"};function b(o,e,f,v,g,C){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),u("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Deye Zähler ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const h=a(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/deye/deye/counter.vue"]]);export{h as default}; diff --git a/web/settings/assets/counter-d7a9c7cb.js b/web/settings/assets/counter-d7a9c7cb.js deleted file mode 100644 index ce62381c73..0000000000 --- a/web/settings/assets/counter-d7a9c7cb.js +++ /dev/null @@ -1 +0,0 @@ -import{C as o}from"./HardwareInstallation-79ea1bc6.js";import{_ as n,u as i,k as s,l as a,G as r,E as p,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceJanitzaBat",mixins:[o]},u={class:"device-janitza-counter"};function _(d,e,f,l,v,b){const t=i("openwb-base-alert");return s(),a("div",u,[r(t,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[c(' ModbusTCP muss im Janitza auf Port 502 aktiv und die ID auf "1" eingestellt sein. ')])),_:1})])}const y=n(m,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/janitza/janitza/counter.vue"]]);export{y as default}; diff --git a/web/settings/assets/counter-e5a2028c.js b/web/settings/assets/counter-e5a2028c.js deleted file mode 100644 index b04f70011d..0000000000 --- a/web/settings/assets/counter-e5a2028c.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u,k as m,l as f,G as t,E as a,y as l,x as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceJsonCounter",mixins:[d]},w={class:"device-json-counter"};function v(n,e,j,q,P,C){const i=u("openwb-base-heading"),r=u("openwb-base-text-input"),s=u("openwb-base-alert");return m(),f("div",w,[t(i,null,{default:a(()=>e[9]||(e[9]=[l(" Einstellungen für JSON Zähler ")])),_:1}),t(r,{title:"Abfrage für Leistung",subtype:"text",required:"","model-value":n.component.configuration.jq_power,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.jq_power"))},{help:a(()=>e[10]||(e[10]=[l(' Zur Analyse der Werte aus dem json-Objekt wird jq benutzt. Ist die Json Antwort z.B. {"PowerInstalledPeak":4655, "PowerProduced":132, "PowerOut":897.08172362555717, "PowerSelfSupplied":234.9182763744428} So muss hier .PowerOut eingetragen werden. '),g("br",null,null,-1),l(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. ")])),_:1},8,["model-value"]),t(r,{title:"Abfrage für Zählerstand Bezug",subtype:"text","model-value":n.component.configuration.jq_imported,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.jq_imported"))},{help:a(()=>e[11]||(e[11]=[l(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"]),t(r,{title:"Abfrage für Zählerstand Einspeisung",subtype:"text","model-value":n.component.configuration.jq_exported,"onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.jq_exported"))},{help:a(()=>e[12]||(e[12]=[l(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"]),t(s,{subtype:"info"},{default:a(()=>e[13]||(e[13]=[l(" Werden sowohl Leistung als auch Strom auf den Einzelphasen leer gelassen, erfolgt das Lastmanagement am EVU-Punkt nur anhand der Gesamtleistung am EVU-Punkt. Wird der Zähler als Zwischenzähler verwendet, wird in diesem Fall kein Lastmanagement durchgeführt. ")])),_:1}),t(r,{title:"Abfrage für Leistung auf Phase 1",subtype:"text","model-value":n.component.configuration.jq_power_l1,"onUpdate:modelValue":e[3]||(e[3]=o=>n.updateConfiguration(o,"configuration.jq_power_l1"))},null,8,["model-value"]),t(r,{title:"Abfrage für Leistung auf Phase 2",subtype:"text","model-value":n.component.configuration.jq_power_l2,"onUpdate:modelValue":e[4]||(e[4]=o=>n.updateConfiguration(o,"configuration.jq_power_l2"))},null,8,["model-value"]),t(r,{title:"Abfrage für Leistung auf Phase 3",subtype:"text","model-value":n.component.configuration.jq_power_l3,"onUpdate:modelValue":e[5]||(e[5]=o=>n.updateConfiguration(o,"configuration.jq_power_l3"))},null,8,["model-value"]),t(r,{title:"Abfrage für Strom auf Phase 1",subtype:"text","model-value":n.component.configuration.jq_current_l1,"onUpdate:modelValue":e[6]||(e[6]=o=>n.updateConfiguration(o,"configuration.jq_current_l1"))},null,8,["model-value"]),t(r,{title:"Abfrage für Strom auf Phase 2",subtype:"text","model-value":n.component.configuration.jq_current_l2,"onUpdate:modelValue":e[7]||(e[7]=o=>n.updateConfiguration(o,"configuration.jq_current_l2"))},null,8,["model-value"]),t(r,{title:"Abfrage für Strom auf Phase 3",subtype:"text","model-value":n.component.configuration.jq_current_l3,"onUpdate:modelValue":e[8]||(e[8]=o=>n.updateConfiguration(o,"configuration.jq_current_l3"))},null,8,["model-value"])])}const L=p(b,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/json/counter.vue"]]);export{L as default}; diff --git a/web/settings/assets/counter-e70162c9.js b/web/settings/assets/counter-e70162c9.js deleted file mode 100644 index f4a72addaa..0000000000 --- a/web/settings/assets/counter-e70162c9.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as t,k as m,l,G as i,E as d,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceVictronCounter",mixins:[p]},_={class:"device-victron-counter"};function f(o,e,g,v,C,V){const r=t("openwb-base-heading"),u=t("openwb-base-number-input"),s=t("openwb-base-button-group-input");return m(),l("div",_,[i(r,null,{default:d(()=>e[2]||(e[2]=[c(" Einstellungen für Victron Zähler ")])),_:1}),i(u,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"]),i(s,{title:"Messgerät",buttons:[{buttonValue:!1,text:"AC-In Victron GX"},{buttonValue:!0,text:"Energy Meter"}],"model-value":o.component.configuration.energy_meter,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.energy_meter"))},null,8,["model-value"])])}const G=a(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/victron/victron/counter.vue"]]);export{G as default}; diff --git a/web/settings/assets/counter-f1fbea9a.js b/web/settings/assets/counter-f1fbea9a.js deleted file mode 100644 index 4ae30cd056..0000000000 --- a/web/settings/assets/counter-f1fbea9a.js +++ /dev/null @@ -1 +0,0 @@ -import{C as s}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as r,k as m,l as g,G as t,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceVZLoggerCounter",mixins:[s]},_={class:"device-vzlogger-counter"};function c(n,e,b,v,w,Z){const a=r("openwb-base-heading"),p=r("openwb-base-alert"),i=r("openwb-base-number-input");return m(),g("div",_,[t(a,null,{default:l(()=>e[3]||(e[3]=[u(" Einstellungen für VZLogger Zähler ")])),_:1}),t(p,{subtype:"info"},{default:l(()=>e[4]||(e[4]=[u(' Bitte auf der Shell ausführen: "curl -s IPdesVZLogger:Port | jq .|cat -n" Zählen, in welcher Zeile der gesuchte Wert steht. Bei der ersten Zeile mit 1 anfangen zu zählen. ')])),_:1}),t(i,{title:"Zeile der Leistung",required:"",min:0,"model-value":n.component.configuration.line_power,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.line_power"))},null,8,["model-value"]),t(i,{title:"Zeile der Einspeisung",min:0,"model-value":n.component.configuration.line_exported,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.line_exported"))},null,8,["model-value"]),t(i,{title:"Zeile des Bezugs",min:0,"model-value":n.component.configuration.line_imported,"onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.line_imported"))},null,8,["model-value"])])}const x=d(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/vzlogger/vzlogger/counter.vue"]]);export{x as default}; diff --git a/web/settings/assets/counter-f2249b53.js b/web/settings/assets/counter-f2249b53.js deleted file mode 100644 index 923f704a0d..0000000000 --- a/web/settings/assets/counter-f2249b53.js +++ /dev/null @@ -1 +0,0 @@ -import{C as s}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as n,k as m,l as p,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceHuaweiSmartLoggerCounter",mixins:[s]},_={class:"device-huawei-smart-logger-counter"};function g(o,e,b,f,w,v){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),p("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Huawei SmartLogger Zähler ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.modbus_id"))},null,8,["model-value"])])}const H=u(c,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei_smartlogger/counter.vue"]]);export{H as default}; diff --git a/web/settings/assets/counter-faeac71e.js b/web/settings/assets/counter-faeac71e.js deleted file mode 100644 index 57fdca8ae7..0000000000 --- a/web/settings/assets/counter-faeac71e.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as n,u as s,k as i,l as a,G as c,E as p,y as o,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceKostalPlenticoreCounter",mixins:[r]},u={class:"device-kostal-plenticore-counter"};function _(d,e,f,b,h,v){const t=s("openwb-base-alert");return i(),a("div",u,[c(t,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[o(" Wenn der Zähler im Hausverbrauchs-Zweig installiert ist, muss die Hierarchie wie im "),l("a",{href:"https://github.com/openWB/core/wiki/Hausverbrauchs-Zähler",target:"_blank",rel:"noopener noreferrer"},"Wiki für Hausverbrauchs-Zähler",-1),o(" beschrieben, angeordnet werden. ")])),_:1})])}const $=n(m,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_plenticore/counter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/counter_sm-9fb2ccb8.js b/web/settings/assets/counter_sm-9fb2ccb8.js deleted file mode 100644 index f11c88ceee..0000000000 --- a/web/settings/assets/counter_sm-9fb2ccb8.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as f,u as i,k as g,l as c,G as o,E as a,y as t,x as l,F as b}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceFroniusCounterSM",mixins:[p],computed:{meterRealtimeUrl:{get(){return`http://${this.device.configuration.ip_address}/solar_api/v1/GetMeterRealtimeData.cgi?Scope=System`}}}},v={class:"device-fronius-counter-sm"},w=["href"];function D(n,e,M,k,S,s){const d=i("openwb-base-heading"),m=i("openwb-base-select-input"),u=i("openwb-base-number-input");return g(),c("div",v,[o(d,null,{default:a(()=>e[2]||(e[2]=[t(" Einstellungen für Fronius SmartMeter ")])),_:1}),o(m,{title:"Kompatibilitätsmodus","not-selected":"Bitte auswählen",required:"",options:[{value:0,text:"Aus"},{value:1,text:"Variante 1"},{value:2,text:"Variante 2"}],"model-value":n.component.configuration.variant,"onUpdate:modelValue":e[0]||(e[0]=r=>n.updateConfiguration(r,"configuration.variant"))},{help:a(()=>e[3]||(e[3]=[t(" Gegebenenfalls auch für alte Modelle nach einem Softwareupdate erforderlich. Fronius hat derzeit keine Konsistente Schnittstelle. Speziell beim Gen24 kann Variante 1 oder 2 erforderlich sein. Nach speichern sollten nach etwa 10-20 Sekunden Daten angezeigt werden. Ist dies nicht der Fall die andere Variante ausprobieren. ")])),_:1},8,["model-value"]),o(u,{title:"Meter ID",required:"",min:"0",max:"65535","model-value":n.component.configuration.meter_id,"onUpdate:modelValue":e[1]||(e[1]=r=>n.updateConfiguration(r,"configuration.meter_id"))},{help:a(()=>[e[4]||(e[4]=t(" Die Meter ID des SmartMeters. Diese ist normalerweise 1. Bei mehreren SmartMetern im System kann es notwendig sein, die Meter ID zu ändern. Zur Ermittlung kann der folgende Link verwendet werden. Die Meter ID kann den zurückgegebenen JSON Daten entnommen werden. ")),l("a",{href:s.meterRealtimeUrl,target:"_blank",rel:"noopener noreferrer"},b(s.meterRealtimeUrl),9,w),e[5]||(e[5]=l("br",null,null,-1)),e[6]||(e[6]=t(' Im Abschnitt "Body" -> "Data" werden die installierten SmartMeter mit aktuellen Messwerten angezeigt. Die Meter ID ist die Zahl vor dem Doppelpunkt und den zugehörigen Messwerten. '))]),_:1},8,["model-value"])])}const N=f(_,[["render",D],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fronius/fronius/counter_sm.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-00acf0a2.js b/web/settings/assets/device-00acf0a2.js deleted file mode 100644 index 845717cf95..0000000000 --- a/web/settings/assets/device-00acf0a2.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as t,k as d,l as m,G as n,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmartfox",mixins:[a]},f={class:"device-smartfox"};function _(o,e,v,x,b,g){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),m("div",f,[n(i,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für Smartfox ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const y=p(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/smartfox/smartfox/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-02e133ba.js b/web/settings/assets/device-02e133ba.js deleted file mode 100644 index 8ca0c2d62a..0000000000 --- a/web/settings/assets/device-02e133ba.js +++ /dev/null @@ -1 +0,0 @@ -import{D as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as t,k as l,l as p,G as i,E as m,y as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceCarloGavazzi",mixins:[d]},f={class:"device-carlogavazzi"};function _(o,e,b,g,z,w){const r=t("openwb-base-heading"),s=t("openwb-base-text-input"),a=t("openwb-base-number-input");return l(),p("div",f,[i(r,null,{default:m(()=>e[3]||(e[3]=[v(" Einstellungen für Carlo Gavazzi ")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),i(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const G=u(c,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/carlo_gavazzi/carlo_gavazzi/device.vue"]]);export{G as default}; diff --git a/web/settings/assets/device-084b7b34.js b/web/settings/assets/device-084b7b34.js deleted file mode 100644 index b2d9068864..0000000000 --- a/web/settings/assets/device-084b7b34.js +++ /dev/null @@ -1 +0,0 @@ -import{D as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as t,k as c,l as m,G as o,E as s,y as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceKostalPiko",mixins:[d]},f={class:"device-kostal-piko"};function b(n,e,v,g,k,h){const a=t("openwb-base-heading"),r=t("openwb-base-alert"),p=t("openwb-base-text-input");return c(),m("div",f,[o(a,null,{default:s(()=>e[1]||(e[1]=[i(" Einstellungen für Kostal Piko ")])),_:1}),o(r,{subtype:"info"},{default:s(()=>e[2]||(e[2]=[i(" Der Wechselrichter liefert Werte nur, solange er auch PV-Leistung liefert. Nachts geht er in den Standby. Die Hausanschlussüberwachung ist nur aktiv, wenn der Wechselrichter auch aktiv ist. ")])),_:1}),o(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=l=>n.updateConfiguration(l,"configuration.ip_address"))},null,8,["model-value"])])}const B=u(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_piko/device.vue"]]);export{B as default}; diff --git a/web/settings/assets/device-08f6c1c3.js b/web/settings/assets/device-08f6c1c3.js deleted file mode 100644 index 854f446588..0000000000 --- a/web/settings/assets/device-08f6c1c3.js +++ /dev/null @@ -1 +0,0 @@ -import{D as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as i,k as p,l as d,G as t,E as m,y as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceSolarView",mixins:[u]},_={class:"device-solar-view"};function c(o,e,b,g,w,V){const a=i("openwb-base-heading"),s=i("openwb-base-text-input"),r=i("openwb-base-number-input");return p(),d("div",_,[t(a,null,{default:m(()=>e[3]||(e[3]=[v(" Einstellungen für SolarView ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(r,{title:"Timeout",required:"","model-value":o.device.configuration.timeout,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.timeout"))},null,8,["model-value"])])}const y=l(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_view/solar_view/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-0fe1ea59.js b/web/settings/assets/device-0fe1ea59.js deleted file mode 100644 index 8f6b0d11c9..0000000000 --- a/web/settings/assets/device-0fe1ea59.js +++ /dev/null @@ -1 +0,0 @@ -import{D as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as v,u as t,k as b,l as f,G as i,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceGoodWe",mixins:[m]},w={class:"device-goodwe"};function _(o,e,W,c,D,V){const l=t("openwb-base-heading"),a=t("openwb-base-alert"),p=t("openwb-base-text-input"),d=t("openwb-base-number-input"),u=t("openwb-base-select-input");return b(),f("div",w,[i(l,null,{default:r(()=>e[5]||(e[5]=[s("Einstellungen für GoodWe")])),_:1}),i(a,{subtype:"info"},{default:r(()=>e[6]||(e[6]=[s(" GoodWe-Wechselrichter verfügen über 3 Dongle: Den WiFi-Dongle, das Wifi-Lan-Kit und das Wifi-Lan-Kit 2.0. Die Einbindung über dieses Modul ist nur mit den Wifi-Lan-Kits möglich. Welches Kit benötigt wird ist vom Wechselrichter abhängig und kann bei GoodWe erfragt werden. ")])),_:1}),i(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(d,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),i(d,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"]),i(u,{title:"API-Version","not-selected":"Bitte auswählen",options:[{value:"v_1_7",text:"v1.7"},{value:"v_1_1",text:"v1.0/ v1.1"}],"model-value":o.device.configuration.version,required:"","onUpdate:modelValue":e[3]||(e[3]=n=>o.updateConfiguration(n,"configuration.version"))},{help:r(()=>e[7]||(e[7]=[s(" Die Wahl der API-Version beeinflusst die Auslesung der Speicherleistung und der Import/ Export Werte des Zählers. ")])),_:1},8,["model-value"]),i(u,{title:"Firmware","not-selected":"Bitte auswählen",options:[{value:8,text:"ARM < 9.0"},{value:9,text:"ARM ab 9.0"}],"model-value":o.device.configuration.firmware,required:"","onUpdate:modelValue":e[4]||(e[4]=n=>o.updateConfiguration(n,"configuration.firmware"))},{help:r(()=>e[8]||(e[8]=[s(" Die Auswahl der Firmware-Version beeinflusst die Auslesung der Wirkleistung und der Phasenströme des Zählers. ")])),_:1},8,["model-value"])])}const I=v(g,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/good_we/good_we/device.vue"]]);export{I as default}; diff --git a/web/settings/assets/device-1195cbe4.js b/web/settings/assets/device-1195cbe4.js deleted file mode 100644 index 2549cdce4e..0000000000 --- a/web/settings/assets/device-1195cbe4.js +++ /dev/null @@ -1 +0,0 @@ -import{D as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as t,k as d,l,G as n,E as c,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const u={name:"DeviceKostalSteca",mixins:[r]},_={class:"device-kostal-steca"};function f(o,e,v,b,g,k){const s=t("openwb-base-heading"),i=t("openwb-base-text-input");return d(),l("div",_,[n(s,null,{default:c(()=>e[1]||(e[1]=[m(" Einstellungen für Kostal Piko MP oder Steca Grid Coolcept ")])),_:1}),n(i,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.ip_address"))},null,8,["model-value"])])}const h=p(u,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_steca/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-169018ea.js b/web/settings/assets/device-169018ea.js deleted file mode 100644 index 1f0d3bae5d..0000000000 --- a/web/settings/assets/device-169018ea.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as t,k as u,l,G as i,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceFoxEss",mixins:[a]},f={class:"device-fox_ess"};function b(o,e,v,g,x,w){const s=t("openwb-base-heading"),r=t("openwb-base-text-input"),p=t("openwb-base-number-input");return u(),l("div",f,[i(s,null,{default:m(()=>e[2]||(e[2]=[_("Einstellungen für FoxEss")])),_:1}),i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const F=d(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fox_ess/fox_ess/device.vue"]]);export{F as default}; diff --git a/web/settings/assets/device-17c54bdf.js b/web/settings/assets/device-17c54bdf.js deleted file mode 100644 index 94f2a15aac..0000000000 --- a/web/settings/assets/device-17c54bdf.js +++ /dev/null @@ -1 +0,0 @@ -import{D as s}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as i,k as p,l,G as t,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceE3dc",mixins:[s]},b={class:"device-e3dc"};function v(o,e,_,g,w,C){const a=i("openwb-base-heading"),r=i("openwb-base-text-input"),d=i("openwb-base-number-input");return p(),l("div",b,[t(a,null,{default:m(()=>e[3]||(e[3]=[c(" Einstellungen für E3DC ")])),_:1}),t(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.address"))},null,8,["model-value"]),t(d,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(d,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=u(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/e3dc/e3dc/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-1b0d178b.js b/web/settings/assets/device-1b0d178b.js deleted file mode 100644 index 5be9bb268d..0000000000 --- a/web/settings/assets/device-1b0d178b.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as t,k as l,l as m,G as i,E as s,y as n,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const p={name:"DeviceMqtt",mixins:[a]},u={class:"device-mqtt"};function g(_,e,b,f,h,v){const r=t("openwb-base-heading"),o=t("openwb-base-alert");return l(),m("div",u,[i(r,null,{default:s(()=>e[0]||(e[0]=[n("Einstellungen für MQTT")])),_:1}),i(o,{subtype:"info"},{default:s(()=>e[1]||(e[1]=[n(" Das MQTT Modul stellt keine aktive Verbindung her, sondern erwartet, dass die Daten an die angegebenen Topics im Broker gesendet werden. Da die Daten direkt an den Broker gesendet werden, erfolgt keine Verrechnung bei Hybrid-Systemen und auch keine Berechnung fehlender Werte, z.B. von Phasen-Leistung aus Spannung und Strömen. Beim Logging und im Lastmanagement, z.B. bei verschachtelten Zählern, werden die MQTT-Zähler wie gewohnt berücksichtigt."),c("br",null,null,-1),n(" Alle Daten sind als gültiges JSON zu senden! Zahlen mit Nachkommastellen (Float) müssen einen Punkt als Dezimaltrenner verwenden (internationales Format). ")])),_:1})])}const y=d(p,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/mqtt/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-26dae5a4.js b/web/settings/assets/device-26dae5a4.js deleted file mode 100644 index 0dd08cb90e..0000000000 --- a/web/settings/assets/device-26dae5a4.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as s,k as u,l as m,G as n,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmartMe",mixins:[a]},f={class:"device-smart-me"};function v(o,e,_,b,g,w){const r=s("openwb-base-heading"),i=s("openwb-base-text-input");return u(),m("div",f,[n(r,null,{default:d(()=>e[2]||(e[2]=[l(" Einstellungen für smart-me ")])),_:1}),n(i,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),n(i,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const q=p(c,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/smart_me/smart_me/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-2c90706d.js b/web/settings/assets/device-2c90706d.js deleted file mode 100644 index 348189beb3..0000000000 --- a/web/settings/assets/device-2c90706d.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as n,k as m,l as _,G as a,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceSolarwatt",mixins:[p]},v={class:"device-solarwatt"};function c(t,e,w,b,g,x){const s=n("openwb-base-heading"),l=n("openwb-base-text-input"),d=n("openwb-base-select-input");return m(),_("div",v,[a(s,null,{default:i(()=>e[2]||(e[2]=[r(" Einstellungen für Solarwatt/My Reserve ")])),_:1}),a(l,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),a(d,{title:"Abrufmethode","not-selected":"Bitte auswählen",options:[{value:0,text:"Gateway"},{value:1,text:"Energy Manager"}],"model-value":t.device.configuration.energy_manager,required:"","onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.energy_manager"))},{help:i(()=>e[3]||(e[3]=[r(" Wenn beide Abrufmethoden verwendet werden sollen, muss für jede Methode ein Gerät erstellt werden. ")])),_:1},8,["model-value"])])}const D=u(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_watt/solar_watt/device.vue"]]);export{D as default}; diff --git a/web/settings/assets/device-333add34.js b/web/settings/assets/device-333add34.js deleted file mode 100644 index c71df3b8e6..0000000000 --- a/web/settings/assets/device-333add34.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as n,k as u,l as m,G as i,E as l,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceMTec",mixins:[a]},f={class:"device-mtec"};function b(o,e,v,g,w,x){const s=n("openwb-base-heading"),r=n("openwb-base-text-input"),p=n("openwb-base-number-input");return u(),m("div",f,[i(s,null,{default:l(()=>e[2]||(e[2]=[c("Einstellungen für M-Tec")])),_:1}),i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.port"))},null,8,["model-value"])])}const q=d(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/mtec/mtec/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-39d88706.js b/web/settings/assets/device-39d88706.js deleted file mode 100644 index 01256bb1e0..0000000000 --- a/web/settings/assets/device-39d88706.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as t,k as m,l as d,G as i,E as u,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSolarmax",mixins:[p]},f={class:"device-solarmax"};function b(o,e,v,g,x,w){const a=t("openwb-base-heading"),r=t("openwb-base-text-input"),s=t("openwb-base-number-input");return m(),d("div",f,[i(a,null,{default:u(()=>e[2]||(e[2]=[c(" Einstellungen für Solarmax ")])),_:1}),i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const N=l(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solarmax/solarmax/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-40027363.js b/web/settings/assets/device-40027363.js deleted file mode 100644 index 7c48f5ee53..0000000000 --- a/web/settings/assets/device-40027363.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as r,u as t,k as d,l as m,G as n,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmaWebbox",mixins:[p]},_={class:"device-sma-webbox"};function b(o,e,f,v,x,g){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),m("div",_,[n(i,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für SMA Webbox ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.ip_address"))},null,8,["model-value"])])}const h=r(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_webbox/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-43ef21f8.js b/web/settings/assets/device-43ef21f8.js deleted file mode 100644 index c4dd1f717f..0000000000 --- a/web/settings/assets/device-43ef21f8.js +++ /dev/null @@ -1 +0,0 @@ -import{D as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as v,u as t,k as i,l as f,G as a,E as c,y as b,z as u,B as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceAlphaess",mixins:[m]},_={class:"device-alphaess"};function w(e,o,V,C,k,B){const d=t("openwb-base-heading"),r=t("openwb-base-select-input"),p=t("openwb-base-text-input"),l=t("openwb-base-number-input");return i(),f("div",_,[a(d,null,{default:c(()=>o[5]||(o[5]=[b(" Einstellungen für Alpha ESS ")])),_:1}),a(r,{title:"Ausleseart","not-selected":"Bitte auswählen",required:"",options:[{value:0,text:"Alpha ESS-Kit"},{value:1,text:"Hi 5/10"}],"model-value":e.device.configuration.source,"onUpdate:modelValue":o[0]||(o[0]=n=>e.updateConfiguration(n,"configuration.source"))},null,8,["model-value"]),e.device.configuration.source==1?(i(),u(p,{key:0,title:"IP oder Hostname",subtype:"host",required:"","model-value":e.device.configuration.ip_address,"onUpdate:modelValue":o[1]||(o[1]=n=>e.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"])):s("",!0),e.device.configuration.source==1?(i(),u(l,{key:1,title:"Port",subtype:"host",required:"",min:1,max:65535,"model-value":e.device.configuration.port,"onUpdate:modelValue":o[2]||(o[2]=n=>e.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])):s("",!0),e.device.configuration.source==1?(i(),u(l,{key:2,title:"Modbus ID",required:"","model-value":e.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":o[3]||(o[3]=n=>e.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])):s("",!0),a(r,{title:"Firmware Version","not-selected":"Bitte auswählen",required:"",options:[{value:0,text:"EMS älter als 1.23V"},{value:1,text:"EMS 1.23V oder neuer"}],"model-value":e.device.configuration.version,"onUpdate:modelValue":o[4]||(o[4]=n=>e.updateConfiguration(n,"configuration.version"))},null,8,["model-value"])])}const h=v(g,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/alpha_ess/alpha_ess/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-44720467.js b/web/settings/assets/device-44720467.js deleted file mode 100644 index 04cc847086..0000000000 --- a/web/settings/assets/device-44720467.js +++ /dev/null @@ -1 +0,0 @@ -import{D as l}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as t,k as m,l as u,G as i,E as s,y as o,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceJson",mixins:[l]},f={class:"device-json"};function b(n,e,v,g,w,x){const r=t("openwb-base-heading"),a=t("openwb-base-text-input");return m(),u("div",f,[i(r,null,{default:s(()=>e[1]||(e[1]=[o(" Einstellungen für JSON ")])),_:1}),i(a,{title:"URL",subtype:"url",required:"","model-value":n.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=p=>n.updateConfiguration(p,"configuration.url"))},{help:s(()=>e[2]||(e[2]=[o(" Es wird eine komplette URL erwartet mit Angaben zum Protokoll, IP oder Hostnamen, optional einem Port und einem Pfad. Die Antwort muss ein json-Objekt sein."),c("br",null,null,-1),o(" Beispiel: http://192.168.1.1:8080/json?data=1 ")])),_:1},8,["model-value"])])}const $=d(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/json/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-47571cec.js b/web/settings/assets/device-47571cec.js deleted file mode 100644 index da6be5c995..0000000000 --- a/web/settings/assets/device-47571cec.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as t,k as l,l as d,G as n,E as m,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSolarLog",mixins:[a]},c={class:"device-solar_log"};function f(o,e,g,v,b,x){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return l(),d("div",c,[n(i,null,{default:m(()=>e[1]||(e[1]=[u(" Einstellungen für Solar-Log ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const y=p(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_log/solar_log/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-4cacbc73.js b/web/settings/assets/device-4cacbc73.js deleted file mode 100644 index e6fff7ff59..0000000000 --- a/web/settings/assets/device-4cacbc73.js +++ /dev/null @@ -1 +0,0 @@ -import{D as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as b,u as i,k as g,l as v,G as t,E as r,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceSungrow",mixins:[m]},w={class:"device-sungrow"};function _(n,e,c,S,D,N){const s=i("openwb-base-heading"),d=i("openwb-base-alert"),a=i("openwb-base-text-input"),l=i("openwb-base-number-input"),p=i("openwb-base-select-input");return g(),v("div",w,[t(s,null,{default:r(()=>e[4]||(e[4]=[u(" Einstellungen für Sungrow ")])),_:1}),t(d,{subtype:"info"},{default:r(()=>e[5]||(e[5]=[u(" Bitte zur Fehlervermeidung die Firmware des Sungrow Wechselrichters und WiNet-S Dongles aktuell halten. ")])),_:1}),t(a,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),t(l,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.port"))},null,8,["model-value"]),t(l,{title:"Modbus ID",required:"","model-value":n.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.modbus_id"))},null,8,["model-value"]),t(p,{title:"Version",options:[{value:0,text:"SH (Hybrid)"},{value:3,text:"SH (Hybrid) über WiNet-S Dongle"},{value:1,text:"SG (kein Hybrid)"},{value:2,text:"SG (kein Hybrid) über WiNet-S Dongle"}],"model-value":n.device.configuration.version,required:"","onUpdate:modelValue":e[3]||(e[3]=o=>n.updateConfiguration(o,"configuration.version"))},{help:r(()=>e[6]||(e[6]=[u(" Die Variante SH sollte möglichst über den internen LAN-Port genutzt werden (befindet sich am Wechselrichter hinter dem WiNet-S Dongle), da nur hier alle Werte vollständig ausgelesen werden können. Den WiNet-S Dongle zusätzlich ins Heimnetz (per LAN oder WLAN) einbinden, um iSolarCloud nutzen zu können. ")])),_:1},8,["model-value"])])}const q=b(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sungrow/sungrow/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-4d6b19fd.js b/web/settings/assets/device-4d6b19fd.js deleted file mode 100644 index 6ca34e8f33..0000000000 --- a/web/settings/assets/device-4d6b19fd.js +++ /dev/null @@ -1 +0,0 @@ -import{D as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as i,k as d,l as u,G as t,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSunways",mixins:[r]},f={class:"device-sunways"};function v(o,e,w,_,b,g){const a=i("openwb-base-heading"),s=i("openwb-base-text-input");return d(),u("div",f,[t(a,null,{default:l(()=>e[2]||(e[2]=[m(" Einstellungen für Sunways ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},null,8,["model-value"])])}const q=p(c,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sunways/sunways/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-501cd96e.js b/web/settings/assets/device-501cd96e.js deleted file mode 100644 index 8457ec4e40..0000000000 --- a/web/settings/assets/device-501cd96e.js +++ /dev/null @@ -1 +0,0 @@ -import{D as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as n,k as u,l as d,G as a,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceTasmota",mixins:[r]},v={class:"device-tasmota"};function f(t,e,b,g,w,x){const i=n("openwb-base-heading"),s=n("openwb-base-text-input"),p=n("openwb-base-select-input");return u(),d("div",v,[a(i,null,{default:m(()=>e[2]||(e[2]=[c("Einstellungen für Tasmota")])),_:1}),a(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),a(p,{title:"Phase","not-selected":"Bitte auswählen",options:[{value:1,text:"1"},{value:2,text:"2"},{value:3,text:"3"}],"model-value":t.device.configuration.phase,required:"","onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.phase"))},null,8,["model-value"])])}const q=l(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/tasmota/tasmota/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-51673e43.js b/web/settings/assets/device-51673e43.js deleted file mode 100644 index 564775e7ab..0000000000 --- a/web/settings/assets/device-51673e43.js +++ /dev/null @@ -1 +0,0 @@ -import{D as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as i,k as b,l as f,G as t,E as r,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSiemens",mixins:[m]},v={class:"device-siemens"};function c(o,e,g,w,C,x){const p=i("openwb-base-heading"),d=i("openwb-base-alert"),u=i("openwb-base-text-input"),s=i("openwb-base-number-input");return b(),f("div",v,[t(p,null,{default:r(()=>e[3]||(e[3]=[a(" Einstellungen für Siemens ")])),_:1}),t(d,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[a(" Im Siemens-Speicher muss die Schnittstelle openWB gewählt werden. ")])),_:1}),t(u,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(s,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const I=l(_,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/siemens/siemens/device.vue"]]);export{I as default}; diff --git a/web/settings/assets/device-57d44def.js b/web/settings/assets/device-57d44def.js deleted file mode 100644 index cfaabb8fad..0000000000 --- a/web/settings/assets/device-57d44def.js +++ /dev/null @@ -1 +0,0 @@ -import{D as l}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as i,k as b,l as f,G as t,E as s,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DevicePowerdog",mixins:[l]},v={class:"device-powerdog"};function g(o,e,c,w,C,x){const a=i("openwb-base-heading"),p=i("openwb-base-alert"),u=i("openwb-base-text-input"),r=i("openwb-base-number-input");return b(),f("div",v,[t(a,null,{default:s(()=>e[3]||(e[3]=[d(" Einstellungen für Powerdog ")])),_:1}),t(p,{subtype:"info"},{default:s(()=>e[4]||(e[4]=[d(" ModbusTCP muss aktiviert sein. ")])),_:1}),t(u,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(r,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const M=m(_,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerdog/powerdog/device.vue"]]);export{M as default}; diff --git a/web/settings/assets/device-608338dd.js b/web/settings/assets/device-608338dd.js deleted file mode 100644 index a9faf892a7..0000000000 --- a/web/settings/assets/device-608338dd.js +++ /dev/null @@ -1 +0,0 @@ -import{D as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as i,k as p,l,G as t,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceZCS",mixins:[u]},f={class:"device-azzurro_zcs"};function b(o,e,v,g,z,w){const a=i("openwb-base-heading"),s=i("openwb-base-text-input"),r=i("openwb-base-number-input");return p(),l("div",f,[t(a,null,{default:m(()=>e[3]||(e[3]=[_(" Einstellungen für Azzurro ZCS ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(r,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const U=d(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/azzurro_zcs/azzurro_zcs/device.vue"]]);export{U as default}; diff --git a/web/settings/assets/device-6178cdc7.js b/web/settings/assets/device-6178cdc7.js deleted file mode 100644 index dc1606ce30..0000000000 --- a/web/settings/assets/device-6178cdc7.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as t,k as b,l as f,G as i,E as s,y as r,x as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const w={name:"DeviceHuawei",mixins:[p]},c={class:"device-huawei"};function g(n,e,_,h,D,V){const l=t("openwb-base-heading"),u=t("openwb-base-alert"),d=t("openwb-base-text-input"),a=t("openwb-base-number-input");return b(),f("div",c,[i(l,null,{default:s(()=>e[3]||(e[3]=[r(" Einstellungen für Huawei ")])),_:1}),i(u,{subtype:"info"},{default:s(()=>e[4]||(e[4]=[r(' Die Antwort der Huawei Wechselrichter benötigt sehr viel Zeit. Es wird empfohlen, dass Regelintervall der openWB auf "sehr langsam" zu stellen. ')])),_:1}),i(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.port"))},null,8,["model-value"]),i(a,{title:"Modbus ID",required:"","model-value":n.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.modbus_id"))},{help:s(()=>e[5]||(e[5]=[r(' Sind mehrere Huawei Wechselrichter als "Schwarm" verbunden, dann besitzt der Master vermutlich die ID "16". Über diese ID werden dann alle Daten in Summe zur Verfügung gestellt.'),v("br",null,null,-1),r(" Die IDs 1 bis 15 sind für einzelne Wechselrichter reserviert. ")])),_:1},8,["model-value"])])}const k=m(w,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei/device.vue"]]);export{k as default}; diff --git a/web/settings/assets/device-67242aab.js b/web/settings/assets/device-67242aab.js deleted file mode 100644 index bcbd8f3000..0000000000 --- a/web/settings/assets/device-67242aab.js +++ /dev/null @@ -1 +0,0 @@ -import{D as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as i,k as p,l,G as t,E as m,y as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSofar",mixins:[d]},v={class:"device-sofar"};function _(o,e,c,g,w,C){const r=i("openwb-base-heading"),s=i("openwb-base-text-input"),a=i("openwb-base-number-input");return p(),l("div",v,[t(r,null,{default:m(()=>e[3]||(e[3]=[f("Einstellungen für Sofar")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=u(b,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sofar/sofar/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-6c36210a.js b/web/settings/assets/device-6c36210a.js deleted file mode 100644 index ee302e00da..0000000000 --- a/web/settings/assets/device-6c36210a.js +++ /dev/null @@ -1 +0,0 @@ -import{D as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as t,k as l,l as u,G as n,E as i,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceVZLogger",mixins:[d]},c={class:"device-vzlogger"};function _(o,e,v,f,b,w){const r=t("openwb-base-heading"),p=t("openwb-base-text-input");return l(),u("div",c,[n(r,null,{default:i(()=>e[1]||(e[1]=[s(" Einstellungen für VZLogger ")])),_:1}),n(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=a=>o.updateConfiguration(a,"configuration.ip_address"))},{help:i(()=>e[2]||(e[2]=[s(" Bei Angabe des Ports muss auch das Schema mit angegeben werden: http://ip:port ")])),_:1},8,["model-value"])])}const E=m(g,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/vzlogger/vzlogger/device.vue"]]);export{E as default}; diff --git a/web/settings/assets/device-6e2770dd.js b/web/settings/assets/device-6e2770dd.js deleted file mode 100644 index 1ef6cccc4a..0000000000 --- a/web/settings/assets/device-6e2770dd.js +++ /dev/null @@ -1 +0,0 @@ -import{D as v}from"./HardwareInstallation-79ea1bc6.js";import{_ as g,u as o,k as m,l as _,G as s,E as u,y as i,x as n,F as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const A={name:"DeviceSonnenbatterie",mixins:[v],computed:{linkRestApi1(){return"http://"+this.device.configuration.ip_address+":7979/rest/devices/battery"},linkRestApi2(){return"http://"+this.device.configuration.ip_address+":7979/rest/devices/battery/M05"},linkJsonApi1(){return"http://"+this.device.configuration.ip_address+"/api/v1/status"},linkJsonApi2(){return"http://"+this.device.configuration.ip_address+"/api/v2/status"}}},k={class:"device-sonnenbatterie"},w={style:{display:"block"}},B=["href"],J=["href"],R=["href"],I=["href"];function P(r,e,x,h,C,t){const d=o("openwb-base-heading"),p=o("openwb-base-alert"),f=o("openwb-base-text-input"),b=o("openwb-base-select-input");return m(),_("div",k,[s(d,null,{default:u(()=>e[2]||(e[2]=[i(" Einstellungen für SonnenBatterie ")])),_:1}),s(p,{subtype:"info"},{default:u(()=>e[3]||(e[3]=[i(' Die Leistung steht nur in den Varianten "Rest-API 2" und "JSON-API" zur Verfügung. ')])),_:1}),s(f,{title:"IP oder Hostname",subtype:"host",required:"","model-value":r.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=a=>r.updateConfiguration(a,"configuration.ip_address"))},null,8,["model-value"]),s(b,{title:"Datenverbindung",required:"","not-selected":"Bitte auswählen",options:[{value:0,text:"Rest-API 1 (z.B. ECO 4)"},{value:2,text:"Rest-API 2 (z.B. ECO 6)"},{value:1,text:"JSON-API v1(z.B. ECO 8 oder 10)"},{value:3,text:"JSON-API v2(z.B. ECO 8 oder 10)"}],"model-value":r.device.configuration.variant,"onUpdate:modelValue":e[1]||(e[1]=a=>r.updateConfiguration(a,"configuration.variant"))},{help:u(()=>[n("span",w,[e[4]||(e[4]=i(" Je nach SonnenBatterie muss die richtige Datenverbindung ausgewählt werden. Folgende URLs werden zum Abruf der Daten genutzt und können auch manuell über einen Browser abgefragt werden, um die richtige Einstellung zu finden:")),e[5]||(e[5]=n("br",null,null,-1)),e[6]||(e[6]=i(" Rest-API 1: ")),n("a",{href:t.linkRestApi1,target:"_blank",rel:"noopener noreferrer"},l(t.linkRestApi1),9,B),e[7]||(e[7]=n("br",null,null,-1)),e[8]||(e[8]=i(" Rest-API 2: ")),n("a",{href:t.linkRestApi2,target:"_blank",rel:"noopener noreferrer"},l(t.linkRestApi2),9,J),e[9]||(e[9]=n("br",null,null,-1)),e[10]||(e[10]=i(" JSON-API v1: ")),n("a",{href:t.linkJsonApi1,target:"_blank",rel:"noopener noreferrer"},l(t.linkJsonApi1),9,R),e[11]||(e[11]=n("br",null,null,-1)),e[12]||(e[12]=i(" JSON-API v2: ")),n("a",{href:t.linkJsonApi2,target:"_blank",rel:"noopener noreferrer"},l(t.linkJsonApi2),9,I)])]),_:1},8,["model-value"])])}const U=g(A,[["render",P],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sonnen/sonnenbatterie/device.vue"]]);export{U as default}; diff --git a/web/settings/assets/device-6eb7214d.js b/web/settings/assets/device-6eb7214d.js deleted file mode 100644 index 78a2efa3a6..0000000000 --- a/web/settings/assets/device-6eb7214d.js +++ /dev/null @@ -1 +0,0 @@ -import{D as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as i,k as b,l as f,G as t,E as r,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSiemensSentron",mixins:[m]},v={class:"device-siemens-sentron"};function c(n,e,g,w,C,x){const u=i("openwb-base-heading"),p=i("openwb-base-alert"),d=i("openwb-base-text-input"),s=i("openwb-base-number-input");return b(),f("div",v,[t(u,null,{default:r(()=>e[3]||(e[3]=[a(" Einstellungen für Siemens Sentron ")])),_:1}),t(p,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[a(' Derzeit werden nur Messgeräte vom Typ "7KM PAC2200" mit Ethernet-Schnittstelle unterstützt. ')])),_:1}),t(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.port"))},null,8,["model-value"]),t(s,{title:"Modbus ID",required:"","model-value":n.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.modbus_id"))},null,8,["model-value"])])}const B=l(_,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/siemens/siemens_sentron/device.vue"]]);export{B as default}; diff --git a/web/settings/assets/device-79cf1a20.js b/web/settings/assets/device-79cf1a20.js deleted file mode 100644 index bca53eaa68..0000000000 --- a/web/settings/assets/device-79cf1a20.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as t,k as u,l,G as i,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSunnyIsland",mixins:[p]},f={class:"device-sunnyisland"};function b(n,e,v,g,w,x){const s=t("openwb-base-heading"),a=t("openwb-base-text-input"),r=t("openwb-base-number-input");return u(),l("div",f,[i(s,null,{default:m(()=>e[2]||(e[2]=[_(" Einstellungen für Sunny Island ")])),_:1}),i(a,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.ip_address"))},null,8,["model-value"]),i(r,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.port"))},null,8,["model-value"])])}const q=d(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_island/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-7a1e589b.js b/web/settings/assets/device-7a1e589b.js deleted file mode 100644 index 3434c0dafc..0000000000 --- a/web/settings/assets/device-7a1e589b.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as s,k as u,l as p,G as t,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceBYD",mixins:[a]},v={class:"device-byd"};function b(o,e,c,g,_,w){const r=s("openwb-base-heading"),i=s("openwb-base-text-input");return u(),p("div",v,[t(r,null,{default:l(()=>e[3]||(e[3]=[m(" Einstellungen für BYD ")])),_:1}),t(i,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(i,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.user"))},null,8,["model-value"]),t(i,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.password"))},null,8,["model-value"])])}const E=d(f,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/byd/byd/device.vue"]]);export{E as default}; diff --git a/web/settings/assets/device-7b2a48ce.js b/web/settings/assets/device-7b2a48ce.js deleted file mode 100644 index 3a69089579..0000000000 --- a/web/settings/assets/device-7b2a48ce.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as n,k as u,l,G as i,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceStuder",mixins:[a]},f={class:"device-studer"};function b(o,e,v,g,w,x){const r=n("openwb-base-heading"),s=n("openwb-base-text-input"),p=n("openwb-base-number-input");return u(),l("div",f,[i(r,null,{default:m(()=>e[2]||(e[2]=[c(" Einstellungen für Studer ")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.port"))},null,8,["model-value"])])}const N=d(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/studer/studer/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-81b5a1dc.js b/web/settings/assets/device-81b5a1dc.js deleted file mode 100644 index d95c59390f..0000000000 --- a/web/settings/assets/device-81b5a1dc.js +++ /dev/null @@ -1 +0,0 @@ -import{D as f}from"./HardwareInstallation-79ea1bc6.js";import{_ as g,u as d,k as t,l as b,G as l,E as a,y as i,z as s,B as u,x as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const w={name:"DeviceEnphase",mixins:[f]},y={class:"device-enphase"};function k(n,e,V,c,E,h){const m=d("openwb-base-heading"),r=d("openwb-base-text-input"),v=d("openwb-base-select-input");return t(),b("div",y,[l(m,null,{default:a(()=>e[6]||(e[6]=[i(" Einstellungen für Enphase Envoy / IQ Gateway ")])),_:1}),l(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.hostname,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.hostname"))},{help:a(()=>e[7]||(e[7]=[i(' Bitte geben Sie die IP-Adresse oder den Hostnamen des Enphase Envoy oder IQ Gateway an. Die Info finden Sie in Ihrem Router. Ab Werk ist der Hostname "envoy" oder "envoy.local". ')])),_:1},8,["model-value"]),l(v,{title:"Version",required:"",options:[{value:1,text:"Firmware < 7.0"},{value:2,text:"Firmware ab 7.0"}],"model-value":n.device.configuration.version,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.version"))},{help:a(()=>e[8]||(e[8]=[i(" Bitte wählen Sie die Version des Enphase Envoy oder IQ Gateway aus. Die Version 1 ist für Geräte mit einer Firmware-Version unter 7.0, die Version 2 für Geräte mit einer Firmware-Version ab 7.0. Ein angebundener Speicher wird nur bei Version 2 unterstützt. ")])),_:1},8,["model-value"]),n.device.configuration.version>1?(t(),s(r,{key:0,title:"Benutzer",subtype:"user","model-value":n.device.configuration.user,required:"","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.user"))},null,8,["model-value"])):u("",!0),n.device.configuration.version>1?(t(),s(r,{key:1,title:"Kennwort",subtype:"password","model-value":n.device.configuration.password,required:"","onUpdate:modelValue":e[3]||(e[3]=o=>n.updateConfiguration(o,"configuration.password"))},null,8,["model-value"])):u("",!0),n.device.configuration.version>1?(t(),s(r,{key:2,title:"Envoy Seriennummer","model-value":n.device.configuration.serial,required:"","onUpdate:modelValue":e[4]||(e[4]=o=>n.updateConfiguration(o,"configuration.serial"))},null,8,["model-value"])):u("",!0),n.device.configuration.version>1?(t(),s(r,{key:3,title:"Token",subtype:"password","model-value":n.device.configuration.token,required:"","onUpdate:modelValue":e[5]||(e[5]=o=>n.updateConfiguration(o,"configuration.token"))},{help:a(()=>e[9]||(e[9]=[i(" Wenn Benutzer, Kennwort und Seriennummer des Envoys angegeben werden, wird das Token automatisch beim Speichern abgerufen. Ebenfalls wird ein abgelaufenes Token (derzeit nach einem Jahr) automatisch erneuert."),p("br",null,null,-1),i(" Wenn Sie ein Token manuell erstellen möchten, können Sie dies auf der "),p("a",{href:"https://developer.enphase.com/docs/quickstart.html",target:"_blank",rel:"noopener"}," Enphase-Webseite ",-1),i(" erledigen. ")])),_:1},8,["model-value"])):u("",!0)])}const T=g(w,[["render",k],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/enphase/enphase/device.vue"]]);export{T as default}; diff --git a/web/settings/assets/device-838299c5.js b/web/settings/assets/device-838299c5.js deleted file mode 100644 index 76187d98eb..0000000000 --- a/web/settings/assets/device-838299c5.js +++ /dev/null @@ -1 +0,0 @@ -import{D as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as s,k as p,l,G as t,E as r,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceLG",mixins:[m]},f={class:"device-lg"};function c(n,e,v,b,_,w){const d=s("openwb-base-heading"),o=s("openwb-base-text-input");return p(),l("div",f,[t(d,null,{default:r(()=>e[2]||(e[2]=[a(" Einstellungen für LG ESS V1.0 ")])),_:1}),t(o,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),t(o,{title:"Passwort",subtype:"password",required:"","model-value":n.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=i=>n.updateConfiguration(i,"configuration.password"))},{help:r(()=>e[3]||(e[3]=[a(' Passwort, um sich in den LG ESS V1.0 einzuloggen. Das Passwort ist standardmäßig die Registrierungsnummer, die sich auf einem Aufkleber auf dem PCS (dem Hybridwechselrichter und Batteriemanagementsystem) befindet. Alternativ findet man die Registrierungsnummer in der App unter dem Menüpunkt "Systeminformationen". Mit der Registrierungsnummer kann man sich dann in der Rolle "installer" einloggen. ')])),_:1},8,["model-value"])])}const B=u(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/lg/lg/device.vue"]]);export{B as default}; diff --git a/web/settings/assets/device-84a227ed.js b/web/settings/assets/device-84a227ed.js deleted file mode 100644 index 877cdb67d3..0000000000 --- a/web/settings/assets/device-84a227ed.js +++ /dev/null @@ -1 +0,0 @@ -import{D as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as i,k as p,l,G as t,E as m,y as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceJanitza",mixins:[d]},v={class:"device-janitza"};function _(o,e,c,g,w,C){const r=i("openwb-base-heading"),s=i("openwb-base-text-input"),a=i("openwb-base-number-input");return p(),l("div",v,[t(r,null,{default:m(()=>e[3]||(e[3]=[f(" Einstellungen für Janitza ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const E=u(b,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/janitza/janitza/device.vue"]]);export{E as default}; diff --git a/web/settings/assets/device-88966de4.js b/web/settings/assets/device-88966de4.js deleted file mode 100644 index ecde017956..0000000000 --- a/web/settings/assets/device-88966de4.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as r,k as u,l as d,G as n,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DevicePowerfox",mixins:[a]},c={class:"device-powerfox"};function v(o,e,w,_,b,g){const s=r("openwb-base-heading"),i=r("openwb-base-text-input");return u(),d("div",c,[n(s,null,{default:l(()=>e[2]||(e[2]=[m(" Einstellungen für Powerfox ")])),_:1}),n(i,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),n(i,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const P=p(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerfox/powerfox/device.vue"]]);export{P as default}; diff --git a/web/settings/assets/device-8925e61a.js b/web/settings/assets/device-8925e61a.js deleted file mode 100644 index 7ccfcebfda..0000000000 --- a/web/settings/assets/device-8925e61a.js +++ /dev/null @@ -1 +0,0 @@ -import{D as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as i,k as u,l as p,G as t,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceQCells",mixins:[r]},b={class:"device-qcells"};function v(o,e,_,g,w,C){const l=i("openwb-base-heading"),a=i("openwb-base-text-input"),s=i("openwb-base-number-input");return u(),p("div",b,[t(l,null,{default:m(()=>e[3]||(e[3]=[c(" Einstellungen für QCells ESS ")])),_:1}),t(a,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(s,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=d(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/qcells/qcells/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-9088801d.js b/web/settings/assets/device-9088801d.js deleted file mode 100644 index dd687bb694..0000000000 --- a/web/settings/assets/device-9088801d.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as o,k as d,l as m,G as n,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceBatterX",mixins:[a]},_={class:"device-batterx"};function f(t,e,b,v,x,g){const i=o("openwb-base-heading"),s=o("openwb-base-text-input");return d(),m("div",_,[n(i,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für BatterX ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const y=p(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/batterx/batterx/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-919238af.js b/web/settings/assets/device-919238af.js deleted file mode 100644 index 0f4c0707cb..0000000000 --- a/web/settings/assets/device-919238af.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as t,k as u,l,G as i,E as m,y as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSigenergy",mixins:[a]},_={class:"device-sigenergy"};function f(o,e,b,v,w,y){const r=t("openwb-base-heading"),s=t("openwb-base-text-input"),p=t("openwb-base-number-input");return u(),l("div",_,[i(r,null,{default:m(()=>e[2]||(e[2]=[g("Einstellungen für Sigenergy")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const N=d(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sigenergy/sigenergy/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-941a8f87.js b/web/settings/assets/device-941a8f87.js deleted file mode 100644 index c6cf4e1791..0000000000 --- a/web/settings/assets/device-941a8f87.js +++ /dev/null @@ -1 +0,0 @@ -import{D as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as i,k as l,l as p,G as t,E as m,y as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceKostalSEM",mixins:[d]},v={class:"device-kostal-sem"};function _(o,e,c,g,w,k){const s=i("openwb-base-heading"),r=i("openwb-base-text-input"),a=i("openwb-base-number-input");return l(),p("div",v,[t(s,null,{default:m(()=>e[3]||(e[3]=[f(" Einstellungen für Kostal Smart Energy Meter oder TQ EM 410 ")])),_:1}),t(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const B=u(b,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_sem/device.vue"]]);export{B as default}; diff --git a/web/settings/assets/device-9447d94e.js b/web/settings/assets/device-9447d94e.js deleted file mode 100644 index 57a2b87c0b..0000000000 --- a/web/settings/assets/device-9447d94e.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as o,k as d,l,G as t,E as u,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceBenning",mixins:[p]},_={class:"device-benning"};function f(n,e,b,g,v,x){const i=o("openwb-base-heading"),s=o("openwb-base-text-input");return d(),l("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[m("Einstellungen für Benning")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=r=>n.updateConfiguration(r,"configuration.url"))},null,8,["model-value"])])}const y=a(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/benning/benning/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-a6c25668.js b/web/settings/assets/device-a6c25668.js deleted file mode 100644 index 19124028f8..0000000000 --- a/web/settings/assets/device-a6c25668.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as s,k as d,l as u,G as n,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceDiscovergy",mixins:[a]},v={class:"device-discovergy"};function f(o,e,g,_,b,w){const r=s("openwb-base-heading"),i=s("openwb-base-text-input");return d(),u("div",v,[n(r,null,{default:l(()=>e[2]||(e[2]=[m(" Einstellungen für Discovergy ")])),_:1}),n(i,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),n(i,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const q=p(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/discovergy/discovergy/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-aa710e76.js b/web/settings/assets/device-aa710e76.js deleted file mode 100644 index bcf1abf764..0000000000 --- a/web/settings/assets/device-aa710e76.js +++ /dev/null @@ -1 +0,0 @@ -import{D as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as i,k as m,l as g,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSolax",mixins:[u]},f={class:"device-solax"};function v(o,e,c,_,x,w){const d=i("openwb-base-heading"),l=i("openwb-base-text-input"),a=i("openwb-base-number-input");return m(),g("div",f,[t(d,null,{default:r(()=>e[3]||(e[3]=[s(" Einstellungen für Solax ")])),_:1}),t(l,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",min:1,max:65535,placeholder:502,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},{help:r(()=>e[4]||(e[4]=[s(" Standardmäßig ist der Port 502. Dieser sollte nur geändert werden, wenn der Solax Wechselrichter auf einen anderen Port konfiguriert wurde. ")])),_:1},8,["model-value"]),t(a,{title:"Modbus-ID",required:"",min:0,max:255,"model-value":o.device.configuration.modbus_id,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},{help:r(()=>e[5]||(e[5]=[s(" Laut der Schnittstellenbeschreibung ist die ID bei Solax ab Werk auf 1 gesetzt. Entgegen der Beschreibung ist meist für Gen4 eine ID größer als 2 eingestellt. Bei Gen3 sogar (gegen jeglicher Modbus Standards) eine 0. ")])),_:1},8,["model-value"])])}const $=p(b,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solax/solax/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-b86cd7b6.js b/web/settings/assets/device-b86cd7b6.js deleted file mode 100644 index deeb6192a3..0000000000 --- a/web/settings/assets/device-b86cd7b6.js +++ /dev/null @@ -1 +0,0 @@ -import{D as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as t,k as d,l,G as s,E as u,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceYouless",mixins:[r]},_={class:"device-youless"};function f(o,e,v,b,g,x){const n=t("openwb-base-heading"),i=t("openwb-base-text-input");return d(),l("div",_,[s(n,null,{default:u(()=>e[1]||(e[1]=[m(" Einstellungen für Youless ")])),_:1}),s(i,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=p=>o.updateConfiguration(p,"configuration.ip_address"))},null,8,["model-value"])])}const h=a(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/youless/youless/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-bc869b08.js b/web/settings/assets/device-bc869b08.js deleted file mode 100644 index bc2ccc6dda..0000000000 --- a/web/settings/assets/device-bc869b08.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as t,k as l,l as u,G as i,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceOpenwbFlex",mixins:[a]},c={class:"device-openwb-flex"};function f(o,e,v,w,g,x){const p=t("openwb-base-heading"),s=t("openwb-base-text-input"),r=t("openwb-base-number-input");return l(),u("div",c,[i(p,null,{default:m(()=>e[2]||(e[2]=[_(" Einstellungen für openWB-Flex ")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const F=d(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/device.vue"]]);export{F as default}; diff --git a/web/settings/assets/device-bd9e0b65.js b/web/settings/assets/device-bd9e0b65.js deleted file mode 100644 index 34c2a2889f..0000000000 --- a/web/settings/assets/device-bd9e0b65.js +++ /dev/null @@ -1 +0,0 @@ -import{D as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as o,k as u,l as m,G as i,E as r,y as t,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceHttp",mixins:[d]},v={class:"device-http"};function _(n,e,b,g,x,w){const s=o("openwb-base-heading"),p=o("openwb-base-text-input");return u(),m("div",v,[i(s,null,{default:r(()=>e[1]||(e[1]=[t(" Einstellungen für Http ")])),_:1}),i(p,{title:"Server-URL",subtype:"url",required:"","model-value":n.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.url"))},{help:r(()=>e[2]||(e[2]=[t(" Hier sind die Verbindungsangaben für den Http-Server einzutragen. Der Pfad für die einzelnen Daten wird in der Komponente hinterlegt."),c("br",null,null,-1),t(" Beispiel: http://mein.server:8080 ")])),_:1},8,["model-value"])])}const N=l(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/http/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-bdb06f88.js b/web/settings/assets/device-bdb06f88.js deleted file mode 100644 index c0b46ec50a..0000000000 --- a/web/settings/assets/device-bdb06f88.js +++ /dev/null @@ -1 +0,0 @@ -import{D as l}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as n,k as m,l as c,G as t,E as r,y as o,x as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceFronius",mixins:[l]},b={class:"device-fronius"};function g(i,e,v,h,w,x){const s=n("openwb-base-heading"),a=n("openwb-base-alert"),d=n("openwb-base-text-input");return m(),c("div",b,[t(s,null,{default:r(()=>e[1]||(e[1]=[o(" Einstellungen für Fronius ")])),_:1}),t(a,{subtype:"info"},{default:r(()=>e[2]||(e[2]=[o(" Die Fronius API muss aktiviert sein."),_("br",null,null,-1),o(" Sind nur Symos in Nutzung, welche über Fronius Solar Net / DATCOM miteinander verbunden sind, muss nur ein Gerät mit einer Komponente Wechselrichter angelegt werden. Sind aber z.B. Symo und Symo Hybrid im Einsatz, muss für jeden Wechselrichter ein Gerät mit einer Komponente Wechselrichter angelegt werden. Die Zähler-Komponente für das Smart-Meter wird in dem Gerät angelegt, dass den Wechselrichter enthält, an den das SmartMeter angeschlossen ist. ")])),_:1}),t(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":i.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=u=>i.updateConfiguration(u,"configuration.ip_address"))},null,8,["model-value"])])}const F=p(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fronius/fronius/device.vue"]]);export{F as default}; diff --git a/web/settings/assets/device-bf5c69b8.js b/web/settings/assets/device-bf5c69b8.js deleted file mode 100644 index 4fc75292fb..0000000000 --- a/web/settings/assets/device-bf5c69b8.js +++ /dev/null @@ -1 +0,0 @@ -import{D as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as r,k as d,l as m,G as i,E as s,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceKostalPikoOld",mixins:[u]},v={class:"device-kostal-piko-old"};function c(o,e,g,b,k,w){const a=r("openwb-base-heading"),n=r("openwb-base-text-input");return d(),m("div",v,[i(a,null,{default:s(()=>e[3]||(e[3]=[l(" Einstellungen für Kostal Piko (alte Generation) ")])),_:1}),i(n,{title:"URL",subtype:"url",required:"","model-value":o.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.url"))},{help:s(()=>e[4]||(e[4]=[l(' Es wird eine komplette URL inklusive Protokoll erwartet. Normalerweise ist der Wechselrichter über "http://IP" zu erreichen. ')])),_:1},8,["model-value"]),i(n,{title:"Benutzername",subtype:"user",required:"","model-value":o.device.configuration.user,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.user"))},null,8,["model-value"]),i(n,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const q=p(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_piko_old/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-c005be93.js b/web/settings/assets/device-c005be93.js deleted file mode 100644 index d3afb28d8e..0000000000 --- a/web/settings/assets/device-c005be93.js +++ /dev/null @@ -1 +0,0 @@ -import{D as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as i,k as p,l,G as t,E as m,y as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceVarta",mixins:[d]},b={class:"device-varta"};function _(o,e,c,g,w,V){const r=i("openwb-base-heading"),s=i("openwb-base-text-input"),a=i("openwb-base-number-input");return p(),l("div",b,[t(r,null,{default:m(()=>e[3]||(e[3]=[v(" Einstellungen für Varta ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=u(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/varta/varta/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-c200bc3a.js b/web/settings/assets/device-c200bc3a.js deleted file mode 100644 index 778507cd4f..0000000000 --- a/web/settings/assets/device-c200bc3a.js +++ /dev/null @@ -1 +0,0 @@ -import{D as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as n,k as m,l as b,G as t,E as s,y as c,x as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceDeye",mixins:[u]},v={class:"device-deye"};function g(o,e,w,y,x,C){const r=n("openwb-base-heading"),a=n("openwb-base-alert"),p=n("openwb-base-text-input"),d=n("openwb-base-number-input");return m(),b("div",v,[t(r,null,{default:s(()=>e[2]||(e[2]=[c("Einstellungen für Deye")])),_:1}),t(a,{subtype:"info"},{default:s(()=>e[3]||(e[3]=[_("span",{class:"text-danger"}," Deye Wechselrichter verfügen über keine Modbus-TCP Schnittstelle. Für die Auslesung wird ein RS485/LAN-Adapter benötigt. ",-1)])),_:1}),t(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>o.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),t(d,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=i=>o.updateConfiguration(i,"configuration.port"))},null,8,["model-value"])])}const q=l(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/deye/deye/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-c4964fb6.js b/web/settings/assets/device-c4964fb6.js deleted file mode 100644 index 3d08f4eb5d..0000000000 --- a/web/settings/assets/device-c4964fb6.js +++ /dev/null @@ -1 +0,0 @@ -import{D as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as o,k as b,l as c,G as t,E as s,y as r,x as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSolarEdge",mixins:[u]},_={class:"device-solaredge"};function v(n,e,w,h,B,k){const a=o("openwb-base-heading"),d=o("openwb-base-alert"),p=o("openwb-base-text-input"),l=o("openwb-base-number-input");return b(),c("div",_,[t(a,null,{default:s(()=>e[2]||(e[2]=[r(" Einstellungen für SolarEdge ")])),_:1}),t(d,{subtype:"info"},{default:s(()=>e[3]||(e[3]=[r(" ModbusTCP muss im Wechselrichter aktiviert werden und der Wechselrichter per LAN angebunden sein."),f("br",null,null,-1),r(" SolarEdge lässt nur eine ModbusTCP-Verbindung zu. Wenn Sie mit einem weiteren Smarthome-System, wie z.B. ioBroker oder openHAB, den SolarEdge-Wechselrichter abfragen, kann dies die Abfrage durch die openWB stören oder verhindern. ")])),_:1}),t(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":n.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>n.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),t(l,{title:"Port",required:"",min:1,max:65535,"model-value":n.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=i=>n.updateConfiguration(i,"configuration.port"))},{help:s(()=>e[4]||(e[4]=[r(" Je nach Produktionsdatum und Softwareversion ist 502 oder 1502 ab Werk eingestellt. Bitte im Wechselrichter überprüfen. ")])),_:1},8,["model-value"])])}const $=m(g,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-cca02a4f.js b/web/settings/assets/device-cca02a4f.js deleted file mode 100644 index 8ffa81a5fd..0000000000 --- a/web/settings/assets/device-cca02a4f.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as i,k as u,l,G as t,E as m,y as f}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSaxpower",mixins:[p]},v={class:"device-saxpower"};function _(o,e,c,g,w,x){const r=i("openwb-base-heading"),s=i("openwb-base-text-input"),a=i("openwb-base-number-input");return u(),l("div",v,[t(r,null,{default:m(()=>e[3]||(e[3]=[f(" Einstellungen für Saxpower ")])),_:1}),t(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(a,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const y=d(b,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/saxpower/saxpower/device.vue"]]);export{y as default}; diff --git a/web/settings/assets/device-d083e666.js b/web/settings/assets/device-d083e666.js deleted file mode 100644 index c7fdb80806..0000000000 --- a/web/settings/assets/device-d083e666.js +++ /dev/null @@ -1 +0,0 @@ -import{D as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as i,k as m,l as u,G as n,E as a,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceFems",mixins:[d]},c={class:"device-fems"};function v(o,e,_,b,g,w){const p=i("openwb-base-heading"),s=i("openwb-base-text-input");return m(),u("div",c,[n(p,null,{default:a(()=>e[2]||(e[2]=[r(" Einstellungen für openEMS, Fenecon FEMS, CENTURIO 10, Kaco Hy-Control ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),n(s,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},{help:a(()=>e[3]||(e[3]=[r(" Bei Nutzung von Fenecon FEMS ist das Passwort im Normalfall user, bei Kaco mit Hy-Control ist das Passwort meist admin. ")])),_:1},8,["model-value"])])}const V=l(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fems/fems/device.vue"]]);export{V as default}; diff --git a/web/settings/assets/device-d2eeb63d.js b/web/settings/assets/device-d2eeb63d.js deleted file mode 100644 index 9cd2e3ec95..0000000000 --- a/web/settings/assets/device-d2eeb63d.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as n,k as d,l as m,G as i,E as l,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceHuaweiSmartLogger",mixins:[p]},g={class:"device-huawei-smart-logger"};function f(o,e,b,v,w,x){const r=n("openwb-base-heading"),a=n("openwb-base-text-input"),s=n("openwb-base-number-input");return d(),m("div",g,[i(r,null,{default:l(()=>e[2]||(e[2]=[_(" Einstellungen für Huawei SmartLogger ")])),_:1}),i(a,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),i(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.port"))},null,8,["model-value"])])}const q=u(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei_smartlogger/device.vue"]]);export{q as default}; diff --git a/web/settings/assets/device-d5a5c7fd.js b/web/settings/assets/device-d5a5c7fd.js deleted file mode 100644 index 0e00ffcf83..0000000000 --- a/web/settings/assets/device-d5a5c7fd.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as t,k as d,l as m,G as i,E as c,y as v}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSolis",mixins:[p]},_={class:"device-solis"};function f(o,e,g,w,h,x){const s=t("openwb-base-heading"),r=t("openwb-base-text-input"),a=t("openwb-base-number-input"),l=t("openwb-base-select-input");return d(),m("div",_,[i(s,null,{default:c(()=>e[3]||(e[3]=[v("Einstellungen für Solis")])),_:1}),i(r,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(a,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),i(l,{title:"Version","not-selected":"Bitte auswählen",options:[{value:"inverter",text:"Wechselrichter ohne Speicheranbindung"},{value:"hybrid",text:"Hybridwechselrichter RHI/S Serie"}],"model-value":o.device.configuration.version,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.version"))},null,8,["model-value"])])}const H=u(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solis/solis/device.vue"]]);export{H as default}; diff --git a/web/settings/assets/device-db1a4525.js b/web/settings/assets/device-db1a4525.js deleted file mode 100644 index 4585f9f751..0000000000 --- a/web/settings/assets/device-db1a4525.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as t,k as u,l,G as i,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceVictron",mixins:[a]},v={class:"device-victron"};function f(o,e,b,g,w,x){const r=t("openwb-base-heading"),s=t("openwb-base-text-input"),p=t("openwb-base-number-input");return u(),l("div",v,[i(r,null,{default:m(()=>e[2]||(e[2]=[c(" Einstellungen für Victron ")])),_:1}),i(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),i(p,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"])])}const N=d(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/victron/victron/device.vue"]]);export{N as default}; diff --git a/web/settings/assets/device-dcc3398c.js b/web/settings/assets/device-dcc3398c.js deleted file mode 100644 index d5bd946baa..0000000000 --- a/web/settings/assets/device-dcc3398c.js +++ /dev/null @@ -1 +0,0 @@ -import{D as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as t,k as d,l,G as n,E as m,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSolarWorld",mixins:[a]},c={class:"device-solar_world"};function f(o,e,v,b,w,g){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),l("div",c,[n(i,null,{default:m(()=>e[1]||(e[1]=[u(" Einstellungen für SolarWorld ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const h=p(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_world/solar_world/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-e21ae64d.js b/web/settings/assets/device-e21ae64d.js deleted file mode 100644 index d0a1dd90dc..0000000000 --- a/web/settings/assets/device-e21ae64d.js +++ /dev/null @@ -1 +0,0 @@ -import{D as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as n,k as c,l as f,G as o,E as l,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceShelly",mixins:[u]},v={class:"device-shelly"};function b(t,e,g,h,w,y){const r=n("openwb-base-heading"),a=n("openwb-base-alert"),p=n("openwb-base-text-input"),d=n("openwb-base-select-input");return c(),f("div",v,[o(r,null,{default:l(()=>e[2]||(e[2]=[s(" Einstellungen für Shelly ")])),_:1}),o(a,{subtype:"info"},{default:l(()=>e[3]||(e[3]=[s(" Unterstützt werden theoretisch alle ein- und dreiphasigen Shellys der Generation 1-3. Getestete Modelle sind Shelly 1pm, 1pm plus, Pro Pro 3EM, Plug S. ")])),_:1}),o(p,{title:"IP oder Hostname",subtype:"host",required:"","model-value":t.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>t.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),o(d,{title:"Vorzeichen invertieren","not-selected":"Bitte auswählen",options:[{value:-1,text:"ja"},{value:1,text:"nein"}],"model-value":t.device.configuration.factor,required:"","onUpdate:modelValue":e[1]||(e[1]=i=>t.updateConfiguration(i,"configuration.factor"))},{help:l(()=>e[4]||(e[4]=[s(" Einige Shelly Modelle liefern die Leistung mit umgedrehtem Vorzeichen. Falls dies der Fall sein sollte, das Vorzeichen invertieren. ")])),_:1},8,["model-value"])])}const $=m(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/shelly/shelly/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-e51669c4.js b/web/settings/assets/device-e51669c4.js deleted file mode 100644 index eb88816326..0000000000 --- a/web/settings/assets/device-e51669c4.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as i,k as v,l as b,G as n,E as s,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceGrowatt",mixins:[p]},g={class:"device-growatt"};function _(o,e,c,w,V,C){const a=i("openwb-base-heading"),d=i("openwb-base-text-input"),r=i("openwb-base-number-input"),l=i("openwb-base-select-input");return v(),b("div",g,[n(a,null,{default:s(()=>e[4]||(e[4]=[u("Einstellungen für Growatt")])),_:1}),n(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),n(r,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.port"))},null,8,["model-value"]),n(r,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.modbus_id"))},null,8,["model-value"]),n(l,{title:"Version","not-selected":"Bitte auswählen",options:[{value:"MAX",text:"MAX Series"},{value:"TL-X",text:"TL-X Inverter"}],"model-value":o.device.configuration.version,required:"","onUpdate:modelValue":e[3]||(e[3]=t=>o.updateConfiguration(t,"configuration.version"))},{help:s(()=>e[5]||(e[5]=[u(" Die Wahl der API-Version beeinflusst die Auslesung der Speicherleistung und der Import/ Export Werte des Zählers. ")])),_:1},8,["model-value"])])}const X=m(f,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/growatt/growatt/device.vue"]]);export{X as default}; diff --git a/web/settings/assets/device-e7688f93.js b/web/settings/assets/device-e7688f93.js deleted file mode 100644 index f49d68011c..0000000000 --- a/web/settings/assets/device-e7688f93.js +++ /dev/null @@ -1 +0,0 @@ -import{D as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as i,k as c,l as b,G as t,E as r,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceKostalPlenticore",mixins:[u]},_={class:"device-kostal-plenticore"};function v(o,e,g,w,k,C){const l=i("openwb-base-heading"),p=i("openwb-base-alert"),d=i("openwb-base-text-input"),s=i("openwb-base-number-input");return c(),b("div",_,[t(l,null,{default:r(()=>e[3]||(e[3]=[a(" Einstellungen für Kostal Plenticore ")])),_:1}),t(p,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[a(" Wenn am Kostal Plenticore-Wechselrichter ein EM300 oder Kostal Energy Smart Meter (KSEM) angeschlossen ist, muss eine Zähler-und eine Wechselrichter-Komponente angelegt werden. ")])),_:1}),t(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(s,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(s,{title:"Modbus ID",required:"","model-value":o.device.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const $=m(f,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_plenticore/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/device-eadbbfcc.js b/web/settings/assets/device-eadbbfcc.js deleted file mode 100644 index e467a2f9a7..0000000000 --- a/web/settings/assets/device-eadbbfcc.js +++ /dev/null @@ -1 +0,0 @@ -import{D as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as t,k as d,l as c,G as n,E as m,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const u={name:"DeviceRCT",mixins:[p]},_={class:"device-rct"};function f(o,e,v,b,g,x){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),c("div",_,[n(i,null,{default:m(()=>e[1]||(e[1]=[l(" Einstellungen für RCT ")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.ip_address"))},null,8,["model-value"])])}const h=a(u,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/rct/rct/device.vue"]]);export{h as default}; diff --git a/web/settings/assets/device-ec258531.js b/web/settings/assets/device-ec258531.js deleted file mode 100644 index 226c485328..0000000000 --- a/web/settings/assets/device-ec258531.js +++ /dev/null @@ -1 +0,0 @@ -import{D as l}from"./HardwareInstallation-79ea1bc6.js";import{_ as r,u as a,k as d,l as p,G as i,E as u,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceTesla",mixins:[l]},v={class:"device-tesla"};function c(o,e,g,b,_,w){const s=a("openwb-base-heading"),n=a("openwb-base-text-input");return d(),p("div",v,[i(s,null,{default:u(()=>e[3]||(e[3]=[m(" Einstellungen für Tesla ")])),_:1}),i(n,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.ip_address"))},null,8,["model-value"]),i(n,{title:"E-Mail",subtype:"email",required:"","model-value":o.device.configuration.email,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.email"))},null,8,["model-value"]),i(n,{title:"Passwort",subtype:"password",required:"","model-value":o.device.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"])])}const D=r(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/tesla/tesla/device.vue"]]);export{D as default}; diff --git a/web/settings/assets/device-eee1b1e7.js b/web/settings/assets/device-eee1b1e7.js deleted file mode 100644 index 48340e8cec..0000000000 --- a/web/settings/assets/device-eee1b1e7.js +++ /dev/null @@ -1 +0,0 @@ -import{D as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as t,k as d,l as u,G as n,E as l,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceOpenDTU",mixins:[r]},_={class:"device-opendtu"};function f(o,e,v,b,g,x){const i=t("openwb-base-heading"),s=t("openwb-base-text-input");return d(),u("div",_,[n(i,null,{default:l(()=>e[1]||(e[1]=[m("Einstellungen für OpenDTU")])),_:1}),n(s,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.url,"onUpdate:modelValue":e[0]||(e[0]=p=>o.updateConfiguration(p,"configuration.url"))},null,8,["model-value"])])}const V=a(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/opendtu/opendtu/device.vue"]]);export{V as default}; diff --git a/web/settings/assets/device-febe33bf.js b/web/settings/assets/device-febe33bf.js deleted file mode 100644 index 5a1c605b14..0000000000 --- a/web/settings/assets/device-febe33bf.js +++ /dev/null @@ -1 +0,0 @@ -import{D as l}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as n,k as b,l as _,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSunnyBoy",mixins:[l]},f={class:"device-sunnyboy"};function v(o,e,w,y,g,x){const a=n("openwb-base-heading"),p=n("openwb-base-alert"),d=n("openwb-base-text-input"),u=n("openwb-base-number-input");return b(),_("div",f,[t(a,null,{default:r(()=>e[2]||(e[2]=[s(" Einstellungen für SMA Sunny Boy/Tripower ")])),_:1}),t(p,{subtype:"info"},{default:r(()=>e[3]||(e[3]=[s(' ModbusTCP muss entweder direkt am Wechselrichter, per Sunny Portal oder über das Tool "Sunny Explorer" aktiviert werden. Dies ist standardmäßig deaktiviert. ')])),_:1}),t(d,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.device.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=i=>o.updateConfiguration(i,"configuration.ip_address"))},null,8,["model-value"]),t(u,{title:"Port",required:"",min:1,max:65535,"model-value":o.device.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=i=>o.updateConfiguration(i,"configuration.port"))},null,8,["model-value"])])}const $=m(c,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/device.vue"]]);export{$ as default}; diff --git a/web/settings/assets/displayTheme-0aa46487.js b/web/settings/assets/displayTheme-0aa46487.js deleted file mode 100644 index b5c95f7140..0000000000 --- a/web/settings/assets/displayTheme-0aa46487.js +++ /dev/null @@ -1 +0,0 @@ -import{D as g}from"./OptionalComponents-62f1e823.js";import{_ as m,u as i,k as d,l as f,G as a,E as l,y as u,z as r,B as b}from"./vendor-06e11d0e.js";import"./index-e2dbf7bf.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DisplayThemeCards",mixins:[g]},c={class:"display-theme-cards"};function v(n,e,V,h,y,w){const s=i("openwb-base-heading"),o=i("openwb-base-button-group-input"),p=i("openwb-base-text-input");return d(),f("div",c,[a(s,null,{default:l(()=>e[13]||(e[13]=[u("Bediensperre")])),_:1}),a(o,{title:"Bedienung sperren","model-value":n.displayTheme.configuration.lock_changes,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[0]||(e[0]=t=>n.updateConfiguration(t,"configuration.lock_changes"))},{help:l(()=>e[14]||(e[14]=[u(' Die Bedienung wird automatisch nach der eingestellten Ausschaltzeit (siehe "Display Standby") wieder gesperrt. ')])),_:1},8,["model-value"]),n.displayTheme.configuration.lock_changes?(d(),r(p,{key:0,title:"PIN zur Freigabe",subtype:"password",required:"",pattern:"[0-9]{4,10}","model-value":n.displayTheme.configuration.lock_changes_code,"onUpdate:modelValue":e[1]||(e[1]=t=>n.updateConfiguration(t,"configuration.lock_changes_code"))},{help:l(()=>e[15]||(e[15]=[u(" Der PIN muss aus 4 bis 10 Zahlen bestehen. ")])),_:1},8,["model-value"])):b("",!0),a(s,null,{default:l(()=>e[16]||(e[16]=[u("Ansichten")])),_:1}),a(o,{title:"Übersicht anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[2]||(e[2]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_view"))},null,8,["model-value"]),a(o,{title:"Energiefluss anzeigen","model-value":n.displayTheme.configuration.enable_energy_flow_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[3]||(e[3]=t=>n.updateConfiguration(t,"configuration.enable_energy_flow_view"))},null,8,["model-value"]),a(o,{title:"Ladepunkte anzeigen","model-value":n.displayTheme.configuration.enable_charge_points_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[4]||(e[4]=t=>n.updateConfiguration(t,"configuration.enable_charge_points_view"))},null,8,["model-value"]),n.displayTheme.configuration.enable_charge_points_view==!0?(d(),r(o,{key:1,title:"Einfache Ansicht der Ladepunkte","model-value":n.displayTheme.configuration.simple_charge_point_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[5]||(e[5]=t=>n.updateConfiguration(t,"configuration.simple_charge_point_view"))},null,8,["model-value"])):b("",!0),a(o,{title:"Status anzeigen","model-value":n.displayTheme.configuration.enable_status_view,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[6]||(e[6]=t=>n.updateConfiguration(t,"configuration.enable_status_view"))},null,8,["model-value"]),a(s,null,{help:l(()=>e[17]||(e[17]=[u(' Hier kann festgelegt werden, welche Daten in den Ansichten "Übersicht" und "Energiefluss" angezeigt werden. ')])),default:l(()=>[e[18]||(e[18]=u(" Datenauswahl "))]),_:1}),a(o,{title:"EVU anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_grid,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[7]||(e[7]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_grid"))},null,8,["model-value"]),a(o,{title:"Hausverbrauch anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_home_consumption,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[8]||(e[8]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_home_consumption"))},null,8,["model-value"]),a(o,{title:"PV anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_inverter_sum,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[9]||(e[9]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_inverter_sum"))},null,8,["model-value"]),a(o,{title:"Batteriespeicher anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_battery_sum,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[10]||(e[10]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_battery_sum"))},null,8,["model-value"]),a(o,{title:"Ladepunkte anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_charge_point_sum,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[11]||(e[11]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_charge_point_sum"))},null,8,["model-value"]),a(o,{title:"Fahrzeuge anzeigen","model-value":n.displayTheme.configuration.enable_dashboard_card_vehicles,buttons:[{buttonValue:!1,text:"Aus",class:"btn-outline-danger"},{buttonValue:!0,text:"An",class:"btn-outline-success"}],"onUpdate:modelValue":e[12]||(e[12]=t=>n.updateConfiguration(t,"configuration.enable_dashboard_card_vehicles"))},null,8,["model-value"])])}const x=m(_,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/display_themes/cards/displayTheme.vue"]]);export{x as default}; diff --git a/web/settings/assets/electricity_tariff-7f344358.js b/web/settings/assets/electricity_tariff-7f344358.js deleted file mode 100644 index 38ba4f3aa4..0000000000 --- a/web/settings/assets/electricity_tariff-7f344358.js +++ /dev/null @@ -1 +0,0 @@ -import{E as m}from"./GeneralChargeConfig-ed38b9ef.js";import{_ as g,u as s,k as h,l as _,G as n,E as y,y as l,x as T}from"./vendor-06e11d0e.js";import"./index-e2dbf7bf.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const k={name:"ElectricityTariffTibber",mixins:[m],data(){return{tibberAPI:"https://api.tibber.com/v1-beta/gql",tibberHomeList:[]}},methods:{async getTibberHomeList(){if(this.electricityTariff.configuration.token===null)return;const i='{ "query": "{viewer {homes{id address{address1 address2 address3 postalCode city country}}}}" }';try{const e=await this.axios.post(this.tibberAPI,i,{headers:{Authorization:"Bearer "+this.electricityTariff.configuration.token,"Content-Type":"application/json"}});this.tibberHomeList=e.data.data.viewer.homes.map(t=>{let r=t.address.address1;return t.address.address2&&(r=r+", "+t.address.address2),t.address.address3&&(r=r+", "+t.address.address3),r=r+`, ${t.address.postalCode} ${t.address.city}, ${t.address.country}`,{value:t.id,text:r}}),this.electricityTariff.configuration.home_id||this.updateConfiguration(this.tibberHomeList[0].value,"configuration.home_id"),this.$root.postClientMessage("Home IDs erfolgreich abgerufen.","success")}catch(e){console.error(e),this.$root.postClientMessage("Beim Abfragen der Tibber API ist ein Fehler aufgetreten!
"+e+"
","danger")}}}},v={class:"electricity-tariff-tibber"};function w(i,e,t,r,u,c){var d;const b=s("openwb-base-alert"),a=s("openwb-base-text-input"),p=s("openwb-base-button-input"),f=s("openwb-base-select-input");return h(),_("div",v,[n(b,{subtype:"info"},{default:y(()=>e[3]||(e[3]=[l(" Ihren persönlichen Tibber-Token erhalten Sie über die "),T("a",{href:"https://developer.tibber.com/explorer",target:"_blank",rel:"noopener noreferrer"}," Tibber-Developer-Seite ",-1),l(" . Behandeln Sie Ihren Token wie ein Passwort, da sich darüber auch persönliche Daten aus Ihrem Tibber-Account abfragen lassen! Die Home-ID können Sie (wenn bekannt) in das Eingabefeld selbst eintragen oder nach Eingabe Ihres Token durch Klick auf den Button von der openWB ermitteln lassen. Unerlaubte Zeichen werden aus dem Token und der Home-ID automatisch gelöscht. ")])),_:1}),n(a,{ref:"tokenInput",title:"Token",required:"","model-value":i.electricityTariff.configuration.token,"onUpdate:modelValue":e[0]||(e[0]=o=>i.updateConfiguration(o,"configuration.token"))},null,8,["model-value"]),n(p,{title:"Home-IDs abrufen","button-text":"Jetzt abrufen",subtype:"success",disabled:!((d=i.electricityTariff.configuration.token)!=null&&d.length),onButtonClicked:c.getTibberHomeList},null,8,["disabled","onButtonClicked"]),n(f,{title:"Verfügbare Home-IDs",options:u.tibberHomeList,"model-value":i.electricityTariff.configuration.home_id,"onUpdate:modelValue":e[1]||(e[1]=o=>i.updateConfiguration(o,"configuration.home_id"))},null,8,["options","model-value"]),n(a,{title:"Home-ID",required:"","model-value":i.electricityTariff.configuration.home_id,"onUpdate:modelValue":e[2]||(e[2]=o=>i.updateConfiguration(o,"configuration.home_id"))},null,8,["model-value"])])}const A=g(k,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/tibber/electricity_tariff.vue"]]);export{A as default}; diff --git a/web/settings/assets/electricity_tariff-7f3b489b.js b/web/settings/assets/electricity_tariff-7f3b489b.js deleted file mode 100644 index 993e0b566d..0000000000 --- a/web/settings/assets/electricity_tariff-7f3b489b.js +++ /dev/null @@ -1 +0,0 @@ -import{E as l}from"./GeneralChargeConfig-ed38b9ef.js";import{_ as s,u as r,k as c,l as p,G as o,E as u,y as f}from"./vendor-06e11d0e.js";import"./index-e2dbf7bf.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"ElectricityTariffVoltego",mixins:[l]},m={class:"electricity-tariff-voltego"};function _(t,e,g,b,y,v){const a=r("openwb-base-alert"),n=r("openwb-base-text-input");return c(),p("div",m,[o(a,{subtype:"info"},{default:u(()=>e[2]||(e[2]=[f(" Ihre persönlichen Zugangsdaten (Client-ID und Client-Secret) erhalten Sie direkt von Voltego. Behandeln Sie diese Daten wie ein Passwort, da sich darüber auch persönliche Daten aus Ihrem Voltego-Account abfragen lassen! ")])),_:1}),o(n,{title:"Client-ID",subtype:"user",required:"","model-value":t.electricityTariff.configuration.client_id,"onUpdate:modelValue":e[0]||(e[0]=i=>t.updateConfiguration(i,"configuration.client_id"))},null,8,["model-value"]),o(n,{title:"Client-Secret",subtype:"password",required:"","model-value":t.electricityTariff.configuration.client_secret,"onUpdate:modelValue":e[1]||(e[1]=i=>t.updateConfiguration(i,"configuration.client_secret"))},null,8,["model-value"])])}const D=s(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/voltego/electricity_tariff.vue"]]);export{D as default}; diff --git a/web/settings/assets/electricity_tariff-91487172.js b/web/settings/assets/electricity_tariff-91487172.js deleted file mode 100644 index b2b3ec1257..0000000000 --- a/web/settings/assets/electricity_tariff-91487172.js +++ /dev/null @@ -1 +0,0 @@ -import{E as c}from"./GeneralChargeConfig-ed38b9ef.js";import{_ as p,u as r,k as d,l as f,G as i,E as o,y as s,x as m}from"./vendor-06e11d0e.js";import"./index-e2dbf7bf.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"ElectricityTariffEnergyCharts",mixins:[c]},h={class:"electricity-tariff-energycharts"};function b(t,e,y,_,w,v){const a=r("openwb-base-alert"),l=r("openwb-base-select-input"),u=r("openwb-base-number-input");return d(),f("div",h,[i(a,{subtype:"info"},{default:o(()=>e[2]||(e[2]=[s(" Börsenstrompreise von Energy Charts (energy-charts.info)"),m("br",null,null,-1),s(" Die Rohdaten werden von Wissenschaftlern des Fraunhofer-Instituts für Solare Energiesysteme ISE aus zahlreichen Quellen stündlich oder täglich abgerufen und für die Darstellung aufbereitet. ")])),_:1}),i(l,{title:"Land","not-selected":"Bitte auswählen",options:[{value:"DE-LU",text:"Deutschland"},{value:"AT",text:"Österreich"},{value:"CH",text:"Schweiz"}],"model-value":t.electricityTariff.configuration.country,"onUpdate:modelValue":e[0]||(e[0]=n=>t.updateConfiguration(n,"configuration.country"))},null,8,["model-value"]),i(u,{title:"Aufschlag zum Börsenstrompreis",min:0,step:.001,precision:3,required:"",unit:"ct/kWh","model-value":t.electricityTariff.configuration.surcharge,"onUpdate:modelValue":e[1]||(e[1]=n=>t.updateConfiguration(parseFloat(n.toFixed(3)),"configuration.surcharge"))},{help:o(()=>e[3]||(e[3]=[s(" Die Auswahl (Energy-Charts) kann für alle Stromanbieter ausgewählt werden, die die Börsenstrompreise in einem variablen/dynamischen Tarif an die Kunden weitergeben. Das Modul soll es ermöglichen, dass zu tagesaktuellen Strompreisen unter Berücksichtigung eines Aufschlags zu günstigen Zeiten automatisch geladen werden kann und somit die Preisschwankungen an der Börse optimal ausgenutzt werden. ")])),_:1},8,["model-value"])])}const V=p(g,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/energycharts/electricity_tariff.vue"]]);export{V as default}; diff --git a/web/settings/assets/electricity_tariff-c3464fac.js b/web/settings/assets/electricity_tariff-c3464fac.js deleted file mode 100644 index 5b683304f0..0000000000 --- a/web/settings/assets/electricity_tariff-c3464fac.js +++ /dev/null @@ -1 +0,0 @@ -import{E as s}from"./GeneralChargeConfig-ed38b9ef.js";import{_ as l,u as r,k as c,l as p,G as n,E as u,y as f}from"./vendor-06e11d0e.js";import"./index-e2dbf7bf.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"ElectricityTariffRabot",mixins:[s]},m={class:"electricity-tariff-rabot"};function _(t,e,b,y,g,v){const a=r("openwb-base-alert"),o=r("openwb-base-text-input");return c(),p("div",m,[n(a,{subtype:"info"},{default:u(()=>e[2]||(e[2]=[f(" Ihre persönlichen Zugangsdaten (Client-ID und Client-Secret) erhalten Sie direkt von Rabot. Behandeln Sie diese Daten wie ein Passwort, da sich darüber auch persönliche Daten aus Ihrem Rabot-Account abfragen lassen! ")])),_:1}),n(o,{title:"Client-ID",subtype:"user",required:"","model-value":t.electricityTariff.configuration.client_id,"onUpdate:modelValue":e[0]||(e[0]=i=>t.updateConfiguration(i,"configuration.client_id"))},null,8,["model-value"]),n(o,{title:"Client-Secret",subtype:"password",required:"","model-value":t.electricityTariff.configuration.client_secret,"onUpdate:modelValue":e[1]||(e[1]=i=>t.updateConfiguration(i,"configuration.client_secret"))},null,8,["model-value"])])}const I=l(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/rabot/electricity_tariff.vue"]]);export{I as default}; diff --git a/web/settings/assets/electricity_tariff-fa774354.js b/web/settings/assets/electricity_tariff-fa774354.js deleted file mode 100644 index b454cc76f1..0000000000 --- a/web/settings/assets/electricity_tariff-fa774354.js +++ /dev/null @@ -1 +0,0 @@ -import{E as o}from"./GeneralChargeConfig-ed38b9ef.js";import{_ as a,u as n,k as s,l as c,G as l,E as p,y as f}from"./vendor-06e11d0e.js";import"./index-e2dbf7bf.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"ElectricityTariffAwattar",mixins:[o]},u={class:"electricity-tariff-awattar"};function m(t,e,_,w,y,b){const i=n("openwb-base-select-input");return s(),c("div",u,[l(i,{title:"Land","not-selected":"Bitte auswählen",options:[{value:"de",text:"Deutschland"},{value:"at",text:"Österreich"}],"model-value":t.electricityTariff.configuration.country,"onUpdate:modelValue":e[0]||(e[0]=r=>t.updateConfiguration(r,"configuration.country"))},{help:p(()=>e[1]||(e[1]=[f(" Es werden die abgefragten Börsenpreise verwendet, die aWATTar bereitstellt. aWATTar-Gebühren oder Steuern werden nicht berücksichtigt. ")])),_:1},8,["model-value"])])}const $=a(d,[["render",m],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/electricity_tariffs/awattar/electricity_tariff.vue"]]);export{$ as default}; diff --git a/web/settings/assets/external_inverter-56630198.js b/web/settings/assets/external_inverter-56630198.js deleted file mode 100644 index 69d8d673aa..0000000000 --- a/web/settings/assets/external_inverter-56630198.js +++ /dev/null @@ -1 +0,0 @@ -import{C as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as i,k as g,l as f,G as o,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceSolaredgeExternalInverter",mixins:[m]},c={class:"device-solaredge-external-inverter"};function v(n,e,_,w,x,E){const l=i("openwb-base-heading"),u=i("openwb-base-alert"),a=i("openwb-base-number-input"),d=i("openwb-base-select-input");return g(),f("div",c,[o(l,null,{default:r(()=>e[3]||(e[3]=[s(" Einstellungen für SolarEdge externen Wechselrichter ")])),_:1}),o(u,{subtype:"info"},{default:r(()=>e[4]||(e[4]=[s(' Diese Komponente nur konfigurieren, wenn ein weiteres Solaredge SmartMeter verbaut ist, welches z.B. die Leistung einer vorhandenen Bestands-PV-Anlage erfasst. Dieses zusätzliche SmartMeter muss dann als "Zähler 2" / "Position 2" im Wechselrichter-Konfigurationsmenü konfiguriert sein. ')])),_:1}),o(a,{title:"SolarEdge-Geräte-ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=t=>n.updateConfiguration(t,"configuration.modbus_id"))},null,8,["model-value"]),o(a,{title:"SolarEdge-Meter-ID","model-value":n.component.configuration.meter_id,min:"1",max:"255",required:"","onUpdate:modelValue":e[1]||(e[1]=t=>n.updateConfiguration(t,"configuration.meter_id"))},null,8,["model-value"]),o(d,{title:"Leistung invertieren","not-selected":"Bitte auswählen",options:[{value:1,text:"nein"},{value:-1,text:"ja"}],"model-value":n.component.configuration.factor,"onUpdate:modelValue":e[2]||(e[2]=t=>n.updateConfiguration(t,"configuration.factor"))},{help:r(()=>e[5]||(e[5]=[s(" Einige externe SolarEdge Wechselrichter liefern die Leistung mit falschem Vorzeichen. In diesem Fall ist die Leistung zu invertieren. ")])),_:1},8,["model-value"])])}const L=p(b,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/external_inverter.vue"]]);export{L as default}; diff --git a/web/settings/assets/index-e2dbf7bf.js b/web/settings/assets/index-e2dbf7bf.js deleted file mode 100644 index d64146ddfa..0000000000 --- a/web/settings/assets/index-e2dbf7bf.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as y,k as l,l as u,m as b,q as O,u as g,x as a,y as p,z as h,A as E,B as f,D as V,E as c,F as v,G as m,I as B,J as T,K as S,L as X,M as q,N as I,O as ee,P as te,Q as ne,T as F,R as se,S as R,U as oe,V as ae,W as ie,X as le,Y as re,Z as de,$ as ue}from"./vendor-06e11d0e.js";import{l as C,f as H,a as U,F as $,b as ce,c as pe,d as z,e as me,g as L,h as fe,i as _e,j as be,k as ge,m as he,n as ve,o as ye,p as we,q as ke,r as G,s as Se,t as Be,u as Oe,v as Ce,w as J,x as $e,y as Te,z as Ie,A as xe,B as Me,C as Ve,D as Ae,E as Pe,G as qe,H as De,I as Ee,J as Le}from"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import{p as je,a as We}from"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-jquery-9fc083b4.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))d(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&d(o)}).observe(document,{childList:!0,subtree:!0});function n(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function d(i){if(i.ep)return;i.ep=!0;const s=n(i);fetch(i.href,s)}})();const Re={name:"OpenwbAlert",props:{subtype:{validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark"].indexOf(t)!==-1},default:"secondary"}}};function Ne(t,e,n,d,i,s){return l(),u("div",{class:O(["card-text alert","alert-"+n.subtype])},[b(t.$slots,"default")],2)}const Fe=y(Re,[["render",Ne],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseAlert.vue"]]),He=Object.freeze(Object.defineProperty({__proto__:null,default:Fe},Symbol.toStringTag,{value:"Module"}));C.add(H,U);const Ue={name:"OpenwbBaseSettingElement",components:{FontAwesomeIcon:$},data(){return{showHelp:!1}},methods:{toggleHelp(){this.showHelp=!this.showHelp&&this.$slots.help!==void 0}}},ze={class:"form-row mb-1"},Ge={class:"col-md-4 col-form-label"},Je={class:"col-md-8"},Ke={class:"form-row"},Qe={class:"form-row"},Ye={key:0,class:"form-text alert alert-info my-1 small flex-fill"};function Ze(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u("div",ze,[a("label",Ge,[b(t.$slots,"title",{},()=>[e[0]||(e[0]=p("*TITLE*"))]),t.$slots.help?(l(),h(o,{key:0,icon:i.showHelp?["fas","question-circle"]:["far","question-circle"],class:O(["clickable ml-1",i.showHelp?"text-info":""]),onClick:E(s.toggleHelp,["stop"])},null,8,["icon","class","onClick"])):f("",!0)]),a("div",Je,[a("div",Ke,[b(t.$slots,"default",{},()=>[e[1]||(e[1]=p("*ELEMENT MISSING*"))])]),a("div",Qe,[i.showHelp?(l(),u("span",Ye,[b(t.$slots,"help")])):f("",!0)])])])}const M=y(Ue,[["render",Ze],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseSettingElement.vue"]]),Xe=Object.freeze(Object.defineProperty({__proto__:null,default:M},Symbol.toStringTag,{value:"Module"}));C.add(ce,pe,z,me);const et={name:"OpenwbArrayInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!0,default:"#TITLE#"},modelValue:{type:Array,default:()=>[]},noElementsMessage:{type:String,default:()=>"Keine Elemente zugeordnet."}},emits:["update:modelValue"],data(){return{newTag:"",showHelp:!1}},computed:{value:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},newTagValid:{get(){return this.newTag.length>0&&!this.value.includes(this.newTag)}}},methods:{addTag(){if(this.newTagValid){const t=[...this.value,this.newTag].sort();this.value=t,this.newTag=""}this.$refs.tagInput.focus()},removeTag(t){let e=[...this.value];e.splice(t,1),this.value=e}}},tt={class:"w-100"},nt={class:"input-group"},st={class:"input-group-prepend"},ot={class:"input-group-text"},at={class:"input-group-append"},it={class:"tagList mt-1 w-100"},lt={key:0,class:"noTag"};function rt(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",tt,[a("div",nt,[a("div",st,[a("div",ot,[b(t.$slots,"input-prefix",{},()=>[m(o,{"fixed-width":"",icon:["fas","tag"]})],!0)])]),B(a("input",S({ref:"tagInput","onUpdate:modelValue":e[0]||(e[0]=r=>i.newTag=r),type:"text",class:"form-control"},t.$attrs,{onKeyup:e[1]||(e[1]=X((...r)=>s.addTag&&s.addTag(...r),["enter"]))}),null,16),[[T,i.newTag]]),a("div",at,[a("div",{class:O(["input-group-text",s.newTagValid?"bg-success clickable":"not-clickable"]),onClick:e[2]||(e[2]=(...r)=>s.addTag&&s.addTag(...r))},[b(t.$slots,"input-add",{},()=>[m(o,{"fixed-width":"",icon:["fas","plus"]})],!0)],2)])])]),a("div",it,[s.value.length==0?(l(),u("span",lt,[m(o,{icon:["fas","info-circle"]}),p(" "+v(n.noElementsMessage),1)])):f("",!0),(l(!0),u(I,null,q(s.value,(r,k)=>(l(),u("span",{key:k,class:"tag"},[b(t.$slots,"element-prefix",{},()=>[m(o,{icon:["fas","tag"]})],!0),p(" "+v(r)+" ",1),m(o,{class:"clickable remove-element",icon:["fas","times-circle"],onClick:x=>s.removeTag(k)},null,8,["onClick"])]))),128))])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const dt=y(et,[["render",rt],["__scopeId","data-v-9de93d37"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseArrayInput.vue"]]),ut=Object.freeze(Object.defineProperty({__proto__:null,default:dt},Symbol.toStringTag,{value:"Module"}));const ct={name:"OpenwbAvatar"},pt={class:"avatar"};function mt(t,e,n,d,i,s){return l(),u("div",pt,[b(t.$slots,"default",{},()=>[e[0]||(e[0]=p("?"))],!0)])}const ft=y(ct,[["render",mt],["__scopeId","data-v-06082a1a"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseAvatar.vue"]]),_t=Object.freeze(Object.defineProperty({__proto__:null,default:ft},Symbol.toStringTag,{value:"Module"}));C.add(L);const bt={name:"OpenwbButtonGroupInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:[String,Number,Boolean],default:void 0},buttons:{type:Array,required:!0}},emits:["update:modelValue"],computed:{value:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}}}},gt={class:"btn-group btn-block btn-group-toggle"},ht=["value"];function vt(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)])]),default:c(()=>[a("div",gt,[(l(!0),u(I,null,q(n.buttons,r=>(l(),u("label",{key:r.value,class:O(["btn",[s.value==r.buttonValue?"active":"",r.class?r.class:"btn-outline-info"]])},[B(a("input",S({"onUpdate:modelValue":e[0]||(e[0]=k=>s.value=k),type:"radio",value:r.buttonValue,ref_for:!0},t.$attrs),null,16,ht),[[ee,s.value]]),b(t.$slots,"label-"+r.buttonValue,{},()=>[p(v(r.text),1)]),m(o,{"fixed-width":"",icon:["fas","check"],style:te([s.value==r.buttonValue?"visibility: visible":"visibility: hidden"])},null,8,["style"])],2))),128))])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help")]),key:"0"}:void 0]),1024)}const yt=y(bt,[["render",vt],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseButtonGroupInput.vue"]]),wt=Object.freeze(Object.defineProperty({__proto__:null,default:yt},Symbol.toStringTag,{value:"Module"}));const kt={name:"OpenwbClickButton",props:{title:{type:String,required:!1,default:""}},emits:["buttonClicked"],methods:{click(t){this.$emit("buttonClicked",t)}}};function St(t,e,n,d,i,s){return l(),u("button",{type:"button",class:"btn btn-block",onClick:e[0]||(e[0]=E((...o)=>s.click&&s.click(...o),["prevent"]))},[b(t.$slots,"default",{},()=>[p(v(n.title),1)],!0)])}const K=y(kt,[["render",St],["__scopeId","data-v-2e9c095b"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseClickButton.vue"]]),Bt=Object.freeze(Object.defineProperty({__proto__:null,default:K},Symbol.toStringTag,{value:"Module"})),Ot={name:"OpenwbButtonInput",components:{OpenwbBaseSettingElement:M,OpenwbBaseClickButton:K},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},buttonText:{type:String,required:!1,default:void 0},disabled:{type:Boolean,default:!1},subtype:{type:String,validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark"].indexOf(t)!==-1},default:"secondary"}},emits:["buttonClicked"],methods:{handleClick(t){this.$emit("buttonClicked",t)}}};function Ct(t,e,n,d,i,s){const o=g("openwb-base-click-button"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)])]),default:c(()=>[m(o,S({class:(n.disabled?"btn-outline-":"btn-")+n.subtype,disabled:n.disabled},t.$attrs,{onButtonClicked:s.handleClick}),{default:c(()=>[p(v(n.buttonText),1)]),_:1},16,["class","disabled","onButtonClicked"])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help")]),key:"0"}:void 0]),1024)}const $t=y(Ot,[["render",Ct],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseButtonInput.vue"]]),Tt=Object.freeze(Object.defineProperty({__proto__:null,default:$t},Symbol.toStringTag,{value:"Module"}));C.add(fe,_e);const It={name:"OpenwbCard",components:{FontAwesomeIcon:$},inheritAttrs:!1,props:{title:{type:String,default:"# no title set #"},subtype:{validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark","pink"].indexOf(t)!==-1},default:"secondary"},collapsible:{type:Boolean,default:!1},collapsed:{type:Boolean,default:!1}},data(){return{isCollapsed:this.collapsible&&this.collapsed}},methods:{toggleBody(){this.collapsible===!0&&(this.isCollapsed=!this.isCollapsed)}}},xt={class:"form-group mb-0"},Mt={class:"form-row vaRow mb-0 py-2"},Vt={class:"col"},At={class:"card-actions ml-4"},Pt={key:0,class:"card-actions mr-4"},qt={key:1,class:"card-footer"};function Dt(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u("div",{class:O(["card","border-"+n.subtype])},[a("div",{class:O(["card-header py-1","bg-"+n.subtype]),onClick:e[0]||(e[0]=(..._)=>s.toggleBody&&s.toggleBody(..._))},[a("div",xt,[a("div",Mt,[a("div",Vt,[b(t.$slots,"header",{collapsed:i.isCollapsed},()=>[p(v(n.title),1)])])])]),a("span",At,[t.$slots.actions?(l(),u("span",Pt,[b(t.$slots,"actions",{collapsed:i.isCollapsed})])):f("",!0),n.collapsible?(l(),h(o,{key:1,"fixed-width":"",icon:i.isCollapsed?["fas","chevron-right"]:["fas","chevron-down"]},null,8,["icon"])):f("",!0)])],2),i.isCollapsed===!1?(l(),u("div",S({key:0,class:"card-body"},t.$attrs),[b(t.$slots,"default")],16)):f("",!0),t.$slots.footer&&i.isCollapsed===!1?(l(),u("div",qt,[b(t.$slots,"footer")])):f("",!0)],2)}const Et=y(It,[["render",Dt],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseCard.vue"]]),Lt=Object.freeze(Object.defineProperty({__proto__:null,default:Et},Symbol.toStringTag,{value:"Module"})),jt={name:"OpenwbCheckboxInput",components:{OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:Boolean}},emits:["update:modelValue"],computed:{value:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}}}},Wt={class:"col-md-8"};function Rt(t,e,n,d,i,s){const o=g("openwb-base-setting-element");return l(),h(o,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)])]),default:c(()=>[a("div",Wt,[B(a("input",S({"onUpdate:modelValue":e[0]||(e[0]=_=>s.value=_),class:"form-control",type:"checkbox"},t.$attrs),null,16),[[ne,s.value]])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help")]),key:"0"}:void 0]),1024)}const Nt=y(jt,[["render",Rt],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseCheckboxInput.vue"]]),Ft=Object.freeze(Object.defineProperty({__proto__:null,default:Nt},Symbol.toStringTag,{value:"Module"}));C.add(be,ge);const Ht={name:"OpenwbCopyToClipboard",components:{FontAwesomeIcon:$},props:{tooltip:{type:String,default:"Wert kopieren"}},data(){return{clipboardApiAvailable:navigator.clipboard!=null,isCopied:!1}},methods:{click(){if(console.debug(this.$refs["slot-wrapper"].innerText),this.clipboardApiAvailable)navigator.clipboard.writeText(this.$refs["slot-wrapper"].innerText).then(()=>{this.isCopied=!0},()=>{console.error("copy to clipboard failed")});else{if(console.debug("clipboard api not supported/enabled, fallback to select"),window.getSelection){console.debug("using 'window.getSelection'");const t=window.getSelection(),e=document.createRange();e.selectNodeContents(this.$refs["slot-wrapper"]),t.removeAllRanges(),t.addRange(e);return}if(document.body.createTextRange){console.debug("using 'document.body.createTextRange'");const t=document.body.createTextRange();t.moveToElementText(this.$refs["slot-wrapper"]),t.select()}else console.warn("could not select text, unsupported browser")}}}},Ut=["title"];function zt(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u("span",{ref:"slot-wrapper",title:n.tooltip,class:"copy-me",onClick:e[0]||(e[0]=(..._)=>s.click&&s.click(..._))},[b(t.$slots,"default",{},void 0,!0),m(o,{"fixed-width":"",icon:i.isCopied?["fas","clipboard-check"]:["fas","clipboard"]},null,8,["icon"])],8,Ut)}const Gt=y(Ht,[["render",zt],["__scopeId","data-v-81826ebe"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseCopyToClipboard.vue"]]),Jt=Object.freeze(Object.defineProperty({__proto__:null,default:Gt},Symbol.toStringTag,{value:"Module"}));C.add(H,U,L);const Kt={name:"OpenwbHeading",components:{FontAwesomeIcon:$},inheritAttrs:!1,data(){return{showHelp:!1}},methods:{toggleHelp(){this.showHelp=!this.showHelp&&this.$slots.help!==void 0}}},Qt={class:"heading-text"},Yt={key:0,class:"actions"},Zt={class:""},Xt={key:0,class:"form-row alert alert-info small flex-fill"};function en(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u(I,null,[a("div",S({class:"card-text card-text-heading"},t.$attrs),[a("div",Qt,[b(t.$slots,"default",{},void 0,!0),t.$slots.help?(l(),h(o,{key:0,icon:i.showHelp?["fas","question-circle"]:["far","question-circle"],class:O(["clickable",i.showHelp?"text-info":""]),onClick:E(s.toggleHelp,["stop"])},null,8,["icon","class","onClick"])):f("",!0)]),t.$slots.actions?(l(),u("span",Yt,[b(t.$slots,"actions",{},void 0,!0)])):f("",!0)],16),a("div",Zt,[i.showHelp?(l(),u("span",Xt,[b(t.$slots,"help",{},void 0,!0)])):f("",!0)])],64)}const tn=y(Kt,[["render",en],["__scopeId","data-v-cbe4e96e"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseHeading.vue"]]),nn=Object.freeze(Object.defineProperty({__proto__:null,default:tn},Symbol.toStringTag,{value:"Module"})),sn={name:"OpenwbModalDialog",props:{title:{type:String,required:!1,default:""},subtype:{type:String,validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark"].indexOf(t)!==-1},default:"secondary"},buttons:{type:Array,default:void 0},footerAlignment:{type:String,validator:function(t){return["around","between","center","end","start"].indexOf(t)!==-1},default:"end"},preventClose:{type:Boolean,default:!1},show:{type:Boolean,default:!1}},emits:["modal-result"],computed:{myButtons(){var t=[];return this.buttons!==void 0&&(t=this.buttons),this.preventClose||t.push({text:"Schließen",event:"close"}),t}},methods:{handleClick(t){t.stopPropagation();let e=t.target.getAttribute("data-event");e===null&&(e="close"),(e!="close"||!this.preventClose)&&this.$emit("modal-result",e)}}},on={class:"modal-dialog modal-dialog-centered modal-dialog-scrollable",role:"document"},an={class:"modal-content"},ln={class:"modal-title"},rn={class:"modal-body"},dn=["data-event"];function un(t,e,n,d,i,s){return n.show?(l(),h(F,{key:0,to:"body"},[e[4]||(e[4]=a("div",{class:"modal-backdrop fade show"},null,-1)),a("div",{class:"modal fade d-block show",role:"dialog",onClick:e[2]||(e[2]=(...o)=>s.handleClick&&s.handleClick(...o))},[a("div",on,[a("div",an,[a("div",{class:O(["modal-header","bg-"+n.subtype])},[a("h4",ln,v(n.title),1),n.preventClose?f("",!0):(l(),u("button",{key:0,type:"button",class:"close",onClick:e[0]||(e[0]=(...o)=>s.handleClick&&s.handleClick(...o))}," × "))],2),a("div",rn,[b(t.$slots,"default",{},()=>[e[3]||(e[3]=p("# Body #"))])]),s.myButtons.length>0?(l(),u("div",{key:0,class:O(["modal-footer d-flex","justify-content-"+n.footerAlignment])},[(l(!0),u(I,null,q(s.myButtons,o=>(l(),u("button",{key:o.text,type:"button",class:O(["btn",o.subtype?"btn-"+o.subtype:"btn-secondary"]),"data-dismiss":"modal","data-event":o.event?o.event:"close",onClick:e[1]||(e[1]=(..._)=>s.handleClick&&s.handleClick(..._))},v(o.text),11,dn))),128))],2)):f("",!0)])])])])):f("",!0)}const cn=y(sn,[["render",un],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseModalDialog.vue"]]),pn=Object.freeze(Object.defineProperty({__proto__:null,default:cn},Symbol.toStringTag,{value:"Module"}));C.add(he);const mn={name:"OpenwbNumberInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:Number,required:!1,default:void 0},unit:{type:String,required:!1,default:void 0},precision:{type:Number,default:void 0},emptyValue:{type:[Number,null],required:!1,default:null}},emits:["update:modelValue"],computed:{value:{get(){return this.precision!==void 0?parseFloat(Math.round(this.modelValue*Math.pow(10,this.precision))/Math.pow(10,this.precision)):this.modelValue},set(t){(isNaN(t)||typeof t!="number")&&(t=this.emptyValue),this.$emit("update:modelValue",t)}}}},fn={class:"input-group"},_n={class:"input-group-prepend"},bn={class:"input-group-text"},gn={key:0,class:"input-group-append"},hn={class:"input-group-text"};function vn(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",fn,[a("div",_n,[a("div",bn,[m(o,{"fixed-width":"",icon:["fas","calculator"]})])]),B(a("input",S({"onUpdate:modelValue":e[0]||(e[0]=r=>s.value=r),type:"number",class:"form-control"},t.$attrs),null,16),[[T,s.value,void 0,{number:!0}]]),n.unit?(l(),u("div",gn,[a("div",hn,v(n.unit),1)])):f("",!0)])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const yn=y(mn,[["render",vn],["__scopeId","data-v-c2fb7eef"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseNumberInput.vue"]]),wn=Object.freeze(Object.defineProperty({__proto__:null,default:yn},Symbol.toStringTag,{value:"Module"}));C.add(ve,ye);const kn={name:"OpenwbRangeInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:Number,required:!1,default:void 0},unit:{type:String,required:!1,default:void 0},min:{type:Number,required:!0,default:0},max:{type:Number,required:!0,default:100},step:{type:Number,required:!1,default:1},labels:{type:Array,required:!1,default:void 0}},emits:["update:modelValue"],computed:{label(){var t;return this.labels&&this.sliderValue!=null?this.sliderValue[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",Sn,[a("div",Bn,[s.label?(l(),u("label",On,v(s.label),1)):f("",!0),a("button",{class:"col-1 btn btn-block btn-info",type:"button",onClick:e[0]||(e[0]=(...r)=>s.decrement&&s.decrement(...r))},[m(o,{icon:["fas","step-backward"]})]),a("div",Cn,[B(a("input",S({"onUpdate:modelValue":e[1]||(e[1]=r=>s.sliderValue=r),type:"range",class:"form-control-range rangeInput",min:n.min,max:n.max,step:n.step},t.$attrs),null,16,$n),[[T,s.sliderValue,void 0,{number:!0}]])]),a("button",{class:"col-1 btn btn-block btn-info",type:"button",onClick:e[2]||(e[2]=(...r)=>s.increment&&s.increment(...r))},[m(o,{icon:["fas","step-forward"]})])])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const In=y(kn,[["render",Tn],["__scopeId","data-v-449fb0a5"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseRangeInput.vue"]]),xn=Object.freeze(Object.defineProperty({__proto__:null,default:In},Symbol.toStringTag,{value:"Module"}));C.add(z);const Mn={name:"OpenwbSelectInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:[String,Number,Array,null],required:!1,default:void 0},groups:{type:Array,required:!1,default:void 0},options:{type:Array,required:!1,default:void 0},notSelected:{type:String,default:void 0},addButton:{type:Boolean,default:!1}},emits:["update:modelValue","input:add"],computed:{value:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},addDisabled:{get(){return this.value===void 0}}},methods:{addClicked(){this.addDisabled||this.$emit("input:add")}}},Vn={class:"w-100"},An={class:"input-group"},Pn={key:0,class:"input-group-prepend"},qn={class:"input-group-text"},Dn={key:0,value:void 0,disabled:""},En=["value"],Ln=["label"],jn=["value"],Wn={key:1,class:"input-group-append"};function Rn(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)])]),default:c(()=>[a("div",Vn,[a("div",An,[t.$slots.prefix?(l(),u("div",Pn,[a("div",qn,[b(t.$slots,"prefix")])])):f("",!0),B(a("select",S({"onUpdate:modelValue":e[0]||(e[0]=r=>s.value=r),class:"col form-control"},t.$attrs),[n.notSelected!==void 0?(l(),u("option",Dn," -- "+v(n.notSelected)+" -- ",1)):f("",!0),(l(!0),u(I,null,q(n.options,r=>(l(),u("option",{key:r.value,value:r.value},v(r.text),9,En))),128)),(l(!0),u(I,null,q(n.groups,r=>(l(),u("optgroup",{key:r.label,label:r.label},[(l(!0),u(I,null,q(r.options,k=>(l(),u("option",{key:k.value,value:k.value},v(k.text),9,jn))),128))],8,Ln))),128))],16),[[se,s.value]]),n.addButton?(l(),u("div",Wn,[a("div",{class:O(["input-group-text",s.addDisabled?"not-clickable":"bg-success clickable"]),onClick:e[1]||(e[1]=r=>s.addClicked())},[b(t.$slots,"inputAdd",{},()=>[m(o,{"fixed-width":"",icon:["fas","plus"]})])],2)])):f("",!0)])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help")]),key:"0"}:void 0]),1024)}const Nn=y(Mn,[["render",Rn],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseSelectInput.vue"]]),Fn=Object.freeze(Object.defineProperty({__proto__:null,default:Nn},Symbol.toStringTag,{value:"Module"}));C.add(L,we,ke);const Hn={name:"OpenwbSubmitButtons",components:{FontAwesomeIcon:$},props:{formName:{type:String,default:void 0},hideReset:{type:Boolean,default:!1},hideDefaults:{type:Boolean,default:!0}},emits:["reset","defaults","save"],data(){return{showModalReset:!1,showModalDefaults:!1}},computed:{showModalSave(){return this.$store.state.local.savingData}},methods:{showResetModal(){this.showModalReset=!0},handleModalReset(t){this.showModalReset=!1,t=="confirm"&&this.$emit("reset")},showDefaultsModal(){this.showModalDefaults=!0},handleModalDefaults(t){this.showModalDefaults=!1,t=="confirm"&&this.$emit("defaults")},saveSettings(){if(this.formName){if(!document.forms[this.formName].reportValidity()){console.debug("form invalid");return}}else console.debug("no form to validate");this.$emit("save")}}},Un={class:"row justify-content-center mb-1"},zn={class:"col-md-4 d-flex py-1 justify-content-center"},Gn={key:0,class:"col-md-4 d-flex py-1 justify-content-center"},Jn={key:1,class:"col-md-4 d-flex py-1 justify-content-center"};function Kn(t,e,n,d,i,s){const o=g("openwb-base-modal-dialog"),_=g("font-awesome-icon");return l(),u(I,null,[m(o,{show:s.showModalSave,title:"Speichern",subtype:"success","prevent-close":!0},{default:c(()=>e[3]||(e[3]=[p(" Einstellungen werden gespeichert... ")])),_:1},8,["show"]),m(o,{show:i.showModalReset,title:"Änderungen verwerfen",subtype:"warning",buttons:[{text:"Ok",event:"confirm",subtype:"warning"}],onModalResult:s.handleModalReset},{default:c(()=>e[4]||(e[4]=[p(" Wollen Sie die nicht gespeicherten Änderungen wirklich verwerfen? ")])),_:1},8,["show","onModalResult"]),m(o,{show:i.showModalDefaults,title:"Werkseinstellungen",subtype:"danger",buttons:[{text:"Ok",event:"confirm",subtype:"danger"}],onModalResult:s.handleModalDefaults},{default:c(()=>e[5]||(e[5]=[p(" Wollen Sie wirklich alle Werte dieser Seite auf die Werkseinstellungen zurücksetzen? ")])),_:1},8,["show","onModalResult"]),a("div",Un,[a("div",zn,[a("button",{id:"saveSettingsBtn",type:"button",class:"btn btn-block btn-success",onClick:e[0]||(e[0]=(...r)=>s.saveSettings&&s.saveSettings(...r))},[e[6]||(e[6]=p(" Speichern ")),m(_,{"fixed-width":"",icon:["fas","check"]})])]),n.hideReset?f("",!0):(l(),u("div",Gn,[a("button",{id:"modalResetBtn",type:"button",class:"btn btn-block btn-warning",onClick:e[1]||(e[1]=(...r)=>s.showResetModal&&s.showResetModal(...r))},[e[7]||(e[7]=p(" Änderungen verwerfen ")),m(_,{"fixed-width":"",icon:["fas","undo"]})])])),n.hideDefaults?f("",!0):(l(),u("div",Jn,[a("button",{id:"modalDefaultsBtn",type:"button",class:"btn btn-block btn-danger",onClick:e[2]||(e[2]=(...r)=>s.showDefaultsModal&&s.showDefaultsModal(...r))},[e[8]||(e[8]=p(" Werkseinstellungen ")),m(_,{"fixed-width":"",icon:["fas","times"]})])]))])],64)}const Qn=y(Hn,[["render",Kn],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseSubmitButtons.vue"]]),Yn=Object.freeze(Object.defineProperty({__proto__:null,default:Qn},Symbol.toStringTag,{value:"Module"}));C.add(G,Se,Be,Oe,Ce,J,$e,Te,Ie,xe,Me,Ve);const Zn={name:"OpenwbTextInput",components:{FontAwesomeIcon:$,OpenwbBaseSettingElement:M},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:[String,Object],required:!1,default:void 0},subtype:{validator:function(t){return["text","email","host","url","user","json","password","time","date","month","year"].indexOf(t)!==-1},default:"text"},pattern:{type:String,required:!1,default:void 0},unit:{type:String,required:!1,default:void 0},emptyValue:{type:[String,Object,null],required:!1,default:null},showQuickButtons:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{showPassword:!1,inputInvalid:!1,tempValue:this.modelValue}},computed:{value:{get(){return this.subtype=="json"?this.inputInvalid?(console.warn("returning invalid String"),this.tempValue):JSON.stringify(this.tempValue):this.modelValue},set(t){if(this.subtype=="json")try{let e=JSON.parse(t);this.inputInvalid=!1,this.$refs.jsonInput.setCustomValidity(""),this.tempValue=e,this.$emit("update:modelValue",e)}catch(e){console.error("parsing JSON failed: "+t,e),this.inputInvalid=!0,this.$refs.jsonInput.setCustomValidity("Ungültiger JSON Ausdruck!"),this.tempValue=t}else t==""&&(t=this.emptyValue),this.$emit("update:modelValue",t)}},inputRef(){switch(this.subtype){case"json":return this.$refs.jsonInput;case"password":return this.$refs.passwordInput;case"host":return this.$refs.hostInput;case"email":case"url":return this.$refs.urlInput;case"time":return this.$refs.timeInput;case"date":return this.$refs.dateInput;case"month":return this.$refs.monthInput;case"year":return this.$refs.yearInput}return this.$refs.textInput}},methods:{togglePassword(){this.showPassword=!this.showPassword},modify(t){var e,n=new Date(this.modelValue);switch(this.subtype){case"date":n.setDate(n.getDate()+t),e=String(n.getFullYear())+"-"+String(n.getMonth()+1).padStart(2,"0")+"-"+String(n.getDate()).padStart(2,"0");break;case"month":n.setMonth(n.getMonth()+t),e=String(n.getFullYear())+"-"+String(n.getMonth()+1).padStart(2,"0");break;case"year":n.setYear(n.getFullYear()+t),e=String(n.getFullYear());break;default:console.warn(`cannot modify input of subtype '${this.subtype}'`);return}e>this.inputRef.max||e[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",Xn,[a("div",es,[a("div",ts,[a("div",ns,[n.subtype=="text"?(l(),h(o,{key:0,"fixed-width":"",icon:["fas","keyboard"]})):f("",!0),n.subtype=="email"?(l(),h(o,{key:1,"fixed-width":"",icon:["fas","envelope"]})):f("",!0),n.subtype=="host"?(l(),h(o,{key:2,"fixed-width":"",icon:["fas","network-wired"]})):f("",!0),n.subtype=="url"?(l(),h(o,{key:3,"fixed-width":"",icon:["fas","globe"]})):f("",!0),n.subtype=="user"?(l(),h(o,{key:4,"fixed-width":"",icon:["fas","user"]})):f("",!0),n.subtype=="json"?(l(),h(o,{key:5,"fixed-width":"",icon:["fas","code"]})):f("",!0),n.subtype=="password"?(l(),h(o,{key:6,"fixed-width":"",icon:i.showPassword?["fas","unlock"]:["fas","lock"]},null,8,["icon"])):f("",!0),n.subtype=="time"?(l(),h(o,{key:7,"fixed-width":"",icon:["fas","clock"]})):f("",!0),n.subtype=="date"||n.subtype=="month"||n.subtype=="year"?(l(),h(o,{key:8,"fixed-width":"",icon:["fas","calendar-day"]})):f("",!0)])]),["text","user"].includes(n.subtype)?B((l(),u("input",S({key:0,ref:"textInput","onUpdate:modelValue":e[0]||(e[0]=r=>s.value=r),type:"text",class:["form-control",{invalid:i.inputInvalid}]},t.$attrs,{pattern:n.pattern}),null,16,ss)),[[T,s.value]]):f("",!0),n.subtype=="json"?B((l(),u("input",S({key:1,ref:"jsonInput","onUpdate:modelValue":e[1]||(e[1]=r=>s.value=r),type:"text",class:"form-control"},t.$attrs,{pattern:n.pattern}),null,16,os)),[[T,s.value]]):f("",!0),n.subtype=="password"?B((l(),u("input",S({key:2,ref:"passwordInput","onUpdate:modelValue":e[2]||(e[2]=r=>s.value=r),type:i.showPassword?"text":"password",class:"form-control"},t.$attrs,{pattern:n.pattern}),null,16,as)),[[R,s.value]]):f("",!0),n.subtype=="host"?B((l(),u("input",S({key:3,ref:"hostInput","onUpdate:modelValue":e[3]||(e[3]=r=>s.value=r),type:"text",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),["email","url"].includes(n.subtype)?B((l(),u("input",S({key:4,"onUpdate:modelValue":e[4]||(e[4]=r=>s.value=r),refs:"urlInput",type:n.subtype,class:"form-control"},t.$attrs),null,16,is)),[[R,s.value]]):f("",!0),n.subtype=="time"?B((l(),u("input",S({key:5,ref:"timeInput","onUpdate:modelValue":e[5]||(e[5]=r=>s.value=r),type:"time",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),n.subtype=="date"?B((l(),u("input",S({key:6,ref:"dateInput","onUpdate:modelValue":e[6]||(e[6]=r=>s.value=r),type:"date",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),n.subtype=="month"?B((l(),u("input",S({key:7,ref:"monthInput","onUpdate:modelValue":e[7]||(e[7]=r=>s.value=r),type:"month",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),n.subtype=="year"?B((l(),u("input",S({key:8,ref:"yearInput","onUpdate:modelValue":e[8]||(e[8]=r=>s.value=r),type:"number",class:"form-control"},t.$attrs),null,16)),[[T,s.value]]):f("",!0),n.unit?(l(),u("div",ls,[a("div",rs,v(n.unit),1)])):f("",!0),n.subtype=="password"?(l(),u("div",{key:10,class:"input-group-append clickable",onClick:e[9]||(e[9]=(...r)=>s.togglePassword&&s.togglePassword(...r))},[a("div",ds,[m(o,{"fixed-width":"",icon:i.showPassword?["far","eye"]:["far","eye-slash"]},null,8,["icon"])])])):f("",!0),n.showQuickButtons&&(n.subtype=="date"||n.subtype=="month"||n.subtype=="year")?(l(),u("div",{key:11,class:"input-group-append clickable",onClick:e[10]||(e[10]=r=>s.modify(-1))},e[12]||(e[12]=[a("div",{class:"input-group-text"},"-",-1)]))):f("",!0),n.showQuickButtons&&(n.subtype=="date"||n.subtype=="month"||n.subtype=="year")?(l(),u("div",{key:12,class:"input-group-append clickable",onClick:e[11]||(e[11]=r=>s.modify(1))},e[13]||(e[13]=[a("div",{class:"input-group-text"},"+",-1)]))):f("",!0)])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const cs=y(Zn,[["render",us],["__scopeId","data-v-6927d479"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseTextInput.vue"]]),ps=Object.freeze(Object.defineProperty({__proto__:null,default:cs},Symbol.toStringTag,{value:"Module"}));C.add(G,J);const ms={name:"OpenwbTextareaInput",components:{OpenwbBaseSettingElement:M,FontAwesomeIcon:$},inheritAttrs:!1,props:{title:{type:String,required:!1,default:""},modelValue:{type:[String,Object],required:!1,default:void 0},subtype:{validator:function(t){return["text","json"].indexOf(t)!==-1},default:"text"}},emits:["update:modelValue"],data(){return{inputInvalid:!1,tempValue:this.modelValue}},computed:{value:{get(){return this.subtype=="json"?this.inputInvalid?(console.debug("returning invalid String"),this.tempValue):JSON.stringify(this.tempValue,void 0,2):this.modelValue},set(t){if(this.subtype=="json")try{let e=JSON.parse(t);this.inputInvalid=!1,this.$refs.jsonInput.setCustomValidity(""),this.tempValue=e,this.$emit("update:modelValue",e)}catch(e){console.warn("parsing JSON failed: "+t,e),this.inputInvalid=!0,this.$refs.jsonInput.setCustomValidity("Ungültiger JSON Ausdruck!"),this.tempValue=t}else this.$emit("update:modelValue",t)}},length:{get(){return this.value!==void 0?this.value.length:0}}}},fs={class:"w-100"},_s={class:"input-group"},bs={class:"input-group-prepend"},gs={class:"input-group-text"},hs={key:2,class:"input-group-append"},vs={class:"input-group-text"},ys={class:"form-text text-muted text-right"};function ws(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("openwb-base-setting-element");return l(),h(_,null,V({title:c(()=>[b(t.$slots,"title",{},()=>[p(v(n.title),1)],!0)]),default:c(()=>[a("div",fs,[a("div",_s,[a("div",bs,[a("div",gs,[n.subtype=="text"?(l(),h(o,{key:0,"fixed-width":"",icon:["fas","keyboard"]})):f("",!0),n.subtype=="json"?(l(),h(o,{key:1,"fixed-width":"",icon:["fas","code"]})):f("",!0)])]),n.subtype==="json"?B((l(),u("textarea",S({key:0,ref:"jsonInput","onUpdate:modelValue":e[0]||(e[0]=r=>s.value=r),class:"form-control"},t.$attrs),null,16)),[[T,s.value,void 0,{lazy:!0}]]):B((l(),u("textarea",S({key:1,"onUpdate:modelValue":e[1]||(e[1]=r=>s.value=r),class:"form-control"},t.$attrs),null,16)),[[T,s.value]]),t.$attrs.maxlength?(l(),u("div",hs,[a("div",vs,[a("small",ys,v(s.length)+" / "+v(t.$attrs.maxlength),1)])])):f("",!0)])])]),_:2},[t.$slots.help?{name:"help",fn:c(()=>[b(t.$slots,"help",{},void 0,!0)]),key:"0"}:void 0]),1024)}const ks=y(ms,[["render",ws],["__scopeId","data-v-3d93046b"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseTextarea.vue"]]),Ss=Object.freeze(Object.defineProperty({__proto__:null,default:ks},Symbol.toStringTag,{value:"Module"}));const Bs={name:"OpenwbToast",props:{topic:{type:String,required:!0},subtype:{validator:function(t){return["info","success","warning","danger","primary","secondary","light","dark"].indexOf(t)!==-1},default:"secondary"},source:{type:String,required:!0,validator:function(t){return["system","client","command"].indexOf(t)!==-1}},timestamp:{type:Number,required:!0}},emits:["dismiss","hide"],data(){return{handle:void 0,relativeTime:void 0,hidden:!1}},mounted(){this.handle=window.setInterval(this.updateRelativeTime,1e3)},unmounted(){window.clearInterval(this.handle)},methods:{dismiss(){this.$emit("dismiss",{topic:this.topic})},updateRelativeTime(){const t={year:31536e6,month:2628e6,day:864e5,hour:36e5,minute:6e4,second:1e3};var e=new Intl.RelativeTimeFormat("de",{numeric:"auto"});const d=new Date-this.timestamp*1e3;for(var i in t)if(Math.abs(d)>t[i]){this.relativeTime=e.format(Math.round(-d/t[i]),i);break}d>10*1e3&&!this.hidden&&(this.hidden=!0,this.$emit("hide",{topic:this.topic}))}}},Os={key:0,class:"time-diff"},Cs={class:"toast-body"};function $s(t,e,n,d,i,s){return l(),u("div",{class:O(["toast","border-"+n.subtype]),role:"alert"},[a("div",{class:O(["toast-header","bg-"+n.subtype])},[e[2]||(e[2]=a("strong",{class:"pr-2 mr-auto"},"openWB",-1)),n.timestamp?(l(),u("small",Os,v(i.relativeTime),1)):f("",!0),a("button",{type:"button",class:"ml-2 mb-1 close","data-dismiss":"toast","aria-label":"Close",onClick:e[0]||(e[0]=(...o)=>s.dismiss&&s.dismiss(...o))},e[1]||(e[1]=[a("span",{"aria-hidden":"true"},"×",-1)]))],2),a("div",Cs,[b(t.$slots,"default",{},void 0,!0)])],2)}const Ts=y(Bs,[["render",$s],["__scopeId","data-v-c51b5764"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbBaseToast.vue"]]),Is=Object.freeze(Object.defineProperty({__proto__:null,default:Ts},Symbol.toStringTag,{value:"Module"}));C.add(Ae);const xs={name:"OpenwbNavBar",components:{FontAwesomeIcon:$},computed:{nodeEnv(){return"development"}},watch:{$route(){this.$refs.collapsibleNavbar.classList.remove("show"),this.$refs.navbarButton.classList.add("collapsed"),this.$refs.navbarButton.setAttribute("aria-expanded",!1)}}},Ms={class:"navbar navbar-expand-lg bg-dark navbar-dark fixed-top"},Vs={ref:"navbarButton",class:"navbar-toggler mr-5",type:"button","data-toggle":"collapse","data-target":"#collapsibleNavbar"},As={id:"collapsibleNavbar",ref:"collapsibleNavbar",class:"collapse navbar-collapse navbar-nav-scroll"},Ps={class:"navbar-nav"},qs={class:"nav-item"},Ds={class:"nav-item dropdown nav-separator-after"},Es={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},Ls={class:"nav-item dropdown"},js={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},Ws={class:"nav-item dropdown"},Rs={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},Ns={class:"nav-item dropdown"},Fs={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},Hs={class:"nav-item dropdown"},Us={class:"dropdown-menu","aria-labelledby":"navbarDropdown"},zs={class:"nav-item nav-separator-before"},Gs={class:"nav-link",href:"https://github.com/openWB/core/wiki",target:"_blank"};function Js(t,e,n,d,i,s){const o=g("router-link"),_=g("font-awesome-icon");return l(),u("nav",Ms,[e[31]||(e[31]=a("a",{class:"navbar-brand",href:"/openWB/web/"},[a("span",null,"openWB")],-1)),a("button",Vs,e[0]||(e[0]=[a("span",{class:"navbar-toggler-icon"},null,-1)]),512),a("div",As,[a("ul",Ps,[a("li",qs,[m(o,{to:"/Status",class:"nav-link","active-class":"active disabled"},{default:c(()=>e[1]||(e[1]=[p(" Status ")])),_:1})]),a("li",Ds,[e[4]||(e[4]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," Auswertungen ",-1)),a("div",Es,[m(o,{to:"/Logging/ChargeLog",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[2]||(e[2]=[p(" Ladeprotokoll ")])),_:1}),m(o,{to:"/Logging/Chart",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[3]||(e[3]=[p(" Diagramme ")])),_:1})])]),a("li",Ls,[e[7]||(e[7]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," Einstellungen ",-1)),a("div",js,[m(o,{to:"/GeneralConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[5]||(e[5]=[p(" Allgemein ")])),_:1}),m(o,{to:"/OptionalComponents",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[6]||(e[6]=[p(" Optionale Hardware ")])),_:1})])]),a("li",Ws,[e[13]||(e[13]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," Ladeeinstellungen ",-1)),a("div",Rs,[m(o,{to:"/GeneralChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[8]||(e[8]=[p(" Übergreifendes ")])),_:1}),m(o,{to:"/InstantChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[9]||(e[9]=[p(" Sofortladen ")])),_:1}),m(o,{to:"/PVChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[10]||(e[10]=[p(" PV-Laden ")])),_:1}),m(o,{to:"/TimeChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[11]||(e[11]=[p(" Zeitladen ")])),_:1}),m(o,{to:"/ScheduledChargeConfig",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[12]||(e[12]=[p(" Zielladen ")])),_:1})])]),a("li",Ns,[e[20]||(e[20]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," Konfiguration ",-1)),a("div",Fs,[m(o,{to:"/HardwareInstallation",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[14]||(e[14]=[p(" Geräte und Komponenten ")])),_:1}),m(o,{to:"/LoadManagementConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[15]||(e[15]=[p(" Lastmanagement ")])),_:1}),m(o,{to:"/ChargePointInstallation",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[16]||(e[16]=[p(" Ladepunkte ")])),_:1}),m(o,{to:"/VehicleConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[17]||(e[17]=[p(" Fahrzeuge ")])),_:1}),e[18]||(e[18]=a("div",{class:"dropdown-divider"},null,-1)),e[19]||(e[19]=a("a",{href:"modules/legacy_smart_home/smarthomeconfig.php",class:"dropdown-item",target:"_blank"}," SmartHome ",-1))])]),a("li",Hs,[e[29]||(e[29]=a("a",{class:"nav-link dropdown-toggle",href:"#",role:"button","data-toggle":"dropdown","aria-expanded":"false"}," System ",-1)),a("div",Us,[m(o,{to:"/System/InstallAssistant",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[21]||(e[21]=[p(" Einrichtungsassistent ")])),_:1}),m(o,{to:"/System/CloudConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[22]||(e[22]=[p(" openWB Cloud ")])),_:1}),m(o,{to:"/System/MqttBridgeConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[23]||(e[23]=[p(" MQTT-Brücken ")])),_:1}),m(o,{to:"/System/DebugConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[24]||(e[24]=[p(" Fehlersuche ")])),_:1}),m(o,{to:"/System/Support",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[25]||(e[25]=[p(" Support ")])),_:1}),m(o,{to:"/System/DataManagement",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[26]||(e[26]=[p(" Datenverwaltung ")])),_:1}),m(o,{to:"/System/SystemConfiguration",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[27]||(e[27]=[p(" System ")])),_:1}),m(o,{to:"/System/LegalSettings",class:"dropdown-item","active-class":"active disabled"},{default:c(()=>e[28]||(e[28]=[p(" Rechtliches ")])),_:1})])]),a("li",zs,[a("a",Gs,[e[30]||(e[30]=p(" Wiki ")),m(_,{"fixed-width":"",icon:["fas","external-link-alt"]})])])])],512)])}const Ks=y(xs,[["render",Js],["__scopeId","data-v-e7a6d0c0"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageNavbar.vue"]]);const Qs={name:"OpenwbPageFooter"},Ys={id:"footer",class:"footer bg-dark text-light font-small"},Zs={class:"container text-center"};function Xs(t,e,n,d,i,s){return l(),u("footer",Ys,[a("div",Zs,[a("small",null," Sie befinden sich hier: Einstellungen / "+v(t.$route.meta.heading),1)])])}const eo=y(Qs,[["render",Xs],["__scopeId","data-v-3c9a239a"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageFooter.vue"]]);C.add(Pe);const to={name:"OpenwbDonationBanner",components:{FontAwesomeIcon:$}},no={class:"mt-3 alert alert-dark text-center"},so={action:"https://www.paypal.com/cgi-bin/webscr",method:"post",target:"_blank"},oo={type:"submit",class:"btn btn-primary"};function ao(t,e,n,d,i,s){const o=g("font-awesome-icon");return l(),u("div",no,[e[3]||(e[3]=p(" Open Source made with love!")),e[4]||(e[4]=a("br",null,null,-1)),e[5]||(e[5]=p(" Jede Spende hilft die Weiterentwicklung von openWB voranzutreiben")),e[6]||(e[6]=a("br",null,null,-1)),a("form",so,[e[1]||(e[1]=a("input",{type:"hidden",name:"cmd",value:"_s-xclick"},null,-1)),e[2]||(e[2]=a("input",{type:"hidden",name:"hosted_button_id",value:"2K8C4Y2JTGH7U"},null,-1)),a("button",oo,[e[0]||(e[0]=p(" Spenden ")),m(o,{icon:["fab","paypal"]})])])])}const io=y(to,[["render",ao],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageDonationBanner.vue"]]),lo={name:"ComponentState",emits:["reset","defaults","save"],data(){return{mqttTopicsToSubscribe:[]}},computed:{weekdays(){return["Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag"]},chargeModes(){return["instant_charging","pv_charging","scheduled_charging","time_charging","standby","stop"]}},mounted(){this.mqttTopicsToSubscribe.length>0&&this.$root.doSubscribe(this.mqttTopicsToSubscribe)},unmounted(){this.mqttTopicsToSubscribe.length>0&&this.$root.doUnsubscribe(this.mqttTopicsToSubscribe)},methods:{updateState(t,e,n=void 0){console.debug("updateState:",t,e,n),this.$store.commit({type:"updateTopic",topic:t,objectPath:n,payload:e})},ac_current2dc_power(t){return parseFloat((t*3*230/1e3).toFixed(2))},dc_power2ac_current(t){return parseFloat((t*1e3/230/3).toFixed(2))},getWildcardIndexList(t,e=!1){let n=t;e||(n="^"+t.replaceAll("/","\\/").replaceAll("+","[^+/]+").replaceAll("#","[^#/]+")+"$");let d=Object.keys(this.$store.state.mqtt).filter(i=>i.match(n));return d.forEach((i,s,o)=>{o[s]=parseInt(i.match(/(?:\/)([0-9]+)(?=\/)*/g)[0].replace(/[^0-9]+/g,""))}),d},getWildcardTopics(t,e=!1){let n=t;return e||(n="^"+t.replaceAll("/","\\/").replaceAll("+","[^+/]+").replaceAll("#","[^#/]+")+"$"),Object.keys(this.$store.state.mqtt).filter(d=>d.match(n)).reduce((d,i)=>({...d,[i]:this.$store.state.mqtt[i]}),{})},formatDate(t,e={year:"numeric",month:"2-digit",day:"2-digit"}){return new Date(t).toLocaleDateString(void 0,e)},formatNumber(t,e=0,n=e,d=1){if(!(t==null||isNaN(t)))return(t*d).toLocaleString(void 0,{minimumFractionDigits:e,maximumFractionDigits:n})},formatNumberTopic(t,e=0,n=e,d=1){return this.$store.state.mqtt[t]?this.formatNumber(this.$store.state.mqtt[t],e,n,d):"-"},formatPhaseArrayNumberTopic(t,e=0,n=e,d=1){return this.$store.state.mqtt[t]?this.$store.state.mqtt[t].map(i=>this.formatNumber(i,e,n,d)).join(" / "):"- / - / -"},translateChargeMode(t){switch(t){case"instant_charging":return"Sofort";case"pv_charging":return"PV";case"scheduled_charging":return"Zielladen";case"time_charging":return"Zeitladen";case"standby":return"Standby";case"stop":return"Stop";default:return console.warn("unknown charge mode:",t),t}}}},Q=y(lo,[["__file","/opt/openWB-dev/openwb-ui-settings/src/components/mixins/ComponentState.vue"]]);C.add(qe,De);const ro={name:"OpenwbPageMessages",components:{FontAwesomeIcon:$,FontAwesomeLayers:Ee,FontAwesomeLayersText:Le},mixins:[Q],data(){return{mqttTopicsToSubscribe:["openWB/system/messages/+","openWB/command/"+this.$root.mqttClientId+"/messages/+"],showAllMessages:!1,hiddenMessages:[]}},computed:{alertLevel(){return this.messages.reduce((e,n)=>((e=="light"&&["info","success","warning","danger"].includes(n.type)||e=="info"&&["success","warning","danger"].includes(n.type)||e=="success"&&["warning","danger"].includes(n.type)||e=="warning"&&n.type=="danger")&&(e=n.type),e),"light")},messages(){const t=[];return this.systemMessages.forEach(e=>{t.push(e)}),this.clientMessages.forEach(e=>{t.push(e)}),t.sort(this.compareMessagesByTimestamp),t},recentMessages(){return this.showAllMessages?this.messages:this.messages.filter(t=>!this.hiddenMessages.includes(t.topic))},messageIndicatorClass(){return"text-"+this.alertLevel},systemMessages(){let t=this.getWildcardTopics("openWB/system/messages/+");var e=[];for(const[n,d]of Object.entries(t))e.push({topic:n,...d});return e},clientMessages(){let t=this.getWildcardTopics("openWB/command/"+this.$root.mqttClientId+"/messages/+");var e=[];for(const[n,d]of Object.entries(t))e.push({topic:n,...d});return e}},methods:{toggleAllMessages(){this.showAllMessages=!this.showAllMessages},compareMessagesByTimestamp(t,e){return e.timestamp-t.timestamp},clearTopic(t){this.$root.doPublish(t,void 0)},dismissMessage(t){this.clearTopic(t.topic);var e=this.hiddenMessages.indexOf(t.topic);e>-1&&this.hiddenMessages.splice(e,1)},dismissAllMessages(){this.messages.forEach(t=>{this.clearTopic(t.topic)}),this.hiddenMessages=[],this.toggleAllMessages()},hideMessage(t){this.hiddenMessages.includes(t.topic)||this.hiddenMessages.push(t.topic)}}},uo=["innerHTML"];function co(t,e,n,d,i,s){const o=g("font-awesome-icon"),_=g("font-awesome-layers-text"),r=g("font-awesome-layers"),k=g("openwb-base-alert"),x=g("openwb-base-click-button"),A=g("openwb-base-toast");return l(),u(I,null,[(l(),h(F,{to:"body"},[a("div",{id:"message-indicator",class:O(["text-light mt-1 p-2 mr-1 clickable",i.showAllMessages?"active":""]),onClick:e[0]||(e[0]=(...P)=>s.toggleAllMessages&&s.toggleAllMessages(...P))},[m(r,{"full-width":"",style:{"font-size":"175%"}},{default:c(()=>[m(o,{"fixed-width":"",icon:i.showAllMessages?["fas","bell"]:["far","bell"],class:O(s.messageIndicatorClass)},null,8,["icon","class"]),s.messages.length>0?(l(),h(_,{key:0,counter:"",value:s.messages.length,position:"top-right",class:"message-counter bg-light text-dark"},null,8,["value"])):f("",!0)]),_:1})],2)])),s.recentMessages.length>0||i.showAllMessages?(l(),u("div",{key:0,class:O(["openwb-toast-container",i.showAllMessages?"full-height":""])},[s.recentMessages.length==0?(l(),h(k,{key:0,subtype:"info"},{default:c(()=>e[1]||(e[1]=[p(" Keine Nachrichten vorhanden. ")])),_:1})):i.showAllMessages?(l(),h(x,{key:1,class:"btn-sm btn-secondary mb-1",onButtonClicked:s.dismissAllMessages},{default:c(()=>e[2]||(e[2]=[p(" Alle Nachrichten löschen ")])),_:1},8,["onButtonClicked"])):f("",!0),(l(!0),u(I,null,q(s.recentMessages,P=>(l(),h(A,{key:P.topic,topic:P.topic,source:P.source,subtype:P.type,timestamp:P.timestamp,onDismiss:s.dismissMessage,onHide:s.hideMessage},{default:c(()=>[a("span",{innerHTML:P.message},null,8,uo)]),_:2},1032,["topic","source","subtype","timestamp","onDismiss","onHide"]))),128))],2)):f("",!0)],64)}const po=y(ro,[["render",co],["__scopeId","data-v-2c25f0d0"],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageMessages.vue"]]),mo={name:"OpenwbPageBlocker",mixins:[Q],data(){return{mqttTopicsToSubscribe:["openWB/system/boot_done","openWB/system/update_in_progress"]}},computed:{title(){return this.bootInProgress||this.updateInProgress?"openWB ist noch nicht bereit":this.reloadRequired?"Neues Laden der Seite erforderlich":"???"},myButtons(){return!(this.bootInProgress||this.updateInProgress)&&this.reloadRequired?[{text:"Jetzt neu laden",subtype:"success",event:"reload"}]:[]},bootInProgress(){return this.$store.state.mqtt["openWB/system/boot_done"]==null?!0:!this.$store.state.mqtt["openWB/system/boot_done"]},updateInProgress(){return this.$store.state.mqtt["openWB/system/update_in_progress"]==null?!1:this.$store.state.mqtt["openWB/system/update_in_progress"]},reloadRequired(){return this.$store.state.local.reloadRequired},showModalBlocker(){return this.bootInProgress||this.updateInProgress||this.reloadRequired}},methods:{handleModalResult(t){t=="reload"?location.reload():console.warn("unknown event",t)}}},fo={class:"openwb-blocker"},_o={key:0},bo={key:1},go={key:2},ho={key:3};function vo(t,e,n,d,i,s){const o=g("openwb-base-modal-dialog");return l(),u("div",fo,[m(o,{show:s.showModalBlocker,title:s.title,subtype:"dark","prevent-close":!0,buttons:s.myButtons,onModalResult:e[0]||(e[0]=_=>s.handleModalResult(_))},{default:c(()=>[s.bootInProgress?(l(),u("p",_o,"Der Systemstart ist noch nicht abgeschlossen.")):f("",!0),s.updateInProgress?(l(),u("p",bo,"Es wird eine Systemaktualisierung ausgeführt.")):f("",!0),!(s.bootInProgress||s.updateInProgress)&&s.reloadRequired?(l(),u("p",go,"Bitte die Seite neu laden.")):(l(),u("p",ho,"Bitte warten..."))]),_:1},8,["show","title","buttons"])])}const yo=y(mo,[["render",vo],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/OpenwbPageBlocker.vue"]]);const wo={name:"OpenwbSettingsApp",components:{NavBar:Ks,PageFooter:eo,DonationBanner:io,Messages:po,Blocker:yo},data(){return{client:{connected:!1},connection:{protocol:location.protocol=="https:"?"wss":"ws",host:location.hostname,port:parseInt(location.port)||(location.protocol=="https:"?443:80),endpoint:"/ws",connectTimeout:4e3,reconnectPeriod:4e3}}},computed:{mqttClientId(){try{return this.client.options.clientId}catch(t){console.error("mqttClientId error",t);return}},topicList(){return Object.keys(this.$store.state.mqtt)}},created(){this.createConnection()},methods:{async saveValues(t=void 0){function e(d){return new Promise(i=>setTimeout(i,d))}console.debug("saving values..."),this.$store.state.local.savingData=!0;let n={};t===void 0?(console.debug("no topics defined, so save everything we have in store"),n=this.$store.state.mqtt):Array.isArray(t)?t.forEach(d=>{n[d]=this.$store.state.mqtt[d]}):console.error("expected array, got ",typeof t);for(const[d,i]of Object.entries(n)){let s=d.replace("openWB/","openWB/set/");console.debug("saving data:",s,i),this.doPublish(s,i),await e(100)}console.debug("done saving data"),this.$store.state.local.savingData=!1},resetValues(t=this.topicList){console.debug("resetting values..."),console.debug("topics: ",t),this.doUnsubscribe(t),this.doSubscribe(t)},setDefaultValues(){console.debug("setting default values... (ToDo)")},sendCommand(t){this.doPublish("openWB/set/command/"+this.client.options.clientId+"/todo",t,!1)},createConnection(){const{protocol:t,host:e,port:n,endpoint:d,...i}=this.connection,s=`${t}://${e}:${n}${d}`;console.debug("connecting to broker:",s);try{this.client=oe.connect(s,i)}catch(o){console.error("mqtt.connect error",o)}this.client.on("connect",()=>{console.debug("Connection succeeded! ClientId: ",this.client.options.clientId),this.doSubscribe(["openWB/system/usage_terms_acknowledged"]),this.doSubscribe(["openWB/system/installAssistantDone"])}),this.client.on("error",o=>{console.error("Connection failed",o)}),this.client.on("message",(o,_)=>{if(_.toString().length>0){let r;try{r=JSON.parse(_.toString())}catch(k){console.debug("Json parsing failed, fallback to string: ",o,k),r=_.toString()}this.$store.commit("updateTopic",{topic:o,payload:r})}else this.$store.commit("removeTopic",o)})},doSubscribe(t){console.debug("doSubscribe",t),t.forEach(e=>{this.$store.commit("addSubscription",e),this.$store.getters.subscriptionCount(e)==1?(e.includes("#")||e.includes("+")?console.debug("skipping init of wildcard topic:",e):this.$store.commit("addTopic",{topic:e,payload:void 0}),this.client.subscribe(e,{},n=>{if(n){console.error("Subscribe to topics error",n);return}})):console.debug("Already subscribed to topic: ",e)})},doUnsubscribe(t){console.debug("doUnsubscribe",t),t.forEach(e=>{this.$store.commit("removeSubscription",e),this.$store.getters.subscriptionCount(e)==0?(this.client.unsubscribe(e,n=>{n&&console.error("Unsubscribe error",n)}),e.includes("#")||e.includes("+")?(console.debug("expanding wildcard topic:",e),Object.keys(this.getWildcardTopics(e)).forEach(n=>{console.debug("removing wildcardTopic:",n),this.$store.commit("removeTopic",n)})):(console.debug("removing topic:",e),this.$store.commit("removeTopic",e))):console.debug("Still subscribed to topic: ",e)})},doPublish(t,e,n=!0,d=2){let i={qos:d,retain:n};this.client.publish(t,JSON.stringify(e),i,s=>{s&&console.error("Publish error",s)})},postClientMessage(t,e="secondary"){console.debug("postMessage:",t,e);const n=Date.now(),d="openWB/command/"+this.mqttClientId+"/messages/"+n;this.$store.commit({type:"addTopic",topic:d,payload:{message:t,type:e,source:"client",timestamp:Math.floor(n/1e3)}})},getWildcardTopics(t,e=!1){let n=t;return e||(n="^"+t.replaceAll("/","\\/").replaceAll("+","[^+/]+").replaceAll("#","[^#/]+")+"$"),Object.keys(this.$store.state.mqtt).filter(d=>d.match(n)).reduce((d,i)=>({...d,[i]:this.$store.state.mqtt[i]}),{})}}},ko={role:"main",class:"container"},So={id:"content"};function Bo(t,e,n,d,i,s){const o=g("nav-bar"),_=g("router-view"),r=g("donation-banner"),k=g("page-footer"),x=g("messages"),A=g("blocker");return l(),u(I,null,[a("header",null,[m(o)]),a("div",ko,[a("div",So,[a("h1",null,v(t.$route.meta.heading),1),m(_,{onSave:s.saveValues,onReset:s.resetValues,onDefaults:s.setDefaultValues,onSendCommand:s.sendCommand},null,8,["onSave","onReset","onDefaults","onSendCommand"])]),m(r)]),m(k),m(x),m(A)],64)}const Oo=y(wo,[["render",Bo],["__file","/opt/openWB-dev/openwb-ui-settings/src/App.vue"]]),Co="modulepreload",$o=function(t){return"/openWB/web/settings/"+t},N={},w=function(e,n,d){if(!n||n.length===0)return e();const i=document.getElementsByTagName("link");return Promise.all(n.map(s=>{if(s=$o(s),s in N)return;N[s]=!0;const o=s.endsWith(".css"),_=o?'[rel="stylesheet"]':"";if(!!d)for(let x=i.length-1;x>=0;x--){const A=i[x];if(A.href===s&&(!o||A.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${s}"]${_}`))return;const k=document.createElement("link");if(k.rel=o?"stylesheet":Co,o||(k.as="script",k.crossOrigin=""),k.href=s,document.head.appendChild(k),o)return new Promise((x,A)=>{k.addEventListener("load",x),k.addEventListener("error",()=>A(new Error(`Unable to preload CSS for ${s}`)))})})).then(()=>e()).catch(s=>{const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=s,window.dispatchEvent(o),!o.defaultPrevented)throw s})};let Y={mqtt:{},mqttSubscriptions:{},local:{reloadRequired:!1,savingData:!1},text:{rfidWiki:'Bitte auch hiervon abhängige Einstellungen beachten. Eine Übersicht gibt es im Wiki.'}};Y.examples={text1:"Text...",text2:"mail@domain.com",text3:"openwb.local",text4:"http://www.openwb.de",text5:"Benutzername",text6:"12:34",text7:"2021-10-31",number1:5,number2:10,number3:28e-5,password1:"GeHeiM!",textarea1:"Langer Text...",range1:6,range2:10,select1:1,select2:void 0,buttonGroup1:1,checkbox1:!0,json1:{text:"Text",number:123},hierarchy1:[{id:0,type:"counter",children:[{id:3,type:"inverter",children:[]},{id:4,type:"bat",children:[]},{id:1,type:"cp",children:[]},{id:2,type:"cp",children:[]}]}],hierarchy1Labels:{0:"EVU",1:"Ladepunkt 1",2:"Ladepunkt 2",3:"Wechselrichter",4:"Batteriespeicher"},tags:["1234","2345","3456"]};const D=ae({state:Y,mutations:{storeLocal(t,e){t.local[e.name]=e.value},addTopic(t,e){Object.keys(t.mqtt).includes(e.topic)?console.warn("topic already exists: ",e.topic):t.mqtt[e.topic]=e.payload},removeTopic(t,e){delete t.mqtt[e]},updateTopic(t,e){const n=(d,i,s)=>i.split(".").reduce((o,_,r)=>o[_]=i.split(".").length===++r?s:o[_]||{},d);e.topic in t.mqtt||!(e.topic in t.examples)?e.objectPath!=null?n(t.mqtt[e.topic],e.objectPath,e.payload):t.mqtt[e.topic]=e.payload:(console.debug("topic not found in state.mqtt: ",e.topic),e.topic in t.examples?e.objectPath!=null?n(t.examples[e.topic],e.objectPath,e.payload):t.examples[e.topic]=e.payload:console.warn("topic not found in state: ",e.topic," giving up"))},addSubscription(t,e){e in t.mqttSubscriptions?t.mqttSubscriptions[e]+=1:t.mqttSubscriptions[e]=1,console.debug("subscription count: ",e,t.mqttSubscriptions[e])},removeSubscription(t,e){e in t.mqttSubscriptions&&(t.mqttSubscriptions[e]-=1,t.mqttSubscriptions[e]<=0&&delete t.mqttSubscriptions[e])}},actions:{},modules:{},getters:{usageTermsAcknowledged(t){return new Promise(e=>{if(t.mqtt["openWB/system/usage_terms_acknowledged"]!==void 0)e(t.mqtt["openWB/system/usage_terms_acknowledged"]);else{var n,d;n=setTimeout(()=>{clearInterval(d),e(!1)},5e3),d=setInterval(()=>{t.mqtt["openWB/system/usage_terms_acknowledged"]!==void 0&&(clearTimeout(n),clearInterval(d),e(t.mqtt["openWB/system/usage_terms_acknowledged"]))},100)}})},installAssistantDone(t){return new Promise(e=>{if(t.mqtt["openWB/system/installAssistantDone"]!==void 0)e(t.mqtt["openWB/system/installAssistantDone"]);else{var n,d;n=setTimeout(()=>{clearInterval(d),e(!1)},5e3),d=setInterval(()=>{t.mqtt["openWB/system/installAssistantDone"]!==void 0&&(clearTimeout(n),clearInterval(d),e(t.mqtt["openWB/system/installAssistantDone"]))},100)}})},subscriptionCount:t=>e=>t.mqttSubscriptions[e]||0}}),Z=[{path:"/",redirect:"/GeneralConfig"},{path:"/Status",name:"Status",meta:{heading:"Status"},component:()=>w(()=>import("./Status-907a1b1e.js"),["assets/Status-907a1b1e.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-chartjs-888a84c2.js","assets/vendor-luxon-8ddd27a0.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/Status-1500a80b.css"])},{path:"/Logging/ChargeLog",name:"ChargeLog",meta:{heading:"Auswertungen - Ladeprotokoll"},component:()=>w(()=>import("./ChargeLog-77d9349e.js"),["assets/ChargeLog-77d9349e.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/ChargeLog-1fb3fa68.css"])},{path:"/Logging/Chart/:chartRange?/:initialDate?",name:"DailyChart",meta:{heading:"Auswertungen - Diagramme"},component:()=>w(()=>import("./Chart-59cb598d.js"),["assets/Chart-59cb598d.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-chartjs-888a84c2.js","assets/vendor-luxon-8ddd27a0.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/Chart-e20451b4.css"])},{path:"/GeneralConfig",name:"GeneralConfig",meta:{heading:"Einstellungen - Allgemein"},component:()=>w(()=>import("./GeneralConfig-b1531208.js").then(t=>t.a),["assets/GeneralConfig-b1531208.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js"])},{path:"/OptionalComponents",name:"OptionalComponents",meta:{heading:"Einstellungen - Optionale Hardware"},component:()=>w(()=>import("./OptionalComponents-62f1e823.js").then(t=>t.O),["assets/OptionalComponents-62f1e823.js","assets/dynamic-import-helper-be004503.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css"])},{path:"/GeneralChargeConfig",name:"GeneralChargeConfig",meta:{heading:"Ladeeinstellungen - Übergreifendes"},component:()=>w(()=>import("./GeneralChargeConfig-ed38b9ef.js").then(t=>t.G),["assets/GeneralChargeConfig-ed38b9ef.js","assets/dynamic-import-helper-be004503.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css"])},{path:"/InstantChargeConfig",name:"InstantChargeConfig",meta:{heading:"Ladeeinstellungen - Sofortladen"},component:()=>w(()=>import("./InstantChargeConfig-fe6ed126.js"),["assets/InstantChargeConfig-fe6ed126.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/PVChargeConfig",name:"PVChargeConfig",meta:{heading:"Ladeeinstellungen - PV-Laden"},component:()=>w(()=>import("./PVChargeConfig-1a8a15f2.js"),["assets/PVChargeConfig-1a8a15f2.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/TimeChargeConfig",name:"TimeChargeConfig",meta:{heading:"Ladeeinstellungen - Zeitladen"},component:()=>w(()=>import("./TimeChargeConfig-4b10d1c3.js"),["assets/TimeChargeConfig-4b10d1c3.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/ScheduledChargeConfig",name:"ScheduledChargeConfig",meta:{heading:"Ladeeinstellungen - Zielladen"},component:()=>w(()=>import("./ScheduledChargeConfig-6a7a9e08.js"),["assets/ScheduledChargeConfig-6a7a9e08.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/HardwareInstallation",name:"HardwareInstallation",meta:{heading:"Konfiguration - Geräte und Komponenten"},component:()=>w(()=>import("./HardwareInstallation-79ea1bc6.js").then(t=>t.a),["assets/HardwareInstallation-79ea1bc6.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js"])},{path:"/LoadManagementConfiguration",name:"LoadManagementConfiguration",meta:{heading:"Konfiguration - Lastmanagement"},component:()=>w(()=>import("./LoadManagementConfig-b159973d.js"),["assets/LoadManagementConfig-b159973d.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/OpenwbSortableList-ac8384c9.js","assets/OpenwbSortableList-7ba533e4.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/ChargePointInstallation",name:"ChargePointInstallation",meta:{heading:"Konfiguration - Ladepunkte"},component:()=>w(()=>import("./ChargePointInstallation-1b33cf58.js").then(t=>t.c),["assets/ChargePointInstallation-1b33cf58.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js","assets/ChargePointInstallation-7b9399a8.css"])},{path:"/VehicleConfiguration/:section?/:section_index?/:section_part?/:action?",name:"VehicleConfiguration",meta:{heading:"Konfiguration - Fahrzeuge"},component:()=>w(()=>import("./VehicleConfig-12242a8a.js").then(t=>t.b),["assets/VehicleConfig-12242a8a.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js"])},{path:"/System/CloudConfiguration",name:"CloudConfig",meta:{heading:"System - openWB Cloud"},component:()=>w(()=>import("./CloudConfig-55418356.js"),["assets/CloudConfig-55418356.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/System/MqttBridgeConfiguration",name:"MqttBridgeConfig",meta:{heading:"System - MQTT-Brücken"},component:()=>w(()=>import("./MqttBridgeConfig-8dc81a60.js"),["assets/MqttBridgeConfig-8dc81a60.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/System/DebugConfiguration",name:"Debugging",meta:{heading:"System - Fehlersuche"},component:()=>w(()=>import("./DebugConfig-f0ad1646.js"),["assets/DebugConfig-f0ad1646.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/DebugConfig-e21ab72c.css"])},{path:"/System/Support",name:"Support",meta:{heading:"System - Support"},component:()=>w(()=>import("./Support-06bb9955.js"),["assets/Support-06bb9955.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/System/LegalSettings",name:"LegalSettings",meta:{heading:"System - Rechtliches"},component:()=>w(()=>import("./LegalSettings-cbf72384.js"),["assets/LegalSettings-cbf72384.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])},{path:"/System/SystemConfiguration",name:"SystemConfig",meta:{heading:"System - System"},component:()=>w(()=>import("./System-684fe63a.js"),["assets/System-684fe63a.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js","assets/System-0f1d217b.css"])},{path:"/System/DataManagement",name:"DataManagement",meta:{heading:"System - Datenverwaltung"},component:()=>w(()=>import("./DataManagement-2ea0a0a1.js").then(t=>t.a),["assets/DataManagement-2ea0a0a1.js","assets/vendor-fortawesome-3d19d475.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/dynamic-import-helper-be004503.js"])},{path:"/System/InstallAssistant",name:"InstallAssistant",meta:{heading:"System - Einrichtungsassistent"},component:()=>w(()=>import("./InstallAssistant-0bd3b4d8.js"),["assets/InstallAssistant-0bd3b4d8.js","assets/dynamic-import-helper-be004503.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])}];Z.push({path:"/TestingStore",name:"VUEX Store",meta:{heading:"Beispiele - VUEX Store"},component:()=>w(()=>import("./TestingStore-9cfc4ccd.js"),["assets/TestingStore-9cfc4ccd.js","assets/OpenwbSortableList-ac8384c9.js","assets/vendor-06e11d0e.js","assets/vendor-sortablejs-0bb60e5b.js","assets/vendor-aab9f734.css","assets/vendor-fortawesome-3d19d475.js","assets/OpenwbSortableList-7ba533e4.css","assets/vendor-bootstrap-4263d7eb.js","assets/vendor-jquery-9fc083b4.js","assets/vendor-bootstrap-c4951098.css","assets/vendor-axios-22b906fb.js"])});const j=ie({history:le(),routes:Z});j.beforeEach(async t=>{if(await D.getters.usageTermsAcknowledged){if(!await D.getters.installAssistantDone&&t.name!=="InstallAssistant")return{name:"InstallAssistant"}}else if(t.name!=="LegalSettings")return{name:"LegalSettings"}});j.afterEach(t=>{t.meta.heading?document.title="openWB | "+t.meta.heading:document.title="openWB"});const W=re(Oo);W.use(D).use(j).use(je,We);const To=Object.assign({"./components/OpenwbBaseAlert.vue":He,"./components/OpenwbBaseArrayInput.vue":ut,"./components/OpenwbBaseAvatar.vue":_t,"./components/OpenwbBaseButtonGroupInput.vue":wt,"./components/OpenwbBaseButtonInput.vue":Tt,"./components/OpenwbBaseCard.vue":Lt,"./components/OpenwbBaseCheckboxInput.vue":Ft,"./components/OpenwbBaseClickButton.vue":Bt,"./components/OpenwbBaseCopyToClipboard.vue":Jt,"./components/OpenwbBaseHeading.vue":nn,"./components/OpenwbBaseModalDialog.vue":pn,"./components/OpenwbBaseNumberInput.vue":wn,"./components/OpenwbBaseRangeInput.vue":xn,"./components/OpenwbBaseSelectInput.vue":Fn,"./components/OpenwbBaseSettingElement.vue":Xe,"./components/OpenwbBaseSubmitButtons.vue":Yn,"./components/OpenwbBaseTextInput.vue":ps,"./components/OpenwbBaseTextarea.vue":Ss,"./components/OpenwbBaseToast.vue":Is});Object.entries(To).forEach(([t,e])=>{const n=de(ue(t.split("/").pop().replace(/\.\w+$/,"")));W.component(n,e.default)});W.mount("#app");export{Q as C,M as O,w as _}; diff --git a/web/settings/assets/inverter-0862515d.js b/web/settings/assets/inverter-0862515d.js deleted file mode 100644 index 50baee8b5a..0000000000 --- a/web/settings/assets/inverter-0862515d.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as o,k as l,l as m,G as n,E as u,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbPvkitInverter",mixins:[p]},v={class:"device-openwb-pvkit-inverter"};function _(t,e,f,b,w,g){const i=o("openwb-base-heading"),r=o("openwb-base-select-input");return l(),m("div",v,[n(i,null,{default:u(()=>e[1]||(e[1]=[c(" Einstellungen für openWB PV-Kit Wechselrichter ")])),_:1}),n(r,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"Lovato"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":t.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.version"))},null,8,["model-value"])])}const $=a(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_pv_kit/inverter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/inverter-0a929761.js b/web/settings/assets/inverter-0a929761.js deleted file mode 100644 index cc356af23c..0000000000 --- a/web/settings/assets/inverter-0a929761.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as s,k as b,l as f,G as o,E as i,y as t,x as n,F as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceMqttInverter",mixins:[u]},v={class:"device-mqtt-inverter"};function w(r,e,c,x,z,B){const a=s("openwb-base-heading"),l=s("openwb-base-copy-to-clipboard"),m=s("openwb-base-alert");return b(),f("div",v,[o(a,null,{default:i(()=>e[0]||(e[0]=[t(" Einstellungen für MQTT Wechselrichter ")])),_:1}),o(m,{subtype:"info"},{default:i(()=>[e[9]||(e[9]=t(" Die folgenden Topics sind für einen reibungslosen Betrieb unbedingt erforderlich: ")),n("ul",null,[n("li",null,[o(l,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/pv/"+p(r.component.id)+"/get/power ",1)]),_:1}),e[1]||(e[1]=n("br",null,null,-1)),e[2]||(e[2]=t(" PV-Leistung in Watt als Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen. Produzierte Leistung muss ein negatives Vorzeichen haben. (In bestimmten Konstellationen, z.B. wenn ein Hybridsystem über einen zweiten Wechselrichter geladen wird, hat die Leistung ein positives Vorzeichen.) Beispiel: ")),e[3]||(e[3]=n("span",{class:"text-info"},"-123",-1))]),n("li",null,[o(l,{class:"text-info",tooltip:"Topic kopieren"},{default:i(()=>[t(" openWB/set/pv/"+p(r.component.id)+"/get/exported ",1)]),_:1}),e[4]||(e[4]=n("br",null,null,-1)),e[5]||(e[5]=t(" Erzeugte Energie in Wh, Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen, nur positiv")),e[6]||(e[6]=n("br",null,null,-1)),e[7]||(e[7]=t(" Beispiel: ")),e[8]||(e[8]=n("span",{class:"text-info"},"123.45",-1))])])]),_:1})])}const N=d(g,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/mqtt/inverter.vue"]]);export{N as default}; diff --git a/web/settings/assets/inverter-0c3f0824.js b/web/settings/assets/inverter-0c3f0824.js deleted file mode 100644 index c788535e0e..0000000000 --- a/web/settings/assets/inverter-0c3f0824.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as n,k as d,l as c,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const u={name:"DeviceSolarViewInverter",mixins:[p]},_={class:"device-solar-view-inverter"};function f(o,e,v,g,w,b){const s=n("openwb-base-heading"),a=n("openwb-base-text-input");return d(),c("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für SolarView Wechselrichter ")])),_:1}),t(a,{title:"Kommando für die Abfrage",required:"","model-value":o.component.configuration.command,"onUpdate:modelValue":e[0]||(e[0]=m=>o.updateConfiguration(m,"configuration.command"))},{help:i(()=>e[2]||(e[2]=[r(" Kommandos gemäß SolarView-Dokumentation, z.B.: 00* (gesamte Anlage), 01* (Wechselrichter 1), 02* (Wechselrichter 2) ")])),_:1},8,["model-value"])])}const S=l(u,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solar_view/solar_view/inverter.vue"]]);export{S as default}; diff --git a/web/settings/assets/inverter-192019df.js b/web/settings/assets/inverter-192019df.js deleted file mode 100644 index 313c41e898..0000000000 --- a/web/settings/assets/inverter-192019df.js +++ /dev/null @@ -1 +0,0 @@ -import{C as s}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as t,k as m,l,G as i,E as d,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"DeviceVictronInverter",mixins:[s]},_={class:"device-victron-inverter"};function f(o,e,v,g,w,V){const r=t("openwb-base-heading"),p=t("openwb-base-number-input"),u=t("openwb-base-button-group-input");return m(),l("div",_,[i(r,null,{default:d(()=>e[2]||(e[2]=[c(" Einstellungen für Victron Wechselrichter ")])),_:1}),i(p,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"]),i(u,{title:"MPPT",buttons:[{buttonValue:!1,text:"Nein"},{buttonValue:!0,text:"Ja"}],"model-value":o.component.configuration.mppt,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.mppt"))},null,8,["model-value"])])}const I=a(b,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/victron/victron/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-3e46cbb1.js b/web/settings/assets/inverter-3e46cbb1.js deleted file mode 100644 index 09ba4fd79f..0000000000 --- a/web/settings/assets/inverter-3e46cbb1.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as t,k as u,l,G as n,E as c,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceKostalPikoInverter",mixins:[a]},_={class:"device-kostal-piko-inverter"};function f(o,e,b,v,g,k){const i=t("openwb-base-heading"),r=t("openwb-base-button-group-input");return u(),l("div",_,[n(i,null,{default:c(()=>e[1]||(e[1]=[m(" Einstellungen für Kostal Piko Wechselrichter ")])),_:1}),n(r,{title:"Speicher",buttons:[{buttonValue:!1,text:"nicht vorhanden"},{buttonValue:!0,text:"vorhanden"}],"model-value":o.component.configuration.bat_configured,"onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.bat_configured"))},null,8,["model-value"])])}const N=p(d,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_piko/inverter.vue"]]);export{N as default}; diff --git a/web/settings/assets/inverter-4682710d.js b/web/settings/assets/inverter-4682710d.js deleted file mode 100644 index deb48e0e88..0000000000 --- a/web/settings/assets/inverter-4682710d.js +++ /dev/null @@ -1 +0,0 @@ -import{C as s}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as t,k as u,l as m,G as i,E as d,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const v={name:"DeviceOpenwbFlexInverter",mixins:[s]},b={class:"device-openwb-flex-inverter"};function f(o,e,_,w,x,g){const r=t("openwb-base-heading"),l=t("openwb-base-select-input"),p=t("openwb-base-number-input");return u(),m("div",b,[i(r,null,{default:d(()=>e[2]||(e[2]=[c(" Einstellungen für openWB-Flex Wechselrichter ")])),_:1}),i(l,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"Lovato"},{value:2,text:"SDM630/SDM72D-M"},{value:3,text:"SDM120"}],"model-value":o.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.version"))},null,8,["model-value"]),i(p,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":o.component.configuration.id,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.id"))},null,8,["model-value"])])}const S=a(v,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_flex/inverter.vue"]]);export{S as default}; diff --git a/web/settings/assets/inverter-4f0fa47c.js b/web/settings/assets/inverter-4f0fa47c.js deleted file mode 100644 index 82058ed706..0000000000 --- a/web/settings/assets/inverter-4f0fa47c.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as l,k as m,l as g,G as r,E as o,y as n,x as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const h={name:"DeviceHttpInverter",mixins:[p]},c={class:"device-http-inverter"};function b(t,e,v,f,w,_){const d=l("openwb-base-heading"),s=l("openwb-base-text-input");return m(),g("div",c,[r(d,null,{default:o(()=>e[2]||(e[2]=[n(" Einstellungen für Http Wechselrichter ")])),_:1}),r(s,{title:"Pfad für Leistung",subtype:"text",required:"",pattern:"^/[-a-zA-Z0-9@:%_\\+.~#?&/=]*","model-value":t.component.configuration.power_path,"onUpdate:modelValue":e[0]||(e[0]=i=>t.updateConfiguration(i,"configuration.power_path"))},{help:o(()=>e[3]||(e[3]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),a("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. Produzierte Leistung muss ein negatives Vorzeichen haben. (In bestimmten Konstellationen, z.B. wenn ein Hybridsystem über einen zweiten Wechselrichter geladen wird, hat die Leistung ein positives Vorzeichen.) ")])),_:1},8,["model-value"]),r(s,{title:"Pfad für Zählerstand Erzeugung",subtype:"text",pattern:"^(/[-a-zA-Z0-9@:%_\\+.~#?&/=]*)","model-value":t.component.configuration.exported_path,"onUpdate:modelValue":e[1]||(e[1]=i=>t.updateConfiguration(i,"configuration.exported_path"))},{help:o(()=>e[4]||(e[4]=[n(' Diese Angabe wird an die Server-URL angehängt und muss mit einem Schrägstrich "/" beginnen.'),a("br",null,null,-1),n(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche den aktuellen absoluten Zählerstand in Wh darstellt."),a("br",null,null,-1),n(" Wird dieses Feld leer gelassen, wird der Zählerstand intern simuliert. ")])),_:1},8,["model-value"])])}const W=u(h,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/http/inverter.vue"]]);export{W as default}; diff --git a/web/settings/assets/inverter-4fd40d49.js b/web/settings/assets/inverter-4fd40d49.js deleted file mode 100644 index 6198305d94..0000000000 --- a/web/settings/assets/inverter-4fd40d49.js +++ /dev/null @@ -1 +0,0 @@ -import{C as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as o,k as u,l,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"DeviceSigenergyInverter",mixins:[m]},_={class:"device-sigenergy-inverter"};function c(n,e,b,f,v,y){const s=o("openwb-base-heading"),p=o("openwb-base-number-input");return u(),l("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für Sigenergy Wechselrichter ")])),_:1}),t(p,{title:"Modbus ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[r(" Die Standard-Modbus-ID von Sigenergy ist 247 ")])),_:1},8,["model-value"])])}const I=d(g,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sigenergy/sigenergy/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-5fe84449.js b/web/settings/assets/inverter-5fe84449.js deleted file mode 100644 index 00057a6705..0000000000 --- a/web/settings/assets/inverter-5fe84449.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as o,k as l,l as u,G as n,E as c,y as m}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceKostalStecaInverter",mixins:[r]},_={class:"device-kostal-steca-inverter"};function f(t,e,v,b,g,k){const a=o("openwb-base-heading"),i=o("openwb-base-button-group-input");return l(),u("div",_,[n(a,null,{default:c(()=>e[1]||(e[1]=[m(" Einstellungen für Kostal Piko MP oder Steca Grid Coolcept Wechselrichter ")])),_:1}),n(i,{title:"Variante",buttons:[{buttonValue:!1,text:"Kostal Piko MP (non-plus)"},{buttonValue:!0,text:"Kostal Piko MP oder Steca Grid Coolcept"}],"model-value":t.component.configuration.variant_steca,"onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.variant_steca"))},null,8,["model-value"])])}const B=p(d,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/kostal/kostal_steca/inverter.vue"]]);export{B as default}; diff --git a/web/settings/assets/inverter-64c827d4.js b/web/settings/assets/inverter-64c827d4.js deleted file mode 100644 index adbc1e7c4c..0000000000 --- a/web/settings/assets/inverter-64c827d4.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as n,k as m,l as d,G as t,E as u,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceDeyeInverter",mixins:[p]},_={class:"device-deye-inverter"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return m(),d("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[l(" Einstellungen für Deye Wechselrichter ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const V=a(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/deye/deye/inverter.vue"]]);export{V as default}; diff --git a/web/settings/assets/inverter-6f2beb5c.js b/web/settings/assets/inverter-6f2beb5c.js deleted file mode 100644 index 6532715270..0000000000 --- a/web/settings/assets/inverter-6f2beb5c.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as t,k as p,l,G as n,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceYoulessInverter",mixins:[u]},d={class:"device-youless-inverter"};function f(o,e,b,v,g,x){const s=t("openwb-base-heading"),i=t("openwb-base-button-group-input");return p(),l("div",d,[n(s,null,{default:m(()=>e[1]||(e[1]=[c(" Einstellungen für Youless LS120 Wechselrichter ")])),_:1}),n(i,{title:"S0-Eingang auslesen",buttons:[{buttonValue:!1,text:"nein"},{buttonValue:!0,text:"ja"}],"model-value":o.component.configuration.source_s0,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.source_s0"))},null,8,["model-value"])])}const N=a(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/youless/youless/inverter.vue"]]);export{N as default}; diff --git a/web/settings/assets/inverter-741a82d0.js b/web/settings/assets/inverter-741a82d0.js deleted file mode 100644 index c049f95897..0000000000 --- a/web/settings/assets/inverter-741a82d0.js +++ /dev/null @@ -1 +0,0 @@ -import{C as s}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as n,k as m,l as c,G as r,E as i,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceStuderInverter",mixins:[s]},b={class:"device-studer-inverter"};function v(t,e,f,g,V,S){const u=n("openwb-base-heading"),p=n("openwb-base-button-group-input"),l=n("openwb-base-number-input");return m(),c("div",b,[r(u,null,{default:i(()=>e[2]||(e[2]=[a(" Einstellungen für Studer Wechselrichter ")])),_:1}),r(p,{title:"Typ der MPPT Solarladeregler",buttons:[{buttonValue:"VT",text:"Variotrack (VT-40/VT-65/VT-80)"},{buttonValue:"VS",text:"VarioString (VS-70/VS-120)"}],"model-value":t.component.configuration.vc_type,required:"","onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.vc_type"))},null,8,["model-value"]),r(l,{title:"Anzahl MPPT Solarladeregler",required:"",min:1,max:9,"model-value":t.component.configuration.vc_count,"onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.vc_count"))},{help:i(()=>e[3]||(e[3]=[a(" Anzahl (1-9) der Studer MPPT Solarladeregler im System (VS/VT) ")])),_:1},8,["model-value"])])}const B=d(_,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/studer/studer/inverter.vue"]]);export{B as default}; diff --git a/web/settings/assets/inverter-80f6eda4.js b/web/settings/assets/inverter-80f6eda4.js deleted file mode 100644 index 1cf73f6ef0..0000000000 --- a/web/settings/assets/inverter-80f6eda4.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as p,u as n,k as d,l as m,G as t,E as l,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolaredgeInverter",mixins:[a]},_={class:"device-solaredge-inverter"};function f(o,e,g,b,v,w){const r=n("openwb-base-heading"),i=n("openwb-base-number-input");return d(),m("div",_,[t(r,null,{default:l(()=>e[1]||(e[1]=[u(" Einstellungen für SolarEdge Wechselrichter ")])),_:1}),t(i,{title:"SolarEdge-Geräte-ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const D=p(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solaredge/solaredge/inverter.vue"]]);export{D as default}; diff --git a/web/settings/assets/inverter-8ac2f8f6.js b/web/settings/assets/inverter-8ac2f8f6.js deleted file mode 100644 index 8c1afcf38e..0000000000 --- a/web/settings/assets/inverter-8ac2f8f6.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as o,k as p,l,G as n,E as d,y as u}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSmartMeInverter",mixins:[a]},_={class:"device-smart-me-inverter"};function f(t,e,v,b,g,x){const r=o("openwb-base-heading"),i=o("openwb-base-text-input");return p(),l("div",_,[n(r,null,{default:d(()=>e[1]||(e[1]=[u(" Einstellungen für smart-me Wechselrichter ")])),_:1}),n(i,{title:"Geräte-ID",required:"","model-value":t.component.configuration.id,"onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.id"))},null,8,["model-value"])])}const G=m(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/smart_me/smart_me/inverter.vue"]]);export{G as default}; diff --git a/web/settings/assets/inverter-8fc88738.js b/web/settings/assets/inverter-8fc88738.js deleted file mode 100644 index 99ba93dbf9..0000000000 --- a/web/settings/assets/inverter-8fc88738.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as r,k as u,l as c,G as n,E as i,y as o,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const v={name:"DeviceDiscovergyInverter",mixins:[d]},f={class:"device-discovergy-inverter"};function g(t,e,_,b,w,x){const s=r("openwb-base-heading"),a=r("openwb-base-text-input");return u(),c("div",f,[n(s,null,{default:i(()=>e[1]||(e[1]=[o(" Einstellungen für Discovergy Wechselrichter ")])),_:1}),n(a,{title:"Meter-ID",required:"","model-value":t.component.configuration.meter_id,"onUpdate:modelValue":e[0]||(e[0]=p=>t.updateConfiguration(p,"configuration.meter_id"))},{help:i(()=>e[2]||(e[2]=[o(" Um die ID herauszufinden mit dem Browser die Adresse "),l("a",{href:"https://api.discovergy.com/public/v1/meters",target:"_blank",rel:"noopener noreferrer"}," https://api.discovergy.com/public/v1/meters ",-1),o(" aufrufen und dort Benutzername und Passwort eingeben. Hier wird nun u.a. die ID des Zählers angezeigt. ")])),_:1},8,["model-value"])])}const z=m(v,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/discovergy/discovergy/inverter.vue"]]);export{z as default}; diff --git a/web/settings/assets/inverter-9003395a.js b/web/settings/assets/inverter-9003395a.js deleted file mode 100644 index fac16f3271..0000000000 --- a/web/settings/assets/inverter-9003395a.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as n,k as m,l,G as t,E as u,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolisInverter",mixins:[p]},_={class:"device-solis-inverter"};function b(o,e,f,v,g,w){const i=n("openwb-base-heading"),s=n("openwb-base-number-input");return m(),l("div",_,[t(i,null,{default:u(()=>e[1]||(e[1]=[d(" Einstellungen für Solis Wechselrichter ")])),_:1}),t(s,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const I=a(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solis/solis/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-9ef308b9.js b/web/settings/assets/inverter-9ef308b9.js deleted file mode 100644 index bdb30fe1bb..0000000000 --- a/web/settings/assets/inverter-9ef308b9.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as l,u as t,k as m,l as c,G as r,E as i,y as n,x as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DevicePowerfoxInverter",mixins:[u]},b={class:"device-powerfox-inverter"};function g(o,e,v,w,x,_){const a=t("openwb-base-heading"),p=t("openwb-base-text-input");return m(),c("div",b,[r(a,null,{default:i(()=>e[1]||(e[1]=[n(" Einstellungen für Powerfox Wechselrichter ")])),_:1}),r(p,{title:"ID",required:"","model-value":o.component.configuration.id,"onUpdate:modelValue":e[0]||(e[0]=d=>o.updateConfiguration(d,"configuration.id"))},{help:i(()=>e[2]||(e[2]=[n(" Um die ID herauszufinden mit dem Browser die Adresse "),s("a",{href:"https://backend.powerfox.energy/api/2.0/my/all/devices",target:"_blank",rel:"noopener noreferrer"}," https://backend.powerfox.energy/api/2.0/my/all/devices ",-1),n(" aufrufen und dort Benutzername und Passwort eingeben. Die DeviceID ist exakt so einzutragen, wie in der Antwort des Servers. Das bedeutet insbesondere auch, die Groß-/Kleinschreibung ist zu beachten! In dem Feld ist nur die Zeichenfolge direkt hinter "),s("span",{class:"font-weight-bold text-monospace",style:{display:"contents"}},' "DeviceID" ',-1),n(" ohne den Doppelpunkt und Anführungszeichen einzutragen. ")])),_:1},8,["model-value"])])}const $=l(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/powerfox/powerfox/inverter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/inverter-a8e6cd81.js b/web/settings/assets/inverter-a8e6cd81.js deleted file mode 100644 index f19ee27f2a..0000000000 --- a/web/settings/assets/inverter-a8e6cd81.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as t,k as b,l as v,G as r,E as i,y as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceSunnyBoyInverter",mixins:[l]},_={class:"device-sunnyboy-inverter"};function g(n,e,y,c,w,C){const s=t("openwb-base-heading"),u=t("openwb-base-button-group-input"),d=t("openwb-base-select-input"),p=t("openwb-base-number-input");return b(),v("div",_,[r(s,null,{default:i(()=>e[3]||(e[3]=[a(" Einstellungen für SMA Sunny Boy/Tripower Wechselrichter ")])),_:1}),r(u,{title:"Hybrid-System",buttons:[{buttonValue:!1,text:"nicht vorhanden"},{buttonValue:!0,text:"vorhanden"}],"model-value":n.component.configuration.hybrid,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.hybrid"))},{help:i(()=>e[4]||(e[4]=[a(" Diese Option aktivieren, wenn ein Tripower Smart Energy, Sunny Boy Smart Energy oder ein anderes Hybrid-System verbaut ist. ")])),_:1},8,["model-value"]),r(d,{title:"Version","not-selected":"Bitte auswählen",options:[{value:0,text:"Standard"},{value:1,text:"Core-2"},{value:2,text:"Data Manager/Cluster Controller"}],"model-value":n.component.configuration.version,required:"","onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.version"))},null,8,["model-value"]),r(p,{title:"Modbus ID",required:"","model-value":n.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.modbus_id"))},{help:i(()=>e[5]||(e[5]=[a(" Für die Standardversion ist die Standardmodbus-ID 3, für Core-2 ist sie 1 und für Data Manager/Cluster Controller 2. Wurde eine abweichende Modbus ID konfiguriert, entsprechend anpassen. ")])),_:1},8,["model-value"])])}const I=m(f,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_sunny_boy/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-ab6f3eb3.js b/web/settings/assets/inverter-ab6f3eb3.js deleted file mode 100644 index 362f163ffe..0000000000 --- a/web/settings/assets/inverter-ab6f3eb3.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as r,k as m,l as g,G as o,E as l,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"DeviceVZLoggerInverter",mixins:[u]},_={class:"device-vzlogger-inverter"};function c(n,e,v,b,w,Z){const a=r("openwb-base-heading"),p=r("openwb-base-alert"),i=r("openwb-base-number-input");return m(),g("div",_,[o(a,null,{default:l(()=>e[2]||(e[2]=[s(" Einstellungen für VZLogger Wechselrichter ")])),_:1}),o(p,{subtype:"info"},{default:l(()=>e[3]||(e[3]=[s(' Bitte auf der Shell ausführen: "curl -s IPdesVZLogger:Port | jq .|cat -n" Zählen, in welcher Zeile der gesuchte Wert steht. Bei der ersten Zeile mit 1 anfangen zu zählen. ')])),_:1}),o(i,{title:"Zeile der Leistung",required:"",min:0,"model-value":n.component.configuration.line_power,"onUpdate:modelValue":e[0]||(e[0]=t=>n.updateConfiguration(t,"configuration.line_power"))},null,8,["model-value"]),o(i,{title:"Zeile der exportierten Energie (Ertrag)",min:0,"model-value":n.component.configuration.line_exported,"onUpdate:modelValue":e[1]||(e[1]=t=>n.updateConfiguration(t,"configuration.line_exported"))},null,8,["model-value"])])}const k=d(f,[["render",c],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/vzlogger/vzlogger/inverter.vue"]]);export{k as default}; diff --git a/web/settings/assets/inverter-b50b5606.js b/web/settings/assets/inverter-b50b5606.js deleted file mode 100644 index 0953a32533..0000000000 --- a/web/settings/assets/inverter-b50b5606.js +++ /dev/null @@ -1 +0,0 @@ -import{C as d}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as a,k as p,l as m,G as r,E as i,y as t,x as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const w={name:"DeviceJsonInverter",mixins:[d]},f={class:"device-json-inverter"};function b(n,e,c,v,_,h){const l=a("openwb-base-heading"),s=a("openwb-base-text-input");return p(),m("div",f,[r(l,null,{default:i(()=>e[2]||(e[2]=[t(" Einstellungen für JSON Wechselrichter ")])),_:1}),r(s,{title:"Abfrage für Leistung",subtype:"text",required:"","model-value":n.component.configuration.jq_power,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.jq_power"))},{help:i(()=>e[3]||(e[3]=[t(' Zur Analyse der Werte aus dem json-Objekt wird jq benutzt. Ist die Json Antwort z.B. {"PowerInstalledPeak":4655, "PowerProduced":132, "PowerOut":897.08172362555717, "PowerSelfSupplied":234.9182763744428} So muss hier .PowerOut eingetragen werden. '),g("br",null,null,-1),t(" Es wird vom Server eine Zahl mit oder ohne Nachkommastellen (Float, Integer) und einem Punkt als Dezimaltrennzeichen erwartet, welche die aktuelle Leistung in Watt darstellt. Produzierte Leistung muss ein negatives Vorzeichen haben. (In bestimmten Konstellationen, z.B. wenn ein Hybridsystem über einen zweiten Wechselrichter geladen wird, hat die Leistung ein positives Vorzeichen.) ")])),_:1},8,["model-value"]),r(s,{title:"Abfrage für Zählerstand",subtype:"text","model-value":n.component.configuration.jq_exported,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.jq_exported"))},{help:i(()=>e[4]||(e[4]=[t(" Wird dieses Feld leer gelassen, dann werden Zählerstände intern simuliert. ")])),_:1},8,["model-value"])])}const B=u(w,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/generic/json/inverter.vue"]]);export{B as default}; diff --git a/web/settings/assets/inverter-cc1c8210.js b/web/settings/assets/inverter-cc1c8210.js deleted file mode 100644 index 4d977943d7..0000000000 --- a/web/settings/assets/inverter-cc1c8210.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as o,k as l,l as u,G as n,E as m,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"DeviceOpenwbEvukitInverter",mixins:[p]},v={class:"device-openwb-evukit-inverter"};function _(t,e,f,b,w,g){const i=o("openwb-base-heading"),r=o("openwb-base-select-input");return l(),u("div",v,[n(i,null,{default:m(()=>e[1]||(e[1]=[c(" Einstellungen für openWB EVU-Kit Wechselrichter ")])),_:1}),n(r,{title:"Zählermodell","not-selected":"Bitte auswählen",options:[{value:0,text:"MPM3PM"},{value:1,text:"Lovato"},{value:2,text:"SDM630/SDM72D-M"}],"model-value":t.component.configuration.version,required:"","onUpdate:modelValue":e[0]||(e[0]=s=>t.updateConfiguration(s,"configuration.version"))},null,8,["model-value"])])}const $=a(d,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/openwb/openwb_evu_kit/inverter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/inverter-e1deb4b5.js b/web/settings/assets/inverter-e1deb4b5.js deleted file mode 100644 index 2b8ac5dcb5..0000000000 --- a/web/settings/assets/inverter-e1deb4b5.js +++ /dev/null @@ -1 +0,0 @@ -import{C as l}from"./HardwareInstallation-79ea1bc6.js";import{_ as u,u as n,k as d,l as c,G as o,E as r,y as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceSmahmInverter",mixins:[l]},f={class:"device-smahm-inverter"};function b(t,e,v,g,h,w){const s=n("openwb-base-heading"),a=n("openwb-base-alert"),m=n("openwb-base-number-input");return d(),c("div",f,[o(s,null,{default:r(()=>e[1]||(e[1]=[i(" Einstellungen für SMA-HM/EM Wechselrichter ")])),_:1}),o(a,{subtype:"info"},{default:r(()=>e[2]||(e[2]=[i(' Dies ist nur die richtige Komponente, wenn ein extra EnergyMeter ausschließlich für die PV-Messung vorhanden ist. Wenn nur ein HomeManager vorhanden ist, muss ein Gerät "SMA Sunny Boy" mit der entsprechenden Wechselrichter-Komponente angelegt werden. ')])),_:1}),o(m,{title:"Seriennummer",required:"","model-value":t.component.configuration.serials,"onUpdate:modelValue":e[0]||(e[0]=p=>t.updateConfiguration(p,"configuration.serials"))},null,8,["model-value"])])}const $=u(_,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/sma/sma_shm/inverter.vue"]]);export{$ as default}; diff --git a/web/settings/assets/inverter-e4fbde1b.js b/web/settings/assets/inverter-e4fbde1b.js deleted file mode 100644 index 9515b1fe8b..0000000000 --- a/web/settings/assets/inverter-e4fbde1b.js +++ /dev/null @@ -1 +0,0 @@ -import{C as p}from"./HardwareInstallation-79ea1bc6.js";import{_ as a,u as n,k as m,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const _={name:"DeviceFoxEssInverter",mixins:[p]},c={class:"device-fox_ess-inverter"};function f(o,e,b,v,x,g){const s=n("openwb-base-heading"),i=n("openwb-base-number-input");return m(),u("div",c,[t(s,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für FoxEss Wechselrichter ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.modbus_id"))},null,8,["model-value"])])}const F=a(_,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fox_ess/fox_ess/inverter.vue"]]);export{F as default}; diff --git a/web/settings/assets/inverter-efb146a6.js b/web/settings/assets/inverter-efb146a6.js deleted file mode 100644 index 43e19d9f54..0000000000 --- a/web/settings/assets/inverter-efb146a6.js +++ /dev/null @@ -1 +0,0 @@ -import{C as m}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as o,k as u,l,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceEnphaseInverter",mixins:[m]},_={class:"device-enphase-inverter"};function f(n,e,v,b,g,E){const s=o("openwb-base-heading"),p=o("openwb-base-number-input");return u(),l("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für Enphase Envoy / IQ Gateway Wechselrichter ")])),_:1}),t(p,{title:"EID",required:"","model-value":n.component.configuration.eid,"onUpdate:modelValue":e[0]||(e[0]=a=>n.updateConfiguration(a,"configuration.eid"))},{help:i(()=>e[2]||(e[2]=[r(' EID für "production" ')])),_:1},8,["model-value"])])}const D=d(c,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/enphase/enphase/inverter.vue"]]);export{D as default}; diff --git a/web/settings/assets/inverter-f5c3d836.js b/web/settings/assets/inverter-f5c3d836.js deleted file mode 100644 index d8949abcbb..0000000000 --- a/web/settings/assets/inverter-f5c3d836.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as d,u as n,k as u,l as c,G as t,E as i,y as r}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"DeviceMTecInverter",mixins:[a]},_={class:"device-mtec-inverter"};function b(o,e,f,v,g,w){const s=n("openwb-base-heading"),p=n("openwb-base-number-input");return u(),c("div",_,[t(s,null,{default:i(()=>e[1]||(e[1]=[r(" Einstellungen für M-Tec Wechselrichter ")])),_:1}),t(p,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=m=>o.updateConfiguration(m,"configuration.modbus_id"))},{help:i(()=>e[2]||(e[2]=[r(" Die Standard-Modbus-ID von M-Tec ist 247 ")])),_:1},8,["model-value"])])}const I=d(l,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/mtec/mtec/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-f8401435.js b/web/settings/assets/inverter-f8401435.js deleted file mode 100644 index 0da4dedfa1..0000000000 --- a/web/settings/assets/inverter-f8401435.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as n,k as p,l as u,G as t,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceHuaweiSmartLoggerInverter",mixins:[a]},_={class:"device-huawei-smart-logger-inverter"};function g(o,e,b,f,v,w){const i=n("openwb-base-heading"),r=n("openwb-base-number-input");return p(),u("div",_,[t(i,null,{default:d(()=>e[1]||(e[1]=[l(" Einstellungen für Huawei SmartLogger Wechselrichter ")])),_:1}),t(r,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const H=m(c,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/huawei/huawei_smartlogger/inverter.vue"]]);export{H as default}; diff --git a/web/settings/assets/inverter-fd3793d4.js b/web/settings/assets/inverter-fd3793d4.js deleted file mode 100644 index 0c0cd5f01d..0000000000 --- a/web/settings/assets/inverter-fd3793d4.js +++ /dev/null @@ -1 +0,0 @@ -import{C as a}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as n,k as p,l,G as t,E as u,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const c={name:"DeviceSolarmaxInverter",mixins:[a]},_={class:"device-solarmax-inverter"};function b(o,e,f,v,x,g){const r=n("openwb-base-heading"),i=n("openwb-base-number-input");return p(),l("div",_,[t(r,null,{default:u(()=>e[1]||(e[1]=[d(" Einstellungen für Solarmax Wechselrichter ")])),_:1}),t(i,{title:"Modbus ID",required:"","model-value":o.component.configuration.modbus_id,min:"1",max:"255","onUpdate:modelValue":e[0]||(e[0]=s=>o.updateConfiguration(s,"configuration.modbus_id"))},null,8,["model-value"])])}const I=m(c,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/solarmax/solarmax/inverter.vue"]]);export{I as default}; diff --git a/web/settings/assets/inverter-fdbe3f37.js b/web/settings/assets/inverter-fdbe3f37.js deleted file mode 100644 index 1a4f39dbb2..0000000000 --- a/web/settings/assets/inverter-fdbe3f37.js +++ /dev/null @@ -1 +0,0 @@ -import{C as r}from"./HardwareInstallation-79ea1bc6.js";import{_ as n,u as s,k as o,l as i,G as a,E as p,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"DeviceVartaInverter",mixins:[r]},d={class:"varta-inverter"};function _(l,e,u,v,f,b){const t=s("openwb-base-alert");return o(),i("div",d,[a(t,{subtype:"info"},{default:p(()=>e[0]||(e[0]=[c(" Die Leistung des Wechselrichters ist nur verfügbar, wenn dieser über Sensor an Varta angebunden ist. Wechselrichter die per Modbus mit dem Speicher kommunizieren lassen sich nicht über den Varta PV-Sensor auslesen. ")])),_:1})])}const S=n(m,[["render",_],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/varta/varta/inverter.vue"]]);export{S as default}; diff --git a/web/settings/assets/inverter_secondary-68726adb.js b/web/settings/assets/inverter_secondary-68726adb.js deleted file mode 100644 index d0f4c1fbb1..0000000000 --- a/web/settings/assets/inverter_secondary-68726adb.js +++ /dev/null @@ -1 +0,0 @@ -import{C as u}from"./HardwareInstallation-79ea1bc6.js";import{_ as m,u as t,k as f,l as c,G as i,E as s,y as n,x as a,F as g}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const w={name:"DeviceFroniusInverterSecondary",mixins:[u],computed:{powerFlowUrl:{get(){return`http://${this.device.configuration.ip_address}/solar_api/v1/GetPowerFlowRealtimeData.fcgi?Scope=System`}}}},_={class:"device-fronius-inverter-secondary"},v=["href"];function b(r,e,D,k,h,o){const d=t("openwb-base-heading"),l=t("openwb-base-number-input");return f(),c("div",_,[i(d,null,{default:s(()=>e[1]||(e[1]=[n(" Einstellungen für einen sekundären Wechselrichter ")])),_:1}),i(l,{title:"ID","model-value":r.component.configuration.id,min:"0",required:"","onUpdate:modelValue":e[0]||(e[0]=p=>r.updateConfiguration(p,"configuration.id"))},{help:s(()=>[e[2]||(e[2]=n(" Die ID des sekundären Wechselrichters. Diese ist für jede Installation individuell und muss ermittelt werden. Dafür kann der folgende Link verwendet werden. Die ID kann den zurückgegebenen JSON entnommen werden. ")),a("a",{href:o.powerFlowUrl,target:"_blank",rel:"noopener noreferrer"},g(o.powerFlowUrl),9,v),e[3]||(e[3]=a("br",null,null,-1)),e[4]||(e[4]=n(' Im Abschnitt "Body" -> "Data" -> "SecondaryMeters" werden die installierten Zähler angezeigt. Die ID ist die Zahl vor dem Doppelpunkt und den zugehörigen Daten. '))]),_:1},8,["model-value"])])}const V=m(w,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/devices/fronius/fronius/inverter_secondary.vue"]]);export{V as default}; diff --git a/web/settings/assets/ripple_control_receiver-9492b87f.js b/web/settings/assets/ripple_control_receiver-9492b87f.js deleted file mode 100644 index fb4da38f24..0000000000 --- a/web/settings/assets/ripple_control_receiver-9492b87f.js +++ /dev/null @@ -1 +0,0 @@ -import{R as t}from"./GeneralConfig-b1531208.js";import{_ as r,u as n,k as i,l as p,G as s,E as a,y as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const l={name:"RippleControlReceiverGpio",mixins:[t]},_={class:"ripple-control-receiver-gpio"};function d(m,e,f,u,v,g){const o=n("openwb-base-alert");return i(),p("div",_,[s(o,{subtype:"info"},{default:a(()=>e[0]||(e[0]=[c(" Wenn mindestens ein Kontakt geschlossen ist, wird die Ladung gesperrt. Wenn beide Kontakte offen sind, darf geladen werden. ")])),_:1})])}const h=r(l,[["render",d],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/gpio/ripple_control_receiver.vue"]]);export{h as default}; diff --git a/web/settings/assets/ripple_control_receiver-d3be5fec.js b/web/settings/assets/ripple_control_receiver-d3be5fec.js deleted file mode 100644 index 432474559e..0000000000 --- a/web/settings/assets/ripple_control_receiver-d3be5fec.js +++ /dev/null @@ -1 +0,0 @@ -import{R as s}from"./GeneralConfig-b1531208.js";import{_ as a,u as i,k as d,l as u,G as t,E as m,y as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"RippleControlReceiverDimmKit",mixins:[s]},c={class:"ripple-control-receiver-dimm-kit"};function b(o,e,v,g,w,C){const p=i("openwb-base-alert"),l=i("openwb-base-text-input"),r=i("openwb-base-number-input");return d(),u("div",c,[t(p,{subtype:"info"},{default:m(()=>e[3]||(e[3]=[_(" In der aktuellen Implementierung werden Kontakt 1 und 2 des Dimm-Kits ausgewertet. Wenn mindestens ein Kontakt offen ist, wird die Ladung gesperrt. Wenn beide Kontakte geschlossen sind, darf geladen werden. ")])),_:1}),t(l,{title:"IP oder Hostname",subtype:"host",required:"","model-value":o.rippleControlReceiver.configuration.ip_address,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.ip_address"))},null,8,["model-value"]),t(r,{title:"Port",required:"","model-value":o.rippleControlReceiver.configuration.port,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.port"))},null,8,["model-value"]),t(r,{title:"Modbus-ID",required:"",min:1,max:255,"model-value":o.rippleControlReceiver.configuration.modbus_id,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.modbus_id"))},null,8,["model-value"])])}const B=a(f,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/ripple_control_receivers/dimm_kit/ripple_control_receiver.vue"]]);export{B as default}; diff --git a/web/settings/assets/vehicle-0a92127a.js b/web/settings/assets/vehicle-0a92127a.js deleted file mode 100644 index 9a4402157b..0000000000 --- a/web/settings/assets/vehicle-0a92127a.js +++ /dev/null @@ -1 +0,0 @@ -import{V as n}from"./VehicleConfig-12242a8a.js";import{_ as s,u as i,k as o,l as r,G as a,E as d,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const p={name:"VehicleSocManual",mixins:[n]},c={class:"vehicle-soc-tesla"};function u(m,e,_,f,h,g){const t=i("openwb-base-alert");return o(),r("div",c,[a(t,{subtype:"info"},{default:d(()=>e[0]||(e[0]=[l(' Beim Anstecken des Fahrzeugs muss der aktuelle SoC über die Hauptseite angegeben werden. Anhand des Zählers im Ladepunkt wird dann der aktuelle SoC errechnet. Ausschlaggebend für die Qualität dieses Moduls sind die beiden Einstellungen "Kapazität der Batterie" in dem Fahrzeug-Profil und "Wirkungsgrad der Ladeelektronik". ')])),_:1})])}const z=s(p,[["render",u],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/manual/vehicle.vue"]]);export{z as default}; diff --git a/web/settings/assets/vehicle-2b9ce8b6.js b/web/settings/assets/vehicle-2b9ce8b6.js deleted file mode 100644 index de163324d7..0000000000 --- a/web/settings/assets/vehicle-2b9ce8b6.js +++ /dev/null @@ -1 +0,0 @@ -import{V as m}from"./VehicleConfig-12242a8a.js";import{_ as d,u as r,k as u,l as f,G as n,E as l,y as o,x as t,F as p}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const b={name:"VehicleSocMqtt",mixins:[m]},v={class:"vehicle-soc-mqtt"};function g(i,e,w,k,x,B){const s=r("openwb-base-copy-to-clipboard"),a=r("openwb-base-alert");return u(),f("div",v,[n(a,{subtype:"info"},{default:l(()=>[e[12]||(e[12]=o(" Die Daten werden immer dann aktualisiert, wenn das Topic veröffentlicht wird. Die Abfrageintervalle werden nicht berücksichtigt, da das Intervall vom sendenden Client festgelegt wird. ")),t("ul",null,[t("li",null,[n(s,{class:"text-info",tooltip:"Topic kopieren"},{default:l(()=>[o(" openWB/set/vehicle/"+p(i.vehicleId)+"/get/soc ",1)]),_:1}),e[0]||(e[0]=t("br",null,null,-1)),e[1]||(e[1]=o(" Fahrzeug-SoC mit Nachkommastellen (Float) oder Ganzzahl")),e[2]||(e[2]=t("br",null,null,-1)),e[3]||(e[3]=o(" Beispiel: ")),e[4]||(e[4]=t("span",{class:"text-info"},"89.5",-1))]),t("li",null,[n(s,{class:"text-info",tooltip:"Topic kopieren"},{default:l(()=>[o(" openWB/set/vehicle/"+p(i.vehicleId)+"/get/range ",1)]),_:1}),e[5]||(e[5]=t("br",null,null,-1)),e[6]||(e[6]=o(" Reichweite des Fahrzeugs in km mit Nachkommastellen (Float) oder Ganzzahl")),e[7]||(e[7]=t("br",null,null,-1)),e[8]||(e[8]=o(" Diese Info ist optional.")),e[9]||(e[9]=t("br",null,null,-1)),e[10]||(e[10]=o(" Beispiel: ")),e[11]||(e[11]=t("span",{class:"text-info"},"356.5",-1))])])]),_:1})])}const $=d(b,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/mqtt/vehicle.vue"]]);export{$ as default}; diff --git a/web/settings/assets/vehicle-30efc187.js b/web/settings/assets/vehicle-30efc187.js deleted file mode 100644 index b26c0a5762..0000000000 --- a/web/settings/assets/vehicle-30efc187.js +++ /dev/null @@ -1 +0,0 @@ -import{V as m}from"./VehicleConfig-12242a8a.js";import{_ as b,u as s,k as g,l as v,G as i,E as o,y as n,x as u,F as _}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const f={name:"VehicleSocMercedesEq",mixins:[m],computed:{callback_url(){return`${location.origin}/openWB/web/settings/modules/vehicles/mercedeseq/callback_vehicle.php`},login_url(){return`https://ssoalpha.dvb.corpinter.net/v1/auth?response_type=code&state=${this.vehicleId}&client_id=${this.vehicle.configuration.client_id}&redirect_uri=${this.callback_url}&scope=mb:vehicle:mbdata:evstatus%20offline_access%20openid`},input_complete(){return this.vehicle.configuration.client_id&&this.vehicle.configuration.client_secret&&this.vehicle.configuration.vin}},methods:{login_window(){console.debug("callback url",this.callback_url),console.debug("login url",this.login_url);var t=window.open(this.login_url,"MercedesLogin","width=800,height=600,status=yes,scrollbars=yes,resizable=yes");t.focus()}}},h={class:"vehicle-soc-mercedeseq"};function w(t,e,k,C,y,r){const a=s("openwb-base-text-input"),d=s("openwb-base-copy-to-clipboard"),p=s("openwb-base-alert"),c=s("openwb-base-button-input");return g(),v("div",h,[i(a,{title:"Client-ID",required:"",subtype:"user","model-value":t.vehicle.configuration.client_id,"onUpdate:modelValue":e[0]||(e[0]=l=>t.updateConfiguration(l,"configuration.client_id"))},{help:o(()=>e[3]||(e[3]=[n(" Die im Developer Portal angelegte Client-ID. ")])),_:1},8,["model-value"]),i(a,{title:"Client Secret",required:"",subtype:"password","model-value":t.vehicle.configuration.client_secret,"onUpdate:modelValue":e[1]||(e[1]=l=>t.updateConfiguration(l,"configuration.client_secret"))},{help:o(()=>e[4]||(e[4]=[n(" Das im Developer Portal angelegte Client Secret. ")])),_:1},8,["model-value"]),i(a,{title:"VIN",required:"","model-value":t.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=l=>t.updateConfiguration(l,"configuration.vin"))},{help:o(()=>e[5]||(e[5]=[n(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"]),i(p,{subtype:"info"},{default:o(()=>[e[6]||(e[6]=n(" Vor dem Anmelden bitte die Angaben speichern.")),e[7]||(e[7]=u("br",null,null,-1)),e[8]||(e[8]=n(" Die Callback-URL für die Anmeldung lautet:")),e[9]||(e[9]=u("br",null,null,-1)),i(d,{class:"text-info",tooltip:"URL kopieren"},{default:o(()=>[n(_(r.callback_url),1)]),_:1})]),_:1}),i(c,{title:"Anmelden","button-text":"Bei Mercedes Anmelden",subtype:"success",disabled:!r.input_complete,onButtonClicked:r.login_window},{help:o(()=>e[10]||(e[10]=[n(" Es wird ein neues Browserfenster geöffnet, in dem Sie sich bei Mercedes mit Ihren Zugangsdaten anmelden können."),u("br",null,null,-1)])),_:1},8,["disabled","onButtonClicked"])])}const U=b(f,[["render",w],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/mercedeseq/vehicle.vue"]]);export{U as default}; diff --git a/web/settings/assets/vehicle-5eabfff5.js b/web/settings/assets/vehicle-5eabfff5.js deleted file mode 100644 index 764f9a37fb..0000000000 --- a/web/settings/assets/vehicle-5eabfff5.js +++ /dev/null @@ -1 +0,0 @@ -import{V as a}from"./VehicleConfig-12242a8a.js";import{_ as l,u,k as p,l as d,G as i,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocSmarteq",mixins:[a]},v={class:"vehicle-soc-smarteq"};function f(o,e,g,w,V,b){const t=u("openwb-base-text-input");return p(),d("div",v,[i(t,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[3]||(e[3]=[s(" Der Benutzername für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),i(t,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[4]||(e[4]=[s(" Das Passwort für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),i(t,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[5]||(e[5]=[s(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const x=l(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/smarteq/vehicle.vue"]]);export{x as default}; diff --git a/web/settings/assets/vehicle-6e8988b3.js b/web/settings/assets/vehicle-6e8988b3.js deleted file mode 100644 index 3a6d4f52dd..0000000000 --- a/web/settings/assets/vehicle-6e8988b3.js +++ /dev/null @@ -1 +0,0 @@ -import{V as u}from"./VehicleConfig-12242a8a.js";import{_ as a,u as s,k as d,l as p,G as t,E as r,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocKia",mixins:[u]},v={class:"vehicle-soc-kia"};function f(o,e,g,w,V,b){const i=s("openwb-base-text-input");return d(),p("div",v,[t(i,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[4]||(e[4]=[l(" Der Benutzername für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),t(i,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[5]||(e[5]=[l(" Das Passwort für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),t(i,{title:"PIN",required:"",subtype:"password","model-value":o.vehicle.configuration.pin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.pin"))},{help:r(()=>e[6]||(e[6]=[l(" Die PIN für die Anmeldung an den Servern. ")])),_:1},8,["model-value"]),t(i,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[3]||(e[3]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[7]||(e[7]=[l(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const $=a(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/kia/vehicle.vue"]]);export{$ as default}; diff --git a/web/settings/assets/vehicle-73ea78bb.js b/web/settings/assets/vehicle-73ea78bb.js deleted file mode 100644 index d50dbca7f8..0000000000 --- a/web/settings/assets/vehicle-73ea78bb.js +++ /dev/null @@ -1 +0,0 @@ -import{V as a}from"./VehicleConfig-12242a8a.js";import{_ as l,u as d,k as u,l as p,G as i,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocSkodaconnect",mixins:[a]},v={class:"vehicle-soc-skodaconnect"};function f(o,e,c,g,w,V){const t=d("openwb-base-text-input");return u(),p("div",v,[i(t,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[3]||(e[3]=[s(" Der Benutzername für die Anmeldung an den SkodaConnect-Servern. ")])),_:1},8,["model-value"]),i(t,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[4]||(e[4]=[s(" Das Passwort für die Anmeldung an den SkodaConnect-Servern. ")])),_:1},8,["model-value"]),i(t,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[5]||(e[5]=[s(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const x=l(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/skodaconnect/vehicle.vue"]]);export{x as default}; diff --git a/web/settings/assets/vehicle-79b11b37.js b/web/settings/assets/vehicle-79b11b37.js deleted file mode 100644 index 1ef299da51..0000000000 --- a/web/settings/assets/vehicle-79b11b37.js +++ /dev/null @@ -1 +0,0 @@ -import{V as d}from"./VehicleConfig-12242a8a.js";import{_ as p,u as l,k as m,l as b,G as i,E as r,y as t,x as a}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const g={name:"VehicleSocBmwBimmerConnected",mixins:[d]},f={class:"vehicle-soc-bmwbc"};function v(n,e,c,w,V,B){const u=l("openwb-base-text-input"),s=l("openwb-base-button-group-input");return m(),b("div",f,[i(u,{title:"Benutzername",required:"",subtype:"user","model-value":n.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.user_id"))},{help:r(()=>e[4]||(e[4]=[t(" Der Benutzername für die Anmeldung an den BMW-Servern. ")])),_:1},8,["model-value"]),i(u,{title:"Kennwort",required:"",subtype:"password","model-value":n.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.password"))},{help:r(()=>e[5]||(e[5]=[t(" Das Passwort für die Anmeldung an den BMW-Servern. ")])),_:1},8,["model-value"]),i(u,{title:"VIN",required:"","model-value":n.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.vin"))},{help:r(()=>e[6]||(e[6]=[t(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"]),i(s,{title:"SoC während der Ladung berechnen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.vehicle.configuration.calculate_soc,"onUpdate:modelValue":e[3]||(e[3]=o=>n.updateConfiguration(o,"configuration.calculate_soc"))},{help:r(()=>e[7]||(e[7]=[t(" Berechnet den Ladestand (SoC) während der Ladung. "),a("br",null,null,-1),t(" Die Berechnung erfolgt über die Ladeleistung und die Ladedauer. "),a("br",null,null,-1)])),_:1},8,["model-value"])])}const $=p(g,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/bmwbc/vehicle.vue"]]);export{$ as default}; diff --git a/web/settings/assets/vehicle-82ee9ea0.js b/web/settings/assets/vehicle-82ee9ea0.js deleted file mode 100644 index b9555a84f5..0000000000 --- a/web/settings/assets/vehicle-82ee9ea0.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as h,a4 as c,a5 as _,a6 as f,u as r,k as b,l as k,G as i,E as a,y as s,x as v}from"./vendor-06e11d0e.js";import{a as w}from"./vendor-axios-22b906fb.js";import{C as y}from"./index-e2dbf7bf.js";import{V as C}from"./VehicleConfig-12242a8a.js";import"./vendor-sortablejs-0bb60e5b.js";import"./vendor-fortawesome-3d19d475.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./dynamic-import-helper-be004503.js";const T={name:"VehicleSocTesla",mixins:[y,C],data(){return{tesla_api_oauth2:"https://auth.tesla.com/oauth2/v3",tesla_api_redirect:"https://auth.tesla.com/void/callback",tesla_api_owners:"https://owner-api.teslamotors.com/oauth/token",user_agent:"Mozilla/5.0 (iPhone; CPU iPhone OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148",code_challenge:null,code_verifier:null,page_not_found_url:null}},methods:{tesla_login_window(){this.tesla_gen_challenge();var e=window.open(this.tesla_gen_url(),"TeslaLogin","width=800,height=600,status=yes,scrollbars=yes,resizable=yes");e.focus()},tesla_gen_challenge(){this.code_verifier=c.encode(_.randomBytes(86)).replace(/[^a-zA-Z0-9]/gi,"").substring(0,86);const e=_.createHash("sha256").update(this.code_verifier).digest();this.code_challenge=c.encode(e),console.debug(this.code_verifier,this.code_verifier.length,this.code_challenge,this.code_challenge.length)},tesla_gen_url(){const e=new URL(this.tesla_api_oauth2+"/authorize/");return e.searchParams.append("client_id","ownerapi"),e.searchParams.append("code_challenge",this.code_challenge),e.searchParams.append("code_challenge_method","S256"),e.searchParams.append("redirect_uri",this.tesla_api_redirect),e.searchParams.append("response_type","code"),e.searchParams.append("scope","openid email offline_access"),e.searchParams.append("state","myteslaapp"),e},async tesla_login(){const e=f.parse(this.page_not_found_url,!0).query;if(console.debug("queryObject",e),!e.code){console.error("Something is wrong... Code does not exist in URL"),this.$root.postClientMessage("Die eingegebene URL ist ungültig.","danger");return}const n={url:this.tesla_api_owners,user_agent:this.user_agent,data:{grant_type:"authorization_code",client_id:"ownerapi",code:e.code,code_verifier:this.code_verifier,redirect_uri:this.tesla_api_redirect}};try{const o=await w.post(location.protocol+"//"+location.host+"/openWB/web/settings/modules/vehicles/tesla/tesla.php",JSON.parse(JSON.stringify(n)),{headers:{"Content-Type":"application/json",Accept:"application/json"}});console.debug("response",o),this.updateConfiguration({access_token:o.data.access_token,refresh_token:o.data.refresh_token,created_at:o.data.created_at,expires_in:o.data.expires_in},"configuration.token"),this.$root.postClientMessage("Token erfolgreich abgerufen.","success")}catch(o){console.error(o),this.$root.postClientMessage("Beim Abruf der Token ist ein Fehler aufgetreten!
"+o+"
","danger")}}}},U={class:"vehicle-soc-tesla"};function B(e,n,o,z,l,p){const u=r("openwb-base-number-input"),m=r("openwb-base-heading"),g=r("openwb-base-button-input"),d=r("openwb-base-text-input");return b(),k("div",U,[i(u,{title:"Fahrzeug-ID",required:"",min:0,"model-value":e.vehicle.configuration.tesla_ev_num,"onUpdate:modelValue":n[0]||(n[0]=t=>e.updateConfiguration(t,"configuration.tesla_ev_num"))},{help:a(()=>n[6]||(n[6]=[s(' Die ID des Fahrzeugs bei Tesla. Normalerweise "0" bei nur einem Fahrzeug im Konto. ')])),_:1},8,["model-value"]),i(m,null,{default:a(()=>n[7]||(n[7]=[s("Token abrufen oder eingeben")])),_:1}),i(g,{title:"1. Anmelden","button-text":"Bei Tesla Anmelden",subtype:"success",onButtonClicked:p.tesla_login_window},{help:a(()=>n[8]||(n[8]=[s(" Es wird ein neues Browserfenster geöffnet, in dem Sie sich bei Tesla mit Ihren Zugangsdaten anmelden können. ")])),_:1},8,["onButtonClicked"]),i(d,{modelValue:l.page_not_found_url,"onUpdate:modelValue":n[1]||(n[1]=t=>l.page_not_found_url=t),title:"2. URL kopieren und einfügen",subtype:"url","empty-value":null},{help:a(()=>n[9]||(n[9]=[s(' Hier die komplette URL (Text in der Adresszeile) aus dem geöffneten Browserfenster einfügen, wenn dort "Page Not Found" angezeigt wird. ')])),_:1},8,["modelValue"]),i(g,{title:"3. Token abrufen","button-text":"Jetzt abrufen",subtype:"success",disabled:l.page_not_found_url===null,onButtonClicked:p.tesla_login},{help:a(()=>n[10]||(n[10]=[s(" Der in der eingegebenen URL enthaltene Code wird genutzt, um ein Anmeldetoken bei Tesla abzurufen. Ist dies erfolgreich, so werden die Daten des Token in den weiteren Feldern automatisch eingegeben. ")])),_:1},8,["disabled","onButtonClicked"]),n[13]||(n[13]=v("hr",null,null,-1)),i(d,{title:"Access Token",pattern:"^(ey).*",required:"","model-value":e.vehicle.configuration.token?e.vehicle.configuration.token.access_token:"","onUpdate:modelValue":n[2]||(n[2]=t=>e.updateConfiguration(t,"configuration.token.access_token"))},null,8,["model-value"]),i(d,{title:"Refresh Token",pattern:"^(ey).*",required:"","model-value":e.vehicle.configuration.token?e.vehicle.configuration.token.refresh_token:"","onUpdate:modelValue":n[3]||(n[3]=t=>e.updateConfiguration(t,"configuration.token.refresh_token"))},null,8,["model-value"]),i(u,{title:"Erstellt um",required:"","model-value":e.vehicle.configuration.token?e.vehicle.configuration.token.created_at:0,"onUpdate:modelValue":n[4]||(n[4]=t=>e.updateConfiguration(t,"configuration.token.created_at"))},{help:a(()=>n[11]||(n[11]=[s(" Unix Timestamp des Zeitpunktes, an dem das Token erzeugt wurde. ")])),_:1},8,["model-value"]),i(u,{title:"Ungültig in",unit:"s",required:"","model-value":e.vehicle.configuration.token?e.vehicle.configuration.token.expires_in:0,"onUpdate:modelValue":n[5]||(n[5]=t=>e.updateConfiguration(t,"configuration.token.expires_in"))},{help:a(()=>n[12]||(n[12]=[s(" Zeitspanne in Sekunden, nach der das Token ungültig wird. ")])),_:1},8,["model-value"])])}const x=h(T,[["render",B],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/tesla/vehicle.vue"]]);export{x as default}; diff --git a/web/settings/assets/vehicle-833b4868.js b/web/settings/assets/vehicle-833b4868.js deleted file mode 100644 index b32c51de1d..0000000000 --- a/web/settings/assets/vehicle-833b4868.js +++ /dev/null @@ -1 +0,0 @@ -import{V as u}from"./VehicleConfig-12242a8a.js";import{_ as a,u as s,k as d,l as p,G as i,E as r,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocRenault",mixins:[u]},f={class:"vehicle-soc-renault"};function v(n,e,g,V,w,b){const t=s("openwb-base-text-input");return d(),p("div",f,[i(t,{title:"Benutzername",required:"",subtype:"user","model-value":n.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=o=>n.updateConfiguration(o,"configuration.user_id"))},{help:r(()=>e[4]||(e[4]=[l(" Der Benutzername für die Anmeldung an den Renault-Servern. ")])),_:1},8,["model-value"]),i(t,{title:"Kennwort",required:"",subtype:"password","model-value":n.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=o=>n.updateConfiguration(o,"configuration.password"))},{help:r(()=>e[5]||(e[5]=[l(" Das Passwort für die Anmeldung an den Renault-Servern. ")])),_:1},8,["model-value"]),i(t,{title:"Land",required:"","model-value":n.vehicle.configuration.country,"onUpdate:modelValue":e[2]||(e[2]=o=>n.updateConfiguration(o,"configuration.country"))},{help:r(()=>e[6]||(e[6]=[l(" Land des Fahrzeugs, z.b. DE für Deutschland. ")])),_:1},8,["model-value"]),i(t,{title:"VIN","model-value":n.vehicle.configuration.vin,"onUpdate:modelValue":e[3]||(e[3]=o=>n.updateConfiguration(o,"configuration.vin"))},{help:r(()=>e[7]||(e[7]=[l(" Die Fahrgestellnummer des Fahrzeugs falls mehrere Fahrzeuge im Account vorhanden sind. ")])),_:1},8,["model-value"])])}const $=a(m,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/renault/vehicle.vue"]]);export{$ as default}; diff --git a/web/settings/assets/vehicle-87685481.js b/web/settings/assets/vehicle-87685481.js deleted file mode 100644 index fe4a6681de..0000000000 --- a/web/settings/assets/vehicle-87685481.js +++ /dev/null @@ -1 +0,0 @@ -import{V as a}from"./VehicleConfig-12242a8a.js";import{_ as u,u as l,k as p,l as s,G as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocEvnotify",mixins:[a]},d={class:"vehicle-soc-evnotify"};function f(e,o,c,v,b,g){const r=l("openwb-base-number-input"),t=l("openwb-base-text-input");return p(),s("div",d,[i(r,{title:"ID",required:"",min:0,"model-value":e.vehicle.configuration.id,"onUpdate:modelValue":o[0]||(o[0]=n=>e.updateConfiguration(n,"configuration.id"))},null,8,["model-value"]),i(t,{title:"AKey",required:"","model-value":e.vehicle.configuration.akey,"onUpdate:modelValue":o[1]||(o[1]=n=>e.updateConfiguration(n,"configuration.akey"))},null,8,["model-value"]),i(t,{title:"Token",required:"","model-value":e.vehicle.configuration.token,"onUpdate:modelValue":o[2]||(o[2]=n=>e.updateConfiguration(n,"configuration.token"))},null,8,["model-value"])])}const B=u(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/evnotify/vehicle.vue"]]);export{B as default}; diff --git a/web/settings/assets/vehicle-91e49f3f.js b/web/settings/assets/vehicle-91e49f3f.js deleted file mode 100644 index c4342fdfa3..0000000000 --- a/web/settings/assets/vehicle-91e49f3f.js +++ /dev/null @@ -1 +0,0 @@ -import{V as l}from"./VehicleConfig-12242a8a.js";import{_ as a,u,k as p,l as d,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocBmw",mixins:[l]},v={class:"vehicle-soc-bmw"};function f(o,e,g,w,b,V){const i=u("openwb-base-text-input");return p(),d("div",v,[t(i,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[3]||(e[3]=[s(" Der Benutzername für die Anmeldung an den BMW-Servern. ")])),_:1},8,["model-value"]),t(i,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[4]||(e[4]=[s(" Das Passwort für die Anmeldung an den BMW-Servern. ")])),_:1},8,["model-value"]),t(i,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[5]||(e[5]=[s(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const y=a(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/bmw/vehicle.vue"]]);export{y as default}; diff --git a/web/settings/assets/vehicle-9348e485.js b/web/settings/assets/vehicle-9348e485.js deleted file mode 100644 index 58b3cddc8d..0000000000 --- a/web/settings/assets/vehicle-9348e485.js +++ /dev/null @@ -1 +0,0 @@ -import{V as r}from"./VehicleConfig-12242a8a.js";import{_ as l,u as s,k as a,l as u,G as i,E as p,y as d}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocSmartHello",mixins:[r]},f={class:"vehicle-soc-smart-hello"};function v(o,e,c,g,h,V){const n=s("openwb-base-text-input");return a(),u("div",f,[i(n,{title:"Benutzername",subtype:"text",required:"","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=t=>o.updateConfiguration(t,"configuration.user_id"))},null,8,["model-value"]),i(n,{title:"Kennwort",subtype:"password",required:"","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=t=>o.updateConfiguration(t,"configuration.password"))},null,8,["model-value"]),i(n,{title:"VIN",subtype:"text","model-value":o.vehicle.configuration.VIN,"onUpdate:modelValue":e[2]||(e[2]=t=>o.updateConfiguration(t,"configuration.VIN"))},{help:p(()=>e[3]||(e[3]=[d(" Fahrgestellnummer (VIN) des Fahrzeugs. Notwendig falls mehrere Fahrzeuge im Account des Herstellers vorhanden sind. ")])),_:1},8,["model-value"])])}const $=l(m,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/smarthello/vehicle.vue"]]);export{$ as default}; diff --git a/web/settings/assets/vehicle-a85e3bc8.js b/web/settings/assets/vehicle-a85e3bc8.js deleted file mode 100644 index 819e034989..0000000000 --- a/web/settings/assets/vehicle-a85e3bc8.js +++ /dev/null @@ -1 +0,0 @@ -import{V as s}from"./VehicleConfig-12242a8a.js";import{_ as d,u as a,k as p,l as m,G as t,E as u,y as n,x as i}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const v={name:"VehicleSocOVMS",mixins:[s]},f={class:"vehicle-soc-ovms"};function g(o,e,V,b,S,w){const l=a("openwb-base-text-input");return p(),m("div",f,[t(l,{title:"Server URL",required:"","model-value":o.vehicle.configuration.server_url,"onUpdate:modelValue":e[0]||(e[0]=r=>o.updateConfiguration(r,"configuration.server_url"))},{help:u(()=>e[4]||(e[4]=[n(" Die URL (incl. Port) des API des OVMS-Servers, an dem das OVMS-Modul angemeldet ist, z.B. "),i("br",null,null,-1),n(" https://ovms.dexters-web.de:6869"),i("br",null,null,-1),n(" oder"),i("br",null,null,-1),n(" https://api.openvehicles.com:6869"),i("br",null,null,-1),n(" oder ein custom server"),i("br",null,null,-1)])),_:1},8,["model-value"]),t(l,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[1]||(e[1]=r=>o.updateConfiguration(r,"configuration.user_id"))},{help:u(()=>e[5]||(e[5]=[n(" Der Benutzername für die Anmeldung am benutzen OVMS-Servers. ")])),_:1},8,["model-value"]),t(l,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=r=>o.updateConfiguration(r,"configuration.password"))},{help:u(()=>e[6]||(e[6]=[n(" Das Passwort für die Anmeldung am OVMS-Server. ")])),_:1},8,["model-value"]),t(l,{title:"Vehicle Id",required:"","model-value":o.vehicle.configuration.vehicleId,"onUpdate:modelValue":e[3]||(e[3]=r=>o.updateConfiguration(r,"configuration.vehicleId"))},{help:u(()=>e[7]||(e[7]=[n(" Die Id des Fahrzeugs im OVMS, auch Module Id genannt. ")])),_:1},8,["model-value"])])}const q=d(v,[["render",g],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/ovms/vehicle.vue"]]);export{q as default}; diff --git a/web/settings/assets/vehicle-bbec57fb.js b/web/settings/assets/vehicle-bbec57fb.js deleted file mode 100644 index fe101bf4cc..0000000000 --- a/web/settings/assets/vehicle-bbec57fb.js +++ /dev/null @@ -1 +0,0 @@ -import{V as l}from"./VehicleConfig-12242a8a.js";import{_ as a,u,k as d,l as p,G as t,E as r,y as s}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocVwid",mixins:[l]},v={class:"vehicle-soc-vwid"};function f(o,e,g,w,V,b){const i=u("openwb-base-text-input");return d(),p("div",v,[t(i,{title:"Benutzername",required:"",subtype:"user","model-value":o.vehicle.configuration.user_id,"onUpdate:modelValue":e[0]||(e[0]=n=>o.updateConfiguration(n,"configuration.user_id"))},{help:r(()=>e[3]||(e[3]=[s(" Der Benutzername für die Anmeldung an den VW-Servern. ")])),_:1},8,["model-value"]),t(i,{title:"Kennwort",required:"",subtype:"password","model-value":o.vehicle.configuration.password,"onUpdate:modelValue":e[1]||(e[1]=n=>o.updateConfiguration(n,"configuration.password"))},{help:r(()=>e[4]||(e[4]=[s(" Das Passwort für die Anmeldung an den VW-Servern. ")])),_:1},8,["model-value"]),t(i,{title:"VIN",required:"","model-value":o.vehicle.configuration.vin,"onUpdate:modelValue":e[2]||(e[2]=n=>o.updateConfiguration(n,"configuration.vin"))},{help:r(()=>e[5]||(e[5]=[s(" Die Fahrgestellnummer des Fahrzeugs. ")])),_:1},8,["model-value"])])}const y=a(m,[["render",f],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/vwid/vehicle.vue"]]);export{y as default}; diff --git a/web/settings/assets/vehicle-bc60fac3.js b/web/settings/assets/vehicle-bc60fac3.js deleted file mode 100644 index 021fb459a1..0000000000 --- a/web/settings/assets/vehicle-bc60fac3.js +++ /dev/null @@ -1 +0,0 @@ -import{V as a}from"./VehicleConfig-12242a8a.js";import{_ as s,u as p,k as u,l as m,G as n,E as r,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"VehicleSocHttp",mixins:[a]},c={class:"vehicle-soc-http"};function v(t,e,f,h,g,w){const i=p("openwb-base-text-input");return u(),m("div",c,[n(i,{title:"SoC URL",subtype:"url",required:"","model-value":t.vehicle.configuration.soc_url,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.soc_url"))},{help:r(()=>e[2]||(e[2]=[l(" Es wird vom Server eine Zahl (Float mit Punkt als Dezimaltrennzeichen oder Integer) erwartet, welche den aktuellen Ladestand in Prozent (0 bis 100) zurückgibt. ")])),_:1},8,["model-value"]),n(i,{title:"Reichweiten URL",subtype:"url","model-value":t.vehicle.configuration.range_url,"onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.range_url"))},{help:r(()=>e[3]||(e[3]=[l(" Es wird vom Server eine Zahl (Float mit Punkt als Dezimaltrennzeichen oder Integer) erwartet, welche die aktuelle Reichweite in Kilometern darstellt. Diese Angabe ist optional. ")])),_:1},8,["model-value"])])}const S=s(d,[["render",v],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/http/vehicle.vue"]]);export{S as default}; diff --git a/web/settings/assets/vehicle-c9ce9ffd.js b/web/settings/assets/vehicle-c9ce9ffd.js deleted file mode 100644 index e6d467bf97..0000000000 --- a/web/settings/assets/vehicle-c9ce9ffd.js +++ /dev/null @@ -1 +0,0 @@ -import{V as o}from"./VehicleConfig-12242a8a.js";import{_ as i,u as r,k as s,l as a,G as c,E as p,y as n,x as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const d={name:"VehicleSocPSA",mixins:[o]},m={class:"vehicle-soc-psa"};function u(f,e,_,h,b,g){const t=r("openwb-base-alert");return s(),a("div",m,[c(t,{subtype:"danger"},{default:p(()=>e[0]||(e[0]=[n(" Diese Modul ist seit Änderungen der Schnittstellen durch PSA nicht mehr funktionsfähig und wird in einer zukünftigen Version entfernt. Bitte auf einen anderen Anbieter wechseln, z.B. Tronity."),l("br",null,null,-1),n(" Bei vorhandener PSA-Integration in Heimautomation kann der SoC ggf. auch per MQTT übergeben werden. ")])),_:1})])}const T=i(d,[["render",u],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/psa/vehicle.vue"]]);export{T as default}; diff --git a/web/settings/assets/vehicle-f59d95f7.js b/web/settings/assets/vehicle-f59d95f7.js deleted file mode 100644 index 72811c3162..0000000000 --- a/web/settings/assets/vehicle-f59d95f7.js +++ /dev/null @@ -1 +0,0 @@ -import{V as s}from"./VehicleConfig-12242a8a.js";import{_ as p,u,k as d,l as v,G as a,E as n,y as l}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocEVCC",mixins:[s]},g={class:"vehicle-soc-evcc"};function x(t,e,f,V,w,b){const i=u("openwb-base-text-input"),r=u("openwb-base-select-input");return d(),v("div",g,[a(i,{title:"EVCC Sponsor Token",subtype:"password",required:"","model-value":t.vehicle.configuration.sponsor_token,"onUpdate:modelValue":e[0]||(e[0]=o=>t.updateConfiguration(o,"configuration.sponsor_token"))},{help:n(()=>e[5]||(e[5]=[l(" EVCC Sponsor Token angeben, dies ist notwendig um SoC über EVCC abrufen zu können. https://sponsor.evcc.io/ ")])),_:1},8,["model-value"]),a(i,{title:"Benutzername",subtype:"text",required:"","model-value":t.vehicle.configuration.user_id,"onUpdate:modelValue":e[1]||(e[1]=o=>t.updateConfiguration(o,"configuration.user_id"))},{help:n(()=>e[6]||(e[6]=[l(" Benutzername beim Fahrzeughersteller. ")])),_:1},8,["model-value"]),a(i,{title:"Kennwort",subtype:"password",required:"","model-value":t.vehicle.configuration.password,"onUpdate:modelValue":e[2]||(e[2]=o=>t.updateConfiguration(o,"configuration.password"))},{help:n(()=>e[7]||(e[7]=[l(" Kennwort beim Fahrzeughersteller. ")])),_:1},8,["model-value"]),a(r,{title:"Marke",required:"","not-selected":"Bitte auswählen",options:[{value:"aiways",text:"Aiways"},{value:"audi",text:"Audi"},{value:"etron",text:"Audi e-tron"},{value:"bmw",text:"BMW"},{value:"dacia",text:"Dacia"},{value:"fiat",text:"Fiat"},{value:"ford",text:"Ford"},{value:"hyundai",text:"Hyundai"},{value:"jaguar",text:"Jaguar"},{value:"kia",text:"Kia"},{value:"landrover",text:"Landrover"},{value:"mg",text:"Mg"},{value:"mini",text:"Mini"},{value:"nissan",text:"Nissan"},{value:"carwings",text:"Nissan (Leaf pre 2019)"},{value:"ovms",text:"OVMS"},{value:"polestar",text:"Polestar"},{value:"porsche",text:"Porsche"},{value:"renault",text:"Renault"},{value:"seat",text:"Seat"},{value:"cupra",text:"Seat Cupra"},{value:"skoda",text:"Škoda"},{value:"enyaq",text:"Škoda Enyaq"},{value:"smart",text:"Smart"},{value:"smart-hello",text:"Smart-Hello"},{value:"template",text:"Template"},{value:"volvo",text:"Volvo"},{value:"volvo-connected",text:"Volvo-Connected"},{value:"vw",text:"VW"},{value:"id",text:"VW ID"}],"model-value":t.vehicle.configuration.vehicle_type,"onUpdate:modelValue":e[3]||(e[3]=o=>t.updateConfiguration(o,"configuration.vehicle_type"))},{help:n(()=>e[8]||(e[8]=[l(" Marke aus des Fahrzeugs. ")])),_:1},8,["model-value"]),a(i,{title:"VIN",subtype:"text","model-value":t.vehicle.configuration.VIN,"onUpdate:modelValue":e[4]||(e[4]=o=>t.updateConfiguration(o,"configuration.VIN"))},{help:n(()=>e[9]||(e[9]=[l(" Fahrgestellnummer (VIN) des Fahrzeugs. Notwendig falls mehrere Fahrzeuge im Account des Herstellers vorhanden sind. ")])),_:1},8,["model-value"])])}const B=p(m,[["render",x],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/evcc/vehicle.vue"]]);export{B as default}; diff --git a/web/settings/assets/vehicle-f86ab62f.js b/web/settings/assets/vehicle-f86ab62f.js deleted file mode 100644 index c989756553..0000000000 --- a/web/settings/assets/vehicle-f86ab62f.js +++ /dev/null @@ -1 +0,0 @@ -import{V as a}from"./VehicleConfig-12242a8a.js";import{_ as d,u,k as p,l as g,G as o,E as l,y as i,x as c}from"./vendor-06e11d0e.js";import"./vendor-fortawesome-3d19d475.js";import"./index-e2dbf7bf.js";import"./vendor-bootstrap-4263d7eb.js";import"./vendor-jquery-9fc083b4.js";import"./vendor-axios-22b906fb.js";import"./vendor-sortablejs-0bb60e5b.js";import"./dynamic-import-helper-be004503.js";const m={name:"VehicleSocTronity",mixins:[a]},f={class:"vehicle-soc-tronity"};function b(n,e,v,C,w,h){const r=u("openwb-base-text-input"),s=u("openwb-base-button-group-input");return p(),g("div",f,[o(r,{title:"Vehicle ID",subtype:"text",required:"","model-value":n.vehicle.configuration.vehicle_id,"onUpdate:modelValue":e[0]||(e[0]=t=>n.updateConfiguration(t,"configuration.vehicle_id"))},{help:l(()=>e[4]||(e[4]=[i(' Vehicle ID aus Tronity angeben. Diese ist in den "Assigned Vehicles" zu finden. ')])),_:1},8,["model-value"]),o(r,{title:"Client ID",subtype:"text",required:"","model-value":n.vehicle.configuration.client_id,"onUpdate:modelValue":e[1]||(e[1]=t=>n.updateConfiguration(t,"configuration.client_id"))},{help:l(()=>e[5]||(e[5]=[i(' Client ID aus Tronity angeben. Diese ist in den "Application Settings" zu finden. ')])),_:1},8,["model-value"]),o(r,{title:"Client Secret",subtype:"password",required:"","model-value":n.vehicle.configuration.client_secret,"onUpdate:modelValue":e[2]||(e[2]=t=>n.updateConfiguration(t,"configuration.client_secret"))},{help:l(()=>e[6]||(e[6]=[i(' Client Secret aus Tronity angeben. Diese ist in den "Application Settings" zu finden. Das Client Secret kann nur einmalig abgerufen werden. Ggf. neu erzeugen, womit frühere Client Secrets ungültig werden. ')])),_:1},8,["model-value"]),o(s,{title:"SoC während der Ladung berechnen",buttons:[{buttonValue:!1,text:"Nein",class:"btn-outline-danger"},{buttonValue:!0,text:"Ja",class:"btn-outline-success"}],"model-value":n.vehicle.configuration.calculate_soc,"onUpdate:modelValue":e[3]||(e[3]=t=>n.updateConfiguration(t,"configuration.calculate_soc"))},{help:l(()=>e[7]||(e[7]=[i(" Berechnet den Ladestand (SoC) während der Ladung. Dies ist notwendig, wenn der SoC nicht über die Schnittstelle des Fahrzeugs abgerufen werden kann. Die Berechnung erfolgt über die Ladeleistung und die Ladedauer. "),c("br",null,null,-1),i(" Derzeit notwendig für Peugeot, Opel, Citroen und DS. ")])),_:1},8,["model-value"])])}const L=d(m,[["render",b],["__file","/opt/openWB-dev/openwb-ui-settings/src/components/vehicles/tronity/vehicle.vue"]]);export{L as default}; From f76d9b47248c1d09f85eda2a42d86622472136a7 Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Thu, 12 Dec 2024 15:46:36 +0100 Subject: [PATCH 08/76] modify data path for bmwbc --- packages/modules/vehicles/bmwbc/api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/modules/vehicles/bmwbc/api.py b/packages/modules/vehicles/bmwbc/api.py index 4d232f0390..83d75fee2c 100755 --- a/packages/modules/vehicles/bmwbc/api.py +++ b/packages/modules/vehicles/bmwbc/api.py @@ -22,7 +22,7 @@ from modules.common.store import RAMDISK_PATH from pathlib import Path -DATA_PATH = Path(__file__).resolve().parents[4] / "data" / "bmwbc" +DATA_PATH = Path(__file__).resolve().parents[4] / "data" / "modules" / "bmwbc" log = logging.getLogger(__name__) From 0c6792fa5c97728f242c9732e0538311f8ddda17 Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Thu, 12 Dec 2024 15:46:48 +0100 Subject: [PATCH 09/76] increment version --- web/version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/version b/web/version index 052a820e50..1ca1fcb029 100644 --- a/web/version +++ b/web/version @@ -1 +1 @@ -2.1.6-Patch.1 +2.1.7-Alpha.1 From 87c2bc3da5b39fbb6f319a493b5f8fca676d4b83 Mon Sep 17 00:00:00 2001 From: cshagen Date: Thu, 12 Dec 2024 16:33:43 +0100 Subject: [PATCH 10/76] Colors theme (web): Fixes, Price chart updates (#2036) * update stack order button * Fix display of alternative energy graph * adjust font size for devices * Add Zoom button to energy graph * fix soc reload button * Fix battery widget * Fix SOC display in middle graph * Add lower and upper bound lines to prices graph * Fix storage of lower bound * add jumb buttons to pricechart * modify pricechart controls * Hide SOC when not configured --- .../web_themes/colors/source/package.json | 24 ++--- .../source/src/assets/js/themeConfig.ts | 33 +++++++ .../components/batteryList/BatteryList.vue | 9 +- .../chargePointList/CPChargePoint.vue | 18 ++-- .../src/components/chargePointList/model.ts | 38 +++++++- .../components/energyMeter/EnergyMeter.vue | 42 ++++++--- .../src/components/energyMeter2/BarGraph.vue | 80 ++-------------- .../src/components/energyMeter2/EnergyBar.vue | 45 ++++----- .../components/energyMeter2/EnergyLabel.vue | 92 +++--------------- .../components/energyMeter2/EnergyLabels.vue | 8 +- .../components/energyMeter2/EnergyMeter2.vue | 69 ++++++++------ .../src/components/powerGraph/PgSoc.vue | 56 +++++++---- .../{PGSourceGraph.vue => PgSourceGraph.vue} | 0 .../{PGUsageGraph.vue => PgUsageGraph.vue} | 0 .../powerGraph/{PGXAxis.vue => PgXAxis.vue} | 0 .../src/components/powerGraph/PowerGraph.vue | 21 +++-- .../powerGraph/processMonthYearGraphData.ts | 3 +- .../src/components/powerMeter/PowerMeter.vue | 50 +++------- .../priceChart/GlobalPriceChart.vue | 37 ++++++++ .../src/components/priceChart/PriceChart.vue | 75 ++++++++++++++- .../src/components/shared/CarouselFix.vue | 2 +- .../src/components/shared/RangeInput.vue | 93 +++++++++++++++++-- .../src/components/smartHome/SHListItem.vue | 13 ++- .../colors/source/src/views/ThemeSettings.vue | 33 +++++++ .../colors/web/assets/index-Cdv31XFs.js | 6 -- ...{index-Dl3NW_fd.css => index-DrkntHoP.css} | 2 +- .../colors/web/assets/index-SkrqAaaZ.js | 6 ++ ...{vendor-DHfhoOjd.js => vendor-BMda9Kth.js} | 42 ++++----- .../modules/web_themes/colors/web/index.html | 6 +- 29 files changed, 539 insertions(+), 364 deletions(-) rename packages/modules/web_themes/colors/source/src/components/powerGraph/{PGSourceGraph.vue => PgSourceGraph.vue} (100%) rename packages/modules/web_themes/colors/source/src/components/powerGraph/{PGUsageGraph.vue => PgUsageGraph.vue} (100%) rename packages/modules/web_themes/colors/source/src/components/powerGraph/{PGXAxis.vue => PgXAxis.vue} (100%) delete mode 100644 packages/modules/web_themes/colors/web/assets/index-Cdv31XFs.js rename packages/modules/web_themes/colors/web/assets/{index-Dl3NW_fd.css => index-DrkntHoP.css} (72%) create mode 100644 packages/modules/web_themes/colors/web/assets/index-SkrqAaaZ.js rename packages/modules/web_themes/colors/web/assets/{vendor-DHfhoOjd.js => vendor-BMda9Kth.js} (82%) diff --git a/packages/modules/web_themes/colors/source/package.json b/packages/modules/web_themes/colors/source/package.json index 4355098d36..ca7ddbc474 100755 --- a/packages/modules/web_themes/colors/source/package.json +++ b/packages/modules/web_themes/colors/source/package.json @@ -17,35 +17,35 @@ "@popperjs/core": "^2.11.8", "bootstrap": "^5.3.3", "d3": "^7.9.0", - "mqtt": "^5.10.1", + "mqtt": "^5.10.2", "process": "^0.11.10", - "swiper": "^11.1.14", + "swiper": "^11.1.15", "vue": "^3.3.4" }, "devDependencies": { - "@babel/types": "^7.25.8", + "@babel/types": "^7.26.0", "@esbuild-plugins/node-globals-polyfill": "^0.2.3", "@esbuild-plugins/node-modules-polyfill": "^0.2.2", "@rushstack/eslint-patch": "^1.10.4", "@tsconfig/node20": "^20.1.4", "@types/bootstrap": "^5.2.10", "@types/d3": "^7.4.3", - "@types/node": "^20.16.13", + "@types/node": "^20.17.7", "@typescript-eslint/eslint-plugin": "^7.18.0", "@typescript-eslint/parser": "^7.18.0", - "@vitejs/plugin-vue": "^5.1.4", + "@vitejs/plugin-vue": "^5.2.0", "@vue/eslint-config-prettier": "^9.0.0", "@vue/eslint-config-typescript": "^13.0.0", - "@vue/tsconfig": "^0.5.1", + "@vue/tsconfig": "^0.6.0", "esbuild": "^0.21.5", "eslint": "^8.57.1", - "eslint-plugin-vue": "^9.29.1", - "npm-run-all2": "^6.2.4", + "eslint-plugin-vue": "^9.31.0", + "npm-run-all2": "^7.0.1", "prettier": "^3.3.3", - "rollup": "^4.24.0", + "rollup": "^4.27.4", "rollup-plugin-polyfill-node": "^0.13.0", - "typescript": "^5.6.3", - "vite": "^5.4.9", - "vue-tsc": "^2.1.6" + "typescript": "^5.6.2", + "vite": "^5.4.11", + "vue-tsc": "^2.1.10" } } diff --git a/packages/modules/web_themes/colors/source/src/assets/js/themeConfig.ts b/packages/modules/web_themes/colors/source/src/assets/js/themeConfig.ts index acb37e0543..e4fd524739 100644 --- a/packages/modules/web_themes/colors/source/src/assets/js/themeConfig.ts +++ b/packages/modules/web_themes/colors/source/src/assets/js/themeConfig.ts @@ -39,6 +39,8 @@ export class Config { private _showInverters = false private _alternativeEnergy = false private _debug: boolean = false + private _lowerPriceBound = 0 + private _upperPriceBound = 0 isEtEnabled: boolean = false etPrice: number = 20.5 showRightButton = true @@ -47,6 +49,7 @@ export class Config { animationDuration = 300 animationDelay = 100 zoomGraph = false + zoomedWidget = 1 constructor() {} get showRelativeArcs() { return this._showRelativeArcs @@ -284,6 +287,26 @@ export class Config { setAlternativeEnergy(show: boolean) { this._alternativeEnergy = show } + get lowerPriceBound() { + return this._lowerPriceBound + } + set lowerPriceBound(val: number) { + this._lowerPriceBound = val + savePrefs() + } + setLowerPriceBound(val: number) { + this._lowerPriceBound = val + } + get upperPriceBound() { + return this._upperPriceBound + } + set upperPriceBound(val: number) { + this._upperPriceBound = val + savePrefs() + } + setUpperPriceBound(val: number) { + this._upperPriceBound = val + } } export const globalConfig = reactive(new Config()) @@ -457,6 +480,8 @@ interface Preferences { showPrices?: boolean showInv?: boolean altEngy?: boolean + lowerP?: number + upperP?: number debug?: boolean } @@ -487,6 +512,8 @@ function writeCookie() { prefs.showPrices = globalConfig.showPrices prefs.showInv = globalConfig.showInverters prefs.altEngy = globalConfig.alternativeEnergy + prefs.lowerP = globalConfig.lowerPriceBound + prefs.upperP = globalConfig.upperPriceBound prefs.debug = globalConfig.debug document.cookie = @@ -576,6 +603,12 @@ function readCookie() { if (prefs.altEngy !== undefined) { globalConfig.setAlternativeEnergy(prefs.altEngy) } + if (prefs.lowerP !== undefined) { + globalConfig.setLowerPriceBound(prefs.lowerP) + } + if (prefs.upperP !== undefined) { + globalConfig.setUpperPriceBound(prefs.upperP) + } if (prefs.debug !== undefined) { globalConfig.setDebug(prefs.debug) } diff --git a/packages/modules/web_themes/colors/source/src/components/batteryList/BatteryList.vue b/packages/modules/web_themes/colors/source/src/components/batteryList/BatteryList.vue index 5201342a18..c7d73f7623 100755 --- a/packages/modules/web_themes/colors/source/src/components/batteryList/BatteryList.vue +++ b/packages/modules/web_themes/colors/source/src/components/batteryList/BatteryList.vue @@ -27,7 +27,7 @@ Hagen */ - {{ formatWattH(usageSummary.batIn.energy) }} + {{ formatWattH(importedSum) }} @@ -68,6 +68,13 @@ const statusbg = computed(() => { ? 'var(--color-battery)' : 'var(--color-menu)' }) +const importedSum = computed(() => { + let sum = 0 + batteries.value.forEach((bat) => { + sum += bat.dailyYieldImport + }) + return sum +}) + diff --git a/packages/modules/web_themes/colors/source/src/components/energyMeter2/BarGraph.vue b/packages/modules/web_themes/colors/source/src/components/energyMeter2/BarGraph.vue index 8588619579..a0e2b676eb 100755 --- a/packages/modules/web_themes/colors/source/src/components/energyMeter2/BarGraph.vue +++ b/packages/modules/web_themes/colors/source/src/components/energyMeter2/BarGraph.vue @@ -3,95 +3,27 @@ - diff --git a/packages/modules/web_themes/colors/source/src/components/energyMeter2/EnergyBar.vue b/packages/modules/web_themes/colors/source/src/components/energyMeter2/EnergyBar.vue index b31e88b8a4..d0419f6acd 100755 --- a/packages/modules/web_themes/colors/source/src/components/energyMeter2/EnergyBar.vue +++ b/packages/modules/web_themes/colors/source/src/components/energyMeter2/EnergyBar.vue @@ -1,29 +1,24 @@
- + - - - 0 + Object.values(vehicles).filter((v) => v.visible).length > 0 " :width="width - margin.left - 2 * margin.right" :height="(height - margin.top - margin.bottom) / 2" @@ -64,7 +64,7 @@ (graphData.graphMode == 'day' || graphData.graphMode == 'today' || graphData.graphMode == 'live') && - Object.values(chargePoints).length > 1 + Object.values(vehicles).filter((v) => v.visible).length > 1 " :width="width - margin.left - 2 * margin.right" :height="(height - margin.top - margin.bottom) / 2" @@ -101,7 +101,7 @@ :margin="margin" :data="graphData.data" > - + import WBWidget from '../shared/WBWidget.vue' -import PGSourceGraph from './PGSourceGraph.vue' -import PGUsageGraph from './PGUsageGraph.vue' -import PGXAxis from './PGXAxis.vue' +import PgSourceGraph from './PgSourceGraph.vue' +import PgUsageGraph from './PgUsageGraph.vue' +import PgXAxis from './PgXAxis.vue' import { globalData } from '@/assets/js/model' import { graphData, @@ -139,7 +139,7 @@ import { import { globalConfig, widescreen } from '@/assets/js/themeConfig' import PgSoc from './PgSoc.vue' import PgSocAxis from './PgSocAxis.vue' -import { chargePoints } from '../chargePointList/model' +import { vehicles } from '../chargePointList/model' import PgSelector from './PgSelector.vue' import { zoom, type D3ZoomEvent, type Selection, select } from 'd3' import { onMounted } from 'vue' @@ -186,6 +186,7 @@ function filter(event: PointerEvent | WheelEvent) { } function zoomGraph() { + globalConfig.zoomedWidget = 1 globalConfig.zoomGraph = !globalConfig.zoomGraph } diff --git a/packages/modules/web_themes/colors/source/src/components/powerGraph/processMonthYearGraphData.ts b/packages/modules/web_themes/colors/source/src/components/powerGraph/processMonthYearGraphData.ts index 71d4124a5f..25eb59fc1f 100755 --- a/packages/modules/web_themes/colors/source/src/components/powerGraph/processMonthYearGraphData.ts +++ b/packages/modules/web_themes/colors/source/src/components/powerGraph/processMonthYearGraphData.ts @@ -9,7 +9,6 @@ import { } from './model' import { historicSummary, resetHistoricSummary } from '@/assets/js/model' import { itemNames } from './model' -import { chargePoints } from '../chargePointList/model' let columnValues: { [key: string]: number } = {} const consumerCategories = ['charging', 'house', 'batIn', 'devices'] @@ -159,7 +158,7 @@ function transformRow(inputRow: RawDayGraphDataItem): GraphDataItem { Object.entries(inputRow.cp).forEach(([id, values]) => { if (id != 'all') { if (!historicSummary.keys().includes(id)) { - historicSummary.addItem(id, chargePoints[+id.slice(2)].color) + historicSummary.addItem(id) } outputRow[id] = values.energy_imported } else { diff --git a/packages/modules/web_themes/colors/source/src/components/powerMeter/PowerMeter.vue b/packages/modules/web_themes/colors/source/src/components/powerMeter/PowerMeter.vue index 1002c0a234..0d88bb91d9 100755 --- a/packages/modules/web_themes/colors/source/src/components/powerMeter/PowerMeter.vue +++ b/packages/modules/web_themes/colors/source/src/components/powerMeter/PowerMeter.vue @@ -69,22 +69,28 @@ +
+ + +