Rebuild the editor as a Vue app: sidebar, pages side by side, tile settings in a drawer (0.2.74)
The page is now web/ (Vue 3 + Vite + TypeScript), built into screen_manager/app/static with hashed file names; server.py serves index.html as built and /assets/. The Python API, the data and the firmware are unchanged. Your screens sit in a sidebar, the pages of a screen stand next to each other at the screen's own shape, the library sits on the right, and a tile's settings slide in as a drawer while the mockup stays in view. New screen, Firmware & USB, Alerts, Override YAML and Settings are pages of their own. Fonts moved to web/src/assets; the tests read the source through tests/editor_sources.py. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
@@ -55,13 +55,13 @@ class ReferenceTests(unittest.TestCase):
|
||||
self.assertLessEqual(parse_version(ALERT_MIN_FIRMWARE), parse_version(FIRMWARE_VERSION))
|
||||
|
||||
def test_page_carries_the_cheatsheet(self):
|
||||
html = (STATIC / 'index.html').read_text()
|
||||
import editor_sources
|
||||
html = editor_sources.PAGE
|
||||
for marker in ('id="open-alerts"', 'id="alerts-dialog"', 'id="close-alerts"', 'id="alerts-screens"', 'id="alerts-icons"', 'id="alerts-colors"', 'id="alerts-fields"', 'id="alerts-example"'):
|
||||
self.assertIn(marker, html, marker)
|
||||
script = (STATIC / 'app.js').read_text()
|
||||
for marker in ('inventory.alerts', 'alert_action', 'dismiss_action', 'function renderAlerts', '#open-alerts'):
|
||||
self.assertIn(marker, script, marker)
|
||||
self.assertIn('#alerts-dialog', (STATIC / 'style.css').read_text())
|
||||
for marker in ('inventory.alerts', 'alert_action', 'dismiss_action', 'AlertsView', 'go(\'#alerts\')'):
|
||||
self.assertIn(marker, editor_sources.SCRIPT, marker)
|
||||
self.assertIn('.alert-icon-grid', editor_sources.CSS)
|
||||
|
||||
HAS_AIOHTTP = importlib.util.find_spec('aiohttp') is not None
|
||||
if HAS_AIOHTTP:
|
||||
|
||||
Reference in New Issue
Block a user