Load layouts and optional features from staged asset caches

This commit is contained in:
Jonathan Sykes
2026-10-08 01:29:50 +08:00
parent d98d444552
commit 5d6a1545df
30 changed files with 512 additions and 146 deletions

View File

@@ -51,18 +51,26 @@
"/fonts/HankenGrotesk-latin-ext.woff2",
"/fonts/HankenGrotesk-latin.woff2",
"/fonts/JetBrainsMono-latin-ext.woff2",
"/fonts/JetBrainsMono-latin.woff2"
]
"/fonts/JetBrainsMono-latin.woff2",
"/lazy.js",
"/feature-bootstrap.js",
"/eq-parameters.js",
"/assets.json",
"/device-db.js"
],
"background": false
},
"layout:glass-stage": {
"contract": 1,
"eager": false,
"files": [
"/theme-glass.css",
"/theme-glass-controls.css",
"/glass-controls.js",
"/theme-glass-panel.css",
"/glass-panel-layout.js"
],
"background": true,
"dependencies": [
"feature:layout-controls"
]
},
"layout:classic": {
@@ -70,7 +78,8 @@
"eager": false,
"files": [
"/theme-classic.css"
]
],
"background": true
},
"layout:bento-hub": {
"contract": 1,
@@ -80,6 +89,10 @@
"/bento-hub.js",
"/fonts/PlusJakartaSans-latin.woff2",
"/fonts/PlusJakartaSans-latin-ext.woff2"
],
"background": true,
"dependencies": [
"feature:layout-controls"
]
},
"layout:f7-swipe": {
@@ -87,9 +100,10 @@
"eager": false,
"files": [
"/theme-f7.css",
"/f7-layout.js",
"/vendor/framework7-swipe.min.js"
]
"/vendor/framework7-swipe.min.js",
"/f7-layout.js"
],
"background": true
},
"feature:piano": {
"contract": 1,
@@ -98,28 +112,32 @@
"/piano-core.js",
"/piano.js",
"/piano-engine.mjs"
]
],
"background": true
},
"feature:midi": {
"contract": 1,
"eager": false,
"files": [
"/midi.js"
]
],
"background": true
},
"feature:party-dj": {
"contract": 1,
"eager": false,
"files": [
"/party-dj.js"
]
],
"background": true
},
"feature:lyrics-window": {
"contract": 1,
"eager": false,
"files": [
"/lyrics-window.js"
]
],
"background": true
},
"feature:lower-third": {
"contract": 1,
@@ -127,28 +145,32 @@
"files": [
"/lower-third.js",
"/lower-third.css"
]
],
"background": true
},
"feature:vocal-reducer": {
"contract": 1,
"eager": false,
"files": [
"/vocal-reducer.js"
]
],
"background": true
},
"feature:eq-core": {
"contract": 1,
"eager": false,
"files": [
"/eq-core.js"
]
],
"background": true
},
"feature:setlist-import": {
"contract": 1,
"eager": false,
"files": [
"/setlist-import.js"
]
],
"background": true
},
"feature:car-mode": {
"contract": 1,
@@ -156,19 +178,20 @@
"files": [
"/car-mode.js",
"/car-mode.css"
]
],
"background": true
},
"feature:p2p": {
"contract": 1,
"eager": false,
"files": [
"/p2p-client.js",
"/p2p-core.js",
"/p2p-client.js",
"/p2p-transfer.js",
"/p2p-recv-worker.js",
"/hash-worker.js",
"/device-db.js"
]
"/hash-worker.js"
],
"background": true
},
"feature:direct": {
"contract": 1,
@@ -179,6 +202,10 @@
"/direct-media.js",
"/direct-media.css",
"/direct-recv-worker.js"
],
"background": true,
"dependencies": [
"feature:p2p"
]
},
"feature:video-edit": {
@@ -186,21 +213,24 @@
"eager": false,
"files": [
"/video-edit.js"
]
],
"background": true
},
"feature:stats": {
"contract": 1,
"eager": false,
"files": [
"/stats-core.js"
]
],
"background": true
},
"feature:export": {
"contract": 1,
"eager": false,
"files": [
"/export.js"
]
],
"background": true
},
"feature:playlist": {
"contract": 1,
@@ -208,7 +238,8 @@
"files": [],
"embeddedIn": [
"/app.js"
]
],
"background": false
},
"feature:settings": {
"contract": 1,
@@ -218,7 +249,8 @@
"/app.js",
"/settings-sections.js",
"/settings-sections.css"
]
],
"background": false
},
"feature:service-mode": {
"contract": 1,
@@ -227,7 +259,8 @@
"embeddedIn": [
"/app.js",
"/service-ui.css"
]
],
"background": false
},
"feature:lyrics-editor": {
"contract": 1,
@@ -237,7 +270,47 @@
"/app.js",
"/lyrics-core.js",
"/lyrics-display.js"
],
"background": false
},
"feature:layout-controls": {
"contract": 1,
"eager": false,
"background": true,
"files": [
"/theme-glass-controls.css",
"/glass-controls.js"
]
},
"layout:sanctuary-stage": {
"contract": 1,
"eager": false,
"background": true,
"files": []
},
"layout:liturgical": {
"contract": 1,
"eager": false,
"background": true,
"files": []
},
"layout:living-hymnal": {
"contract": 1,
"eager": false,
"background": true,
"files": []
},
"layout:broadcaster": {
"contract": 1,
"eager": false,
"background": true,
"files": []
},
"layout:contemplative": {
"contract": 1,
"eager": false,
"background": true,
"files": []
}
}
}