Commit Graph

964 Commits

Author SHA1 Message Date
Bernhard Kirchen
c87ba97a2b webapp: optimize placement of device profile doc buttons
* remove empty container for device profile links. if a device profile
  has no links, no buttons are generated, but a row was still part of
  the DOM, adding spurious space between the select and the alert with
  the hint.
* "float" the buttons to the right, as we always place these kinds of
  buttons to the right.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
121b7cfc40 webapp: replace remaining "OpenDTU" texts with "OpenDTU-OnBattery" 2024-10-29 14:56:06 +01:00
Bernhard Kirchen
89a433c356 webapp: consistently use no colon in form labels
there are no colons for table headers as well. some form labels had no
colon already, so this change uses a unified look among form labels.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
db5520452d webapp: fixup battery total cards
the total cards have been trimmed at the bottom as the card's last child
has its margin-bottom removed (set to "auto"). that is desired as it
places the text in the middle of the cards. however, the battery total
cards are different, as they show two values each, which are arranged by
div.flex-fill containers, which are the children of the cards rather
than the h2 tags as in all other totals cards.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
50db50174e webapp: use value class to format live values
avoids inline style and removes right padding such that the value and
its unit move closed together, replicating the design of the inverter
channel info tables.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
bad5260630 webapp: avoid inline style for inverter channel info value 2024-10-29 14:56:06 +01:00
Bernhard Kirchen
31c26b0d25 webapp: MQTT: no login with cert if TLS disabled
in the settings view we hide the "login with cert" setting while TLS is
disabled, so we should also hide that info in the info view when TLS is
disabled.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
8174fb1176 webapp: MQTT: use v-if in favor of v-show
if we hide elements (which is done using style="display:none;"), they
are still part of the DOM and mess with CSS rules that shall apply to
the last element of a card or the last row of a table.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
2d49093c68 webapp: optimize spacing on bottom of cards
if the last child in a card (div.card > div.card-body) adds bottom
marging, we don't want the card to add more space through its
padding-bottom. most cards have children that add sufficient space
at the bottom anyways.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
dc78a83b84 webapp: avoid spurious DOM elements, avoid v-show, use v-if
avoid hidden (but existing) or simply redundant DOM elements from
messing with the style sheet, which uses :last-child in particular to
fix up the margin on the bottom of cards.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
8c46521d6e webapp: do not use div with v-if but template elements
when using v-if on a div element, the div will be part of the DOM in
case the condition is true. if we group elements to use v-if on the
group, we shall use a template element, so the group elements appear
as siblings of the other elements.

in particular, these spurious div do not mess up our CSS patch that sets
the bottom margin for the last child in a card to "auto".
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
b6c0a850c9 webapp: fix inverter "add" and "save order" button positions
the source tells us that the buttons are supposed to be on the right of
tha card, but the CSS broke at some point.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
0a5bd65bd2 webapp: beautify radio statistics reset button
it would be nice to have this in the header of the accordion, which is
hard, but doable. however, clicking the button then also toggles the
accordion, which is unacceptable. preventing that seems non-trivial, as
the @click.stop() is not enough. also, nesting interactive elements is
simply bad practice. the button can also go to the right of header, with
reasonable effort, but the corner radii are then messed up and would
need to react interactively (accordion collapsed or not), which is also
a pain.

