{
  "version": 3,
  "sources": ["../../src/modules/payload-huri/hooks/useBuildHuri.tsx", "../../src/modules/payload-huri/hooks/useFetchHuri.tsx", "../../src/modules/payload-huri/hooks/useParseHuriFromRoute.tsx"],
  "sourcesContent": ["import { useNetwork } from '#network'\n\n/** Builds a full HURI URL from a hash using the current network archivist URI. */\nexport const useBuildHuri = (hash?: string) => {\n  const { network } = useNetwork()\n  const networkUri = network?.nodes?.find(node => node.type === 'archivist')?.uri\n\n  if (!hash || hash.startsWith('http')) {\n    return\n  }\n\n  return `${networkUri}/${hash}`\n}\n", "import type { UsePromiseState } from '@ariestools/sdk-react/promise'\nimport { usePromise } from '@ariestools/sdk-react/promise'\nimport type { HuriPayload } from '@xyo-network/diviner-huri'\nimport { HuriSchema } from '@xyo-network/diviner-huri'\nimport type { DivinerInstance, Payload } from '@xyo-network/sdk'\nimport { useMemo } from 'react'\n\nimport { useBuildHuri } from './useBuildHuri.tsx'\n\n/** Fetches payloads for a hash or HURI via the given HURI diviner. */\nexport const useFetchHuri = (hashOrHuri?: string, diviner?: DivinerInstance, token?: string): [Payload[] | undefined, Error | undefined, UsePromiseState | undefined] => {\n  const huri = useBuildHuri(hashOrHuri) ?? hashOrHuri\n  const huriPayload: HuriPayload | undefined = useMemo(\n    () => (huri\n      ? {\n          huri: [huri], schema: HuriSchema, tokens: token ? [token] : undefined,\n        }\n      : undefined),\n    [huri, token],\n  )\n\n  return usePromise(async () => (diviner && huriPayload ? await diviner.divine([huriPayload]) : undefined), [diviner, huriPayload])\n}\n", "import { useParams, useSearchParams } from 'react-router'\n\nimport { useBuildHuri } from './useBuildHuri.tsx'\n\n/** Where to read a HURI from when parsing the current route. */\nexport type RouteOptions = 'routeParam' | 'searchParam' | 'any'\n\n/** Parses a HURI from route params and/or search params. */\nexport const useParseHuriFromRoute = (routeOption: RouteOptions = 'any') => {\n  const { hash: hashParam } = useParams()\n\n  const huriFromHashParam = useBuildHuri(hashParam)\n\n  const [params] = useSearchParams()\n  const huriSearchParameter = params.get('huri')\n  const decodedHuriParam = decodeURIComponent(huriSearchParameter ?? '')\n\n  switch (routeOption) {\n    case 'routeParam': {\n      return huriFromHashParam\n    }\n    case 'searchParam': {\n      return decodedHuriParam\n    }\n    default: {\n      return huriFromHashParam || decodedHuriParam\n    }\n  }\n}\n"],
  "mappings": ";AAAA,SAAS,kBAAkB;AAGpB,IAAM,eAAe,CAAC,SAAkB;AAC7C,QAAM,EAAE,QAAQ,IAAI,WAAW;AAC/B,QAAM,aAAa,SAAS,OAAO,KAAK,UAAQ,KAAK,SAAS,WAAW,GAAG;AAE5E,MAAI,CAAC,QAAQ,KAAK,WAAW,MAAM,GAAG;AACpC;AAAA,EACF;AAEA,SAAO,GAAG,UAAU,IAAI,IAAI;AAC9B;;;ACXA,SAAS,kBAAkB;AAE3B,SAAS,kBAAkB;AAE3B,SAAS,eAAe;AAKjB,IAAM,eAAe,CAAC,YAAqB,SAA2B,UAA4F;AACvK,QAAM,OAAO,aAAa,UAAU,KAAK;AACzC,QAAM,cAAuC;AAAA,IAC3C,MAAO,OACH;AAAA,MACE,MAAM,CAAC,IAAI;AAAA,MAAG,QAAQ;AAAA,MAAY,QAAQ,QAAQ,CAAC,KAAK,IAAI;AAAA,IAC9D,IACA;AAAA,IACJ,CAAC,MAAM,KAAK;AAAA,EACd;AAEA,SAAO,WAAW,YAAa,WAAW,cAAc,MAAM,QAAQ,OAAO,CAAC,WAAW,CAAC,IAAI,QAAY,CAAC,SAAS,WAAW,CAAC;AAClI;;;ACtBA,SAAS,WAAW,uBAAuB;AAQpC,IAAM,wBAAwB,CAAC,cAA4B,UAAU;AAC1E,QAAM,EAAE,MAAM,UAAU,IAAI,UAAU;AAEtC,QAAM,oBAAoB,aAAa,SAAS;AAEhD,QAAM,CAAC,MAAM,IAAI,gBAAgB;AACjC,QAAM,sBAAsB,OAAO,IAAI,MAAM;AAC7C,QAAM,mBAAmB,mBAAmB,uBAAuB,EAAE;AAErE,UAAQ,aAAa;AAAA,IACnB,KAAK,cAAc;AACjB,aAAO;AAAA,IACT;AAAA,IACA,KAAK,eAAe;AAClB,aAAO;AAAA,IACT;AAAA,IACA,SAAS;AACP,aAAO,qBAAqB;AAAA,IAC9B;AAAA,EACF;AACF;",
  "names": []
}
