UNPKG

app-base-react

Version:
1 lines 2.92 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useStorageState=exports.useWindowState=exports.useModal=exports.useShowOnce=exports.useSet=exports.useStore2=exports.useStore=exports.useTools=exports.Store2Ctx=exports.StoreCtx=exports.Ctx=void 0;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r,o=arguments[t];for(r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},_slicedToArray=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e)){var r=t,o=[],n=!0,t=!1,u=void 0;try{for(var s,a=e[Symbol.iterator]();!(n=(s=a.next()).done)&&(o.push(s.value),!r||o.length!==r);n=!0);}catch(e){t=!0,u=e}finally{try{!n&&a.return&&a.return()}finally{if(t)throw u}}return o}throw new TypeError("Invalid attempt to destructure non-iterable instance")},_react=(exports.useInterval=useInterval,exports.usePrevious=usePrevious,require("react")),Ctx=exports.Ctx=(0,_react.createContext)(function(){}),StoreCtx=exports.StoreCtx=(0,_react.createContext)({}),Store2Ctx=exports.Store2Ctx=(0,_react.createContext)({}),useTools=exports.useTools=function(){return(0,_react.useContext)(Ctx)},useStore=exports.useStore=function(){return(0,_react.useContext)(StoreCtx)},useStore2=exports.useStore2=function(){return(0,_react.useContext)(Store2Ctx)},useSet=exports.useSet=function(e){e=(0,_react.useReducer)(function(e,t){var r=t;return"function"==typeof t&&(r=r(e)),t.action&&t.payload&&"function"==typeof(r=t.payload)&&(r=r(e)),_extends({},e,r)},e),e=_slicedToArray(e,2);return[e[0],e[1]]};function useInterval(e,t,r){var o=(0,_react.useRef)(),n=((0,_react.useEffect)(function(){o.current=e},[e]),(0,_react.useRef)());return(0,_react.useEffect)(function(){if(r)return e(),null!==t?(n.current=setInterval(e,t),function(){return clearInterval(n.current)}):void 0;function e(){o&&o.current&&o.current()}},[t,r]),function(){return clearInterval(n.current)}}function usePrevious(e){var t=(0,_react.useRef)();return(0,_react.useEffect)(function(){t.current=e},[e]),t.current}var useShowOnce=exports.useShowOnce=function(e){var t=(0,_react.useState)(!1),t=_slicedToArray(t,2),r=t[0],t=t[1],o=void 0;try{o=localStorage.getItem(e)}catch(e){}return o||(t(!0),localStorage.setItem(e,JSON.stringify(!0))),r},useModal=exports.useModal=function(){var e=(0,_react.useState)(!1),e=_slicedToArray(e,2),t=e[0],r=e[1];return[t,function(){return r(!t)}]},useWindowState=exports.useWindowState=function(e){e=(0,_react.useState)(e),e=_slicedToArray(e,2);return[e[0],e[1]]},useStorageState=exports.useStorageState=function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"SAVES",e=(0,_react.useState)(function(){var e=localStorage.getItem(r);if(e)try{return JSON.parse(e)}catch(e){}return t}()),e=_slicedToArray(e,2),o=e[0],n=e[1];return[o,function(e){n(e),localStorage.setItem(r,JSON.stringify(e))}]};