Skip to main content

Overview

useFetchEntity returns a function that fetches a single entity by its Sublay entity ID. Use this for on-demand fetches outside of EntityProvider.

Usage Example

import { useFetchEntity } from "@sublay/react-js";

function EntityLoader({ entityId }: { entityId: string }) {
  const fetchEntity = useFetchEntity();

  const load = async () => {
    const entity = await fetchEntity({ entityId, include: ["user", "topComment"] });
    console.log(entity);
  };

  return <button onClick={load}>Load Entity</button>;
}

Parameters

entityId
string
required
The Sublay entity ID to fetch.
include
string | string[]
Optional. Populate related fields. Accepted values: "user", "space", "topComment", "saved", "files".
spaceReputationId
string
Optional. Resolves the embedded author’s reputation into a spaceReputation number. Accepts a space <uuid>, "none" (project-general bucket), or "context" (server-derived from the request context). Empty string, "general", and null are rejected. See Reputation.
spaceReputationDescendants
boolean
Optional. When true, spaceReputation is the subtree sum (the space plus all its descendants). Only honored when spaceReputationId is an explicit <uuid>.

Returns

Entity
Entity
The fetched entity. When spaceReputationId is set, the embedded author carries an added spaceReputation number. See Entity data model and Reputation.