Skip to content
Snippets Groups Projects
Commit fe485cc2 authored by Paulus Schoutsen's avatar Paulus Schoutsen
Browse files

Initial service worker support

parent e1990e07
No related branches found
No related tags found
No related merge requests found
......@@ -22,8 +22,7 @@ _LOGGER = logging.getLogger(__name__)
FRONTEND_URLS = [
URL_ROOT, '/logbook', '/history', '/map', '/devService', '/devState',
'/devEvent', '/devInfo']
STATES_URL = re.compile(r'/states(/([a-zA-Z\._\-0-9/]+)|)')
'/devEvent', '/devInfo', '/states']
_FINGERPRINT = re.compile(r'^(\w+)-[a-z0-9]{32}\.(\w+)$', re.IGNORECASE)
......@@ -37,7 +36,8 @@ def setup(hass, config):
for url in FRONTEND_URLS:
hass.http.register_path('GET', url, _handle_get_root, False)
hass.http.register_path('GET', STATES_URL, _handle_get_root, False)
hass.http.register_path('GET', '/service_worker.js',
_handle_get_service_worker, False)
# Static files
hass.http.register_path(
......@@ -78,6 +78,16 @@ def _handle_get_root(handler, path_match, data):
handler.wfile.write(template_html.encode("UTF-8"))
def _handle_get_service_worker(handler, path_match, data):
if handler.server.development:
sw_path = "home-assistant-polymer/build/service_worker.js"
else:
sw_path = "service_worker.js"
handler.write_file(os.path.join(os.path.dirname(__file__), 'www_static',
sw_path))
def _handle_get_static(handler, path_match, data):
""" Returns a static file for the frontend. """
req_file = util.sanitize_path(path_match.group('file'))
......
""" DO NOT MODIFY. Auto-generated by build_frontend script """
VERSION = "d07b7ed1734ae3f2472f9ae88e0c3dea"
VERSION = "aac488c33cd4291cd0924e60a55bd309"
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Subproject commit 044a6d9810b6aa662b82af0f67deb662725ad4cb
Subproject commit 2bc0f827b2477e0f338f67b24e7107243581493f
!function(e){function t(r){if(n[r])return n[r].exports;var s=n[r]={exports:{},id:r,loaded:!1};return e[r].call(s.exports,s,s.exports,t),s.loaded=!0,s.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([/*!*************************************!*\
!*** ./src/service-worker/index.js ***!
\*************************************/
function(e,t,n){"use strict";var r="0.10",s="/",c=["/","/logbook","/history","/map","/devService","/devState","/devEvent","/devInfo","/states"],i=["/static/favicon-192x192.png"];self.addEventListener("install",function(e){e.waitUntil(caches.open(r).then(function(e){return e.addAll(i.concat(s))}))}),self.addEventListener("activate",function(e){}),self.addEventListener("message",function(e){}),self.addEventListener("fetch",function(e){var t=e.request.url.substr(e.request.url.indexOf("/",7));i.includes(t)&&e.respondWith(caches.open(r).then(function(t){return t.match(e.request)})),c.includes(t)&&e.respondWith(caches.open(r).then(function(t){return t.match(s).then(function(n){var r=fetch(e.request).then(function(e){return t.put(s,e.clone()),e});return n||r})}))})}]);
//# sourceMappingURL=service_worker.js.map
\ No newline at end of file
......@@ -7,6 +7,7 @@ npm run frontend_prod
cp bower_components/webcomponentsjs/webcomponents-lite.min.js ..
cp build/frontend.html ..
cp build/service_worker.js ..
# Generate the MD5 hash of the new frontend
cd ../..
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment