Skip to main content

Function: useStartClaimFromExternal()

useStartClaimFromExternal(): UseMutationResult<ClaimRequest, Error, StartClaimFromExternalParams, unknown>

Defined in: web/lib/hooks/use-eprint-search.ts:431

Hook for starting a claim from an external search result.

Returns​

UseMutationResult<ClaimRequest, Error, StartClaimFromExternalParams, unknown>

Mutation for starting claim with import-on-demand

Remarks​

Implements "import on demand" pattern:

  1. User selects eprint from search results
  2. If not already imported, fetches from source and imports
  3. Creates claim request

This reduces storage and API load by only importing papers that users actually want to claim.

Example​

const startClaim = useStartClaimFromExternal();

const handleSelect = (eprint: ExternalEprint) => {
startClaim.mutate({
source: eprint.source,
externalId: eprint.externalId,
});
};

return (
<EprintCard
eprint={eprint}
onClaim={handleSelect}
isClaimPending={startClaim.isPending}
/>
);