UNPKG

@protorians/widgets

Version:

Create your web user interfaces with widgets

26 lines (25 loc) 701 B
import { WidgetNode } from "./widget-node.js"; import { Environment } from "@protorians/core"; export function propsValue(data) { try { return JSON.parse(data); } catch (e) { } return data; } export function extractProps(provider) { const props = {}; const element = provider instanceof WidgetNode ? (provider.element) : provider; if (Environment.Client) { Object.values(element?.attributes).forEach(attrib => { props[attrib.name] = propsValue(attrib.value); }); } else { Object.entries(element.attributes).forEach(([key, value]) => { props[key] = propsValue(value); }); } return props; }