import json import os import time from base64 import b64encode from ovos_local_backend.configuration import CONFIGURATION from ovos_local_backend.database.settings import DeviceDatabase from ovos_local_backend.database.utterances import JsonUtteranceDatabase from ovos_local_backend.database.wakewords import JsonWakeWordDatabase from pywebio.input import actions, file_upload, input_group, textarea, select from pywebio.output import put_text, put_code, use_scope, put_markdown, popup, put_image, put_file, put_html, \ put_buttons, put_table def _render_ww(idx, db=None): db = db or JsonWakeWordDatabase() def on_tag(bt): data["tag"] = bt db[idx]["tag"] = bt db.commit() _render_ww(idx, db) with use_scope("main_view", clear=True): data = db[idx] # id == db_position + 1 data["tag"] = data.get("tag") or "untagged" if os.path.isfile(data["path"]): content = open(data["path"], 'rb').read() html = f"""