mirror of
https://github.com/outline/outline.git
synced 2025-04-13 01:29:39 +00:00
chore: Remove params requirement on fetchPage
This commit is contained in:
@ -16,10 +16,12 @@ type RequestResponse<T> = {
|
||||
* A hook to make an API request and track its state within a component.
|
||||
*
|
||||
* @param requestFn The function to call to make the request, it should return a promise.
|
||||
* @param makeRequestOnMount Whether to make the request when the component mounts.
|
||||
* @returns An object containing the request state and a function to start the request.
|
||||
*/
|
||||
export default function useRequest<T = unknown>(
|
||||
requestFn: () => Promise<T>
|
||||
requestFn: () => Promise<T>,
|
||||
makeRequestOnMount = false
|
||||
): RequestResponse<T> {
|
||||
const isMounted = useIsMounted();
|
||||
const [data, setData] = React.useState<T>();
|
||||
@ -48,5 +50,11 @@ export default function useRequest<T = unknown>(
|
||||
return undefined;
|
||||
}, [requestFn, isMounted]);
|
||||
|
||||
React.useEffect(() => {
|
||||
if (makeRequestOnMount) {
|
||||
void request();
|
||||
}
|
||||
}, [request, makeRequestOnMount]);
|
||||
|
||||
return { data, loading, error, request };
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ function Security() {
|
||||
data: providers,
|
||||
loading,
|
||||
request,
|
||||
} = useRequest(() => authenticationProviders.fetchPage({}));
|
||||
} = useRequest(authenticationProviders.fetchPage);
|
||||
|
||||
React.useEffect(() => {
|
||||
if (!providers && !loading) {
|
||||
|
@ -262,7 +262,7 @@ export default abstract class Store<T extends Model> {
|
||||
}
|
||||
|
||||
@action
|
||||
fetchPage = async (params: FetchPageParams | undefined): Promise<T[]> => {
|
||||
fetchPage = async (params?: FetchPageParams | undefined): Promise<T[]> => {
|
||||
if (!this.actions.includes(RPCAction.List)) {
|
||||
throw new Error(`Cannot list ${this.modelName}`);
|
||||
}
|
||||
|
@ -74,7 +74,7 @@ class AuthenticationProvider extends Model<
|
||||
@Column(DataType.UUID)
|
||||
teamId: string;
|
||||
|
||||
@HasMany(() => UserAuthentication, "providerId")
|
||||
@HasMany(() => UserAuthentication, "authenticationProviderId")
|
||||
userAuthentications: UserAuthentication[];
|
||||
|
||||
// instance methods
|
||||
|
Reference in New Issue
Block a user