#38: Enhance new repertory release available notification - partial

This commit is contained in:
2020-02-21 12:33:01 -06:00
parent 0eb40e5a65
commit a70359d36b
2 changed files with 72 additions and 5 deletions

View File

@@ -1,6 +1,7 @@
import React from 'react';
import * as Constants from './constants';
import Modal from './components/UI/Modal/Modal';
import axios from 'axios';
const ipcRenderer = (!process.versions.hasOwnProperty('electron') && window && window.require) ?
window.require('electron').ipcRenderer :
@@ -16,6 +17,47 @@ export const extractFileNameFromURL = url => {
return parts[parts.length - 1];
};
export const formatLinesForDisplay = lines => {
let msg = '';
for (let i = 1; i < lines.length; i++) {
if (i > 1) {
msg += '\n';
}
msg += (lines[i].replace(/(\\#)/gm, '#') + '\n');
}
return msg;
};
export const getChangesForRepertoryVersion = version => {
return new Promise((resolve, reject) => {
const url = `https://bitbucket.org/blockstorage/repertory/raw/${version}/CHANGELOG.md`;
axios
.get(url, {
responseType: 'text',
})
.then(response => {
try {
let found = false;
let ended = false;
let lines = response.data
.replace(/(\r\n)/gm, '\n')
.split('\n')
.filter(l => {
return !ended && (l.length > 0) && (found
? !(ended = l.startsWith('## '))
: (found = l.startsWith(`## ${version}`)));
});
resolve(lines);
} catch (e) {
reject(e);
}
})
.catch(error => {
reject(error);
});
});
};
export const getIPCRenderer = () => {
return ipcRenderer;
};
@@ -37,15 +79,17 @@ export const getNewReleases = (existingReleases, newReleases) => {
Display: version,
Release: Constants.RELEASE_TYPES.indexOf(release),
Version: newReleases[release].indexOf(version),
VersionString: version,
});
});
});
}
ret.push({
Display: '1.1.1',
Display: '1.2.2-release',
Release: 1,
Version: 2,
VersionString: '1.2.2-release',
});
return ret;