@shopify/polaris
Version:
Shopify’s admin product component library
40 lines (36 loc) • 1.09 kB
JavaScript
import { memo, useEffect } from 'react';
import { useFrame } from '../../utilities/frame/hooks.js';
// The script in the styleguide that generates the Props Explorer data expects
// that the interface defining the props is defined in this file, not imported
// from elsewhere. This silly workaround ensures that the Props Explorer table
// is generated correctly.
const ContextualSaveBar = /*#__PURE__*/memo(function ContextualSaveBar({
message,
saveAction,
discardAction,
alignContentFlush,
fullWidth,
contextControl,
secondaryMenu
}) {
const {
setContextualSaveBar,
removeContextualSaveBar
} = useFrame();
useEffect(() => {
setContextualSaveBar({
message,
saveAction,
discardAction,
alignContentFlush,
fullWidth,
contextControl,
secondaryMenu
});
}, [message, saveAction, discardAction, alignContentFlush, setContextualSaveBar, fullWidth, contextControl, secondaryMenu]);
useEffect(() => {
return removeContextualSaveBar;
}, [removeContextualSaveBar]);
return null;
});
export { ContextualSaveBar };