1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| {% import ( "{{{ .Package }}}/app" "{{{ .Package }}}/app/controller/cutil" "{{{ .Package }}}/app/lib/mcpserver" "{{{ .Package }}}/views/components" "{{{ .Package }}}/views/layout" ) %}
{% code type ResourceDetail struct { layout.Basic Server *mcpserver.Server Resource *mcpserver.Resource } %}
{% func (p *ResourceDetail) Body(as *app.State, ps *cutil.PageState) %} <div class="card"> <div class="right" title="{%s p.Resource.Extension() %}"><em>{%s p.Resource.MIMEType %}</em></div> <h3>{%= components.SVGIcon(`cog`, ps) %} Resource [{%s p.Resource.Name %}]</h3> <em>{%s p.Resource.Description %}</em> <div class="mt"> {%- code out, err := cutil.FormatLang(p.Resource.Content, p.Resource.Extension()) -%} {%- if err == nil -%} {%s= out %} {%- else -%} <pre>{%s p.Resource.Content %}</pre> <div class="mt"><em>unknown extension [{%s p.Resource.Extension() %}]: {%s err.Error() %}</em></div> {%- endif -%} </div> </div> {% endfunc %}
{% func listResources(rs mcpserver.Resources, ps *cutil.PageState) %} {%- for idx, r := range rs -%} <a class="link-section" href="/mcp/resource/{%s r.Name %}"> <div class="clear mt"> <div class="left mrs">{%= components.SVGRef(r.IconSafe(), 40, 40, "", ps) %}</div> <strong class="highlight">{%s r.Name %}</strong> <div><em>{%s r.Description %}</em></div> </div> </a> {%- if idx < len(rs) - 1 -%} <hr /> {%- endif -%} {%- endfor -%} {% endfunc %}
|