chore: fixed linting, moved helper function
parent
6e6b6cfba7
commit
3a71083a05
|
@ -0,0 +1,9 @@
|
||||||
|
export function b64toBlob(dataURI, type) {
|
||||||
|
const byteString = atob(dataURI);
|
||||||
|
const ab = new ArrayBuffer(byteString.length);
|
||||||
|
const ia = new Uint8Array(ab);
|
||||||
|
for (let i = 0; i < byteString.length; i++) {
|
||||||
|
ia[i] = byteString.charCodeAt(i);
|
||||||
|
}
|
||||||
|
return new Blob([ab], { type });
|
||||||
|
}
|
|
@ -4,6 +4,7 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { saveAs } from 'file-saver';
|
import { saveAs } from 'file-saver';
|
||||||
|
import { b64toBlob } from '../../helpers/blob';
|
||||||
|
|
||||||
export function getAllConfigDiff(toggleNotification, formatMessage, get) {
|
export function getAllConfigDiff(toggleNotification, formatMessage, get) {
|
||||||
return async function(dispatch) {
|
return async function(dispatch) {
|
||||||
|
@ -58,16 +59,7 @@ export function downloadZip(toggleNotification, formatMessage, post, get) {
|
||||||
const { message, base64Data, name } = await get('/config-sync/zip');
|
const { message, base64Data, name } = await get('/config-sync/zip');
|
||||||
toggleNotification({ type: 'success', message });
|
toggleNotification({ type: 'success', message });
|
||||||
if (base64Data) {
|
if (base64Data) {
|
||||||
function b64toBlob(dataURI) {
|
saveAs(b64toBlob(base64Data, 'application/zip'), name, { type: 'application/zip' });
|
||||||
const byteString = atob(dataURI);
|
|
||||||
const ab = new ArrayBuffer(byteString.length);
|
|
||||||
const ia = new Uint8Array(ab);
|
|
||||||
for (let i = 0; i < byteString.length; i++) {
|
|
||||||
ia[i] = byteString.charCodeAt(i);
|
|
||||||
}
|
|
||||||
return new Blob([ab], { type: 'image/jpeg' });
|
|
||||||
}
|
|
||||||
saveAs(b64toBlob(base64Data), name, { type: 'application/zip' })
|
|
||||||
}
|
}
|
||||||
dispatch(setLoadingState(false));
|
dispatch(setLoadingState(false));
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
|
|
@ -3,9 +3,9 @@
|
||||||
const { isEmpty } = require('lodash');
|
const { isEmpty } = require('lodash');
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
const util = require('util');
|
const util = require('util');
|
||||||
|
const childProcess = require("child_process");
|
||||||
const difference = require('../utils/getObjectDiff');
|
const difference = require('../utils/getObjectDiff');
|
||||||
const { logMessage } = require('../utils');
|
const { logMessage } = require('../utils');
|
||||||
const child_process = require("child_process");
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Main services for config import/export.
|
* Main services for config import/export.
|
||||||
|
@ -73,11 +73,11 @@ module.exports = () => ({
|
||||||
* @returns {void}
|
* @returns {void}
|
||||||
*/
|
*/
|
||||||
zipConfigFiles: async () => {
|
zipConfigFiles: async () => {
|
||||||
const fileName = `config-${new Date().toJSON()}.zip`
|
const fileName = `config-${new Date().toJSON()}.zip`;
|
||||||
child_process.execSync(`zip -r ${fileName} *`, {
|
childProcess.execSync(`zip -r ${fileName} *`, {
|
||||||
cwd: strapi.config.get('plugin.config-sync.syncDir')
|
cwd: strapi.config.get('plugin.config-sync.syncDir'),
|
||||||
});
|
});
|
||||||
const fullFilePath = `${strapi.config.get('plugin.config-sync.syncDir')}${fileName}`
|
const fullFilePath = `${strapi.config.get('plugin.config-sync.syncDir')}${fileName}`;
|
||||||
const base64Data = fs.readFileSync(fullFilePath, { encoding: 'base64' });
|
const base64Data = fs.readFileSync(fullFilePath, { encoding: 'base64' });
|
||||||
fs.unlinkSync(fullFilePath);
|
fs.unlinkSync(fullFilePath);
|
||||||
return { base64Data, name: fileName, message: 'Success' };
|
return { base64Data, name: fileName, message: 'Success' };
|
||||||
|
|
Loading…
Reference in New Issue