diff --git a/api/catalog/v1/catalog.go b/api/catalog/v1/catalog.go
index db49823c9..e4c791383 100644
--- a/api/catalog/v1/catalog.go
+++ b/api/catalog/v1/catalog.go
@@ -31,7 +31,7 @@ const (
// Protocol-specific media types supported by AI Catalog.
ProtocolA2ACardJsonMediaType = "application/a2a-agent-card+json"
ProtocolMCPCardJsonMediaType = "application/mcp-server-card+json"
- ProtocolAgentSkillsMdMediaType = "application/agentskill+md"
+ ProtocolAgentSkillsMdMediaType = "application/agent-skills+md"
)
// catalogModuleProjection captures the per-module projection rules: the
diff --git a/samples/ard-over-ads/consumer/handler.go b/samples/ard-over-ads/consumer/handler.go
index 0fd1fc27e..9810ca3ea 100644
--- a/samples/ard-over-ads/consumer/handler.go
+++ b/samples/ard-over-ads/consumer/handler.go
@@ -39,7 +39,7 @@ func Dispatch(ctx context.Context, e *catalogv1.CatalogEntry, task map[string]an
case "application/a2a-agent-card+json":
// Load the A2A agent card at e.URL, then speak A2A.
fmt.Printf("Invoking A2A agent: %s\n", e.Identifier)
- case "application/agentskill+md":
+ case "application/agent-skills+md":
// Load the Agent Skill at e.URL
fmt.Printf("Invoking Agent Skill: %s\n", e.Identifier)
default:
diff --git a/server/gateway/static/_app/immutable/entry/app.C50Qmu8P.js b/server/gateway/static/_app/immutable/entry/app.aSaqx79X.js
similarity index 95%
rename from server/gateway/static/_app/immutable/entry/app.C50Qmu8P.js
rename to server/gateway/static/_app/immutable/entry/app.aSaqx79X.js
index 06b33c756..43b17809b 100644
--- a/server/gateway/static/_app/immutable/entry/app.C50Qmu8P.js
+++ b/server/gateway/static/_app/immutable/entry/app.aSaqx79X.js
@@ -1,2 +1,2 @@
-const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.Ldbj60Cl.js","../chunks/CbnoFSQH.js","../chunks/lIS4feGx.js","../chunks/Biqbn8jJ.js","../chunks/xihTtKlq.js","../chunks/YyNjVJsa.js","../chunks/D92YrJdM.js","../assets/0.VoXJbESq.css","../nodes/1.Dvlnk681.js","../nodes/2.ChuF1HQw.js","../chunks/DDjdkvHG.js","../nodes/3.D2mqIe8P.js"])))=>i.map(i=>d[i]);
-import{A as e,B as t,F as n,H as r,J as i,N as a,O as o,P as s,Q as c,R as l,S as u,U as d,W as f,b as p,i as m,m as h,n as g,o as _,q as v,r as y,v as b,w as x,x as S,y as C,z as w}from"../chunks/CbnoFSQH.js";import{t as T}from"../chunks/kNaey6uv.js";import"../chunks/xihTtKlq.js";var E={},D=u(`
`),O=u(` `,1);function k(u,y){i(y,!0);let T=m(y,`components`,23,()=>[]),E=m(y,`data_0`,3,null),k=m(y,`data_1`,3,null);n(()=>y.stores.page.set(y.page)),s(()=>{y.stores,y.page,y.constructors,T(),y.form,E(),k(),y.stores.page.notify()});let A=d(!1),j=d(!1),M=d(null);g(()=>{let t=y.stores.page.subscribe(()=>{o(A)&&(r(j,!0),e().then(()=>{r(M,document.title||`untitled page`,!0)}))});return r(A,!0),t});let N=f(()=>y.constructors[1]);var P=O(),F=w(P),I=e=>{let t=f(()=>y.constructors[0]);var n=S();h(w(n),()=>o(t),(e,t)=>{_(t(e,{get data(){return E()},get form(){return y.form},get params(){return y.page.params},children:(e,t)=>{var n=S();h(w(n),()=>o(N),(e,t)=>{_(t(e,{get data(){return k()},get form(){return y.form},get params(){return y.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),p(e,n)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),p(e,n)},L=e=>{let t=f(()=>y.constructors[0]);var n=S();h(w(n),()=>o(t),(e,t)=>{_(t(e,{get data(){return E()},get form(){return y.form},get params(){return y.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),p(e,n)};b(F,e=>{y.constructors[1]?e(I):e(L,-1)});var R=t(F,2),z=e=>{var t=D(),n=l(t),r=e=>{var t=x();a(()=>C(t,o(M))),p(e,t)};b(n,e=>{o(j)&&e(r)}),c(t),p(e,t)};b(R,e=>{o(A)&&e(z)}),p(u,P),v()}var A=y(k),j=[()=>T(()=>import(`../nodes/0.Ldbj60Cl.js`),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url),()=>T(()=>import(`../nodes/1.Dvlnk681.js`),__vite__mapDeps([8,1,2,3,4]),import.meta.url),()=>T(()=>import(`../nodes/2.ChuF1HQw.js`),__vite__mapDeps([9,1,4,10,6]),import.meta.url),()=>T(()=>import(`../nodes/3.D2mqIe8P.js`),__vite__mapDeps([11,1,4,10,5]),import.meta.url)],M=[],N={"/":[2],"/about":[3]},P={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},F=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.decode])),I=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.encode])),L=!1,R=(e,t)=>F[e](t);export{R as decode,F as decoders,N as dictionary,I as encoders,L as hash,P as hooks,E as matchers,j as nodes,A as root,M as server_loads};
\ No newline at end of file
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.Ldbj60Cl.js","../chunks/CbnoFSQH.js","../chunks/lIS4feGx.js","../chunks/Biqbn8jJ.js","../chunks/xihTtKlq.js","../chunks/YyNjVJsa.js","../chunks/D92YrJdM.js","../assets/0.VoXJbESq.css","../nodes/1.Dvlnk681.js","../nodes/2.BCSMw5lB.js","../chunks/DDjdkvHG.js","../nodes/3.D2mqIe8P.js"])))=>i.map(i=>d[i]);
+import{A as e,B as t,F as n,H as r,J as i,N as a,O as o,P as s,Q as c,R as l,S as u,U as d,W as f,b as p,i as m,m as h,n as g,o as _,q as v,r as y,v as b,w as x,x as S,y as C,z as w}from"../chunks/CbnoFSQH.js";import{t as T}from"../chunks/kNaey6uv.js";import"../chunks/xihTtKlq.js";var E={},D=u(``),O=u(` `,1);function k(u,y){i(y,!0);let T=m(y,`components`,23,()=>[]),E=m(y,`data_0`,3,null),k=m(y,`data_1`,3,null);n(()=>y.stores.page.set(y.page)),s(()=>{y.stores,y.page,y.constructors,T(),y.form,E(),k(),y.stores.page.notify()});let A=d(!1),j=d(!1),M=d(null);g(()=>{let t=y.stores.page.subscribe(()=>{o(A)&&(r(j,!0),e().then(()=>{r(M,document.title||`untitled page`,!0)}))});return r(A,!0),t});let N=f(()=>y.constructors[1]);var P=O(),F=w(P),I=e=>{let t=f(()=>y.constructors[0]);var n=S();h(w(n),()=>o(t),(e,t)=>{_(t(e,{get data(){return E()},get form(){return y.form},get params(){return y.page.params},children:(e,t)=>{var n=S();h(w(n),()=>o(N),(e,t)=>{_(t(e,{get data(){return k()},get form(){return y.form},get params(){return y.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),p(e,n)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),p(e,n)},L=e=>{let t=f(()=>y.constructors[0]);var n=S();h(w(n),()=>o(t),(e,t)=>{_(t(e,{get data(){return E()},get form(){return y.form},get params(){return y.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),p(e,n)};b(F,e=>{y.constructors[1]?e(I):e(L,-1)});var R=t(F,2),z=e=>{var t=D(),n=l(t),r=e=>{var t=x();a(()=>C(t,o(M))),p(e,t)};b(n,e=>{o(j)&&e(r)}),c(t),p(e,t)};b(R,e=>{o(A)&&e(z)}),p(u,P),v()}var A=y(k),j=[()=>T(()=>import(`../nodes/0.Ldbj60Cl.js`),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url),()=>T(()=>import(`../nodes/1.Dvlnk681.js`),__vite__mapDeps([8,1,2,3,4]),import.meta.url),()=>T(()=>import(`../nodes/2.BCSMw5lB.js`),__vite__mapDeps([9,1,4,10,6]),import.meta.url),()=>T(()=>import(`../nodes/3.D2mqIe8P.js`),__vite__mapDeps([11,1,4,10,5]),import.meta.url)],M=[],N={"/":[2],"/about":[3]},P={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},F=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.decode])),I=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.encode])),L=!1,R=(e,t)=>F[e](t);export{R as decode,F as decoders,N as dictionary,I as encoders,L as hash,P as hooks,E as matchers,j as nodes,A as root,M as server_loads};
\ No newline at end of file
diff --git a/server/gateway/static/_app/immutable/nodes/2.BCSMw5lB.js b/server/gateway/static/_app/immutable/nodes/2.BCSMw5lB.js
new file mode 100644
index 000000000..ca81a4442
--- /dev/null
+++ b/server/gateway/static/_app/immutable/nodes/2.BCSMw5lB.js
@@ -0,0 +1,2 @@
+import{B as e,C as t,D as n,E as r,H as i,J as a,L as o,N as s,O as c,P as l,Q as u,R as d,S as f,T as p,U as m,V as h,W as g,Z as _,_ as v,b as y,c as b,d as x,f as S,g as C,i as w,l as T,n as E,q as D,s as O,u as k,v as A,w as j,x as M,y as N,z as P}from"../chunks/CbnoFSQH.js";import"../chunks/xihTtKlq.js";import{t as F}from"../chunks/D92YrJdM.js";import{t as I}from"../chunks/DDjdkvHG.js";function L(e){let t=[],n=e.searchQuery.trim();if(n&&t.push(`displayName=${n}`),!e.mediaTypes.has(`all`)){let n=[...e.mediaTypes].filter(e=>e!==`all`);n.length>0&&t.push(`type=${n.join(`,`)}`)}return t.join(` AND `)}async function R(e={}){let t=e.pageSize??18,n=new URLSearchParams;n.set(`page_size`,String(t)),e.filter&&n.set(`filter`,e.filter),e.pageToken&&n.set(`page_token`,e.pageToken);let r=await fetch(`/v1/agents?${n}`,{signal:e.signal});if(!r.ok)throw Error(`HTTP ${r.status}: ${r.statusText}`);let i=await r.json();return{results:i.results||[],nextPageToken:i.nextPageToken||``}}function z(e){return e.activeTags.size>0||e.statusFilter===`trusted`||e.statusFilter===`verified`}function B(e){return Array.from(new Set(e.flatMap(e=>e.tags||[]))).sort()}function V(e,t){if(t.length===0)return e;let n=new Set(e),r=!1;for(let e of t)for(let t of e.tags||[])n.has(t)||(n.add(t),r=!0);return r?Array.from(n).sort():e}function H(e,t){return e.filter(e=>{if(t.activeTags.size>0){let n=new Set(e.tags||[]),r=!1;for(let e of t.activeTags)if(n.has(e)){r=!0;break}if(!r)return!1}return!((t.statusFilter===`trusted`||t.statusFilter===`verified`)&&!G(e))})}function U(e){let t=e.data?.entries||[];return t.length>0?t.map(e=>e.mediaType||``):e.mediaType&&e.mediaType!==`application/ai-catalog+json`?[e.mediaType]:[]}function W(e){if(e.startsWith(`oasf:`))return(e.split(`/`).pop()||``).split(`_`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `);let t=e.split(`:`);return(t[t.length-1]||``).replace(/_/g,` `)}function G(e){return!!(e.trustManifest&&e.trustManifest.signature)}function ee(e){let t=0,n=e.identifier||e.displayName||``;for(let e=0;e=1e3?(e/1e3).toFixed(1).replace(/\.0$/,``)+`k`:e.toString()}function K(e){if(!e)return``;let t=e.split(`:`);return t[t.length-1]}function q(e){return e.includes(`a2a`)?{format:`a2a`,label:`Download JSON`,ext:`json`}:e.includes(`mcp`)?{format:`mcp-ghcopilot`,label:`Download JSON`,ext:`json`}:e.includes(`agent-skills`)?{format:`agent-skill`,label:`Download Markdown`,ext:`md`}:{format:`oasf`,label:`Download Asset`,ext:`json`}}function ne(e){let t=e.mediaType||``,n=e.data;return t.includes(`a2a`)?n?.card_data?.name||e.displayName||`Unnamed`:t.includes(`mcp`)?n?.name||e.displayName||`Unnamed`:e.displayName||`Unnamed`}function J(e){let t=e.mediaType||``,n=e.data;return t.includes(`a2a`)?n?.card_data?.version||e.version||`-`:e.version||`-`}var Y=f(``);function X(e,t){a(t,!0);let n=g(()=>t.type.includes(`a2a`)?`A2A`:t.type.includes(`mcp`)?`MCP`:t.type.includes(`agent-skills`)?`SKILL`:t.type.split(`/`).pop()?.split(`+`)[0]||t.type),r=g(()=>t.type.includes(`a2a`)?`bg-accent-teal text-accent-teal-ink`:t.type.includes(`mcp`)?`bg-brand-200 text-brand-600`:t.type.includes(`agent-skills`)?`bg-[#fdeccc] text-[#8a5a06]`:`bg-surface-tag text-ink`);var i=Y(),o=d(i,!0);u(i),s(()=>{S(i,1,`inline-flex items-center px-2 py-0.5 rounded-full text-xs font-semibold ${c(r)??``}`),N(o,c(n))}),y(e,i),D()}var Z=t(``),Q=t(``),$=t(``),re=f(``);function ie(t,n){let r=g(()=>Math.floor(n.rating)),i=g(()=>n.rating-c(r)>=.5);var a=re();C(a,20,()=>[,,,,,],v,(t,n,a)=>{var o=M(),s=P(o),l=e=>{y(e,Z())},f=t=>{var n=Q(),r=d(n);T(d(r),`id`,`half-${a}`),u(r),T(e(r),`fill`,`url(#half-${a})`),u(n),y(t,n)},p=e=>{y(e,$())};A(s,e=>{a `),oe=f(``),se=f(`
Preview data. Star ratings, download counts, and provider statistics shown on catalog entries are
+ placeholder values for demonstration only and do not reflect real usage or federation data.
Some records could not be loaded. Filters and pagination may be incomplete.
`),Le=f(` `,1),Re=f(`
Explore
Browse the secure directory of verified public records published to the Agent Directory Service.
`,1);function ze(t,n){a(n,!0);let o=m(h([])),f=m(h([])),p=m(h([])),_=m(!0),v=m(!1),b=m(``),x=m(``),S=m(1),w=m(null),T=m(null),O=m(null),k=0,j,M,I=g(()=>Math.max(1,Math.ceil(c(f).length/18))),U=g(()=>c(f).slice((c(S)-1)*18,c(S)*18));function W(e,t,n=!0){i(f,H(e,t),!0),n&&i(S,1)}function G(e,t){e.length!==0&&(i(o,c(o).concat(e),!0),i(p,V(c(p),e),!0),z(t)?i(f,c(f).concat(H(e,t)),!0):i(f,c(o),!0))}function ee(e){return c(T)!==null&&L(c(T))===e}async function te(e,t,n,r){let i=t;for(;i;){if(r.aborted||n!==k||!ee(e))return;let t=await R({filter:e||void 0,pageSize:100,pageToken:i,signal:r});if(r.aborted||n!==k||!ee(e))return;G(t.results,c(T)),i=t.nextPageToken}}async function K(e){let t=++k;M?.abort(),M=new AbortController;let n=M.signal,r=L(e);i(_,!0),i(v,!1),i(b,``),i(x,``);try{let a=await R({filter:r||void 0,signal:n});if(t!==k)return;if(i(o,a.results,!0),i(p,B(a.results),!0),i(O,r,!0),W(c(o),e),i(_,!1),a.nextPageToken){i(v,!0);try{await te(r,a.nextPageToken,t,n)}catch(e){if(n.aborted||t!==k)return;i(b,e instanceof Error?e.message:`Failed to load remaining records`,!0)}}}catch(e){if(n.aborted||t!==k)return;i(x,e instanceof Error?e.message:`Unknown error`,!0),i(o,[],!0),i(f,[],!0),i(p,[],!0)}finally{t===k&&(i(_,!1),i(v,!1))}}function q(e){if(i(T,e,!0),L(e)!==c(O)){clearTimeout(j),M?.abort();let t=e.searchQuery.trim()?300:0;j=setTimeout(()=>{c(T)&&K(c(T))},t);return}W(c(o),e)}function ne(e){i(S,e,!0),document.getElementById(`ai-cards-grid`)?.scrollIntoView({behavior:`smooth`,block:`start`})}l(()=>{F.set({count:c(f).length,catalogHydrating:c(v),hydrationError:c(b)})}),E(()=>{let e={searchQuery:``,mediaTypes:new Set([`all`]),statusFilter:`all`,activeTags:new Set};return i(T,e,!0),K(e),()=>{M?.abort(),clearTimeout(j),F.set(null)}});var J=Re(),Y=P(J);je(Y,{});var X=e(Y,2),Z=e(d(X),2),Q=d(Z);me(d(Q),{get allTags(){return c(p)},get catalogHydrating(){return c(v)},onchange:q}),u(Q);var $=e(Q,2),re=d($),ie=e=>{y(e,Me())},ae=t=>{var n=Ne(),i=e(d(n),2),a=d(i);u(i);var o=e(i,2);u(n),s(()=>N(a,`Failed to load records: ${c(x)??``}`)),r(`click`,o,()=>c(T)&&K(c(T))),y(t,n)},oe=e=>{y(e,Pe())},se=t=>{var n=Le(),r=P(n);C(r,21,()=>c(U),e=>e.identifier,(e,t)=>{ce(e,{get aicard(){return c(t)},onclick:()=>{i(w,c(t),!0)}})}),u(r);var a=e(r,2);ke(a,{get currentPage(){return c(S)},get totalPages(){return c(I)},onpage:ne});var o=e(a,2),s=e=>{y(e,Fe())},l=e=>{y(e,Ie())};A(o,e=>{c(v)?e(s):c(b)&&e(l,1)}),y(t,n)};A(re,e=>{c(_)?e(ie):c(x)?e(ae,1):c(U).length===0?e(oe,2):e(se,-1)}),u($),u(Z),u(X);var le=e(X,2),ue=e=>{Te(e,{get aicard(){return c(w)},onclose:()=>{i(w,null)}})};A(le,e=>{c(w)&&e(ue)}),y(t,J),D()}p([`click`]);export{ze as component};
\ No newline at end of file
diff --git a/server/gateway/static/_app/immutable/nodes/2.ChuF1HQw.js b/server/gateway/static/_app/immutable/nodes/2.ChuF1HQw.js
deleted file mode 100644
index 3c6456174..000000000
--- a/server/gateway/static/_app/immutable/nodes/2.ChuF1HQw.js
+++ /dev/null
@@ -1,2 +0,0 @@
-import{B as e,C as t,D as n,E as r,H as i,J as a,L as o,N as s,O as c,P as l,Q as u,R as d,S as f,T as p,U as m,V as h,W as g,Z as _,_ as v,b as y,c as b,d as x,f as S,g as C,i as w,l as T,n as E,q as D,s as O,u as k,v as A,w as j,x as M,y as N,z as P}from"../chunks/CbnoFSQH.js";import"../chunks/xihTtKlq.js";import{t as F}from"../chunks/D92YrJdM.js";import{t as I}from"../chunks/DDjdkvHG.js";function L(e){let t=[],n=e.searchQuery.trim();if(n&&t.push(`displayName=${n}`),!e.mediaTypes.has(`all`)){let n=[...e.mediaTypes].filter(e=>e!==`all`);n.length>0&&t.push(`type=${n.join(`,`)}`)}return t.join(` AND `)}async function R(e={}){let t=e.pageSize??18,n=new URLSearchParams;n.set(`page_size`,String(t)),e.filter&&n.set(`filter`,e.filter),e.pageToken&&n.set(`page_token`,e.pageToken);let r=await fetch(`/v1/agents?${n}`,{signal:e.signal});if(!r.ok)throw Error(`HTTP ${r.status}: ${r.statusText}`);let i=await r.json();return{results:i.results||[],nextPageToken:i.nextPageToken||``}}function z(e){return e.activeTags.size>0||e.statusFilter===`trusted`||e.statusFilter===`verified`}function B(e){return Array.from(new Set(e.flatMap(e=>e.tags||[]))).sort()}function V(e,t){if(t.length===0)return e;let n=new Set(e),r=!1;for(let e of t)for(let t of e.tags||[])n.has(t)||(n.add(t),r=!0);return r?Array.from(n).sort():e}function H(e,t){return e.filter(e=>{if(t.activeTags.size>0){let n=new Set(e.tags||[]),r=!1;for(let e of t.activeTags)if(n.has(e)){r=!0;break}if(!r)return!1}return!((t.statusFilter===`trusted`||t.statusFilter===`verified`)&&!G(e))})}function U(e){let t=e.data?.entries||[];return t.length>0?t.map(e=>e.mediaType||``):e.mediaType&&e.mediaType!==`application/ai-catalog+json`?[e.mediaType]:[]}function W(e){if(e.startsWith(`oasf:`))return(e.split(`/`).pop()||``).split(`_`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `);let t=e.split(`:`);return(t[t.length-1]||``).replace(/_/g,` `)}function G(e){return!!(e.trustManifest&&e.trustManifest.signature)}function ee(e){let t=0,n=e.identifier||e.displayName||``;for(let e=0;e=1e3?(e/1e3).toFixed(1).replace(/\.0$/,``)+`k`:e.toString()}function K(e){if(!e)return``;let t=e.split(`:`);return t[t.length-1]}function q(e){return e.includes(`a2a`)?{format:`a2a`,label:`Download JSON`,ext:`json`}:e.includes(`mcp`)?{format:`mcp-ghcopilot`,label:`Download JSON`,ext:`json`}:e.includes(`agentskill`)?{format:`agent-skill`,label:`Download Markdown`,ext:`md`}:{format:`oasf`,label:`Download Asset`,ext:`json`}}function ne(e){let t=e.mediaType||``,n=e.data;return t.includes(`a2a`)?n?.card_data?.name||e.displayName||`Unnamed`:t.includes(`mcp`)?n?.name||e.displayName||`Unnamed`:e.displayName||`Unnamed`}function J(e){let t=e.mediaType||``,n=e.data;return t.includes(`a2a`)?n?.card_data?.version||e.version||`-`:e.version||`-`}var Y=f(``);function X(e,t){a(t,!0);let n=g(()=>t.type.includes(`a2a`)?`A2A`:t.type.includes(`mcp`)?`MCP`:t.type.includes(`agentskill`)?`SKILL`:t.type.split(`/`).pop()?.split(`+`)[0]||t.type),r=g(()=>t.type.includes(`a2a`)?`bg-accent-teal text-accent-teal-ink`:t.type.includes(`mcp`)?`bg-brand-200 text-brand-600`:t.type.includes(`agentskill`)?`bg-[#fdeccc] text-[#8a5a06]`:`bg-surface-tag text-ink`);var i=Y(),o=d(i,!0);u(i),s(()=>{S(i,1,`inline-flex items-center px-2 py-0.5 rounded-full text-xs font-semibold ${c(r)??``}`),N(o,c(n))}),y(e,i),D()}var Z=t(``),Q=t(``),$=t(``),re=f(``);function ie(t,n){let r=g(()=>Math.floor(n.rating)),i=g(()=>n.rating-c(r)>=.5);var a=re();C(a,20,()=>[,,,,,],v,(t,n,a)=>{var o=M(),s=P(o),l=e=>{y(e,Z())},f=t=>{var n=Q(),r=d(n);T(d(r),`id`,`half-${a}`),u(r),T(e(r),`fill`,`url(#half-${a})`),u(n),y(t,n)},p=e=>{y(e,$())};A(s,e=>{a `),oe=f(``),se=f(`
Preview data. Star ratings, download counts, and provider statistics shown on catalog entries are
- placeholder values for demonstration only and do not reflect real usage or federation data.