29 lines
856 B
JavaScript
29 lines
856 B
JavaScript
import React from 'react';
|
|
import * as Constants from './constants';
|
|
import Modal from './components/UI/Modal/Modal';
|
|
|
|
const ipcRenderer = (!process.versions.hasOwnProperty('electron') && window && window.require) ?
|
|
window.require('electron').ipcRenderer :
|
|
null;
|
|
|
|
export const createModalConditionally = (condition, jsx, critical) => {
|
|
const modalProps = {critical: critical};
|
|
return condition ? (<Modal {...modalProps}>{jsx}</Modal>) : null;
|
|
};
|
|
|
|
export const extractFileNameFromURL = url => {
|
|
const parts = url.split('/');
|
|
return parts[parts.length - 1];
|
|
};
|
|
|
|
export const getIPCRenderer = () => {
|
|
return ipcRenderer;
|
|
};
|
|
|
|
export const getSelectedVersionFromState = state => {
|
|
return (state.relver.Version === -1) ?
|
|
'unavailable' :
|
|
state.relver.VersionLookup[Constants.RELEASE_TYPES[state.relver.Release]][state.relver.Version];
|
|
};
|
|
|