27 Commits

Author SHA1 Message Date
Maxim Prokhorov
c70fe1a016 web: bump html-validate@8 again
fixes 3f1cf8cd *-dup false positives
2024-04-12 00:22:38 +03:00
Maxim Prokhorov
3f1cf8cd04 webui: autocomplete="off" fixes
update dev html-validate@8 and eslint
workaround for form-dup-name (false-positive?)
2024-03-19 19:51:53 +03:00
Maxim Prokhorov
afb24f7ba6 webui: bump html-validate to 7.6.0 2022-10-23 03:56:19 +03:00
Maxim Prokhorov
aa84f98d5f webui: bump eslint to 8.26 2022-10-23 03:49:06 +03:00
Maxim Prokhorov
95b89daaea webui: bump again for html-validate 2022-01-14 04:05:06 +03:00
Maxim Prokhorov
fa3deeffbf webui: remove jquery dependencies and clean-up websocket API
Refactor WebUI:
- remove jquery dependency from the base custom.js and use vanilla JS
- remove jquery + jquery-datatables dependency from the RFM69 module
- replace jquery-datatables handlers with pure-css table + some basic cell filtering
  (may be incomplete, but tbh it is not worth additional 50Kb to the .bin size)
- introduce a common way to notify about the app errors, show small text notification
  at the top of the page instead of relying on user to find out about errors by using the Web Developer Tools
- replace <span name=...> with <span data-settings-key=...>
- replace <div> templates with <template>, disallowing modification
  without an explicit DOM clone
- run `eslint` on html/custom.js and `html-validate` on html/index.html,
  and fix issues detected by both tools

Streamline settings group handling in custom.js & index.html
- drop module-specific button-add-... in favour of button-add-settings-group
- only enforce data-settings-max requirement when the property actually exists
- re-create label for=... and input id=... when settings group is
  modified, so checkboxes refer to the correct element
- introduce additional data-... properties to generalize settings group additions
- introduce Enumerable object to track some common list elements for
  <select>, allow to re-create <option> list when messages come in
  different order

Minor fixes that also came with this:
- fix relay code incorrectly parsing the payload, causing no relay names
  to be displayed in the SWITCHES panel
- fix scheduler code accidentally combining keys b/c of the way C parses
  string literals on separate lines, without any commas in-between
- thermostat should not reference tmpUnit directly in the webui, replace with
  module-specific thermostatUnit that is handled on the device itself
- fix index.html initial setup invalid adminPass ids
- fix index.html layout when removing specific schedules
2021-07-18 23:30:32 +03:00
Maxim Prokhorov
8df23392a9 webui: clean-up cfd6e36dbe
update to terser v5
replace gulp-remove-code with a rough equivalent in the gulpscript itself
replace gulp-inline with gulp-inline-source-html
remove base64 modules as redundant when running inline-source (does both)
remove crass as redundant when running inline-source (uses csso)
fixup jquery source map comment (but still keep the actual file)

at least now this seems stable enough to start more of the ui tweaking
2021-01-16 20:40:23 +03:00
Maxim Prokhorov
3e0291e534 webui: bump old deps 2021-01-15 23:06:19 +03:00
Maxim Prokhorov
cfd6e36dbe webui: use terser as js minifier
support es6 syntax
use js comment style in custom.js
only minify the custom.js

using 4.x branch, since 5.x wants async / await and more changes to the gulp script
2021-01-15 22:45:44 +03:00
Max Prokhorov
65d5a50b0b Update to gulp@4 2018-12-09 00:03:55 +03:00
Max Prokhorov
1383b4441e Update npm packages
Bump npm version installed by travis
Update package-lock for latest npm version
Bump packages versions and clean-up unused
Missing datatables.js images to avoid warnings
2018-09-22 05:04:20 +03:00
Xose Pérez
1c755cfb89 Pre-build the different available WebUI images 2018-06-22 20:19:39 +02:00
Xose Pérez
7b63521c80 Added map-stream to dependencies 2018-06-21 18:18:31 +02:00
Xose Pérez
2dd60912cc Silent webui build on commit 2018-06-21 18:09:34 +02:00
Xose Pérez
79cb59b06c Adding filtering code to HTML and JS files 2018-06-16 23:00:15 +02:00
Xose Pérez
86d9ee8009 CSS optimization (#870, #871) 2018-05-21 12:48:04 +02:00
Xose Pérez
3f9d99a7d3 Added missing dependency on gulp-crass 2018-03-31 12:37:07 +02:00
Xose Pérez
6f62758244 Using crass for CSS minification 2018-03-30 23:31:51 +02:00
Xose Pérez
191e805b78 Remove dependency from gulp-util (#493) 2018-03-02 14:01:25 +01:00
Xose Pérez
939a1e184a Added CSS lint to gulp file 2018-01-26 23:54:38 +01:00
Xose Pérez
8b87f70696 Add HTML linter to gulp builder, fix issues with HTML 2017-12-08 09:59:06 +01:00
Xose Pérez
295c0518cb Cleanup gulp dependencies 2017-07-14 23:00:04 +02:00
Xose Pérez
9d9f0e9a02 Embed images and favicon into HTML file 2017-02-17 23:38:29 +01:00
Xose Pérez
0f5a0e8f75 Forward to password change page if default password 2016-12-12 00:08:34 +01:00
Xose Pérez
3a47bd402c Update filesystem builder script removing unnecessary dependencies and changing default target 2016-11-14 22:33:29 +01:00
Xose Pérez
88de7f51d0 Complete update 2016-10-06 11:53:58 +02:00
Xose Pérez
5666cd5198 Using gulp to build file system files 2016-09-01 00:34:03 +02:00