diff --git a/packages/react-cosmos-core/src/renderer/rendererConnect.ts b/packages/react-cosmos-core/src/renderer/rendererConnect.ts index 20585da931..1ced1e1df2 100644 --- a/packages/react-cosmos-core/src/renderer/rendererConnect.ts +++ b/packages/react-cosmos-core/src/renderer/rendererConnect.ts @@ -1,9 +1,5 @@ import { FixtureState } from '../fixtureState/types.js'; -import { - FixtureId, - FixtureList, - FixtureListItem, -} from '../userModules/fixtureTypes.js'; +import { FixtureId, FixtureList } from '../userModules/fixtureTypes.js'; // FYI: Renderer ids are self assigned in remote environments, so uniqueness // cannot be established by consensus @@ -77,15 +73,6 @@ export type FixtureListUpdateResponse = { }; }; -export type FixtureListItemUpdateResponse = { - type: 'fixtureListItemUpdate'; - payload: { - rendererId: RendererId; - fixturePath: string; - fixtureItem: FixtureListItem; - }; -}; - // Caused by an organic state change inside the renderer. Also dispatched // after a fixtureSelect request, when rendering stateful components, as their // initial state is read. @@ -112,7 +99,6 @@ export type RendererResponse = | RendererReadyResponse | RendererErrorResponse | FixtureListUpdateResponse - | FixtureListItemUpdateResponse | FixtureStateChangeResponse | PlaygroundCommandResponse; diff --git a/packages/react-cosmos-dom/src/DomRendererProvider.tsx b/packages/react-cosmos-dom/src/DomRendererProvider.tsx index d0728e55e9..e81d80ab74 100644 --- a/packages/react-cosmos-dom/src/DomRendererProvider.tsx +++ b/packages/react-cosmos-dom/src/DomRendererProvider.tsx @@ -15,7 +15,7 @@ import { } from 'react-cosmos-renderer'; import { RendererContext, - RendererContextValue, + RendererProvider, } from 'react-cosmos-renderer/client'; import { getDomRendererId } from './domRendererId.js'; @@ -31,33 +31,48 @@ export function DomRendererProvider({ searchParams, setSearchParams, }: Props) { - const value = React.useMemo(() => { - return { - rendererId: getDomRendererId(), - rendererConnect: createDomRendererConnect(rendererConfig.playgroundUrl), - searchParams: decodeRendererSearchParams(searchParams), - setSearchParams: (nextParams: RendererSearchParams) => { - // Implementing setSearchParams is optional. It is required for server - // fixture loaders that cannot listen to client-side 'selectFixture' - // requests from the Cosmos UI. - if (setSearchParams) { - setSearchParams(encodeRendererSearchParams(nextParams)); - } - }, - reloadRenderer: () => { - window.location.reload(); - }, - }; - }, [setSearchParams, rendererConfig, searchParams]); + const rendererId = React.useMemo(() => getDomRendererId(), []); + + const rendererConnect = React.useMemo( + () => createDomRendererConnect(rendererConfig.playgroundUrl), + [rendererConfig.playgroundUrl] + ); + + const decodedParams = React.useMemo( + () => decodeRendererSearchParams(searchParams), + [searchParams] + ); + + const setDecodedParams = React.useCallback( + (nextParams: RendererSearchParams) => { + // Implementing setSearchParams is optional. It is required for server + // fixture loaders that cannot listen to client-side 'selectFixture' + // requests from the Cosmos UI. + if (setSearchParams) { + setSearchParams(encodeRendererSearchParams(nextParams)); + } + }, + [setSearchParams] + ); return ( - + {children} {typeof window !== 'undefined' && } - + ); } +function reloadRenderer() { + window.location.reload(); +} + function GlobalErrorHandler() { const { rendererId, rendererConnect } = React.useContext(RendererContext); diff --git a/packages/react-cosmos-native/src/NativeRendererProvider.tsx b/packages/react-cosmos-native/src/NativeRendererProvider.tsx index cfb960664f..2f413c780c 100644 --- a/packages/react-cosmos-native/src/NativeRendererProvider.tsx +++ b/packages/react-cosmos-native/src/NativeRendererProvider.tsx @@ -1,10 +1,7 @@ import React from 'react'; import { FixtureId, RendererConfig } from 'react-cosmos-core'; import { createWebSocketsConnect } from 'react-cosmos-renderer'; -import { - RendererContext, - RendererContextValue, -} from 'react-cosmos-renderer/client'; +import { RendererProvider } from 'react-cosmos-renderer/client'; import { DevSettings } from 'react-native'; import { getSocketUrl } from './getSocketUrl.js'; @@ -18,23 +15,32 @@ export function NativeRendererProvider({ rendererConfig, initialFixtureId, }: Props) { - const value = React.useMemo(() => { - const socketUrl = getSocketUrl(rendererConfig.playgroundUrl); - return { - // TODO: Generate unique ID per device - rendererId: 'native-renderer', - rendererConnect: createWebSocketsConnect(socketUrl), - searchParams: { fixtureId: initialFixtureId }, - setSearchParams: () => {}, - reloadRenderer: () => { - DevSettings.reload(); - }, - }; - }, [initialFixtureId, rendererConfig]); + const rendererConnect = React.useMemo( + () => createWebSocketsConnect(getSocketUrl(rendererConfig.playgroundUrl)), + [rendererConfig.playgroundUrl] + ); + + const searchParams = React.useMemo( + () => ({ fixtureId: initialFixtureId }), + [initialFixtureId] + ); return ( - + {children} - + ); } + +function reloadRenderer() { + DevSettings.reload(); +} + +function noop() {} diff --git a/packages/react-cosmos-renderer/src/__tests__/fixtureInitialSelectLazy.ts b/packages/react-cosmos-renderer/src/__tests__/fixtureInitialSelectLazy.ts index 0f6c7e4fb4..41de0e4157 100644 --- a/packages/react-cosmos-renderer/src/__tests__/fixtureInitialSelectLazy.ts +++ b/packages/react-cosmos-renderer/src/__tests__/fixtureInitialSelectLazy.ts @@ -36,14 +36,14 @@ testRenderer( ); testRenderer( - 'posts lazy fixture list item update on initially selected fixture', + 'posts lazy fixture list with item names on initially selected fixture', { rendererId, searchParams: { fixtureId: { path: 'first' } }, fixtures, lazy: true, }, - async ({ rendererReady, fixtureListUpdate, fixtureListItemUpdate }) => { + async ({ rendererReady, fixtureListUpdate }) => { await rendererReady({ rendererId, selectedFixtureId: { path: 'first' }, @@ -51,14 +51,9 @@ testRenderer( await fixtureListUpdate({ rendererId, fixtures: { - first: { type: 'single' }, + first: { type: 'multi', fixtureNames: ['one'] }, second: { type: 'single' }, }, }); - await fixtureListItemUpdate({ - rendererId, - fixturePath: 'first', - fixtureItem: { type: 'multi', fixtureNames: ['one'] }, - }); } ); diff --git a/packages/react-cosmos-renderer/src/__tests__/fixtureListMulti.ts b/packages/react-cosmos-renderer/src/__tests__/fixtureListMulti.ts index 26d52e3149..b2f7351a51 100644 --- a/packages/react-cosmos-renderer/src/__tests__/fixtureListMulti.ts +++ b/packages/react-cosmos-renderer/src/__tests__/fixtureListMulti.ts @@ -9,7 +9,7 @@ const fixtures = wrapDefaultExport({ }); testRenderer( - 'posts fixture list with names', + 'posts fixture list with item names', { rendererId, fixtures }, async ({ fixtureListUpdate }) => { await fixtureListUpdate({ diff --git a/packages/react-cosmos-renderer/src/__tests__/fixtureListMultiLazy.ts b/packages/react-cosmos-renderer/src/__tests__/fixtureListMultiLazy.ts index fdc8f151d0..319a4b070e 100644 --- a/packages/react-cosmos-renderer/src/__tests__/fixtureListMultiLazy.ts +++ b/packages/react-cosmos-renderer/src/__tests__/fixtureListMultiLazy.ts @@ -9,9 +9,9 @@ const fixtures = wrapDefaultExport({ }); testRenderer( - 'posts lazy fixture list item update on fixture select', + 'posts lazy fixture list with item names on fixture select', { rendererId, fixtures, lazy: true }, - async ({ selectFixture, fixtureListUpdate, fixtureListItemUpdate }) => { + async ({ selectFixture, fixtureListUpdate }) => { await fixtureListUpdate({ rendererId, fixtures: { @@ -24,10 +24,12 @@ testRenderer( fixtureId: { path: 'first' }, fixtureState: {}, }); - await fixtureListItemUpdate({ + await fixtureListUpdate({ rendererId, - fixturePath: 'first', - fixtureItem: { type: 'multi', fixtureNames: ['a', 'b', 'c'] }, + fixtures: { + first: { type: 'multi', fixtureNames: ['a', 'b', 'c'] }, + second: { type: 'single' }, + }, }); } ); diff --git a/packages/react-cosmos-renderer/src/client.ts b/packages/react-cosmos-renderer/src/client.ts index 8843238428..5cbc672f58 100644 --- a/packages/react-cosmos-renderer/src/client.ts +++ b/packages/react-cosmos-renderer/src/client.ts @@ -5,3 +5,4 @@ export * from './fixture/useSelect/index.js'; export * from './fixture/useValue/index.js'; export * from './fixtureLoaders/ClientFixtureLoader.js'; export * from './rendererConnect/RendererContext.js'; +export * from './rendererConnect/RendererProvider.js'; diff --git a/packages/react-cosmos-renderer/src/fixtureLoaders/RendererSync.tsx b/packages/react-cosmos-renderer/src/fixtureLoaders/RendererSync.tsx index f0b4426f2a..f05d79e7b4 100644 --- a/packages/react-cosmos-renderer/src/fixtureLoaders/RendererSync.tsx +++ b/packages/react-cosmos-renderer/src/fixtureLoaders/RendererSync.tsx @@ -8,8 +8,13 @@ type Props = { fixtures: FixtureList; }; export function RendererSync({ children, fixtures }: Props) { - const { searchParams, rendererId, rendererConnect, reloadRenderer } = - React.useContext(RendererContext); + const { + searchParams, + rendererId, + rendererConnect, + reloadRenderer, + lazyItems, + } = React.useContext(RendererContext); const { fixtureId: selectedFixtureId } = searchParams; @@ -32,10 +37,10 @@ export function RendererSync({ children, fixtures }: Props) { type: 'fixtureListUpdate', payload: { rendererId, - fixtures, + fixtures: { ...fixtures, ...lazyItems }, }, }); - }, [fixtures, rendererConnect, rendererId]); + }, [fixtures, lazyItems, rendererConnect, rendererId]); React.useEffect( () => diff --git a/packages/react-cosmos-renderer/src/fixtureModule/FixtureProvider.tsx b/packages/react-cosmos-renderer/src/fixtureModule/FixtureProvider.tsx index 82ca0512f7..fe8130f0a7 100644 --- a/packages/react-cosmos-renderer/src/fixtureModule/FixtureProvider.tsx +++ b/packages/react-cosmos-renderer/src/fixtureModule/FixtureProvider.tsx @@ -29,29 +29,21 @@ export function FixtureProvider(props: Props) { syncedFixtureState: {}, }); - const { rendererId, rendererConnect } = React.useContext(RendererContext); + const { rendererId, rendererConnect, setLazyItems } = + React.useContext(RendererContext); React.useEffect(() => { // Only multi fixtures have extra info that isn't already available in the // fixture list provided to the Cosmos UI (fixture names, which in lazy mode // are revealed after importing a fixture module). - if (props.lazy && props.fixtureItem.type === 'multi') { - rendererConnect.postMessage({ - type: 'fixtureListItemUpdate', - payload: { - rendererId, - fixturePath: props.fixtureId.path, - fixtureItem: props.fixtureItem, - }, - }); + if (props.lazy) { + setLazyItems( + props.fixtureItem.type === 'multi' + ? { [props.fixtureId.path]: props.fixtureItem } + : noLazyItem + ); } - }, [ - props.fixtureId.path, - props.fixtureItem, - props.lazy, - rendererConnect, - rendererId, - ]); + }, [props.fixtureId.path, props.fixtureItem, props.lazy, setLazyItems]); React.useEffect(() => { if (!isEqual(state.fixtureState, state.syncedFixtureState)) { @@ -116,3 +108,5 @@ export function FixtureProvider(props: Props) { ); } + +const noLazyItem = {}; diff --git a/packages/react-cosmos-renderer/src/rendererConnect/RendererContext.ts b/packages/react-cosmos-renderer/src/rendererConnect/RendererContext.ts index 8d810151ad..30daaab0be 100644 --- a/packages/react-cosmos-renderer/src/rendererConnect/RendererContext.ts +++ b/packages/react-cosmos-renderer/src/rendererConnect/RendererContext.ts @@ -1,5 +1,9 @@ import React from 'react'; -import { RendererConnect, RendererSearchParams } from 'react-cosmos-core'; +import { + FixtureList, + RendererConnect, + RendererSearchParams, +} from 'react-cosmos-core'; export type RendererContextValue = { rendererId: string; @@ -7,6 +11,8 @@ export type RendererContextValue = { searchParams: RendererSearchParams; setSearchParams(nextParams: RendererSearchParams): void; reloadRenderer(): void; + lazyItems: FixtureList; + setLazyItems: React.Dispatch>; }; export const RendererContext = React.createContext({ @@ -18,4 +24,6 @@ export const RendererContext = React.createContext({ searchParams: {}, setSearchParams: () => {}, reloadRenderer: () => {}, + lazyItems: {}, + setLazyItems: () => {}, }); diff --git a/packages/react-cosmos-renderer/src/rendererConnect/RendererProvider.tsx b/packages/react-cosmos-renderer/src/rendererConnect/RendererProvider.tsx new file mode 100644 index 0000000000..4be358f900 --- /dev/null +++ b/packages/react-cosmos-renderer/src/rendererConnect/RendererProvider.tsx @@ -0,0 +1,45 @@ +'use client'; +import React from 'react'; +import { + FixtureList, + RendererConnect, + RendererSearchParams, +} from 'react-cosmos-core'; +import { RendererContext } from './RendererContext.js'; + +export type Props = { + children: React.ReactNode; + rendererId: string; + rendererConnect: RendererConnect; + searchParams: RendererSearchParams; + setSearchParams(nextParams: RendererSearchParams): void; + reloadRenderer(): void; +}; +export function RendererProvider(props: Props) { + const [lazyItems, setLazyItems] = React.useState({}); + + const value = React.useMemo(() => { + return { + rendererId: props.rendererId, + rendererConnect: props.rendererConnect, + searchParams: props.searchParams, + setSearchParams: props.setSearchParams, + reloadRenderer: props.reloadRenderer, + lazyItems, + setLazyItems, + }; + }, [ + lazyItems, + props.reloadRenderer, + props.rendererConnect, + props.rendererId, + props.searchParams, + props.setSearchParams, + ]); + + return ( + + {props.children} + + ); +} diff --git a/packages/react-cosmos-renderer/src/testHelpers/createRendererConnectTestApi.ts b/packages/react-cosmos-renderer/src/testHelpers/createRendererConnectTestApi.ts index 9b639f52fb..d5b4d42ff9 100644 --- a/packages/react-cosmos-renderer/src/testHelpers/createRendererConnectTestApi.ts +++ b/packages/react-cosmos-renderer/src/testHelpers/createRendererConnectTestApi.ts @@ -1,7 +1,6 @@ import until from 'async-until'; import { findLast } from 'lodash-es'; import { - FixtureListItemUpdateResponse, FixtureListUpdateResponse, FixtureState, FixtureStateChangeResponse, @@ -24,9 +23,6 @@ export type RendererConnectTestApi = { fixtureListUpdate: ( payload: FixtureListUpdateResponse['payload'] ) => Promise; - fixtureListItemUpdate: ( - payload: FixtureListItemUpdateResponse['payload'] - ) => Promise; fixtureStateChange: ( payload: FixtureStateChangeResponse['payload'] ) => Promise; @@ -47,7 +43,6 @@ export function createRendererConnectTestApi(args: { setFixtureState, rendererReady, fixtureListUpdate, - fixtureListItemUpdate, fixtureStateChange, getLastFixtureState, clearResponses: args.clearResponses, @@ -103,15 +98,6 @@ export function createRendererConnectTestApi(args: { }); } - async function fixtureListItemUpdate( - payload: FixtureListItemUpdateResponse['payload'] - ) { - await untilResponse({ - type: 'fixtureListItemUpdate', - payload, - }); - } - async function fixtureStateChange( payload: FixtureStateChangeResponse['payload'] ) { diff --git a/packages/react-cosmos-renderer/src/testHelpers/mountTestRenderer.tsx b/packages/react-cosmos-renderer/src/testHelpers/mountTestRenderer.tsx index 4263fffd86..603b65d16c 100644 --- a/packages/react-cosmos-renderer/src/testHelpers/mountTestRenderer.tsx +++ b/packages/react-cosmos-renderer/src/testHelpers/mountTestRenderer.tsx @@ -13,10 +13,7 @@ import { } from 'react-cosmos-core'; import { ReactTestRenderer, act, create } from 'react-test-renderer'; import { ClientFixtureLoader } from '../fixtureLoaders/ClientFixtureLoader.js'; -import { - RendererContext, - RendererContextValue, -} from '../rendererConnect/RendererContext.js'; +import { RendererProvider } from '../rendererConnect/RendererProvider.js'; import { RendererConnectTestApi, createRendererConnectTestApi, @@ -91,19 +88,19 @@ function getElement(rendererConnect: RendererConnect, args: RendererTestArgs) { decorators = {}, lazy = false, } = args; - const contextValue: RendererContextValue = { - rendererId, - rendererConnect, - searchParams, - setSearchParams, - reloadRenderer, - }; + return ( - + - + ); } diff --git a/packages/react-cosmos-ui/src/plugins/RemoteRenderer/RemoteButton/index.tsx b/packages/react-cosmos-ui/src/plugins/RemoteRenderer/RemoteButton/index.tsx index e492de4c7d..a737ca4652 100644 --- a/packages/react-cosmos-ui/src/plugins/RemoteRenderer/RemoteButton/index.tsx +++ b/packages/react-cosmos-ui/src/plugins/RemoteRenderer/RemoteButton/index.tsx @@ -52,5 +52,5 @@ function getFullUrl(rendererUrl: string) { // Renderer URL can be absolute or relative, depending on whether the renderer // is running on the same host/port as the playground if (rendererUrl.startsWith('http')) return rendererUrl; - return `${location.origin}${rendererUrl}`; + return new URL(rendererUrl, location.origin).toString(); } diff --git a/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/__tests__/fixtureListItemUpdate.ts b/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/__tests__/fixtureListItemUpdate.ts deleted file mode 100644 index 2f40c1f595..0000000000 --- a/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/__tests__/fixtureListItemUpdate.ts +++ /dev/null @@ -1,56 +0,0 @@ -import { waitFor } from '@testing-library/dom'; -import { FixtureList } from 'react-cosmos-core'; -import { loadPlugins, resetPlugins } from 'react-plugin'; -import { - getRendererCoreMethods, - mockNotifications, - mockRouter, -} from '../../../../testHelpers/pluginMocks.js'; -import { register } from '../../index.js'; -import { - mockFixtureListItemUpdate, - mockFixtureListUpdate, - mockRendererReady, -} from '../../testHelpers/index.js'; - -beforeEach(register); - -afterEach(resetPlugins); - -const fixtures: FixtureList = { - 'ein.js': { type: 'single' }, - 'zwei.js': { type: 'single' }, - 'drei.js': { type: 'single' }, -}; - -function registerTestPlugins() { - mockRouter({ - getSelectedFixtureId: () => null, - }); - mockNotifications(); -} - -function loadTestPlugins() { - loadPlugins(); - mockRendererReady('mockRendererId1'); - mockFixtureListUpdate('mockRendererId1', fixtures); -} - -it('updates fixture item in renderer state', async () => { - registerTestPlugins(); - loadTestPlugins(); - mockFixtureListItemUpdate('mockRendererId1', 'drei.js', { - type: 'multi', - fixtureNames: ['a', 'b', 'c'], - }); - - await waitFor(() => - expect(getRendererCoreMethods().getFixtures()).toEqual({ - ...fixtures, - 'drei.js': { - type: 'multi', - fixtureNames: ['a', 'b', 'c'], - }, - }) - ); -}); diff --git a/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/fixtureListItemUpdate.ts b/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/fixtureListItemUpdate.ts deleted file mode 100644 index 273ead95aa..0000000000 --- a/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/fixtureListItemUpdate.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { FixtureListItemUpdateResponse } from 'react-cosmos-core'; -import { RendererCoreContext } from '../shared/index.js'; - -export function receiveFixtureListItemUpdateResponse( - context: RendererCoreContext, - { payload }: FixtureListItemUpdateResponse -) { - const { rendererId, fixturePath, fixtureItem } = payload; - const { primaryRendererId } = context.getState(); - - // Discard updates from secondary renderers - if (rendererId === primaryRendererId) { - context.setState(prevState => ({ - ...prevState, - fixtures: { - ...prevState.fixtures, - [fixturePath]: fixtureItem, - }, - })); - } -} diff --git a/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/index.ts b/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/index.ts index e5ed0dde0e..28cbb1918e 100644 --- a/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/index.ts +++ b/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/index.ts @@ -1,6 +1,5 @@ import { MessageType, RendererResponse } from 'react-cosmos-core'; import { RendererCoreContext } from '../shared/index.js'; -import { receiveFixtureListItemUpdateResponse } from './fixtureListItemUpdate.js'; import { receiveFixtureListUpdateResponse } from './fixtureListUpdate.js'; import { receiveFixtureStateChangeResponse } from './fixtureStateChange.js'; import { receivePlaygroundCommandResponse } from './playgroundCommand.js'; @@ -18,8 +17,6 @@ export function receiveResponse( return receiveRendererReadyResponse(context, rendererResponse); case 'fixtureListUpdate': return receiveFixtureListUpdateResponse(context, rendererResponse); - case 'fixtureListItemUpdate': - return receiveFixtureListItemUpdateResponse(context, rendererResponse); case 'fixtureStateChange': return receiveFixtureStateChangeResponse(context, rendererResponse); case 'playgroundCommand': diff --git a/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/rendererReady.ts b/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/rendererReady.ts index b1aecd520e..4a78fa7a1c 100644 --- a/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/rendererReady.ts +++ b/packages/react-cosmos-ui/src/plugins/RendererCore/receiveResponse/rendererReady.ts @@ -52,7 +52,9 @@ function selectInitialFixture( fixtureId: FixtureId ) { const router = getMethodsOf('router'); - router.selectFixture(fixtureId); + if (!router.getSelectedFixtureId()) { + router.selectFixture(fixtureId); + } } function selectFixtureFromUrlParams( diff --git a/packages/react-cosmos-ui/src/plugins/RendererCore/testHelpers/index.ts b/packages/react-cosmos-ui/src/plugins/RendererCore/testHelpers/index.ts index 7124c98628..acee8bdc79 100644 --- a/packages/react-cosmos-ui/src/plugins/RendererCore/testHelpers/index.ts +++ b/packages/react-cosmos-ui/src/plugins/RendererCore/testHelpers/index.ts @@ -1,8 +1,6 @@ import { FixtureId, FixtureList, - FixtureListItem, - FixtureListItemUpdateResponse, FixtureListUpdateResponse, FixtureState, FixtureStateChangeResponse, @@ -37,21 +35,6 @@ export function createFixtureListUpdateResponse( }; } -export function createFixtureListItemUpdateResponse( - rendererId: RendererId, - fixturePath: string, - fixtureItem: FixtureListItem -): FixtureListItemUpdateResponse { - return { - type: 'fixtureListItemUpdate', - payload: { - rendererId, - fixturePath, - fixtureItem, - }, - }; -} - export function createFixtureStateChangeResponse( rendererId: RendererId, fixtureId: FixtureId, @@ -85,16 +68,6 @@ export function mockFixtureListUpdate( ); } -export function mockFixtureListItemUpdate( - rendererId: RendererId, - fixturePath: string, - fixtureItem: FixtureListItem -) { - return getRendererCoreMethods().receiveResponse( - createFixtureListItemUpdateResponse(rendererId, fixturePath, fixtureItem) - ); -} - export function mockFixtureStateChange( rendererId: RendererId, fixtureId: FixtureId,