@@ -12,12 +12,15 @@ import (
1212 "os"
1313
1414 "github.com/wavetermdev/waveterm/tsunami/engine"
15+ "github.com/wavetermdev/waveterm/tsunami/util"
1516 "github.com/wavetermdev/waveterm/tsunami/vdom"
1617)
1718
1819const TsunamiCloseOnStdinEnvVar = "TSUNAMI_CLOSEONSTDIN"
1920const MaxShortDescLen = 120
2021
22+ type AppMeta engine.AppMeta
23+
2124func DefineComponent [P any ](name string , renderFn func (props P ) any ) vdom.Component [P ] {
2225 return engine .DefineComponentEx (engine .GetDefaultClient (), name , renderFn )
2326}
@@ -146,6 +149,12 @@ func QueueRefOp(ref *vdom.VDomRef, op vdom.VDomRefOperation) {
146149 client .Root .QueueRefOp (op )
147150}
148151
152+ func SetAppMeta (meta AppMeta ) {
153+ meta .ShortDesc = util .TruncateString (meta .ShortDesc , MaxShortDescLen )
154+ client := engine .GetDefaultClient ()
155+ client .SetAppMeta (engine .AppMeta (meta ))
156+ }
157+
149158func SetTitle (title string ) {
150159 client := engine .GetDefaultClient ()
151160 m := client .GetAppMeta ()
@@ -154,9 +163,7 @@ func SetTitle(title string) {
154163}
155164
156165func SetShortDesc (shortDesc string ) {
157- if len (shortDesc ) > MaxShortDescLen {
158- shortDesc = shortDesc [0 :MaxShortDescLen - 3 ] + "..."
159- }
166+ shortDesc = util .TruncateString (shortDesc , MaxShortDescLen )
160167 client := engine .GetDefaultClient ()
161168 m := client .GetAppMeta ()
162169 m .ShortDesc = shortDesc
0 commit comments