{"ast":null,"code":"import React, { useEffect } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport invariant from 'tiny-invariant';\nimport warning from 'warning';\nimport StructTreeItem from './StructTreeItem.js';\nimport usePageContext from './shared/hooks/usePageContext.js';\nimport useResolver from './shared/hooks/useResolver.js';\nimport { cancelRunningTask } from './shared/utils.js';\nexport default function StructTree() {\n  const pageContext = usePageContext();\n  invariant(pageContext, 'Unable to find Page context.');\n  const {\n    onGetStructTreeError: onGetStructTreeErrorProps,\n    onGetStructTreeSuccess: onGetStructTreeSuccessProps\n  } = pageContext;\n  const [structTreeState, structTreeDispatch] = useResolver();\n  const {\n    value: structTree,\n    error: structTreeError\n  } = structTreeState;\n  const {\n    customTextRenderer,\n    page\n  } = pageContext;\n  function onLoadSuccess() {\n    if (!structTree) {\n      // Impossible, but TypeScript doesn't know that\n      return;\n    }\n    if (onGetStructTreeSuccessProps) {\n      onGetStructTreeSuccessProps(structTree);\n    }\n  }\n  function onLoadError() {\n    if (!structTreeError) {\n      // Impossible, but TypeScript doesn't know that\n      return;\n    }\n    warning(false, structTreeError.toString());\n    if (onGetStructTreeErrorProps) {\n      onGetStructTreeErrorProps(structTreeError);\n    }\n  }\n  function resetAnnotations() {\n    structTreeDispatch({\n      type: 'RESET'\n    });\n  }\n  useEffect(resetAnnotations, [structTreeDispatch, page]);\n  function loadStructTree() {\n    if (customTextRenderer) {\n      // TODO: Document why this is necessary\n      return;\n    }\n    if (!page) {\n      return;\n    }\n    const cancellable = makeCancellable(page.getStructTree());\n    const runningTask = cancellable;\n    cancellable.promise.then(nextStructTree => {\n      structTreeDispatch({\n        type: 'RESOLVE',\n        value: nextStructTree\n      });\n    }).catch(error => {\n      structTreeDispatch({\n        type: 'REJECT',\n        error\n      });\n    });\n    return () => cancelRunningTask(runningTask);\n  }\n  useEffect(loadStructTree, [customTextRenderer, page, structTreeDispatch]);\n  useEffect(() => {\n    if (structTree === undefined) {\n      return;\n    }\n    if (structTree === false) {\n      onLoadError();\n      return;\n    }\n    onLoadSuccess();\n  },\n  // Ommitted callbacks so they are not called every time they change\n  // eslint-disable-next-line react-hooks/exhaustive-deps\n  [structTree]);\n  if (!structTree) {\n    return null;\n  }\n  return React.createElement(StructTreeItem, {\n    className: \"react-pdf__Page__structTree structTree\",\n    node: structTree\n  });\n}","map":{"version":3,"names":["React","useEffect","makeCancellable","invariant","warning","StructTreeItem","usePageContext","useResolver","cancelRunningTask","StructTree","pageContext","onGetStructTreeError","onGetStructTreeErrorProps","onGetStructTreeSuccess","onGetStructTreeSuccessProps","structTreeState","structTreeDispatch","value","structTree","error","structTreeError","customTextRenderer","page","onLoadSuccess","onLoadError","toString","resetAnnotations","type","loadStructTree","cancellable","getStructTree","runningTask","promise","then","nextStructTree","catch","undefined","createElement","className","node"],"sources":["/Users/chrishaack/UC_Trains_Voice/react-demo/node_modules/react-pdf/dist/esm/StructTree.js"],"sourcesContent":["import React, { useEffect } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport invariant from 'tiny-invariant';\nimport warning from 'warning';\nimport StructTreeItem from './StructTreeItem.js';\nimport usePageContext from './shared/hooks/usePageContext.js';\nimport useResolver from './shared/hooks/useResolver.js';\nimport { cancelRunningTask } from './shared/utils.js';\nexport default function StructTree() {\n    const pageContext = usePageContext();\n    invariant(pageContext, 'Unable to find Page context.');\n    const { onGetStructTreeError: onGetStructTreeErrorProps, onGetStructTreeSuccess: onGetStructTreeSuccessProps, } = pageContext;\n    const [structTreeState, structTreeDispatch] = useResolver();\n    const { value: structTree, error: structTreeError } = structTreeState;\n    const { customTextRenderer, page } = pageContext;\n    function onLoadSuccess() {\n        if (!structTree) {\n            // Impossible, but TypeScript doesn't know that\n            return;\n        }\n        if (onGetStructTreeSuccessProps) {\n            onGetStructTreeSuccessProps(structTree);\n        }\n    }\n    function onLoadError() {\n        if (!structTreeError) {\n            // Impossible, but TypeScript doesn't know that\n            return;\n        }\n        warning(false, structTreeError.toString());\n        if (onGetStructTreeErrorProps) {\n            onGetStructTreeErrorProps(structTreeError);\n        }\n    }\n    function resetAnnotations() {\n        structTreeDispatch({ type: 'RESET' });\n    }\n    useEffect(resetAnnotations, [structTreeDispatch, page]);\n    function loadStructTree() {\n        if (customTextRenderer) {\n            // TODO: Document why this is necessary\n            return;\n        }\n        if (!page) {\n            return;\n        }\n        const cancellable = makeCancellable(page.getStructTree());\n        const runningTask = cancellable;\n        cancellable.promise\n            .then((nextStructTree) => {\n            structTreeDispatch({ type: 'RESOLVE', value: nextStructTree });\n        })\n            .catch((error) => {\n            structTreeDispatch({ type: 'REJECT', error });\n        });\n        return () => cancelRunningTask(runningTask);\n    }\n    useEffect(loadStructTree, [customTextRenderer, page, structTreeDispatch]);\n    useEffect(() => {\n        if (structTree === undefined) {\n            return;\n        }\n        if (structTree === false) {\n            onLoadError();\n            return;\n        }\n        onLoadSuccess();\n    }, \n    // Ommitted callbacks so they are not called every time they change\n    // eslint-disable-next-line react-hooks/exhaustive-deps\n    [structTree]);\n    if (!structTree) {\n        return null;\n    }\n    return React.createElement(StructTreeItem, { className: \"react-pdf__Page__structTree structTree\", node: structTree });\n}\n"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}