wcl_wdoc 0.11.2-alpha

WCL documentation format — build structured docs with WCL, render to HTML
    export let widget_uml_note = (b) => {
        let w = attr_or(b, "width", 200)
        let h = attr_or(b, "height", 80)
        let label = attr_or(b, "label", "Note")
        let color = attr_or(b, "color", "var(--color-nav-border)")
        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 fold = 15
        let body_d = "M 0 0 L " + to_string(w - fold) + " 0 L " + to_string(w) + " " + to_string(fold) + " L " + to_string(w) + " " + to_string(h) + " L 0 " + to_string(h) + " Z"
        let corner_d = "M " + to_string(w - fold) + " 0 L " + to_string(w - fold) + " " + to_string(fold) + " L " + to_string(w) + " " + to_string(fold)
        [
            { kind = "path", x = 0, y = 0, width = w, height = h, d = body_d, fill = surface_fill, stroke = border_stroke, stroke_width = 1.5 },
            { kind = "path", x = 0, y = 0, width = w, height = h, d = corner_d, fill = "none", stroke = border_stroke, stroke_width = 1 },
            { kind = "text", x = 8, y = 8, width = w - 16, height = h - 16, content = label, font_size = 11, anchor = "start", fill = label_fill }
        ]
    }

    // ----- Network / infrastructure nodes -----