react-cosmos-renderer
Advanced tools
Comparing version 6.1.2-canary.a5d06e7.0 to 6.1.2-canary.b179ef9.0
@@ -0,4 +1,4 @@ | ||
export * from './fixture/ClassStateMock.js'; | ||
export * from './fixture/FixtureCapture/FixtureCapture.js'; | ||
export * from './fixture/FixtureContext.js'; | ||
export * from './fixture/Viewport.js'; | ||
export * from './fixture/useFixtureInput/useFixtureInput.js'; | ||
@@ -9,2 +9,3 @@ export * from './fixture/useFixtureInput/useValue.js'; | ||
export * from './fixture/useFixtureState.js'; | ||
export * from './fixture/Viewport.js'; | ||
export * from './fixtureLoaders/ClientFixtureLoader.js'; | ||
@@ -11,0 +12,0 @@ export * from './rendererConnect/RendererContext.js'; |
@@ -0,4 +1,4 @@ | ||
export * from './fixture/ClassStateMock.js'; | ||
export * from './fixture/FixtureCapture/FixtureCapture.js'; | ||
export * from './fixture/FixtureContext.js'; | ||
export * from './fixture/Viewport.js'; | ||
export * from './fixture/useFixtureInput/useFixtureInput.js'; | ||
@@ -9,2 +9,3 @@ export * from './fixture/useFixtureInput/useValue.js'; | ||
export * from './fixture/useFixtureState.js'; | ||
export * from './fixture/Viewport.js'; | ||
export * from './fixtureLoaders/ClientFixtureLoader.js'; | ||
@@ -11,0 +12,0 @@ export * from './rendererConnect/RendererContext.js'; |
@@ -5,6 +5,7 @@ import React from 'react'; | ||
fixture: ReactFixture; | ||
fixtureOptions: {}; | ||
userDecoratorModules: ReactDecoratorModule[]; | ||
globalDecorators?: ReactDecorator[]; | ||
}; | ||
export declare function DecoratedFixture({ fixture, userDecoratorModules, globalDecorators, }: Props): React.ReactElement<any, string | React.JSXElementConstructor<any>>; | ||
export declare function DecoratedFixture({ fixture, fixtureOptions, userDecoratorModules, globalDecorators, }: Props): React.ReactElement<any, string | React.JSXElementConstructor<any>>; | ||
export {}; |
@@ -5,3 +5,3 @@ import React, { useMemo } from 'react'; | ||
import { decorateFixture } from './decorateFixture.js'; | ||
export function DecoratedFixture({ fixture, userDecoratorModules, globalDecorators = [], }) { | ||
export function DecoratedFixture({ fixture, fixtureOptions, userDecoratorModules, globalDecorators = [], }) { | ||
return useMemo(() => { | ||
@@ -12,4 +12,4 @@ const decorators = [ | ||
]; | ||
return decorateFixture(React.createElement(FixtureCapture, { decoratorId: "root" }, createFixtureNode(fixture)), decorators); | ||
}, [fixture, globalDecorators, userDecoratorModules]); | ||
return decorateFixture(React.createElement(FixtureCapture, { decoratorId: "root" }, createFixtureNode(fixture)), fixtureOptions, decorators); | ||
}, [fixture, fixtureOptions, globalDecorators, userDecoratorModules]); | ||
} |
import React from 'react'; | ||
import { ReactDecorator } from 'react-cosmos-core'; | ||
export declare function decorateFixture(fixtureNode: React.ReactNode, decorators: ReactDecorator[]): React.ReactElement; | ||
export declare function decorateFixture(fixtureNode: React.ReactNode, fixtureOptions: {}, decorators: ReactDecorator[]): React.ReactElement; |
import React from 'react'; | ||
export function decorateFixture(fixtureNode, decorators) { | ||
return (React.createElement(React.Fragment, null, [...decorators].reverse().reduce((prevElement, Decorator) => (React.createElement(Decorator, null, prevElement)), fixtureNode))); | ||
export function decorateFixture(fixtureNode, fixtureOptions, decorators) { | ||
return (React.createElement(React.Fragment, null, [...decorators].reverse().reduce((prevElement, Decorator) => (React.createElement(Decorator, { options: fixtureOptions }, prevElement)), fixtureNode))); | ||
} |
import React from 'react'; | ||
import { getFixtureFromExport, getFixtureItemFromExport, stringifyFixtureId, } from 'react-cosmos-core'; | ||
import { getFixtureFromExport, getFixtureItemFromExport, pickSerializableValues, stringifyFixtureId, } from 'react-cosmos-core'; | ||
import { DecoratedFixture } from './DecoratedFixture.js'; | ||
@@ -9,7 +9,9 @@ import { FixtureProvider } from './FixtureProvider.js'; | ||
const fixture = getFixtureFromExport(fixtureModule.default, fixtureId.name); | ||
const { options = {} } = fixtureModule; | ||
const serializableOptions = React.useMemo(() => pickSerializableValues(options), [options]); | ||
if (typeof fixture === 'undefined') { | ||
return renderMessage(`Invalid fixture name: ${fixtureId.name}`); | ||
} | ||
return (React.createElement(FixtureProvider, { key: fixtureKey, fixtureId: fixtureId, initialFixtureState: initialFixtureState, fixtureItem: fixtureItem, lazy: lazy }, | ||
React.createElement(DecoratedFixture, { fixture: fixture, userDecoratorModules: decoratorModules, globalDecorators: globalDecorators }))); | ||
return (React.createElement(FixtureProvider, { key: fixtureKey, fixtureId: fixtureId, initialFixtureState: initialFixtureState, fixtureItem: fixtureItem, fixtureOptions: serializableOptions, lazy: lazy }, | ||
React.createElement(DecoratedFixture, { fixture: fixture, fixtureOptions: options, userDecoratorModules: decoratorModules, globalDecorators: globalDecorators }))); | ||
} |
@@ -8,2 +8,3 @@ import React from 'react'; | ||
fixtureItem: FixtureListItem; | ||
fixtureOptions: {}; | ||
lazy: boolean; | ||
@@ -10,0 +11,0 @@ }; |
@@ -28,5 +28,6 @@ 'use client'; | ||
fixture: props.fixtureItem, | ||
fixtureOptions: props.fixtureOptions, | ||
}, | ||
}); | ||
}, [props.fixtureItem, rendererConnect, rendererId]); | ||
}, [props.fixtureItem, props.fixtureOptions, rendererConnect, rendererId]); | ||
React.useEffect(() => { | ||
@@ -33,0 +34,0 @@ if (!isEqual(state.fixtureState, state.syncedFixtureState)) { |
{ | ||
"name": "react-cosmos-renderer", | ||
"version": "6.1.2-canary.a5d06e7.0+a5d06e7", | ||
"version": "6.1.2-canary.b179ef9.0+b179ef9", | ||
"description": "React Cosmos Renderer", | ||
@@ -15,6 +15,6 @@ "repository": "https://github.com/react-cosmos/react-cosmos/tree/main/packages/react-cosmos-renderer", | ||
"lodash-es": "4.17.21", | ||
"react-cosmos-core": "6.1.2-canary.a5d06e7.0+a5d06e7", | ||
"react-cosmos-core": "6.1.2-canary.b179ef9.0+b179ef9", | ||
"react-is": "18.3.1" | ||
}, | ||
"gitHead": "a5d06e7fd34575407d0477ccfae695ecca168836" | ||
"gitHead": "b179ef90b6185e684d08ffdc188035e1baa24116" | ||
} |
Manifest confusion
Supply chain riskThis package has inconsistent metadata. This could be malicious or caused by an error when publishing the package.
Found 1 instance in 1 package
Manifest confusion
Supply chain riskThis package has inconsistent metadata. This could be malicious or caused by an error when publishing the package.
Found 1 instance in 1 package
76682
112
1637