export let widget_cloud = (b) => {
let w = attr_or(b, "width", 130)
let h = attr_or(b, "height", 90)
let name = attr_or(b, "label", "Cloud")
let color = attr_or(b, "color", "var(--color-link)")
let surface_fill = attr_or(b, "surface_fill", "var(--color-code-bg)")
let border_stroke = attr_or(b, "border_stroke", color)
let label_fill = attr_or(b, "label_fill", "currentColor")
let ch = h * 0.7
let d = "M " + to_string(w * 0.2) + " " + to_string(ch * 0.8) + " Q 0 " + to_string(ch * 0.8) + " 0 " + to_string(ch * 0.5) + " Q 0 " + to_string(ch * 0.1) + " " + to_string(w * 0.25) + " 0 Q " + to_string(w * 0.4) + " 0 " + to_string(w * 0.5) + " " + to_string(ch * 0.05) + " Q " + to_string(w * 0.6) + " 0 " + to_string(w) + " " + to_string(ch * 0.1) + " Q " + to_string(w * 1.05) + " " + to_string(ch * 0.6) + " " + to_string(w * 0.8) + " " + to_string(ch * 0.8) + " Z"
[
{ kind = "path", x = 0, y = 0, width = w, height = h, d = d, fill = surface_fill, stroke = border_stroke, stroke_width = 2 },
{ kind = "text", x = 0, y = ch * 0.2, width = w, height = ch * 0.5, content = name, font_size = 13, fill = label_fill }
]
}