we now "float" the reset button to the right, add a nice icon, and give
the button some space so it at least looks like it belongs there.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
a582f9c6d3 webapp: adjust look of tables in accordions to live view cards
this is relevant for the radio statistics table, as well as the tables
in the grid profile modal.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
aef0efcfae webapp: apply card-table class to info view cards
the cards in all information views still used a div.card-body around the
table, which added a margin on all sides of the table. to achieve a
unified look, these cards and tables now look the same as the inverter
channel cards.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
28bbd27280 webapp: align table headers with card headers
set the left margin of table header cells to the same marging the card
header use, such that the text align on the same axis.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
d8fa70371c webapp: use reasonable name for radio stats accordion 2024-10-29 14:56:06 +01:00
Bernhard Kirchen
e15fdab3e1 webapp: equalize style of cards with tables in live view
this change adjusts the style of cards showing tables such that they
look the same as inverter channel info tables.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
3edfdb7ab6 webapp: avoid inline style in inverter channel info card 2024-10-29 14:56:06 +01:00
Bernhard Kirchen
4aa9080d4e webapp: add gap between inverter selectors 2024-10-29 14:56:06 +01:00
Bernhard Kirchen
983b58fa0c webapp: remove table's bottom margin
we don't need a margin at the bottom of tables in general. not sure why
this is even a thing in bootstrap. this change, in particular, makes the
space between a table and a parent card symmetric on all sides.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
c5f37a8010 webapp: last table row shall have no bottom border
similar to the first row which has no border at the top.
2024-10-29 14:56:06 +01:00
Bernhard Kirchen
94123fe415 webapp: right-align labels for inputs on non-sm viewports
this change tries to achieve a pleasing look of input forms by
right-aligning the texts of labels. the input form now looks similar
to a table, achieving a cleaner look, especially for forms where the
labels have varying text lenghts.
2024-10-29 14:56:06 +01:00
Thomas Basler
70f301941b Feature: Implement language pack support for display texts 2024-10-25 22:38:55 +02:00
Thomas Basler
d259042542 Rewrite display language handling to work with locale strings instead of magic numbers.
This is required to implement further i18n functions using the language packs
2024-10-25 21:43:29 +02:00
Thomas Basler
6113e0737b webapp: Fix: WaitRetstartView showed basic auth dialog 2024-10-25 21:42:52 +02:00
Niko
3c1d3f7207
Feature: retrieve absorption and float voltage from Victron MPPTs (#1140)
the absorption and float voltage setting is retrieved from connected
Victron Ve.Direct MPPTs using the HEX protocol. the values are
displayed in the live view, published to MQTT, and added to Home
Assistent auto-discovery.
2024-10-25 21:42:26 +02:00
Andreas Böhm
cfb5c3f550 webapp: prettify battery settings UI
* use wide labels for all battery settings
* dynamically show and hide valid battery discharge limit settings
2024-10-24 15:07:54 +02:00
Tobias Diedrich
2e85b420d5 Feature: add SoC & voltage thresholds for battery current limit
This changes the custom current limit so the custom limit is only
applied when any of:

- SoC is valid and not ignored and SoC < threshold
- Voltage is valid and Voltage < threshold
- Voltage is invalid

Independently, if "Use Battery-Reported limit" is enabled and valid, it
is applied (unless a lower custom limit already was applied).
2024-10-24 15:07:54 +02:00
Bernhard Kirchen
3aa850a6a6 Fix: German translation for Victron MPPT load output 2024-10-22 21:33:06 +02:00
Bernhard Kirchen
0fe1dd8bd2 Merge upstream tag 'v24.10.15' into development 2024-10-22 20:10:22 +02:00
PhilJaro
83437b2759
webapp: Enable horizontal scrolling for battery view on small screens (#1324)
Enables horizontal scrolling for the batter views in order to not break the UI on small screens.
2024-10-22 18:19:13 +02:00
Thomas Basler
2a21e53422 webapp: Rename interface to prevent lint errors 2024-10-21 22:41:52 +02:00
Thomas Basler
521fce35e4 webapp: Added global reboot wait screen 2024-10-21 21:59:38 +02:00
Thomas Basler
d9a8461a2e Feature: Allow custom language pack for webapp 2024-10-21 20:15:56 +02:00
Thomas Basler
c3d3d947d7 webapp: Allow upload of language packs 2024-10-21 19:02:50 +02:00
Thomas Basler
8257eb7aa2 webapp: Use global AlertResponse interface 2024-10-19 17:39:12 +02:00
Thomas Basler
1e857b79c1 Feature: Refactor config management interface 2024-10-19 17:35:19 +02:00
Thomas Basler
aa9f36ee8f Rename config API to file API 2024-10-19 11:07:15 +02:00
Thomas Basler
1900d78122 webapp: Update dependencies 2024-10-15 18:11:31 +02:00
Niko
844d92008b
Feature: show "Smart Battery Sense" temperature in web UI (#1292)
a battery temperature value measured by a Victron smart battery sense
and communicated to a connected Victron MPPT charge controller will now
appear in the live view card.
2024-10-13 21:05:39 +02:00
Thomas Basler
0468ccc34a webapp: Update dependencies 2024-10-12 21:38:07 +02:00
Bernhard Kirchen
096a1ba3a0 Feature: show task details in system info view
shows whether or not known tasks are alive, and in particular shows how
much of the respective stack is still available.
2024-10-09 18:31:06 +02:00
Bernhard Kirchen
c483347e41 Feature: show task details in system info view
shows whether or not known tasks are alive, and in particular shows how
much of the respective stack is still available.
2024-10-08 22:10:49 +02:00
Thomas Basler
e3b66f7ffe webapp: Update dependencies 2024-10-08 18:15:03 +02:00
Bernhard Kirchen
e2ec3840d1 welcome to hoylabs: update README and URLs 2024-10-07 21:09:04 +02:00
Bernhard Kirchen
da9fb13079 webapp: pin assignment: hide unsupported pins
if the pin_mapping.json includes unsupported pins, e.g., `eth` pins on
an ESP32-S3, the whole category should still be hidden in the device
manager.
2024-10-06 22:37:05 +02:00
Bernhard Kirchen
d6d5f32329 webapp: pin assignment: hide unsupported pins
if the pin_mapping.json includes unsupported pins, e.g., `eth` pins on
an ESP32-S3, the whole category should still be hidden in the device
manager.
2024-10-06 21:55:23 +02:00
Bernhard Kirchen
ee54bebd0b webapp: address eslint issues 2024-10-06 21:34:32 +02:00
Bernhard Kirchen
b2913f24d3 Merge upstream tag 'v24.10.6' into development 2024-10-06 21:21:26 +02:00
Thomas Basler
b5ca2cfd21 Fix: "Equal brightness" in LED settings does not work correctly
fixes: #2332
2024-10-06 11:39:09 +02:00
CommanderRedYT
d3d96b51ce
webapp: Fix eslint issues 2024-10-05 23:33:23 +02:00
Thomas Basler
2c10e2510b webapp: Update dependencies 2024-10-05 22:12:49 +02:00
Thomas Basler
10b97fabb4 webapp: Update dependencies 2024-10-04 18:59:01 +02:00
Thomas Basler
edfe06e31e Feature: Show RSSI of last received packet in radio stats
The value is also published via MQTT
2024-10-04 17:36:17 +02:00
Bernhard Kirchen
185ac36282 Merge upstream tag 'v24.9.30' into development 2024-09-30 21:34:17 +02:00
Thomas Basler
99a37fe01c webapp: Update dependencies 2024-09-30 18:47:41 +02:00
Bernhard Kirchen
d0ba065f70 webapp: optimize syslog settings
* avoid duplicate id for hostname input
* hide server and port inputs if syslog disabled
2024-09-28 21:36:31 +02:00
Thomas Basler
759f899620 webapp: Update dependencies 2024-09-28 00:50:57 +02:00
Bernhard Kirchen
5d8bb8f810 Merge upstream tag 'v24.9.26' into development 2024-09-27 20:07:53 +02:00
ranma
20159f341e
Feature: Add syslog logger (#1267)
This implements RFC5424 version of the protocol.

Don't use https://github.com/arcao/Syslog since the protocol itself
is trivial and most of the libraries functionality is not needed here.
The library also doesn't support setting the PROCID field, which is set
to a random id to indicate a reboot here.

Add UI for syslog configuration to network admin view.
2024-09-26 23:01:06 +02:00
vaterlangen
d770566aec increase chunkSizeWarningLimit for webapp build (#1287)
increase from 500k (default) to 1024k in order to get rid of the warning messages.
2024-09-26 21:31:53 +02:00
vaterlangen
f36a3bf359
increase chunkSizeWarningLimit for webapp build (#1287)
increase from 500k (default) to 1024k in order to get rid of the warning messages.
2024-09-26 21:22:08 +02:00
Thomas Basler
cc7145361e webapp: Update dependencies 2024-09-26 18:01:59 +02:00
Thomas Basler
8db267b21a webapp: Apply auto format 2024-09-26 18:00:30 +02:00
Thomas Basler
0847f021f1 webapp: Update dependencies 2024-09-25 20:21:24 +02:00
Thomas Basler
9b565596d5 Feature: Allow reset of radio statistics via WebApp 2024-09-25 20:18:36 +02:00
Bernhard Kirchen
82de98c7c0 Merge remote-tracking branch 'tbnobody/master' into development 2024-09-23 21:38:50 +02:00
Thomas Basler
e29ac4f171 webapp: Fix data type for all range inputs 2024-09-23 18:24:22 +02:00
Thomas Basler
e37baedddb webapp: Update dependencies 2024-09-23 18:16:05 +02:00
Thomas Basler
5c460e26c9 Fix: Unable to CMT transmit power in WebApp
The pa_level was sent as string instead of a number.

fixes #2299
2024-09-23 17:57:29 +02:00
Thomas Basler
c4efda2e0c Added icon to radio statistics 2024-09-22 18:51:07 +02:00
Thomas Basler
a54b19bf5b Feature: Inverter radio statistics (rx/tx statistics)
The  statistics are shown in the WebApp and published via MQTT.
Statistics are reset at midnight.
2024-09-22 18:51:07 +02:00
Bernhard Kirchen
38726b99ab Merge remote-tracking branch 'tbnobody/master' into development 2024-09-21 22:00:49 +02:00
Thomas Basler
34e1c43ca7 webapp: Fix html error in eventlog 2024-09-20 23:08:08 +02:00
Bernhard Kirchen
43394bc1bc actions: enable corepack to use fixed version of yarn
this allows us to fix the version of yarn, the Node.js package manager,
to a particular version. using corepack is the recommended way to use
yarn these days.
2024-09-20 22:30:46 +02:00
Thomas Basler
0fec55a659 webapp: Update dependencies 2024-09-20 22:13:46 +02:00
Bernhard Kirchen
d1aad0b8e0 actions: enable corepack to use fixed version of yarn
this allows us to fix the version of yarn, the Node.js package manager,
to a particular version. using corepack is the recommended way to use
yarn these days.
2024-09-20 22:07:27 +02:00
Bernhard Kirchen
f9926501f1 format BatteryAdminView changes introduced by #1245 2024-09-20 17:02:14 +02:00
Bernhard Kirchen
4f5648689f webapp documentation moved as well 2024-09-20 15:39:47 +02:00
Thomas Basler
e8b1e7a71c webapp: Parse version string event if update search is not allowed 2024-09-16 19:30:45 +02:00
Thomas Basler
d3d92e90e0 webapp: Upgrade tsconfig node18 to node22 2024-09-16 19:13:17 +02:00
Thomas Basler
3e3cf3cd64 webapp: Update dependencies 2024-09-16 19:04:26 +02:00
Snoopy-HSS
3fc43098a6
Feature: Support for SBS Unipower batteries (#1199)
Allows to connect to SBS Unipower batteries using a CAN bus.
2024-09-16 15:22:15 +02:00
Andreas Böhm
a6e7007f4b
Feature: extend battery discharge limit support (#1245)
* implements UI to configure battery discharge limit
* adds support for discharge limit to MQTT battery provider
* add option to hide `issues` section from battery live view (for MQTT battery)
2024-09-13 20:52:23 +02:00
Bernhard Kirchen
9067acdab7 fix: typo in german web app locale
closes #1223.
2024-09-10 14:33:39 +02:00
Bernhard Kirchen
ffb30de4d2 Revert "webapp: pylontech battery provider can also read DEYE"
This reverts commit cdd6f4cf1b.

See #1244.
2024-09-10 14:24:35 +02:00
Bernhard Kirchen
cdd6f4cf1b webapp: pylontech battery provider can also read DEYE 2024-09-09 21:53:51 +02:00
Thomas Basler
ac5b6f3097 webapp: update dependencies 2024-09-02 20:37:54 +02:00
Bernhard Kirchen
5ad63e6c44 Fix: DPL settings: do not reset solar_passthrough_enabled
we must not reset the configuration switch value in this context. this
leads to solar passthrough being disabled once the DPL is disabled. when
re-enabling the DPL, solar passthrough is suddenly off, even though the
user configured it to be on.

the configuration switch can stay on. the DPL will still sanity-check
whether or not solar-passthrough can be used (checks if VE.Direct is
enabled) or it is irrelevant since the DPL is disabled.
2024-09-01 22:14:33 +02:00
Bernhard Kirchen
dcc8313c8c webapp "About" view: link to opendtu-onbattery.net 2024-08-23 17:16:52 +02:00
Bernhard Kirchen
190e1eb0f9 adjust update badge color: having an update available is no danger 2024-08-23 17:16:52 +02:00
Bernhard Kirchen
b115f946cd Fix: update info: compare to respective branch
official release builds are built from branch master, as the respective
tags point to commits in branch master (only). to check whether or not a
new version is available, we should check branch master for new commits.

checking against HEAD does not work as expected, at least in the
OpenDTU-OnBattery repo, since its default branch is "development", not
"master".

usually, there should be no commits on master in between releases, so we
will now only show "update available" if a new release was made. this is
not foolproof, but should work as long as we keep "master" clean.

for builds from other branches, the comparison is perfomed against the
respective branch. if a user installed a binary built by github actions
based on a development branch, the user will see "update available" if
new commits were added to the development branch since.

for other branches, also pull request builds, the test for updates will
fail as the branch name shown in the system info is not actually a
branch name, e.g., "helgeerbe/OpenDTU-OnBattery/pr1183-202408212043".
2024-08-23 17:16:52 +02:00
Andreas Böhm
e7d454ff0b
Feature: support 'use battery at night' without VE.Direct
previously, we needed VE.Direct enabled to know the
solar charge controller output, which solely decided when
it was "nighttime". since this is now determined by the
wall clock, we can offer this feature to users without a
Victron charge controller connected using VE.Direct.
2024-08-19 20:49:37 +02:00
Thomas Basler
e4260d3370 webapp: Update dependencies 2024-08-17 11:34:26 +02:00
Andreas Böhm
dacf9d4be1
remove ac-charger target consumption limits (#1159) 2024-08-08 22:41:05 +02:00
Bernhard Kirchen
82b28e3732 Merge upstream tag 'v24.8.5' into development 2024-08-06 21:05:21 +02:00
Thomas Basler
0cc55f3b87 webapp: update dependencies 2024-08-05 18:31:31 +02:00
Thomas Basler
0bb3fc8b94 Fixed documentation for webapp dev mode 2024-08-05 18:31:31 +02:00
Bernhard Kirchen
04513d3f22 webapp: disable OTA firmware dialog for unsupported devices
show a warning instead and cancel uploads with a HTPP 500 response.
2024-08-04 22:38:19 +02:00