ppid = params_kw.ppid data = params_kw.data try: if isinstance(data, str): data = json.loads(data) x = await buffered_charging(ppid, data) subwidgets = [] if isinstance(x, list): for r in x: subwidgets.append({ "widgettype": "Text", "options": {"text": json.dumps(r, ensure_ascii=False), "width": "100%"} }) else: subwidgets.append({ "widgettype": "Text", "options": {"text": json.dumps(x, ensure_ascii=False), "width": "100%"} }) return json.dumps({ "widgettype": "VScrollPanel", "options": {"width": "100%", "height": "100%"}, "subwidgets": subwidgets }, ensure_ascii=False) except Exception as e: exception(f'{ppid=}, {data=}, {e}{format_exc()}') return json.dumps({ "widgettype": "Text", "options": {"width": "100%", "color": "red", "text": f'{ppid=}, {data=}, {e}'} }, ensure_ascii=False)