diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 1ef58883..088e9da6 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -10,3 +10,12 @@ updates: - "jeremypoulter" - "glynhudson" - "chris1howell" + + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" + reviewers: + - "jeremypoulter" + - "glynhudson" + - "chris1howell" diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 7673d0db..91bda90e 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -4,12 +4,34 @@ name: Build/Release OpenEVSE on: workflow_dispatch: + inputs: + v1_ref: + required: true + description: The branch/tag for the v1 UI + default: master + v2_ref: + required: true + description: The branch/tag for the v2 UI + default: master + push: branches: - master pull_request: jobs: + debug: + runs-on: ubuntu-latest + steps: + - name: Dump the environment + run: echo "Environment variables:" && env | sort + + - name: Dump the event + run: cat $GITHUB_EVENT_PATH + + - name: Dump github.ref_name + run: echo "github.ref_name = '${{ github.ref_name }}'" + build: runs-on: ubuntu-latest @@ -31,21 +53,36 @@ jobs: - openevse_esp32-gateway-f_dev - openevse_esp32-poe-iso - openevse_esp32-heltec-wifi-lora-v2 + gui: + - name: openevse_wifi_gui + repo: OpenEVSE/openevse_wifi_gui + build_flags: "" + ref: ${{ inputs.v1_ref }} + - name: openevse-gui-v2 + repo: KipK/openevse-gui-v2 + build_flags: "-D DISABLE_WIFI_PORTAL -D WEB_SERVER_ROOT_PAGE_INDEX" + ref: ${{ inputs.v2_ref }} steps: - uses: ammaraskar/gcc-problem-matcher@master - - uses: actions/checkout@v2 - with: - submodules: recursive + - uses: actions/checkout@v3 # - name: Temp checkout latest OpenEVSE lib -# uses: actions/checkout@v2 +# uses: actions/checkout@v3 # with: # repository: jeremypoulter/OpenEVSE_Lib # ref: openevse_wifi_timer_apis # path: lib/OpenEVSE + - name: Checkout GUI + uses: actions/checkout@v3 + with: + repository: ${{ matrix.gui.repo }} + path: ${{ matrix.gui.name }} + ref: ${{ matrix.gui.ref }} + submodules: recursive + - name: Cache pip uses: actions/cache@v2 with: @@ -73,31 +110,34 @@ jobs: - name: Set up Node JS uses: actions/setup-node@v2 with: - node-version: '12' + node-version: '16' - name: Install dependencies run: | - cd gui + cd ${{ matrix.gui.name }} npm install - name: Build GUI run: | - cd gui + cd ${{ matrix.gui.name }} npm run build - name: Run PlatformIO run: pio run -e ${{ matrix.env }} + env: + GUI_NAME: ${{ matrix.gui.name }} + PLATFORMIO_BUILD_FLAGS: ${{ matrix.gui.build_flags }} - name: Upload output to GitHub uses: actions/upload-artifact@v2 with: - name: ${{ matrix.env }}.bin + name: ${{ matrix.env }}_${{ matrix.gui.name }}.bin path: .pio/build/${{ matrix.env }}/firmware.bin release: runs-on: ubuntu-latest needs: build - if: github.ref == 'refs/heads/master' + if: github.ref_name == 'master' || github.ref_name == 'build_v2_gui' || github.head_ref == 'build_v2_gui' steps: - name: Download the built assets @@ -118,8 +158,8 @@ jobs: uses: "marvinpinto/action-automatic-releases@latest" with: repo_token: "${{ secrets.GITHUB_TOKEN }}" - automatic_release_tag: "latest" + automatic_release_tag: "${{ github.ref_name == 'master' && 'latest' || 'v2_gui' }}" prerelease: true - title: "Development Build" + title: "${{ github.ref_name == 'master' && 'Development Build' || 'V2 GUI pre-release' }}" files: | *.bin diff --git a/scripts/extra_script.py b/scripts/extra_script.py index c00f3c16..9984c03a 100644 --- a/scripts/extra_script.py +++ b/scripts/extra_script.py @@ -1,10 +1,14 @@ from os.path import join, isfile, isdir, basename -from os import listdir, system +from os import listdir, system, environ from pprint import pprint import hashlib +import pathlib Import("env") +# Dump construction environment (for debug purpose) +#print(env.Dump()) + # Install pre-requisites npm_installed = (0 == system("npm --version")) @@ -22,8 +26,12 @@ def text_to_header(source_file): original = source_fh.read() filename = get_c_name(source_file) output = "static const char CONTENT_{}[] PROGMEM = ".format(filename) - for line in original.splitlines(): - output += u"\n \"{}\\n\"".format(line.replace('\\', '\\\\').replace('"', '\\"')) + lines = original.splitlines() + if len(lines) > 0: + for line in lines: + output += u"\n \"{}\\n\"".format(line.replace('\\', '\\\\').replace('"', '\\"')) + else: + output += "\"\"" output += ";\n" output += "static const char CONTENT_{}_ETAG[] PROGMEM = \"{}\";\n".format(filename, hashlib.sha256(original.encode('utf-8')).hexdigest()) return output @@ -56,8 +64,7 @@ def data_to_header(env, target, source): for source_file in source: #print("Reading {}".format(source_file)) file = source_file.get_abspath() - if file.endswith(".css") or file.endswith(".js") or file.endswith(".htm") or file.endswith(".html") or file.endswith(".svg") or file.endswith(".json"): - output += text_to_header(file) + if file.endswith(".css") or file.endswith(".js") or file.endswith(".htm") or file.endswith(".html") or file.endswith(".svg") or file.endswith(".json") or file.endswith(".webmanifest"): output += text_to_header(file) else: output += binary_to_header(file) target_file = target[0].get_abspath() @@ -65,46 +72,82 @@ def data_to_header(env, target, source): with open(target_file, "w") as output_file: output_file.write(output) -def make_static(env, target, source): - output = "" - +def filtered_listdir_scan(dir): out_files = [] - for file in listdir(dist_dir): - if isfile(join(dist_dir, file)) and (file.endswith(".gz") or file.endswith(".png") or file.endswith(".jpg")): - out_files.append(file) + for file in listdir(dir): + path = join(dir, file) + if isfile(path) and (pathlib.Path(file).suffix in (".html", ".js", ".css", ".json", ".gz", ".png", ".jpg", ".ico", ".woff", ".woff2", ".webmanifest")): out_files.append(path) + elif isdir(path): + out_files.extend(filtered_listdir_scan(path)) + + return out_files + +def filtered_listdir(dir): + files = filtered_listdir_scan(dir) # Sort files to make sure the order is constant - out_files = sorted(out_files) + files = sorted(files) + + # filter out and GZipped files + out_files = [] + for file in files: + if file.endswith(".gz") or file+".gz" not in files: + file = file.replace(join(dir, ""), "") + out_files.append(file) + + return out_files + +def make_safe(file): + chars = "\\/`*{}[]()>#+-.!$" + for c in chars: + if c in file: + file = file.replace(c, "_") + + return file + +def make_static(env, target, source): + output = "" + + out_files = filtered_listdir(dist_dir) # include the files for out_file in out_files: - filename = "web_server."+out_file+".h" + filename = "web_server."+make_safe(out_file)+".h" output += "#include \"{}\"\n".format(filename) output += "StaticFile staticFiles[] = {\n" for out_file in out_files: filetype = None - compress = True - if out_file.endswith(".css.gz"): + compress = out_file.endswith(".gz") + if out_file.endswith(".css") or out_file.endswith(".css.gz"): filetype = "CSS" - elif out_file.endswith(".js.gz"): + elif out_file.endswith(".js") or out_file.endswith(".js.gz"): filetype = "JS" - elif out_file.endswith(".htm.gz") or out_file.endswith(".html.gz"): + elif out_file.endswith(".htm") or out_file.endswith(".html") or out_file.endswith(".htm.gz") or out_file.endswith(".html.gz"): filetype = "HTML" elif out_file.endswith(".jpg"): filetype = "JPEG" - compress = False elif out_file.endswith(".png"): filetype = "PNG" - compress = False - elif out_file.endswith(".svg.gz"): + elif out_file.endswith(".ico"): + filetype = "ICO" + elif out_file.endswith(".svg") or out_file.endswith(".svg.gz"): filetype = "SVG" - elif out_file.endswith(".json.gz"): + elif out_file.endswith(".json") or out_file.endswith(".json.gz"): filetype = "JSON" - - c_name = get_c_name(out_file) - output += " { \"/"+out_file.replace(".gz","")+"\", CONTENT_"+c_name+", sizeof(CONTENT_"+c_name+") - 1, _CONTENT_TYPE_"+filetype+", CONTENT_"+c_name+"_ETAG, "+("true" if compress else "false")+" },\n" + elif out_file.endswith(".woff"): + filetype = "WOFF" + elif out_file.endswith(".woff2"): + filetype = "WOFF2" + elif out_file.endswith(".webmanifest"): + filetype = "MANIFEST" + + if filetype is not None: + c_name = get_c_name(out_file) + output += " { \"/"+out_file.replace(".gz","")+"\", CONTENT_"+c_name+", sizeof(CONTENT_"+c_name+") - 1, _CONTENT_TYPE_"+filetype+", CONTENT_"+c_name+"_ETAG, "+("true" if compress else "false")+" },\n" + else: + print("Warning: Could not detect filetype for %s" % (out_file)) output += "};\n" @@ -117,12 +160,13 @@ def process_html_app(source, dest, env): web_server_static_files = join(dest, "web_server_static_files.h") web_server_static = join("$BUILDSRC_DIR", "web_server_static.cpp.o") - for file in sorted(listdir(source)): - if isfile(join(source, file)) and (file.endswith(".gz") or file.endswith(".png") or file.endswith(".jpg")): - data_file = join(source, file) - header_file = join(dest, "web_server."+file+".h") - env.Command(header_file, data_file, data_to_header) - env.Depends(web_server_static_files, header_file) + files = filtered_listdir(source) + + for file in files: + data_file = join(source, file) + header_file = join(dest, "web_server."+make_safe(file)+".h") + env.Command(header_file, data_file, data_to_header) + env.Depends(web_server_static_files, header_file) env.Depends(web_server_static, env.Command(web_server_static_files, source, make_static)) @@ -132,7 +176,11 @@ def process_html_app(source, dest, env): if npm_installed: headers_src = join(env.subst("$PROJECTSRC_DIR"), "web_static") - gui_dir = join(env.subst("$PROJECT_DIR"), "gui") + gui_name = environ.get("GUI_NAME") + if gui_name in (None, ""): + gui_name = "gui" + + gui_dir = join(env.subst("$PROJECT_DIR"), gui_name) dist_dir = join(gui_dir, "dist") node_modules = join(gui_dir, "node_modules") @@ -143,11 +191,11 @@ def process_html_app(source, dest, env): if(isdir(dist_dir)): process_html_app(dist_dir, headers_src, env) else: - print("Warning: GUI not built, run 'cd %s; npm run build'" % gui_dir) + print("Warning: GUI not built, run 'cd %s; npm run build'" % (gui_dir)) else: - print("Warning: GUI dependencies not found, run 'cd %s; npm install'" % gui_dir) + print("Warning: GUI dependencies not found, run 'cd %s; npm install'" % (gui_dir)) else: - print("Warning: GUI files not found, run 'git submodule update --init'") + print("Warning: GUI files not found, run 'git submodule update --init' (%s)" % (gui_dir)) else: print("Warning: Node.JS and NPM required to update the UI") diff --git a/src/mqtt.cpp b/src/mqtt.cpp index 607f2c5b..7df25a8b 100644 --- a/src/mqtt.cpp +++ b/src/mqtt.cpp @@ -151,7 +151,7 @@ void mqttmsg_callback(MongooseString topic, MongooseString payload) { mqtt_set_claim(true, override_props); } } - + // Claim else if (topic_string == mqtt_topic + "/claim/set") { if (payload_str.equals("release")) { @@ -164,7 +164,7 @@ void mqttmsg_callback(MongooseString topic, MongooseString payload) { mqtt_set_claim(false, claim_props); } } - + //Schedule else if (topic_string == mqtt_topic + "/schedule/set") { mqtt_set_schedule(payload_str); @@ -269,7 +269,7 @@ mqtt_connect() mqttclient.publish(mqtt_announce_topic, announce, true); doc.clear(); - + doc["mqtt_connected"] = 1; event_send(doc); @@ -332,19 +332,19 @@ mqtt_connect() mqttclient.subscribe(mqtt_sub_topic); yield(); - mqtt_sub_topic = mqtt_topic + "/override/set"; + mqtt_sub_topic = mqtt_topic + "/override/set"; mqttclient.subscribe(mqtt_sub_topic); yield(); - mqtt_sub_topic = mqtt_topic + "/claim/set"; + mqtt_sub_topic = mqtt_topic + "/claim/set"; mqttclient.subscribe(mqtt_sub_topic); yield(); - mqtt_sub_topic = mqtt_topic + "/schedule/set"; + mqtt_sub_topic = mqtt_topic + "/schedule/set"; mqttclient.subscribe(mqtt_sub_topic); yield(); - mqtt_sub_topic = mqtt_topic + "/schedule/clear"; + mqtt_sub_topic = mqtt_topic + "/schedule/clear"; mqttclient.subscribe(mqtt_sub_topic); yield(); connecting = false; @@ -392,7 +392,7 @@ mqtt_set_claim(bool override, EvseProperties &props) { mqtt_publish_claim(); } } - + Profile_End(mqtt_set_claim, 5); } @@ -404,10 +404,10 @@ mqtt_publish_claim() { bool hasclaim = evse.clientHasClaim(EvseClient_OpenEVSE_MQTT); const size_t capacity = JSON_OBJECT_SIZE(7) + 1024; DynamicJsonDocument claimdata(capacity); - if(hasclaim) { + if(hasclaim) { evse.serializeClaim(claimdata, EvseClient_OpenEVSE_MQTT); - - } + + } else { claimdata["state"] = "null"; } @@ -427,27 +427,27 @@ mqtt_publish_override() { if (evse.clientHasClaim(EvseClient_OpenEVSE_Manual) || manual.isActive()) { props = evse.getClaimProperties(EvseClient_OpenEVSE_Manual); //check if there's state property in override - props.serialize(override_data); + props.serialize(override_data); } else override_data["state"] = "null"; mqtt_publish_json(override_data, "/override"); - - + + } void mqtt_set_schedule(String schedule) { Profile_Start(mqtt_set_schedule); scheduler.deserialize(schedule); mqtt_publish_schedule(); - Profile_End(mqtt_set_schedule, 5); + Profile_End(mqtt_set_schedule, 5); } void mqtt_clear_schedule(uint32_t event) { Profile_Start(mqtt_clear_schedule); scheduler.removeEvent(event); - Profile_End(mqtt_clear_schedule, 5); + Profile_End(mqtt_clear_schedule, 5); mqtt_publish_schedule(); } @@ -465,19 +465,19 @@ mqtt_publish_schedule() { } } -void +void mqtt_publish_json(JsonDocument &data, const char* topic) { Profile_Start(mqtt_publish_json); if(!config_mqtt_enabled() || !mqttclient.connected()) { return; } - + String fulltopic = mqtt_topic + topic; String doc; serializeJson(data, doc); mqttclient.publish(fulltopic,doc, true); // claims are always published as retained as they are not updated regularly Profile_End(mqtt_publish_json, 5); - + } // ------------------------------------------------------------------- // MQTT state management @@ -487,31 +487,32 @@ mqtt_publish_json(JsonDocument &data, const char* topic) { void mqtt_loop() { Profile_Start(mqtt_loop); - // Do we need to restart MQTT? - if(mqttRestartTime > 0 && millis() > mqttRestartTime) - { - mqttRestartTime = 0; - if (mqttclient.connected()) { - DBUGF("Disconnecting MQTT"); - mqttclient.disconnect(); - DynamicJsonDocument doc(JSON_OBJECT_SIZE(1) + 60); - doc["mqtt_connected"] = 0; - event_send(doc); - } - nextMqttReconnectAttempt = 0; + + // Do we need to restart MQTT? + if(mqttRestartTime > 0 && millis() > mqttRestartTime) + { + mqttRestartTime = 0; + if (mqttclient.connected()) { + DBUGF("Disconnecting MQTT"); + mqttclient.disconnect(); + DynamicJsonDocument doc(JSON_OBJECT_SIZE(1) + 60); + doc["mqtt_connected"] = 0; + event_send(doc); } + nextMqttReconnectAttempt = 0; + } - if (config_mqtt_enabled() && !mqttclient.connected()) { - long now = millis(); - // try and reconnect every x seconds - if (now > nextMqttReconnectAttempt) { - nextMqttReconnectAttempt = now + MQTT_CONNECT_TIMEOUT; - mqtt_connect(); // Attempt to reconnect - } + if (config_mqtt_enabled() && !mqttclient.connected()) { + long now = millis(); + // try and reconnect every x seconds + if (now > nextMqttReconnectAttempt) { + nextMqttReconnectAttempt = now + MQTT_CONNECT_TIMEOUT; + mqtt_connect(); // Attempt to reconnect } + } // Temporise loop - if (millis() - loop_timer > MQTT_LOOP) { + if (millis() - loop_timer > MQTT_LOOP) { loop_timer = millis(); if (claimsVersion != evse.getClaimsVersion()) { mqtt_publish_claim(); diff --git a/src/web_server.cpp b/src/web_server.cpp index c359477f..b9358bd0 100644 --- a/src/web_server.cpp +++ b/src/web_server.cpp @@ -51,14 +51,18 @@ static unsigned long wifiRestartTime = 0; static unsigned long apOffTime = 0; // Content Types -const char _CONTENT_TYPE_HTML[] PROGMEM = "text/html"; -const char _CONTENT_TYPE_TEXT[] PROGMEM = "text/plain"; -const char _CONTENT_TYPE_CSS[] PROGMEM = "text/css"; -const char _CONTENT_TYPE_JSON[] PROGMEM = "application/json"; -const char _CONTENT_TYPE_JS[] PROGMEM = "application/javascript"; -const char _CONTENT_TYPE_JPEG[] PROGMEM = "image/jpeg"; -const char _CONTENT_TYPE_PNG[] PROGMEM = "image/png"; -const char _CONTENT_TYPE_SVG[] PROGMEM = "image/svg+xml"; +const char _CONTENT_TYPE_HTML[] PROGMEM = "text/html"; +const char _CONTENT_TYPE_TEXT[] PROGMEM = "text/plain"; +const char _CONTENT_TYPE_CSS[] PROGMEM = "text/css"; +const char _CONTENT_TYPE_JSON[] PROGMEM = "application/json"; +const char _CONTENT_TYPE_JS[] PROGMEM = "text/javascript"; +const char _CONTENT_TYPE_JPEG[] PROGMEM = "image/jpeg"; +const char _CONTENT_TYPE_PNG[] PROGMEM = "image/png"; +const char _CONTENT_TYPE_SVG[] PROGMEM = "image/svg+xml"; +const char _CONTENT_TYPE_ICO[] PROGMEM = "image/vnd.microsoft.icon"; +const char _CONTENT_TYPE_WOFF[] PROGMEM = "font/woff"; +const char _CONTENT_TYPE_WOFF2[] PROGMEM = "font/woff2"; +const char _CONTENT_TYPE_MANIFEST[] PROGMEM = "application/manifest+json"; #define RAPI_RESPONSE_BLOCKED -300 diff --git a/src/web_server.h b/src/web_server.h index 3d7fa674..4cdd8fc2 100644 --- a/src/web_server.h +++ b/src/web_server.h @@ -29,6 +29,18 @@ extern const char _CONTENT_TYPE_PNG[]; extern const char _CONTENT_TYPE_SVG[]; #define CONTENT_TYPE_SVG FPSTR(_CONTENT_TYPE_SVG) +extern const char _CONTENT_TYPE_ICO[]; +#define CONTENT_TYPE_ICO FPSTR(_CONTENT_TYPE_ICO) + +extern const char _CONTENT_TYPE_WOFF[]; +#define CONTENT_TYPE_WOFF FPSTR(_CONTENT_TYPE_WOFF) + +extern const char _CONTENT_TYPE_WOFF2[]; +#define CONTENT_TYPE_WOFF2 FPSTR(_CONTENT_TYPE_WOFF2) + +extern const char _CONTENT_TYPE_MANIFEST[]; +#define CONTENT_TYPE_MANIFEST FPSTR(_CONTENT_TYPE_MANIFEST) + extern MongooseHttpServer server; extern void web_server_setup(); diff --git a/src/web_server_static.cpp b/src/web_server_static.cpp index 381f5528..2ce8a4ad 100644 --- a/src/web_server_static.cpp +++ b/src/web_server_static.cpp @@ -29,12 +29,20 @@ struct StaticFile #define IS_ALIGNED(x) (0 == ((uint32_t)(x) & 0x3)) +#ifdef WEB_SERVER_ROOT_PAGE_INDEX +#define WEB_SERVER_INDEX_PAGE "index.html" +#else +#define WEB_SERVER_INDEX_PAGE "home.html" +#endif + // Pages -static const char _HOME_PAGE[] PROGMEM = "/home.html"; +static const char _HOME_PAGE[] PROGMEM = "/" WEB_SERVER_INDEX_PAGE; #define HOME_PAGE FPSTR(_HOME_PAGE) +#ifndef DISABLE_WIFI_PORTAL static const char _WIFI_PAGE[] PROGMEM = "/wifi_portal.html"; #define WIFI_PAGE FPSTR(_WIFI_PAGE) +#endif class StaticFileResponse: public MongooseHttpServerResponse { @@ -50,7 +58,12 @@ static bool web_static_get_file(MongooseHttpServerRequest *request, StaticFile * // Remove the found uri String path = request->uri(); if(path == "/") { - path = String(net_wifi_mode_is_ap_only() ? WIFI_PAGE : HOME_PAGE); + path = String( + #ifndef DISABLE_WIFI_PORTAL + net_wifi_mode_is_ap_only() ? WIFI_PAGE : + #endif + HOME_PAGE); + } DBUGF("Looking for %s", path.c_str()); @@ -114,4 +127,4 @@ bool web_static_handle(MongooseHttpServerRequest *request) } return false; -} \ No newline at end of file +} diff --git a/src/web_static/web_server.arduinoocpp.png.h b/src/web_static/web_server.arduinoocpp_png.h similarity index 100% rename from src/web_static/web_server.arduinoocpp.png.h rename to src/web_static/web_server.arduinoocpp_png.h diff --git a/src/web_static/web_server.assets_js.h b/src/web_static/web_server.assets_js.h new file mode 100644 index 00000000..ef8cf8c6 --- /dev/null +++ b/src/web_static/web_server.assets_js.h @@ -0,0 +1,2 @@ +static const char CONTENT_ASSETS_JS[] PROGMEM = ""; +static const char CONTENT_ASSETS_JS_ETAG[] PROGMEM = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"; diff --git a/src/web_static/web_server.emoncms.jpg.h b/src/web_static/web_server.emoncms_jpg.h similarity index 100% rename from src/web_static/web_server.emoncms.jpg.h rename to src/web_static/web_server.emoncms_jpg.h diff --git a/src/web_static/web_server.favicon-152.png.h b/src/web_static/web_server.favicon_152_png.h similarity index 100% rename from src/web_static/web_server.favicon-152.png.h rename to src/web_static/web_server.favicon_152_png.h diff --git a/src/web_static/web_server.favicon-167.png.h b/src/web_static/web_server.favicon_167_png.h similarity index 100% rename from src/web_static/web_server.favicon-167.png.h rename to src/web_static/web_server.favicon_167_png.h diff --git a/src/web_static/web_server.favicon-16x16.png.h b/src/web_static/web_server.favicon_16x16_png.h similarity index 100% rename from src/web_static/web_server.favicon-16x16.png.h rename to src/web_static/web_server.favicon_16x16_png.h diff --git a/src/web_static/web_server.favicon-180.png.h b/src/web_static/web_server.favicon_180_png.h similarity index 100% rename from src/web_static/web_server.favicon-180.png.h rename to src/web_static/web_server.favicon_180_png.h diff --git a/src/web_static/web_server.favicon-32x32.png.h b/src/web_static/web_server.favicon_32x32_png.h similarity index 100% rename from src/web_static/web_server.favicon-32x32.png.h rename to src/web_static/web_server.favicon_32x32_png.h diff --git a/src/web_static/web_server.home.html.gz.h b/src/web_static/web_server.home_html_gz.h similarity index 99% rename from src/web_static/web_server.home.html.gz.h rename to src/web_static/web_server.home_html_gz.h index 309936bf..06e343d0 100644 --- a/src/web_static/web_server.home.html.gz.h +++ b/src/web_static/web_server.home_html_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_HOME_HTML_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xed, 0x7d, 0x6d, 0x73, 0xdb, 0xb6, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0xed, 0x7d, 0x6d, 0x73, 0xdb, 0xb6, 0xd2, 0xe8, 0xf7, 0xf3, 0x2b, 0x10, 0x9d, 0x9e, 0x4a, 0x3e, 0xb5, 0x25, 0xcb, 0x8e, 0xd3, 0x1c, 0x25, 0xf6, 0x19, 0xc7, 0x4e, 0x5a, 0x3f, 0x4d, 0x13, 0x3f, 0xb1, 0x9b, 0xce, 0x9d, 0xb9, 0x77, 0xf4, 0x50, 0x22, 0x24, 0xb1, 0xa6, 0x48, 0x96, 0xa4, 0xfc, 0xd2, 0x36, 0xff, 0xfd, 0xee, 0x2e, @@ -840,4 +840,4 @@ static const char CONTENT_HOME_HTML_GZ[] PROGMEM = { 0xfd, 0x5f, 0x12, 0xaa, 0x44, 0x1f, 0x4a, 0x25, 0x7c, 0x6f, 0x52, 0xf7, 0x79, 0x11, 0x02, 0xfb, 0xa8, 0xab, 0x8e, 0x47, 0x0a, 0x60, 0xa3, 0x41, 0x75, 0xb7, 0x5c, 0x6e, 0xa0, 0x82, 0x05, 0x31, 0x1c, 0xf5, 0x84, 0xfd, 0x5f, 0x1f, 0xca, 0xd6, 0xcb, 0x2b, 0x07, 0x01, 0x00, 0x00 }; -static const char CONTENT_HOME_HTML_GZ_ETAG[] PROGMEM = "41ee61dfb08eec520aaf60076f026bc316b63a61c0c2f555808284a2ce81c83e"; +static const char CONTENT_HOME_HTML_GZ_ETAG[] PROGMEM = "8cd5e9d8767ecfe18d1d09c1089f8272e280719ff1e8c09793ee973573f5a6c5"; diff --git a/src/web_static/web_server.home.js.gz.h b/src/web_static/web_server.home_js_gz.h similarity index 99% rename from src/web_static/web_server.home.js.gz.h rename to src/web_static/web_server.home_js_gz.h index 2a449e4b..be76ba83 100644 --- a/src/web_static/web_server.home.js.gz.h +++ b/src/web_static/web_server.home_js_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_HOME_JS_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xed, 0x7d, 0x0d, 0x73, 0xdb, 0x38, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0xed, 0x7d, 0x0d, 0x73, 0xdb, 0x38, 0x92, 0xe8, 0x5f, 0x61, 0x78, 0x53, 0x1e, 0x72, 0x44, 0xcb, 0x92, 0x1c, 0x67, 0x12, 0x2a, 0x8a, 0xcb, 0xb1, 0xe5, 0xc4, 0x37, 0xfe, 0x3a, 0x5b, 0xce, 0xec, 0x3c, 0xaf, 0x57, 0x47, 0x4b, 0x90, 0xcc, 0x8d, 0x44, 0x6a, 0x49, 0xca, 0x1f, 0xeb, 0xe8, 0xbf, 0xbf, 0xee, 0x06, 0x40, 0x02, 0xfc, @@ -824,4 +824,4 @@ static const char CONTENT_HOME_JS_GZ[] PROGMEM = { 0xd1, 0xe4, 0x4b, 0xba, 0x6c, 0xb8, 0x26, 0x24, 0x2c, 0xa9, 0x73, 0x2d, 0x41, 0x0b, 0x8c, 0xe4, 0xfa, 0x38, 0x54, 0x06, 0x7d, 0x7a, 0xf0, 0x9a, 0x2d, 0x40, 0x79, 0xfc, 0x5f, 0x90, 0x2a, 0x7f, 0xd6, 0x26, 0xc4, 0x00, 0x00, 0x00 }; -static const char CONTENT_HOME_JS_GZ_ETAG[] PROGMEM = "0ab3ab271998a2ed2214b7c21dacb4856f27e3b0899f606854ce3828225a0b78"; +static const char CONTENT_HOME_JS_GZ_ETAG[] PROGMEM = "927859e200913344bff7bbb6cd329bb22723977d6578445c5f187b0ebe3dba8e"; diff --git a/src/web_static/web_server.jquery.js.gz.h b/src/web_static/web_server.jquery_js_gz.h similarity index 99% rename from src/web_static/web_server.jquery.js.gz.h rename to src/web_static/web_server.jquery_js_gz.h index 89a39ac4..d373e40d 100644 --- a/src/web_static/web_server.jquery.js.gz.h +++ b/src/web_static/web_server.jquery_js_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_JQUERY_JS_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xbc, 0xbd, 0xfb, 0x76, 0xdb, 0x46, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0xbc, 0xbd, 0xfb, 0x76, 0xdb, 0x46, 0xb2, 0x37, 0xfa, 0xff, 0x79, 0x0a, 0x13, 0x93, 0xad, 0x01, 0xcc, 0x16, 0x25, 0x39, 0x93, 0x7c, 0xdf, 0x80, 0x86, 0xb9, 0x1c, 0xdb, 0x49, 0x3c, 0x93, 0x8b, 0x13, 0x3b, 0x93, 0x64, 0x28, 0x26, 0x0b, 0x22, 0x5b, 0x12, 0x12, 0x0a, 0x60, 0x00, 0x50, 0x97, 0x88, 0x9c, 0x37, 0x3b, 0xeb, 0x3c, @@ -1935,4 +1935,4 @@ static const char CONTENT_JQUERY_JS_GZ[] PROGMEM = { 0xb3, 0xc5, 0x27, 0xd9, 0x3f, 0x5a, 0x46, 0x66, 0x31, 0x65, 0xd9, 0x27, 0xfa, 0xf6, 0x3f, 0x88, 0x48, 0xb2, 0x77, 0x04, 0x54, 0xeb, 0x3f, 0xc4, 0xfb, 0xf7, 0x78, 0x4e, 0x75, 0xfa, 0x3f, 0xa6, 0x58, 0x12, 0xc8, 0x6c, 0x5f, 0x01, 0x00, 0x00 }; -static const char CONTENT_JQUERY_JS_GZ_ETAG[] PROGMEM = "0a3dd4a124716726607dae709fbc2c3b19e9cc941168e1e6a655eca656a687b7"; +static const char CONTENT_JQUERY_JS_GZ_ETAG[] PROGMEM = "8e01e2bb7a547248b72686283f9cd321306c201c2de8c9d0e047853ea27eb89c"; diff --git a/src/web_static/web_server.lib.js.gz.h b/src/web_static/web_server.lib_js_gz.h similarity index 99% rename from src/web_static/web_server.lib.js.gz.h rename to src/web_static/web_server.lib_js_gz.h index 8e728346..ae1d0cc7 100644 --- a/src/web_static/web_server.lib.js.gz.h +++ b/src/web_static/web_server.lib_js_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_LIB_JS_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xb4, 0xbd, 0x79, 0x7f, 0xdb, 0x46, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0xb4, 0xbd, 0x79, 0x7f, 0xdb, 0x46, 0xb2, 0x36, 0xfa, 0xff, 0xfd, 0x14, 0x14, 0x6e, 0xae, 0x0c, 0x44, 0x30, 0x24, 0x39, 0xcb, 0x24, 0xa0, 0x61, 0xfe, 0x1c, 0x2f, 0x89, 0x13, 0x6f, 0x63, 0x79, 0xc9, 0x8c, 0xac, 0xd1, 0x01, 0x41, 0x50, 0x42, 0x44, 0x01, 0x0c, 0x00, 0x4a, 0x56, 0x24, 0x7e, 0xf7, 0x5b, 0x4f, 0x55, 0x77, 0xa3, @@ -2715,4 +2715,4 @@ static const char CONTENT_LIB_JS_GZ[] PROGMEM = { 0x42, 0xe7, 0x57, 0x05, 0x19, 0x52, 0xdd, 0x78, 0x8e, 0x09, 0xda, 0xb2, 0x2e, 0x5d, 0x8f, 0xe6, 0x66, 0x6d, 0x26, 0x1b, 0x8b, 0xf2, 0x75, 0x19, 0x95, 0x9b, 0xe2, 0x57, 0x2c, 0xca, 0xce, 0x0c, 0xac, 0x45, 0x59, 0x4b, 0x35, 0xfc, 0xff, 0x5e, 0x83, 0x90, 0x4b, 0xcf, 0x28, 0x02, 0x00, 0x00 }; -static const char CONTENT_LIB_JS_GZ_ETAG[] PROGMEM = "4a7bb9f0475e8f45147ccf9362b4dba2abba3b8605bd04610cbc5f36751706e1"; +static const char CONTENT_LIB_JS_GZ_ETAG[] PROGMEM = "30121ed8d74e61d886e0ee1ec594451ba2c67375629e2b9b0692a7c2051601bf"; diff --git a/src/web_static/web_server.localisation.js.gz.h b/src/web_static/web_server.localisation_js_gz.h similarity index 99% rename from src/web_static/web_server.localisation.js.gz.h rename to src/web_static/web_server.localisation_js_gz.h index 6d6bbf09..856d6a12 100644 --- a/src/web_static/web_server.localisation.js.gz.h +++ b/src/web_static/web_server.localisation_js_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_LOCALISATION_JS_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xad, 0x5c, 0xdd, 0x72, 0x1c, 0x37, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0xad, 0x5c, 0xdd, 0x72, 0x1c, 0x37, 0x76, 0x7e, 0x15, 0xec, 0xa4, 0x52, 0x24, 0xbd, 0x43, 0xb2, 0x6c, 0xef, 0xa6, 0x52, 0x13, 0x47, 0x55, 0x14, 0x49, 0x59, 0xcc, 0x92, 0x12, 0x97, 0x43, 0xcb, 0x95, 0xaa, 0x5c, 0x2c, 0xa6, 0x1b, 0xc3, 0x69, 0xab, 0xa7, 0x7b, 0xdc, 0x3f, 0x43, 0xd1, 0x2e, 0xbf, 0x4b, 0xee, 0x62, 0xe5, 0x2a, @@ -460,4 +460,4 @@ static const char CONTENT_LOCALISATION_JS_GZ[] PROGMEM = { 0xd0, 0x2e, 0x82, 0x5e, 0xd2, 0xc8, 0xef, 0x06, 0x5d, 0xea, 0xd3, 0x4a, 0x22, 0xfe, 0xe5, 0xe3, 0xaf, 0xb8, 0x68, 0x0f, 0xbf, 0x84, 0xc0, 0x05, 0xec, 0xe5, 0x2f, 0xd3, 0x09, 0x15, 0xe0, 0xfb, 0xf2, 0xe0, 0x9f, 0xfe, 0x17, 0x4d, 0x63, 0x8a, 0x97, 0x03, 0x4e, 0x00, 0x00, 0x00 }; -static const char CONTENT_LOCALISATION_JS_GZ_ETAG[] PROGMEM = "a503a21e37602bef30acb16e36c8b2fb50c9839b6dc7c16151e886ef09f89549"; +static const char CONTENT_LOCALISATION_JS_GZ_ETAG[] PROGMEM = "e72ae9ea26f64ff176bf509bda3e242990d4410bd16da022598840c25b378c67"; diff --git a/src/web_static/web_server.mqtt.png.h b/src/web_static/web_server.mqtt_png.h similarity index 100% rename from src/web_static/web_server.mqtt.png.h rename to src/web_static/web_server.mqtt_png.h diff --git a/src/web_static/web_server.ohm.jpg.h b/src/web_static/web_server.ohm_jpg.h similarity index 100% rename from src/web_static/web_server.ohm.jpg.h rename to src/web_static/web_server.ohm_jpg.h diff --git a/src/web_static/web_server.shaper.png.h b/src/web_static/web_server.shaper_png.h similarity index 100% rename from src/web_static/web_server.shaper.png.h rename to src/web_static/web_server.shaper_png.h diff --git a/src/web_static/web_server.solar.png.h b/src/web_static/web_server.solar_png.h similarity index 100% rename from src/web_static/web_server.solar.png.h rename to src/web_static/web_server.solar_png.h diff --git a/src/web_static/web_server.style.css.gz.h b/src/web_static/web_server.style_css_gz.h similarity index 98% rename from src/web_static/web_server.style.css.gz.h rename to src/web_static/web_server.style_css_gz.h index 4557cd1d..f0da6fcc 100644 --- a/src/web_static/web_server.style.css.gz.h +++ b/src/web_static/web_server.style_css_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_STYLE_CSS_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xbd, 0x18, 0x5b, 0x8f, 0xab, 0xb8, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0xbd, 0x18, 0x5b, 0x8f, 0xab, 0xb8, 0xf9, 0xaf, 0xd0, 0x19, 0xad, 0x74, 0x46, 0x27, 0x20, 0x20, 0x24, 0x99, 0x80, 0x5a, 0xb5, 0xfb, 0xb2, 0x7d, 0x68, 0x9f, 0xfa, 0x52, 0xa9, 0x5a, 0x55, 0x0e, 0x98, 0xe0, 0x1d, 0xc0, 0xd4, 0x98, 0xc9, 0xcc, 0x41, 0xfc, 0xf7, 0x7e, 0xbe, 0x00, 0x36, 0x90, 0x39, 0x67, 0x8f, 0x76, 0x57, 0x51, @@ -129,4 +129,4 @@ static const char CONTENT_STYLE_CSS_GZ[] PROGMEM = { 0x23, 0xbb, 0x4c, 0xbb, 0x11, 0x36, 0xb5, 0x30, 0xc6, 0xb0, 0x91, 0x43, 0x65, 0xe7, 0x65, 0xb3, 0x57, 0xd1, 0x2f, 0xae, 0xdc, 0xd1, 0xac, 0xfd, 0x1e, 0x24, 0xff, 0x0f, 0xee, 0x1a, 0xbe, 0x4c, 0xb1, 0x1b, 0x00, 0x00, 0x00 }; -static const char CONTENT_STYLE_CSS_GZ_ETAG[] PROGMEM = "9bed8df33b25bd618e06b40608e6b736793be0a23246be9483b92fadc57af43c"; +static const char CONTENT_STYLE_CSS_GZ_ETAG[] PROGMEM = "708b8a7fa4d769c0fdb4658a942cde52276777ada2513360eaa906830522aaed"; diff --git a/src/web_static/web_server.term.html.gz.h b/src/web_static/web_server.term_html_gz.h similarity index 87% rename from src/web_static/web_server.term.html.gz.h rename to src/web_static/web_server.term_html_gz.h index 74ea6aa2..5fd61d2b 100644 --- a/src/web_static/web_server.term.html.gz.h +++ b/src/web_static/web_server.term_html_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_TERM_HTML_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x5d, 0x90, 0x31, 0x0f, 0xc2, 0x20, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0x5d, 0x90, 0x31, 0x0f, 0xc2, 0x20, 0x10, 0x85, 0x77, 0x7f, 0x05, 0xd1, 0x19, 0x6b, 0xd4, 0xa9, 0x62, 0x37, 0x67, 0x07, 0x8d, 0x3b, 0x85, 0xab, 0xc5, 0x62, 0xc1, 0x03, 0xd3, 0x34, 0xc6, 0xff, 0x2e, 0x50, 0x74, 0x90, 0x81, 0x17, 0xf8, 0xde, 0xbd, 0xdc, 0x1d, 0x6b, 0xfd, 0x5d, 0x57, 0x84, 0xb5, 0xc0, 0x65, 0x10, 0xaf, 0xbc, @@ -12,4 +12,4 @@ static const char CONTENT_TERM_HTML_GZ[] PROGMEM = { 0xfb, 0xf9, 0xed, 0xf1, 0x04, 0x1c, 0x97, 0x37, 0x37, 0xaf, 0x82, 0x21, 0x81, 0x3f, 0x87, 0x0f, 0x93, 0xfd, 0xf3, 0x22, 0x2f, 0x21, 0x0e, 0x17, 0x24, 0x36, 0xa8, 0xe4, 0x64, 0x8d, 0xbe, 0xf0, 0x8e, 0xa6, 0x4c, 0x8b, 0xb4, 0xb8, 0x0f, 0x59, 0xa1, 0xcc, 0xae, 0x3f, 0x01, 0x00, 0x00, 0x00 }; -static const char CONTENT_TERM_HTML_GZ_ETAG[] PROGMEM = "20fe214800e5a2e1696a221d6c9136a495143d0b0aa7affec5becba279aa4b14"; +static const char CONTENT_TERM_HTML_GZ_ETAG[] PROGMEM = "86225e070dda6d8f7c5eaa406603c574f559815758fd1182673c37174c889a72"; diff --git a/src/web_static/web_server.term.js.gz.h b/src/web_static/web_server.term_js_gz.h similarity index 93% rename from src/web_static/web_server.term.js.gz.h rename to src/web_static/web_server.term_js_gz.h index 4a477a32..97f0491d 100644 --- a/src/web_static/web_server.term.js.gz.h +++ b/src/web_static/web_server.term_js_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_TERM_JS_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x75, 0x52, 0xc1, 0x8e, 0xd3, 0x30, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0x75, 0x52, 0xc1, 0x8e, 0xd3, 0x30, 0x10, 0xfd, 0x95, 0xc6, 0x54, 0xd5, 0x8c, 0x6a, 0xdc, 0xf6, 0x80, 0x84, 0x1a, 0x0c, 0x57, 0x0e, 0x9c, 0x60, 0x11, 0x07, 0xca, 0x21, 0xeb, 0x4c, 0x93, 0x88, 0xc4, 0x13, 0xd9, 0xce, 0x16, 0xa9, 0xf4, 0xdf, 0x19, 0x87, 0x2c, 0xa0, 0xd5, 0x22, 0x45, 0x96, 0x67, 0xc6, 0xef, 0xcd, 0x9b, 0x37, @@ -28,4 +28,4 @@ static const char CONTENT_TERM_JS_GZ[] PROGMEM = { 0xe6, 0x52, 0x95, 0xda, 0x8c, 0xd9, 0xaa, 0xdd, 0xa2, 0x5d, 0xe9, 0xf5, 0xa2, 0x62, 0x6d, 0x1a, 0x71, 0x44, 0x78, 0x03, 0x9d, 0x35, 0x2c, 0x73, 0xeb, 0x62, 0x8f, 0x8b, 0x34, 0x95, 0xb7, 0xa1, 0xe4, 0x86, 0x37, 0xc0, 0xf2, 0x17, 0xa3, 0x6f, 0xce, 0x56, 0xff, 0x02, 0x00, 0x00, 0x00 }; -static const char CONTENT_TERM_JS_GZ_ETAG[] PROGMEM = "be66df56eb9941cba448f0f782b047287eef61e8994f9d519227507426218457"; +static const char CONTENT_TERM_JS_GZ_ETAG[] PROGMEM = "9c7795c0b2c300fcf115b35ad2f8df23d099fddb17c8103de3ebdce2135f211f"; diff --git a/src/web_static/web_server.wifi_portal.html.gz.h b/src/web_static/web_server.wifi_portal_html_gz.h similarity index 99% rename from src/web_static/web_server.wifi_portal.html.gz.h rename to src/web_static/web_server.wifi_portal_html_gz.h index e6073e8b..a7314d5e 100644 --- a/src/web_static/web_server.wifi_portal.html.gz.h +++ b/src/web_static/web_server.wifi_portal_html_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_WIFI_PORTAL_HTML_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xc5, 0x5a, 0x6d, 0x6f, 0xdb, 0x38, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0xc5, 0x5a, 0x6d, 0x6f, 0xdb, 0x38, 0x12, 0xfe, 0x7e, 0xbf, 0x82, 0xd5, 0xee, 0x55, 0x09, 0x1a, 0xcb, 0x4d, 0x5a, 0x14, 0x0b, 0x6f, 0xec, 0x43, 0x2f, 0x9b, 0x02, 0x05, 0xfa, 0x12, 0x6c, 0x7a, 0xed, 0xc7, 0x80, 0x96, 0x68, 0x8b, 0x1b, 0x4a, 0xd4, 0x91, 0x94, 0x1d, 0xef, 0xcb, 0x7f, 0xbf, 0x99, 0x21, 0x65, 0x4b, 0x7e, 0x4f, @@ -162,4 +162,4 @@ static const char CONTENT_WIFI_PORTAL_HTML_GZ[] PROGMEM = { 0x26, 0x9a, 0x58, 0xa3, 0x50, 0x72, 0xbc, 0x6f, 0x9a, 0x5a, 0x11, 0xfc, 0x87, 0x0c, 0x28, 0xb4, 0xd6, 0xc8, 0xfa, 0xe1, 0x7f, 0x03, 0xfa, 0xfe, 0x1f, 0x4a, 0xfe, 0x07, 0x5d, 0xcd, 0xc2, 0xe2, 0x61, 0x22, 0x00, 0x00, 0x00 }; -static const char CONTENT_WIFI_PORTAL_HTML_GZ_ETAG[] PROGMEM = "6eef927a8568c85156b93c0059e9c4741e133e914b6a0e9947d7897dd8d2a564"; +static const char CONTENT_WIFI_PORTAL_HTML_GZ_ETAG[] PROGMEM = "fcc0d3fe6f56a3bf242cc9761019bf83e4cd4d7ab227f30166251c88f780976f"; diff --git a/src/web_static/web_server.wifi_portal.js.gz.h b/src/web_static/web_server.wifi_portal_js_gz.h similarity index 97% rename from src/web_static/web_server.wifi_portal.js.gz.h rename to src/web_static/web_server.wifi_portal_js_gz.h index 368303ad..e7268e0a 100644 --- a/src/web_static/web_server.wifi_portal.js.gz.h +++ b/src/web_static/web_server.wifi_portal_js_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_WIFI_PORTAL_JS_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xa5, 0x57, 0x0b, 0x6f, 0xdb, 0x36, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0xa5, 0x57, 0x0b, 0x6f, 0xdb, 0x36, 0x10, 0xfe, 0x2b, 0x0a, 0x57, 0x04, 0xd4, 0xa2, 0x29, 0x76, 0x87, 0x02, 0x85, 0x0d, 0xb5, 0xe8, 0xda, 0xa4, 0x5d, 0x97, 0x36, 0xc1, 0xec, 0x3d, 0x80, 0xa2, 0x08, 0x18, 0xe9, 0x1c, 0xb3, 0x93, 0x45, 0x8d, 0xa4, 0x9c, 0x04, 0xae, 0xff, 0xfb, 0xee, 0x28, 0xc9, 0x96, 0x64, 0xd9, 0x09, 0x30, @@ -89,4 +89,4 @@ static const char CONTENT_WIFI_PORTAL_JS_GZ[] PROGMEM = { 0xeb, 0x17, 0x5f, 0xdf, 0xb3, 0x9b, 0x06, 0x08, 0xba, 0x4d, 0x1e, 0x7e, 0x41, 0x6d, 0x18, 0x84, 0x41, 0x9f, 0x82, 0xea, 0x45, 0x52, 0x0e, 0xbd, 0x38, 0x84, 0xfc, 0x07, 0xe1, 0x4e, 0x81, 0x6f, 0xbd, 0x0f, 0x00, 0x00, 0x00 }; -static const char CONTENT_WIFI_PORTAL_JS_GZ_ETAG[] PROGMEM = "7ae0db6c545b2b08cd8f08f3de239ec9fbe2b70ef3ed07a9b76bd47ab7f52bb9"; +static const char CONTENT_WIFI_PORTAL_JS_GZ_ETAG[] PROGMEM = "08eb3b411c1d1da96e307e58193a28db9d7ee79882ca2daef68e2d45ad3f06f3"; diff --git a/src/web_static/web_server.wifi_signal_1.svg.gz.h b/src/web_static/web_server.wifi_signal_1_svg_gz.h similarity index 95% rename from src/web_static/web_server.wifi_signal_1.svg.gz.h rename to src/web_static/web_server.wifi_signal_1_svg_gz.h index 203578fe..323d1495 100644 --- a/src/web_static/web_server.wifi_signal_1.svg.gz.h +++ b/src/web_static/web_server.wifi_signal_1_svg_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_WIFI_SIGNAL_1_SVG_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x7d, 0x52, 0xcb, 0x6e, 0xdc, 0x30, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0x7d, 0x52, 0xcb, 0x6e, 0xdc, 0x30, 0x0c, 0xfc, 0x15, 0xc2, 0x3d, 0x8b, 0x16, 0x49, 0x51, 0x8f, 0x22, 0x9b, 0x8b, 0xaf, 0x9b, 0x53, 0xbf, 0xa0, 0x70, 0xda, 0xf5, 0x02, 0x4e, 0x1b, 0x74, 0x8d, 0x38, 0xc8, 0xd7, 0x87, 0x94, 0x5b, 0x20, 0x87, 0xa0, 0x80, 0x21, 0xd1, 0x7c, 0x0c, 0x67, 0x48, 0xdd, 0xdd, 0x5e, 0x2e, 0xf0, 0xfa, @@ -25,4 +25,4 @@ static const char CONTENT_WIFI_SIGNAL_1_SVG_GZ[] PROGMEM = { 0xea, 0x03, 0x68, 0x34, 0x25, 0x03, 0x15, 0x6b, 0x20, 0x5c, 0xed, 0xac, 0x4c, 0x96, 0x7a, 0xa8, 0xd7, 0xcf, 0xc4, 0xfb, 0xf3, 0xbb, 0x7f, 0x07, 0x0d, 0x73, 0xd3, 0x1b, 0xa6, 0x02, 0x00, 0x00, 0x00 }; -static const char CONTENT_WIFI_SIGNAL_1_SVG_GZ_ETAG[] PROGMEM = "d41ae79a7b4e22cf65673769864ccae0d50a33bea5aaafc1bca939fd1f52a8a4"; +static const char CONTENT_WIFI_SIGNAL_1_SVG_GZ_ETAG[] PROGMEM = "2bdd708d217cfa4f368e6690ba12549d069306c42aa7e7e2bbf44f9df31d6efc"; diff --git a/src/web_static/web_server.wifi_signal_2.svg.gz.h b/src/web_static/web_server.wifi_signal_2_svg_gz.h similarity index 95% rename from src/web_static/web_server.wifi_signal_2.svg.gz.h rename to src/web_static/web_server.wifi_signal_2_svg_gz.h index 7a01e606..c3a8799a 100644 --- a/src/web_static/web_server.wifi_signal_2.svg.gz.h +++ b/src/web_static/web_server.wifi_signal_2_svg_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_WIFI_SIGNAL_2_SVG_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x7d, 0x52, 0xcb, 0x6a, 0xe4, 0x40, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0x7d, 0x52, 0xcb, 0x6a, 0xe4, 0x40, 0x0c, 0xfc, 0x15, 0xe1, 0x3d, 0x5b, 0x6e, 0x49, 0xfd, 0x50, 0x87, 0x99, 0x5c, 0x7c, 0x9d, 0x9c, 0xf2, 0x05, 0xc1, 0xd9, 0x1d, 0x0f, 0x38, 0xd9, 0xb0, 0x63, 0xd6, 0x4b, 0xbe, 0x3e, 0x52, 0x3b, 0x81, 0x90, 0xc0, 0x82, 0x69, 0xb7, 0xf5, 0xa8, 0x2a, 0x95, 0x7c, 0xb8, 0xfe, 0x3d, 0xc3, 0xbf, @@ -25,4 +25,4 @@ static const char CONTENT_WIFI_SIGNAL_2_SVG_GZ[] PROGMEM = { 0xe4, 0x66, 0x54, 0x1a, 0xa3, 0x81, 0x8a, 0x11, 0x08, 0xab, 0x9d, 0xca, 0xd4, 0x98, 0xe1, 0x5d, 0xc1, 0x37, 0x23, 0xfc, 0x57, 0xbc, 0x7d, 0x03, 0xef, 0xf4, 0x4f, 0x51, 0xb2, 0x02, 0x00, 0x00, 0x00 }; -static const char CONTENT_WIFI_SIGNAL_2_SVG_GZ_ETAG[] PROGMEM = "987e54e1b44545acc3b97c2744dbd85c91c2fdd69e3f918d642005ced51cf53a"; +static const char CONTENT_WIFI_SIGNAL_2_SVG_GZ_ETAG[] PROGMEM = "84f23836e77bc81d8b8f614867f9d0e35b5568d8a6f5d1187dd8875e97f85c91"; diff --git a/src/web_static/web_server.wifi_signal_3.svg.gz.h b/src/web_static/web_server.wifi_signal_3_svg_gz.h similarity index 95% rename from src/web_static/web_server.wifi_signal_3.svg.gz.h rename to src/web_static/web_server.wifi_signal_3_svg_gz.h index 82a29793..f645b653 100644 --- a/src/web_static/web_server.wifi_signal_3.svg.gz.h +++ b/src/web_static/web_server.wifi_signal_3_svg_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_WIFI_SIGNAL_3_SVG_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x65, 0x52, 0xc9, 0x4e, 0xe4, 0x40, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0x65, 0x52, 0xc9, 0x4e, 0xe4, 0x40, 0x0c, 0xfd, 0x15, 0x2b, 0x9c, 0xe3, 0x94, 0xed, 0x5a, 0x5c, 0x88, 0xe6, 0x92, 0x6b, 0x73, 0xe2, 0x0b, 0x46, 0x01, 0x3a, 0x2d, 0x65, 0x06, 0x44, 0x47, 0x04, 0xf1, 0xf5, 0xd8, 0x15, 0x46, 0x42, 0x6a, 0x29, 0xaa, 0x54, 0xbc, 0xbc, 0xc5, 0xce, 0xdd, 0xe5, 0xe3, 0x04, 0x9f, 0x7f, 0x97, 0x7f, @@ -24,4 +24,4 @@ static const char CONTENT_WIFI_SIGNAL_3_SVG_GZ[] PROGMEM = { 0x10, 0xb7, 0x20, 0x8f, 0xec, 0xac, 0x3f, 0x99, 0xd0, 0xaa, 0xdb, 0x00, 0x92, 0x0f, 0xa0, 0xd2, 0x18, 0x0d, 0x54, 0x8c, 0x40, 0x58, 0xed, 0x54, 0xa6, 0xc6, 0x0c, 0x3f, 0x0a, 0xae, 0x16, 0xe5, 0xbf, 0xdf, 0xfd, 0x37, 0x18, 0x95, 0x5a, 0x59, 0xa6, 0x02, 0x00, 0x00, 0x00 }; -static const char CONTENT_WIFI_SIGNAL_3_SVG_GZ_ETAG[] PROGMEM = "e744a54f4c5c9de4dbcd4dab4c0f1c58ad649bc949bf5220866253601870606f"; +static const char CONTENT_WIFI_SIGNAL_3_SVG_GZ_ETAG[] PROGMEM = "dd555fbf7e2e530e0a7677f6748b09d7b0acfcf378de15b5167396d3e76f3caa"; diff --git a/src/web_static/web_server.wifi_signal_4.svg.gz.h b/src/web_static/web_server.wifi_signal_4_svg_gz.h similarity index 95% rename from src/web_static/web_server.wifi_signal_4.svg.gz.h rename to src/web_static/web_server.wifi_signal_4_svg_gz.h index 8598747c..f47b0731 100644 --- a/src/web_static/web_server.wifi_signal_4.svg.gz.h +++ b/src/web_static/web_server.wifi_signal_4_svg_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_WIFI_SIGNAL_4_SVG_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x65, 0x52, 0xcb, 0x6e, 0xdc, 0x30, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0x65, 0x52, 0xcb, 0x6e, 0xdc, 0x30, 0x0c, 0xfc, 0x15, 0xc2, 0x39, 0x9b, 0x16, 0x49, 0x3d, 0xa8, 0x62, 0x37, 0x17, 0x5f, 0x37, 0xa7, 0x7c, 0x41, 0xe0, 0x34, 0xeb, 0x05, 0xdc, 0x36, 0xc8, 0x1a, 0x71, 0xb1, 0x5f, 0x5f, 0x52, 0xde, 0x00, 0x05, 0x02, 0x18, 0x92, 0xcc, 0xc7, 0xcc, 0x70, 0xa4, 0xc3, 0xf5, 0xf3, 0x0c, 0x7f, 0x7f, @@ -24,4 +24,4 @@ static const char CONTENT_WIFI_SIGNAL_4_SVG_GZ[] PROGMEM = { 0xad, 0xba, 0x19, 0x90, 0xdc, 0x80, 0x4a, 0x63, 0x34, 0x50, 0x31, 0x02, 0x61, 0xb5, 0x55, 0x99, 0x1a, 0x33, 0xdc, 0x15, 0xdc, 0x3a, 0x78, 0xbb, 0x2c, 0xcb, 0xb1, 0x7b, 0x98, 0xa6, 0xc9, 0x25, 0xfa, 0x93, 0x7b, 0xfc, 0x07, 0x3b, 0xf7, 0x52, 0x02, 0x9a, 0x02, 0x00, 0x00, 0x00 }; -static const char CONTENT_WIFI_SIGNAL_4_SVG_GZ_ETAG[] PROGMEM = "804f5ee8b78bf4f82240f836047782dbf1ac578bfc5a74d64d2dbf2897c1ffb1"; +static const char CONTENT_WIFI_SIGNAL_4_SVG_GZ_ETAG[] PROGMEM = "18ba27cfe84cda63b596b670b6f85625ca8440a534a990b0ea8b453365ebc89e"; diff --git a/src/web_static/web_server.wifi_signal_5.svg.gz.h b/src/web_static/web_server.wifi_signal_5_svg_gz.h similarity index 94% rename from src/web_static/web_server.wifi_signal_5.svg.gz.h rename to src/web_static/web_server.wifi_signal_5_svg_gz.h index 74b52bb2..6523a82d 100644 --- a/src/web_static/web_server.wifi_signal_5.svg.gz.h +++ b/src/web_static/web_server.wifi_signal_5_svg_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_WIFI_SIGNAL_5_SVG_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x35, 0x52, 0xcb, 0x8e, 0xdb, 0x30, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0x35, 0x52, 0xcb, 0x8e, 0xdb, 0x30, 0x0c, 0xfc, 0x15, 0xc2, 0x77, 0xd1, 0x22, 0x29, 0xea, 0xb1, 0x48, 0x72, 0xf1, 0x35, 0x7b, 0xea, 0x17, 0x14, 0x49, 0x11, 0x07, 0x48, 0xb6, 0x8b, 0xda, 0x58, 0x2f, 0xf2, 0xf5, 0x25, 0xe5, 0x16, 0x30, 0x44, 0x8a, 0x9a, 0xe1, 0x0c, 0x09, 0x1f, 0x96, 0xaf, 0x1b, 0x7c, 0x3f, 0x1f, 0x1f, 0xcb, @@ -23,4 +23,4 @@ static const char CONTENT_WIFI_SIGNAL_5_SVG_GZ[] PROGMEM = { 0x7b, 0x89, 0x1d, 0xdd, 0xe7, 0x54, 0x9f, 0xb3, 0xd1, 0x94, 0xac, 0xa9, 0x98, 0x80, 0x70, 0xb5, 0xb3, 0x32, 0x19, 0x74, 0x1f, 0xd2, 0xe3, 0x6b, 0x18, 0x4f, 0x07, 0xff, 0x63, 0x4e, 0x7f, 0x01, 0x6b, 0x4a, 0x6c, 0x9e, 0x59, 0x02, 0x00, 0x00, 0x00 }; -static const char CONTENT_WIFI_SIGNAL_5_SVG_GZ_ETAG[] PROGMEM = "a06de0d6115b369215fd57f2e441d535ef7407a160d7318ddba60c6d2e59a936"; +static const char CONTENT_WIFI_SIGNAL_5_SVG_GZ_ETAG[] PROGMEM = "84270d7e78f7ef1edcefe4d907911879ec5178fb69a110a868b43c87bd49dbcd"; diff --git a/src/web_static/web_server.zones.json.gz.h b/src/web_static/web_server.zones_json_gz.h similarity index 99% rename from src/web_static/web_server.zones.json.gz.h rename to src/web_static/web_server.zones_json_gz.h index 34bdc0dc..1194c256 100644 --- a/src/web_static/web_server.zones.json.gz.h +++ b/src/web_static/web_server.zones_json_gz.h @@ -1,5 +1,5 @@ static const char CONTENT_ZONES_JSON_GZ[] PROGMEM = { - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x95, 0x1b, 0xdb, 0x52, 0xe3, 0xb8, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x13, 0x95, 0x1b, 0xdb, 0x52, 0xe3, 0xb8, 0xf2, 0xfd, 0x7c, 0xc6, 0xbe, 0xce, 0x66, 0x49, 0x42, 0x60, 0x60, 0x6b, 0x2b, 0x55, 0x10, 0x18, 0x2e, 0x21, 0x99, 0x2c, 0x31, 0x50, 0x33, 0x2f, 0xa9, 0x4e, 0x2c, 0x6c, 0x61, 0x5b, 0xca, 0xc8, 0x56, 0x18, 0x73, 0xea, 0xfc, 0xfb, 0x69, 0x49, 0xb6, 0xb1, 0x1d, 0x85, 0x88, 0x17, 0x98, 0x51, @@ -256,4 +256,4 @@ static const char CONTENT_ZONES_JSON_GZ[] PROGMEM = { 0x96, 0x57, 0xd8, 0x21, 0x74, 0x4f, 0x9d, 0x97, 0xc1, 0x5a, 0xee, 0xf0, 0xa5, 0x27, 0x88, 0xc8, 0x0e, 0xd2, 0x27, 0x55, 0x41, 0xa4, 0x75, 0xe0, 0x7f, 0xfe, 0xf7, 0x7f, 0x50, 0x40, 0xac, 0x49, 0xa5, 0x3d, 0x00, 0x00, 0x00 }; -static const char CONTENT_ZONES_JSON_GZ_ETAG[] PROGMEM = "3c92f6e0fa125343402c8b98ed3fc7fdd73dca298bf81bfa37af458044598138"; +static const char CONTENT_ZONES_JSON_GZ_ETAG[] PROGMEM = "4ae055ee80886c910c3ca4f6c0857162f6764d229255d1c372fb1fb8e8fe0269"; diff --git a/src/web_static/web_server_static_files.h b/src/web_static/web_server_static_files.h index f4a7ddc7..2ceed2c2 100644 --- a/src/web_static/web_server_static_files.h +++ b/src/web_static/web_server_static_files.h @@ -1,32 +1,34 @@ -#include "web_server.arduinoocpp.png.h" -#include "web_server.emoncms.jpg.h" -#include "web_server.favicon-152.png.h" -#include "web_server.favicon-167.png.h" -#include "web_server.favicon-16x16.png.h" -#include "web_server.favicon-180.png.h" -#include "web_server.favicon-32x32.png.h" -#include "web_server.home.html.gz.h" -#include "web_server.home.js.gz.h" -#include "web_server.jquery.js.gz.h" -#include "web_server.lib.js.gz.h" -#include "web_server.localisation.js.gz.h" -#include "web_server.mqtt.png.h" -#include "web_server.ohm.jpg.h" -#include "web_server.shaper.png.h" -#include "web_server.solar.png.h" -#include "web_server.style.css.gz.h" -#include "web_server.term.html.gz.h" -#include "web_server.term.js.gz.h" -#include "web_server.wifi_portal.html.gz.h" -#include "web_server.wifi_portal.js.gz.h" -#include "web_server.wifi_signal_1.svg.gz.h" -#include "web_server.wifi_signal_2.svg.gz.h" -#include "web_server.wifi_signal_3.svg.gz.h" -#include "web_server.wifi_signal_4.svg.gz.h" -#include "web_server.wifi_signal_5.svg.gz.h" -#include "web_server.zones.json.gz.h" +#include "web_server.arduinoocpp_png.h" +#include "web_server.assets_js.h" +#include "web_server.emoncms_jpg.h" +#include "web_server.favicon_152_png.h" +#include "web_server.favicon_167_png.h" +#include "web_server.favicon_16x16_png.h" +#include "web_server.favicon_180_png.h" +#include "web_server.favicon_32x32_png.h" +#include "web_server.home_html_gz.h" +#include "web_server.home_js_gz.h" +#include "web_server.jquery_js_gz.h" +#include "web_server.lib_js_gz.h" +#include "web_server.localisation_js_gz.h" +#include "web_server.mqtt_png.h" +#include "web_server.ohm_jpg.h" +#include "web_server.shaper_png.h" +#include "web_server.solar_png.h" +#include "web_server.style_css_gz.h" +#include "web_server.term_html_gz.h" +#include "web_server.term_js_gz.h" +#include "web_server.wifi_portal_html_gz.h" +#include "web_server.wifi_portal_js_gz.h" +#include "web_server.wifi_signal_1_svg_gz.h" +#include "web_server.wifi_signal_2_svg_gz.h" +#include "web_server.wifi_signal_3_svg_gz.h" +#include "web_server.wifi_signal_4_svg_gz.h" +#include "web_server.wifi_signal_5_svg_gz.h" +#include "web_server.zones_json_gz.h" StaticFile staticFiles[] = { { "/arduinoocpp.png", CONTENT_ARDUINOOCPP_PNG, sizeof(CONTENT_ARDUINOOCPP_PNG) - 1, _CONTENT_TYPE_PNG, CONTENT_ARDUINOOCPP_PNG_ETAG, false }, + { "/assets.js", CONTENT_ASSETS_JS, sizeof(CONTENT_ASSETS_JS) - 1, _CONTENT_TYPE_JS, CONTENT_ASSETS_JS_ETAG, false }, { "/emoncms.jpg", CONTENT_EMONCMS_JPG, sizeof(CONTENT_EMONCMS_JPG) - 1, _CONTENT_TYPE_JPEG, CONTENT_EMONCMS_JPG_ETAG, false }, { "/favicon-152.png", CONTENT_FAVICON_152_PNG, sizeof(CONTENT_FAVICON_152_PNG) - 1, _CONTENT_TYPE_PNG, CONTENT_FAVICON_152_PNG_ETAG, false }, { "/favicon-167.png", CONTENT_FAVICON_167_PNG, sizeof(CONTENT_FAVICON_167_PNG) - 1, _CONTENT_TYPE_PNG, CONTENT_FAVICON_167_PNG_ETAG, false },