add gs
This commit is contained in:
+84
@@ -0,0 +1,84 @@
|
||||
local CoreGui = game:GetService("CoreGui")
|
||||
|
||||
local Modules = CoreGui.RobloxGui.Modules
|
||||
local Common = Modules.Common
|
||||
local Immutable = require(Common.Immutable)
|
||||
local LuaChat = Modules.LuaChat
|
||||
local ShareGameToChatActions = LuaChat.Actions.ShareGameToChatFromChat
|
||||
|
||||
local FailedToFetchGamesBySort = require(ShareGameToChatActions.FailedToFetchGamesBySortShareGameToChatFromChat)
|
||||
local FailedToShareGameToChat = require(ShareGameToChatActions.FailedToShareGameToChatFromChat)
|
||||
local FetchedGamesBySort = require(ShareGameToChatActions.FetchedGamesBySortShareGameToChatFromChat)
|
||||
local FetchingGamesBySort = require(ShareGameToChatActions.FetchingGamesBySortShareGameToChatFromChat)
|
||||
local ResetShareGameToChatAsync = require(ShareGameToChatActions.ResetShareGameToChatFromChatAsync)
|
||||
local ResetShareGame = require(ShareGameToChatActions.ResetShareGameToChatFromChat)
|
||||
local SharedGameToChat = require(ShareGameToChatActions.SharedGameToChatFromChat)
|
||||
local SharingGameToChat = require(ShareGameToChatActions.SharingGameToChatFromChat)
|
||||
|
||||
return function(state, action)
|
||||
state = state or {
|
||||
fetchingGamesBySort = {},
|
||||
fetchedGamesBySort = {},
|
||||
failedToFetchGamesBySort = {},
|
||||
}
|
||||
|
||||
if action.type == FetchingGamesBySort.name then
|
||||
local newFetchingGamesBySort = Immutable.Set(state.fetchingGamesBySort, action.gameSortName, true)
|
||||
local newFetchedGamesBySort = Immutable.Set(state.fetchedGamesBySort, action.gameSortName, false)
|
||||
local newFailedToFetchGamesBySort = Immutable.Set(state.failedToFetchGamesBySort, action.gameSortName, false)
|
||||
|
||||
return Immutable.JoinDictionaries(state, {
|
||||
fetchingGamesBySort = newFetchingGamesBySort;
|
||||
fetchedGamesBySort = newFetchedGamesBySort;
|
||||
failedToFetchGamesBySort = newFailedToFetchGamesBySort;
|
||||
})
|
||||
elseif action.type == FetchedGamesBySort.name then
|
||||
local newFetchingGamesBySort = Immutable.Set(state.fetchingGamesBySort, action.gameSortName, false)
|
||||
local newFetchedGamesBySort = Immutable.Set(state.fetchedGamesBySort, action.gameSortName, true)
|
||||
local newFailedToFetchGamesBySort = Immutable.Set(state.failedToFetchGamesBySort, action.gameSortName, false)
|
||||
|
||||
return Immutable.JoinDictionaries(state, {
|
||||
fetchingGamesBySort = newFetchingGamesBySort;
|
||||
fetchedGamesBySort = newFetchedGamesBySort;
|
||||
failedToFetchGamesBySort = newFailedToFetchGamesBySort;
|
||||
})
|
||||
elseif action.type == FailedToFetchGamesBySort.name then
|
||||
local newFetchingGamesBySort = Immutable.Set(state.fetchingGamesBySort, action.gameSortName, false)
|
||||
local newFetchedGamesBySort = Immutable.Set(state.fetchedGamesBySort, action.gameSortName, false)
|
||||
local newFailedToFetchGamesBySort = Immutable.Set(state.failedToFetchGamesBySort, action.gameSortName, true)
|
||||
|
||||
return Immutable.JoinDictionaries(state, {
|
||||
fetchingGamesBySort = newFetchingGamesBySort;
|
||||
fetchedGamesBySort = newFetchedGamesBySort;
|
||||
failedToFetchGamesBySort = newFailedToFetchGamesBySort;
|
||||
})
|
||||
elseif action.type == ResetShareGameToChatAsync.name then
|
||||
return {
|
||||
fetchingGamesBySort = {},
|
||||
fetchedGamesBySort = {},
|
||||
failedToFetchGamesBySort = {},
|
||||
}
|
||||
elseif action.type == SharingGameToChat.name then
|
||||
return Immutable.JoinDictionaries(state, {
|
||||
sharingGame = true,
|
||||
sharedGame = false,
|
||||
})
|
||||
elseif action.type == SharedGameToChat.name then
|
||||
return Immutable.JoinDictionaries(state, {
|
||||
sharingGame = false,
|
||||
sharedGame = true,
|
||||
})
|
||||
elseif action.type == FailedToShareGameToChat.name then
|
||||
return Immutable.JoinDictionaries(state, {
|
||||
sharedGame = false,
|
||||
sharingGame = false,
|
||||
})
|
||||
elseif action.type == ResetShareGame.name then
|
||||
return Immutable.JoinDictionaries(state, {
|
||||
sharedGame = false,
|
||||
sharingGame = false,
|
||||
})
|
||||
end
|
||||
|
||||
return state
|
||||
end
|
||||
Reference in New Issue
Block a user