From 5e649cb989899f8a77e5dbda022fa1cdb9b14067 Mon Sep 17 00:00:00 2001 From: tophf Date: Sat, 25 Dec 2021 13:03:19 +0300 Subject: [PATCH] implement proper check for same code --- manage/import-export.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/manage/import-export.js b/manage/import-export.js index 16793854..0b9a919b 100644 --- a/manage/import-export.js +++ b/manage/import-export.js @@ -151,8 +151,8 @@ async function importFromString(jsonString) { item.id = byName.id; oldStyle = byName; } - const metaEqual = oldStyle && deepEqual(oldStyle, item, ['sections', '_rev']); - const codeEqual = oldStyle && styleSectionsEqual(oldStyle, item); + const metaEqual = oldStyle && deepEqual(oldStyle, item, ['sections', 'sourceCode', '_rev']); + const codeEqual = oldStyle && sameCode(oldStyle, item); if (metaEqual && codeEqual) { stats.unchanged.names.push(oldStyle.name); stats.unchanged.ids.push(oldStyle.id); @@ -179,6 +179,14 @@ async function importFromString(jsonString) { } } + function sameCode(oldStyle, newStyle) { + const d1 = oldStyle.usercssData; + const d2 = newStyle.usercssData; + return !d1 + !d2 + ? styleSectionsEqual(oldStyle, newStyle) + : oldStyle.sourceCode === newStyle.sourceCode && deepEqual(d1.vars, d2.vars); + } + function sameStyle(oldStyle, newStyle) { return oldStyle.name.trim() === newStyle.name.trim() || ['updateUrl', 'originalMd5', 'originalDigest']