WIP trmnl BYOS
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add initial img node

+46
+1
internal/module/scrn/weather.jsx
··· 64 64 } 65 65 66 66 return <flex> 67 + <img src="scrn/weather/cloudy.png" /> 67 68 {inner} 68 69 </flex> 69 70 }
+42
internal/tree/img.go
··· 1 + package tree 2 + 3 + import ( 4 + "image" 5 + 6 + "github.com/go-viper/mapstructure/v2" 7 + ) 8 + 9 + type ImgAttrs struct { 10 + Src string `mapstructure:"src"` 11 + } 12 + 13 + type ImgNode struct { 14 + ImgAttrs 15 + Rect image.Rectangle 16 + Style NodeStyle 17 + } 18 + 19 + func newImgNode(n *node, r image.Rectangle) (*ImgNode, error) { 20 + in := &ImgNode{ 21 + Rect: r, 22 + Style: n.Style, 23 + } 24 + 25 + if err := mapstructure.Decode(&n.Attrs, &in.ImgAttrs); err != nil { 26 + return nil, err 27 + } 28 + 29 + return in, nil 30 + } 31 + 32 + func (n *ImgNode) Type() NodeType { 33 + return NodeTypeImg 34 + } 35 + 36 + func (n *ImgNode) Bounds() image.Rectangle { 37 + return n.Rect 38 + } 39 + 40 + func (n *ImgNode) GetStyle() NodeStyle { 41 + return n.Style 42 + }
+2
internal/tree/node.go
··· 56 56 return newFillNode(n, nr) 57 57 case NodeTypeText: 58 58 return newTextNode(n, nr) 59 + case NodeTypeImg: 60 + return newImgNode(n, nr) 59 61 default: 60 62 return nil, ErrUnknownNodeType 61 63 }
+1
internal/tree/tree.go
··· 13 13 NodeTypeFlex NodeType = "flex" 14 14 NodeTypeText NodeType = "text" 15 15 NodeTypeFill NodeType = "fill" 16 + NodeTypeImg NodeType = "img" 16 17 ) 17 18 18 19 var (