UNPKG

react-native-twopane-navigation

Version:

React Native package for dual screen devices navigation support (Surface Duo)

2 lines 4.07 kB
Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _appStore=require("../../appStore");var _interfaces=require("../../utilities/interfaces");var _key=require("../../shared/screenStore/keyStore/key.actions");var _header=require("../../shared/screenStore/headerStore/header.actions");var _paneElement=require("../../shared/screenStore/paneElementStore/paneElement.action");var AddPaneElement=function AddPaneElement(key,element,header){var isMerge=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;var extensionOptions=arguments.length>4?arguments[4]:undefined;_appStore.store.dispatch((0,_key.pushKey)(_interfaces.paneType.ONE,key,isMerge,extensionOptions));_appStore.store.dispatch((0,_paneElement.pushElement)(_interfaces.paneType.ONE+"_"+key,element));if(header){_appStore.store.dispatch((0,_header.pushHeader)(_interfaces.paneType.ONE+"_"+key,header));}};var Add=function Add(key,element,header){var isMerge=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;var extensionOptions=arguments.length>4?arguments[4]:undefined;var keys=_appStore.store.getState().KeyReducers;var index=keys.keys.findIndex(function(val){return val.key===_interfaces.paneType.ONE+"_"+key;});if(index>-1){_appStore.store.dispatch((0,_header.removeHeaderByKey)(keys.keys[index].key));_appStore.store.dispatch((0,_paneElement.removePaneElementByKey)(keys.keys[index].key));_appStore.store.dispatch((0,_paneElement.pushElement)(_interfaces.paneType.ONE+"_"+key,element));if(header){_appStore.store.dispatch((0,_header.pushHeader)(_interfaces.paneType.ONE+"_"+key,header));}_appStore.store.dispatch((0,_key.moveToFront)(_interfaces.paneType.ONE,_interfaces.paneType.ONE+"_"+key));}else{AddPaneElement(key,element,header,isMerge,extensionOptions);}};var AddOrMoveToFront=function AddOrMoveToFront(key,element,header){var isMerge=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;var keys=_appStore.store.getState().KeyReducers;var onePaneState=keys.keys.filter(function(x){return x.screen===_interfaces.paneType.ONE;});if(!onePaneState.some(function(val){return val.key===_interfaces.paneType.ONE+"_"+key;})){AddPaneElement(key,element,header,isMerge);}else{_appStore.store.dispatch((0,_key.moveToFront)(_interfaces.paneType.ONE,_interfaces.paneType.ONE+"_"+key));}};var mergeToOppositePane=function mergeToOppositePane(){var keys=_appStore.store.getState().KeyReducers;keys.keys.map(function(val){if(val.screen===_interfaces.paneType.ONE&&val.isMerge){_appStore.store.dispatch((0,_key.changeScreen)(_interfaces.paneType.TWO,val.key));}});};var BackToHome=function BackToHome(){var keys=_appStore.store.getState().KeyReducers;var onePaneState=keys.keys.filter(function(x){return x.screen===_interfaces.paneType.ONE;});for(var i=1;i<onePaneState.length;i++){_appStore.store.dispatch((0,_header.removeHeaderByKey)(onePaneState[i].key));_appStore.store.dispatch((0,_paneElement.removePaneElementByKey)(onePaneState[i].key));}_appStore.store.dispatch((0,_key.popToFront)(_interfaces.paneType.ONE));};var GoBack=function GoBack(){var keys=_appStore.store.getState().KeyReducers;var onePaneState=keys.keys.filter(function(x){return x.screen===_interfaces.paneType.ONE;});_appStore.store.dispatch((0,_header.removeHeaderByKey)(onePaneState.peek().key));_appStore.store.dispatch((0,_paneElement.removePaneElementByKey)(onePaneState.peek().key));_appStore.store.dispatch((0,_key.popScreen)(onePaneState.peek().key));};var ReplacePane=function ReplacePane(key,element){_appStore.store.dispatch((0,_paneElement.replacePaneElement)(_interfaces.paneType.ONE+"_"+key,element));};var ReplaceHeader=function ReplaceHeader(key,header){_appStore.store.dispatch((0,_header.replaceHeader)(_interfaces.paneType.ONE+"_"+key,header));};var _onePaneFunctions={Add:Add,AddOrMoveToFront:AddOrMoveToFront,mergeToOppositePane:mergeToOppositePane,BackToHome:BackToHome,GoBack:GoBack,ReplacePane:ReplacePane,ReplaceHeader:ReplaceHeader};var onePane=_onePaneFunctions;var _default=onePane;exports.default=_default; //# sourceMappingURL=onePane.methods.js.map