UNPKG

@devloops/react-native-variant

Version:
2 lines 3.93 kB
import _extends from"@babel/runtime/helpers/extends";import _defineProperty from"@babel/runtime/helpers/defineProperty";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";var _jsxFileName="/Users/devloops/Desktop/reactNative/reactNativeMUI/src/Theming/settings.tsx";function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly)symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable;});keys.push.apply(keys,symbols);}return keys;}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};if(i%2){ownKeys(Object(source),true).forEach(function(key){_defineProperty(target,key,source[key]);});}else if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source));}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key));});}}return target;}import React from'react';import Alert from'../Components/PopUp/Alert';import Snackbar from'../Components/PopUp/Snackbar';var DefaultSettings={setAlert:undefined,setSnacbar:undefined};var SettingsContext=React.createContext(DefaultSettings);export var Provider=function Provider(_ref){var children=_ref.children;var _React$useState=React.useState({header:undefined,prompt:false,contentText:'',action:undefined,isOpen:false}),_React$useState2=_slicedToArray(_React$useState,2),alertData=_React$useState2[0],setAlertData=_React$useState2[1];var _React$useState3=React.useState({label:'Label',color:undefined,backgroundColor:undefined,elevation:4,action:undefined,isOpen:false}),_React$useState4=_slicedToArray(_React$useState3,2),snackbarData=_React$useState4[0],setSnackbarData=_React$useState4[1];var onToggleAlert=function onToggleAlert(status){return setAlertData(_objectSpread({},alertData,{isOpen:status}));};var onToggleSnackbar=function onToggleSnackbar(){var status=arguments.length>0&&arguments[0]!==undefined?arguments[0]:!snackbarData.isOpen;return setSnackbarData(_objectSpread({},snackbarData,{isOpen:status}));};var setSnacbar=function setSnacbar(newSnacbar){return setSnackbarData(_extends(snackbarData,newSnacbar));};var setAlert=function setAlert(newAlert){return setAlertData(_extends(alertData,newAlert));};var value=React.useMemo(function(){return{isOpenSnacbar:snackbarData.isOpen,setSnacbar:setSnacbar,onToggleAlert:onToggleAlert,onToggleSnackbar:onToggleSnackbar,setAlert:setAlert};},[setSnacbar||setAlert]);return React.createElement(SettingsContext.Provider,{value:value,__source:{fileName:_jsxFileName,lineNumber:83}},React.createElement(React.Fragment,null,children,alertData&&React.createElement(Alert,_extends({},alertData,{onDismiss:function onDismiss(){return onToggleAlert(false);},__source:{fileName:_jsxFileName,lineNumber:87}})),snackbarData&&React.createElement(Snackbar,_extends({},snackbarData,{onDismiss:function onDismiss(){return onToggleSnackbar(false);},__source:{fileName:_jsxFileName,lineNumber:90}}))));};export var useAlert=function useAlert(){var _React$useContext=React.useContext(SettingsContext),setAlert=_React$useContext.setAlert,onToggleAlert=_React$useContext.onToggleAlert;return{setAlert:setAlert,onDismiss:function onDismiss(){return onToggleAlert(false);},onOpen:function onOpen(){return onToggleAlert(true);}};};export var useSnackbar=function useSnackbar(){var _React$useContext2=React.useContext(SettingsContext),setSnacbar=_React$useContext2.setSnacbar,onToggleSnackbar=_React$useContext2.onToggleSnackbar,isOpenSnacbar=_React$useContext2.isOpenSnacbar;return{setSnacbar:setSnacbar,isOpen:isOpenSnacbar,onDismiss:function onDismiss(){return onToggleSnackbar(false);},onOpen:function onOpen(){return onToggleSnackbar(true);},onToggle:onToggleSnackbar};}; //# sourceMappingURL=settings.js.map