UNPKG

@material-tailwind/react

Version:

@material-tailwind/react is an easy-to-use components library for ReactJS & Tailwind CSS inspired by Material Design.

1 lines 1.5 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{SelectContext:function(){return SelectContext},useSelect:function(){return useSelect},usePrevious:function(){return usePrevious},SelectContextProvider:function(){return SelectContextProvider}});var _react=_interopRequireDefault(require("react"));var _framerMotion=require("framer-motion");var _select=require("../../types/components/select");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var SelectContext=_react.default.createContext(null);SelectContext.displayName="MaterialTailwind.SelectContext";function useSelect(){var context=_react.default.useContext(SelectContext);if(context===null){throw new Error("useSelect() must be used within a Select. It happens when you use SelectOption component outside the Select component.")}return context}function usePrevious(value){var ref=_react.default.useRef();(0,_framerMotion.useIsomorphicLayoutEffect)(function(){ref.current=value},[value]);return ref.current}var SelectContextProvider=function(param){var value=param.value,children=param.children;return _react.default.createElement(SelectContext.Provider,{value:value},children)};SelectContextProvider.propTypes={value:_select.propTypesContextValue,children:_select.propTypesChildren};SelectContextProvider.displayName="MaterialTailwind.SelectContextProvider";