Initial Skynet premium portal suppport

This commit is contained in:
2021-05-01 00:41:25 -05:00
parent c5ef4215e1
commit a4c3dbdb94
22 changed files with 631 additions and 66 deletions

View File

@@ -6,11 +6,15 @@ import { getIPCRenderer } from '../../utils.jsx';
const ipcRenderer = getIPCRenderer();
let yesNoResolvers = [];
export const confirmYesNo = (title) => {
export const confirmYesNo = (title, cb) => {
return (dispatch) => {
return new Promise((resolve) => {
dispatch(handleConfirmYesNo(true, title, resolve));
});
if (cb) {
dispatch(confirmYesNo(title)).then((confirmed) => cb(confirmed));
} else {
return new Promise((resolve) => {
dispatch(handleConfirmYesNo(true, title, resolve));
});
}
};
};
@@ -116,7 +120,7 @@ export const setRebootRequired = () => {
};
export const showWindow = () => {
return (_) => {
return () => {
if (ipcRenderer) {
ipcRenderer.send(Constants.IPC_Show_Window);
}

View File

@@ -57,13 +57,13 @@ export const downloadItem = (
case Constants.INSTALL_TYPES.Upgrade:
// const info =
// this.props.LocationsLookup[this.props.AppPlatform][this.props.VersionLookup[this.props.AppPlatform][0]];
const sha256 = null; // info.sha256;
const signature = null; // info.sig;
//const sha256 = null; // info.sha256;
//const signature = null; // info.sig;
dispatch(
installUpgrade(
result.Destination,
sha256,
signature,
null,
null,
!!result.SkipVerification
)
);

View File

@@ -0,0 +1,41 @@
let addEditHostResolvers = [];
export const addEditHost = (display, host_data, cb) => {
return (dispatch) => {
if (cb) {
dispatch(addEditHost(display, host_data)).then(({ changed, host_data }) =>
cb(changed, host_data)
);
} else {
return new Promise((resolve) => {
dispatch(handleDisplayAddEditHost(display, host_data, resolve));
});
}
};
};
const handleDisplayAddEditHost = (display, host_data, resolve) => {
return (dispatch) => {
if (display) {
addEditHostResolvers.push(resolve);
dispatch(displayAddEditHost(display, host_data));
} else {
dispatch(completeAddEditHost(false));
}
};
};
export const completeAddEditHost = (changed, host_data) => {
return (dispatch) => {
if (changed) {
addEditHostResolvers[0]({ changed, host_data });
}
addEditHostResolvers.splice(0, 1);
dispatch(displayAddEditHost(false));
};
};
export const DISPLAY_ADD_EDIT_HOST = 'host/displayAddEditHost';
export const displayAddEditHost = (display, host_data) => {
return { type: DISPLAY_ADD_EDIT_HOST, payload: { display, host_data } };
};

View File

@@ -31,7 +31,7 @@ export const clearUIUpgrade = () => {
};
const cleanupOldReleases = (versionList) => {
return (_) => {
return () => {
const ipcRenderer = getIPCRenderer();
if (ipcRenderer) {
ipcRenderer.sendSync(Constants.IPC_Cleanup_Releases + '_sync', {

View File

@@ -0,0 +1,20 @@
import { createReducer } from '@reduxjs/toolkit';
import * as Actions from '../actions/host_actions';
export const hostReducer = createReducer(
{
DisplayAddEditHost: false,
Edit: false,
HostData: {},
},
{
[Actions.DISPLAY_ADD_EDIT_HOST]: (state, action) => {
return {
...state,
DisplayAddEditHost: action.payload.display,
Edit: !!action.payload.host_data,
HostData: action.payload.host_data || {},
};
},
}
);

View File

@@ -8,12 +8,14 @@ import { createMountReducer } from '../reducers/mount_reducer';
import { pinnedManagerReducer } from '../reducers/pinned_manager_reducer';
import { releaseVersionReducer } from '../reducers/release_version_reducer';
import { skynetReducer } from '../reducers/skynet_reducer';
import { hostReducer } from '../reducers/host_reducer';
export default function createAppStore(platformInfo, version, state) {
const reducer = {
common: createCommonReducer(platformInfo, version),
download: downloadReducer,
error: errorReducer,
host: hostReducer,
install: installReducer,
mounts: createMountReducer(state),
relver: releaseVersionReducer,