Skip to content

Commit 34f648b

Browse files
Merge pull request #876 from grahammendick/function-deps
2 parents 6d55fc5 + cc1a414 commit 34f648b

File tree

19 files changed

+84
-58
lines changed

19 files changed

+84
-58
lines changed

NavigationReact/sample/rsc-parcel/src/App.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ const App = async ({url}: any) => {
1818
<SceneView active="people">
1919
<People />
2020
</SceneView>
21-
<SceneView active="person" dataKeyDeps={['id']}>
21+
<SceneView active="person" refetch={['id']}>
2222
<Person />
2323
</SceneView>
2424
</HmrProvider>

NavigationReact/sample/rsc-parcel/src/Filter.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
'use client'
2-
import { startTransition } from 'react';
2+
import { startTransition, useOptimistic } from 'react';
33
import { RefreshLink, useNavigationEvent } from 'navigation-react';
4-
import { useOptimistic } from 'react';
54

65
const Filter = () => {
76
const {data, stateNavigator} = useNavigationEvent();

NavigationReact/sample/rsc-parcel/src/Person.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
'use server-entry'
2-
import { getPerson } from './data';
32
import { SceneView, NavigationBackLink, useNavigationEvent } from 'navigation-react';
4-
import Friends from "./Friends";
3+
import { getPerson } from './data';
4+
import Friends from './Friends';
55

66
const Person = async () => {
77
const {data} = useNavigationEvent();

NavigationReact/sample/rsc-webpack/src/App.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ const App = async ({url}) => {
1717
<SceneView active="people">
1818
<People />
1919
</SceneView>
20-
<SceneView active="person" dataKeyDeps={['id']}>
20+
<SceneView active="person" refetch={['id']}>
2121
<Person />
2222
</SceneView>
2323
</HmrProvider>

NavigationReact/sample/rsc-webpack/src/Filter.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
'use client'
22
import * as React from 'react';
3-
import { startTransition } from 'react';
3+
import { startTransition, useOptimistic } from 'react';
44
import { RefreshLink, useNavigationEvent } from 'navigation-react';
5-
import { useOptimistic } from 'react';
65

76
const Filter = () => {
87
const {data, stateNavigator} = useNavigationEvent();

NavigationReact/sample/rsc-webpack/src/Person.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import * as React from 'react';
22
import { SceneView, NavigationBackLink, useNavigationEvent } from 'navigation-react';
33
import { getPerson } from './data.js';
4-
import Friends from "./Friends.js";
4+
import Friends from './Friends.js';
55

66
const Person = async () => {
77
const {data} = useNavigationEvent();

NavigationReact/src/ErrorBoundary.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import React, { Component, ReactNode, cloneElement, createElement } from 'react';
1+
import { Component, ReactNode, cloneElement, createElement } from 'react';
22
import { StateContext, StateNavigator } from 'navigation';
33
import withStateNavigator from './withStateNavigator.js';
44

NavigationReact/src/NavigationReact.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,6 @@ import RefreshLink from './RefreshLink.js';
77
import FluentLink from './FluentLink.js';
88
import SceneView from './SceneView.js';
99
import useNavigationEvent from './useNavigationEvent.js';
10+
import useRefetch from './useRefetch.js';
1011

11-
export { NavigationContext, BundlerContext, NavigationHandler, NavigationBackLink, NavigationLink, RefreshLink, FluentLink, SceneView, useNavigationEvent };
12+
export { NavigationContext, BundlerContext, NavigationHandler, NavigationBackLink, NavigationLink, RefreshLink, FluentLink, SceneView, useNavigationEvent, useRefetch };

NavigationReact/src/Props.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ interface FluentLinkProps extends LinkProps {
3434

3535
interface SceneViewProps {
3636
active: string | string[] | ((stateContext: StateContext) => boolean);
37-
dataKeyDeps: string[];
37+
refetch: string[] | ((stateContext: StateContext) => boolean);
3838
name: string;
3939
errorFallback: ReactNode;
4040
children: any;

NavigationReact/src/RSCContext.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import { createContext } from 'react';
2+
import { StateContext } from 'navigation';
3+
4+
export default createContext<{fetching: boolean, setRefetch: (refetch?: string[] | ((stateContext: StateContext) => boolean)) => void}>({fetching: false, setRefetch: null});

0 commit comments

Comments
 (0)