MCPcopy
hub / github.com/freshframework/fresh / renderAsyncAnyComponent

Function renderAsyncAnyComponent

packages/fresh/src/render.ts:27–50  ·  view source on GitHub ↗
(
  fn: AsyncAnyComponent<Props>,
  props: RenderableProps<Props>,
)

Source from the content-addressed store, hash-verified

25}
26
27export async function renderAsyncAnyComponent<Props>(
28 fn: AsyncAnyComponent<Props>,
29 props: RenderableProps<Props>,
30) {
31 return await tracer.startActiveSpan(
32 "invoke async component",
33 async (span) => {
34 span.setAttribute("fresh.span_type", "fs_routes/async_component");
35 try {
36 const result = (await fn(props)) as VNode | Response;
37 span.setAttribute(
38 "fresh.component_response",
39 result instanceof Response ? "http" : "jsx",
40 );
41 return result;
42 } catch (err) {
43 recordSpanError(span, err);
44 throw err;
45 } finally {
46 span.end();
47 }
48 },
49 );
50}
51
52export type PageProps<Data = unknown, T = unknown> =
53 & Pick<

Callers 2

renderMethod · 0.90
renderRouteComponentFunction · 0.85

Calls 2

recordSpanErrorFunction · 0.90
fnFunction · 0.85

Tested by

no test coverage detected