From 3a71083a0508e957c725943d76ed4139b1aeab57 Mon Sep 17 00:00:00 2001 From: Alexander Engel Date: Mon, 14 Oct 2024 12:27:22 -0700 Subject: [PATCH] chore: fixed linting, moved helper function --- admin/src/helpers/blob.js | 9 +++++++++ admin/src/state/actions/Config.js | 14 +++----------- server/services/main.js | 10 +++++----- 3 files changed, 17 insertions(+), 16 deletions(-) create mode 100644 admin/src/helpers/blob.js diff --git a/admin/src/helpers/blob.js b/admin/src/helpers/blob.js new file mode 100644 index 0000000..f555c5c --- /dev/null +++ b/admin/src/helpers/blob.js @@ -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 }); +} diff --git a/admin/src/state/actions/Config.js b/admin/src/state/actions/Config.js index 4be0ac6..1259709 100644 --- a/admin/src/state/actions/Config.js +++ b/admin/src/state/actions/Config.js @@ -4,6 +4,7 @@ * */ import { saveAs } from 'file-saver'; +import { b64toBlob } from '../../helpers/blob'; export function getAllConfigDiff(toggleNotification, formatMessage, get) { return async function(dispatch) { @@ -52,22 +53,13 @@ export function exportAllConfig(partialDiff, toggleNotification, formatMessage, } export function downloadZip(toggleNotification, formatMessage, post, get) { - return async function (dispatch) { + return async function(dispatch) { dispatch(setLoadingState(true)); try { const { message, base64Data, name } = await get('/config-sync/zip'); toggleNotification({ type: 'success', message }); if (base64Data) { - function b64toBlob(dataURI) { - 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' }) + saveAs(b64toBlob(base64Data, 'application/zip'), name, { type: 'application/zip' }); } dispatch(setLoadingState(false)); } catch (err) { diff --git a/server/services/main.js b/server/services/main.js index 4941940..cd11ff6 100644 --- a/server/services/main.js +++ b/server/services/main.js @@ -3,9 +3,9 @@ const { isEmpty } = require('lodash'); const fs = require('fs'); const util = require('util'); +const childProcess = require("child_process"); const difference = require('../utils/getObjectDiff'); const { logMessage } = require('../utils'); -const child_process = require("child_process"); /** * Main services for config import/export. @@ -73,11 +73,11 @@ module.exports = () => ({ * @returns {void} */ zipConfigFiles: async () => { - const fileName = `config-${new Date().toJSON()}.zip` - child_process.execSync(`zip -r ${fileName} *`, { - cwd: strapi.config.get('plugin.config-sync.syncDir') + const fileName = `config-${new Date().toJSON()}.zip`; + childProcess.execSync(`zip -r ${fileName} *`, { + 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' }); fs.unlinkSync(fullFilePath); return { base64Data, name: fileName, message: 'Success' };