18 lines
440 B
Lua
18 lines
440 B
Lua
--[[
|
|
A middleware that allows for functions to be dispatched.
|
|
Functions will receive a single argument, the store itself.
|
|
This middleware consumes the function; middleware further down the chain
|
|
will not receive it.
|
|
]]
|
|
local function thunkMiddleware(nextDispatch, store)
|
|
return function(action)
|
|
if typeof(action) == "function" then
|
|
return action(store)
|
|
else
|
|
return nextDispatch(action)
|
|
end
|
|
end
|
|
end
|
|
|
|
return thunkMiddleware
|