diff --git a/packages/react-uploads-list/src/UploadsList.tsx b/packages/react-uploads-list/src/UploadsList.tsx index 6a27224c..ef388a3d 100644 --- a/packages/react-uploads-list/src/UploadsList.tsx +++ b/packages/react-uploads-list/src/UploadsList.tsx @@ -1,7 +1,7 @@ import type { As, Component, Props, Options, RenderProp } from 'ariakit-react-utils' import type { UploadsListContextState, UploadsListContextActions } from '@w3ui/uploads-list-core' -import React, { Fragment, createContext, useContext, useMemo, useCallback, useEffect } from 'react' +import React, { Fragment, createContext, useContext, useMemo, useCallback } from 'react' import { createComponent, createElement } from 'ariakit-react-utils' import { useUploadsList } from './providers/UploadsList' @@ -68,10 +68,6 @@ export const UploadsListRoot = (props: UploadsListRootProps): JSX.Element => { } else { renderedChildren = children as React.ReactNode } - useEffect(() => { - // load the first page of results asynchronously - void actions.next() - }, []) return ( {renderedChildren} diff --git a/packages/react-uploads-list/src/providers/UploadsList.tsx b/packages/react-uploads-list/src/providers/UploadsList.tsx index a0c81247..f19f4528 100644 --- a/packages/react-uploads-list/src/providers/UploadsList.tsx +++ b/packages/react-uploads-list/src/providers/UploadsList.tsx @@ -1,4 +1,4 @@ -import React, { useContext, createContext, useState } from 'react' +import React, { useContext, createContext, useState, useEffect } from 'react' import { UploadListResult, UploadsListContextState, UploadsListContextActions, ServiceConfig, list } from '@w3ui/uploads-list-core' import { useKeyring } from '@w3ui/react-keyring' import { list as uploadList } from '@web3-storage/capabilities/upload' @@ -82,6 +82,9 @@ export function UploadsListProvider ({ size, servicePrincipal, connection, child } } + // we should reload the page any time the space or agent change + useEffect(() => { void loadPage() }, [space, agent]) + return ( {children}