MCPcopy Create free account
hub / github.com/CommE2E/comm / entityTextToRawString

Function entityTextToRawString

lib/utils/entity-text.js:367–392  ·  view source on GitHub ↗
(
  entityText: EntityText,
  params?: ?EntityTextToRawStringParams,
)

Source from the content-addressed store, hash-verified

365 +prefixThisThreadNounWith?: ?('this' | 'your'),
366};
367function entityTextToRawString(
368 entityText: EntityText,
369 params?: ?EntityTextToRawStringParams,
370): string {
371 // ESLint doesn't recognize that invariant always throws
372 // eslint-disable-next-line consistent-return
373 const textParts = entityText.map(entity => {
374 if (typeof entity === 'string') {
375 return entity;
376 } else if (entity.type === 'thread') {
377 return getNameForThreadEntity(entity, params);
378 } else if (entity.type === 'color') {
379 return entity.hex;
380 } else if (entity.type === 'user') {
381 return getNameForUserEntity(entity, params?.ignoreViewer);
382 } else if (entity.type === 'farcaster_user') {
383 return getNameForFarcasterUserEntity(entity);
384 } else {
385 invariant(
386 false,
387 `entityTextToRawString can't handle entity type ${entity.type}`,
388 );
389 }
390 });
391 return textParts.join('');
392}
393
394type RenderFunctions = {
395 +renderText: ({ +text: string }) => React.Node,

Callers 8

useResolvedThreadInfosFunction · 0.90
heightMeasurerKeyFunction · 0.90
getNameForThreadEntityFunction · 0.85
useEntityTextAsStringFunction · 0.85
getEntityTextAsStringFunction · 0.85

Calls 3

getNameForThreadEntityFunction · 0.85
getNameForUserEntityFunction · 0.85

Tested by

no test coverage detected