UNPKG

@zohodesk/components

Version:

In this Package, we Provide Some Basic Components to Build Web App

49 lines (45 loc) 1.28 kB
import React, { useState, useEffect } from 'react'; import PropTypes from 'prop-types'; import LibraryContextInit from "./LibraryContextInit"; import { getLibraryConfig } from "./Config"; const LibraryContextProvider = _ref => { let { isReducedMotion, direction, coloredTagVariant, hasTagColorInheritedToText, children } = _ref; const [value, setValue] = useState({ isReducedMotion, direction, coloredTagVariant, hasTagColorInheritedToText }); function setGlobalContext(key, data) { if (value[key] != data) { setValue({ ...value, [key]: data }); } } return /*#__PURE__*/React.createElement(LibraryContextInit.Provider, { value: { ...value, setGlobalContext } }, children); }; LibraryContextProvider.propTypes = { children: PropTypes.node.isRequired, isReducedMotion: PropTypes.bool, coloredTagVariant: PropTypes.oneOf(['bold', 'subtle', 'minimal']), hasTagColorInheritedToText: PropTypes.bool, direction: PropTypes.string }; LibraryContextProvider.defaultProps = { isReducedMotion: getLibraryConfig('isReducedMotion'), direction: getLibraryConfig('direction'), coloredTagVariant: 'bold', hasTagColorInheritedToText: true }; export default LibraryContextProvider;