little-state-machine
Advanced tools
Comparing version 1.1.2 to 2.0.0-beta.1
@@ -8,6 +8,3 @@ import * as React from 'react'; | ||
}>; | ||
export declare const StateMachineProvider: React.ProviderExoticComponent<React.ProviderProps<{ | ||
store: any; | ||
updateStore: () => void; | ||
}>>; | ||
export declare function StateMachineProvider(props: any): JSX.Element; | ||
export declare function useStateMachine(callbacks?: { | ||
@@ -14,0 +11,0 @@ [key: string]: (Object: any, any: any) => Object; |
import * as React from 'react'; | ||
import { createContext, useContext } from 'react'; | ||
import { createContext, useState, useMemo, createElement, useContext } from 'react'; | ||
@@ -16,3 +16,13 @@ // @flow | ||
}); | ||
const StateMachineProvider = StateMachineContext.Provider; | ||
function StateMachineProvider(props) { | ||
const [globalState, updateStore] = useState(props.stateMachineStore); | ||
const value = useMemo(() => { | ||
return { | ||
globalState, | ||
updateStore, | ||
}; | ||
}, [globalState]); | ||
// @ts-ignore | ||
return createElement(StateMachineProvider.Provider, Object.assign({ value: value }, props)); | ||
} | ||
const actionTemplate = ({ options, callback, key, updateStore, globalState }) => (payload) => { | ||
@@ -19,0 +29,0 @@ // @ts-ignore |
@@ -19,3 +19,13 @@ 'use strict'; | ||
}); | ||
const StateMachineProvider = StateMachineContext.Provider; | ||
function StateMachineProvider(props) { | ||
const [globalState, updateStore] = React.useState(props.stateMachineStore); | ||
const value = React.useMemo(() => { | ||
return { | ||
globalState, | ||
updateStore, | ||
}; | ||
}, [globalState]); | ||
// @ts-ignore | ||
return React.createElement(StateMachineProvider.Provider, Object.assign({ value: value }, props)); | ||
} | ||
const actionTemplate = ({ options, callback, key, updateStore, globalState }) => (payload) => { | ||
@@ -22,0 +32,0 @@ // @ts-ignore |
{ | ||
"name": "little-state-machine", | ||
"version": "1.1.2", | ||
"version": "2.0.0-beta.1", | ||
"main": "dist/index.js", | ||
@@ -5,0 +5,0 @@ "module": "dist/index.es.js", |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
161851
54
212
2