diff --git a/src/index.js b/src/index.js index 7e862b50..66539c44 100644 --- a/src/index.js +++ b/src/index.js @@ -63,10 +63,7 @@ function getClassOrderPolyfill(classes, { env }) { return classNamesWithOrder } -function sortClasses( - classStr, - { env, ignoreFirst = false, ignoreLast = false, tidyWhitespace = { start: true, end: true } } -) { +function sortClasses(classStr, { env, ignoreFirst = false, ignoreLast = false }) { if (typeof classStr !== 'string' || classStr === '') { return classStr } @@ -77,10 +74,6 @@ function sortClasses( return classStr } - if (classStr.includes('\n')) { - tidyWhitespace = false - } - let result = '' let parts = classStr.split(/(\s+)/) let classes = parts.filter((_, i) => i % 2 === 0) @@ -90,10 +83,6 @@ function sortClasses( classes.pop() } - if (tidyWhitespace) { - whitespace = whitespace.map(() => ' ') - } - let prefix = '' if (ignoreFirst) { prefix = `${classes.shift() ?? ''}${whitespace.shift() ?? ''}` @@ -104,15 +93,6 @@ function sortClasses( suffix = `${whitespace.pop() ?? ''}${classes.pop() ?? ''}` } - // Remove duplicates - classes = classes.filter((cls, index, arr) => { - if (arr.indexOf(cls) === index) { - return true - } - whitespace.splice(index - 1, 1) - return false - }) - let classNamesWithOrder = env.context.getClassOrder ? env.context.getClassOrder(classes) : getClassOrderPolyfill(classes, { env }) @@ -132,12 +112,6 @@ function sortClasses( result += `${classes[i]}${whitespace[i] ?? ''}` } - if (tidyWhitespace) { - result = result - .replace(/^\s+/, tidyWhitespace.start ? '' : ' ') - .replace(/\s+$/, tidyWhitespace.end ? '' : ' ') - } - return prefix + result + suffix } @@ -299,10 +273,6 @@ function sortTemplateLiteral(node, { env }) { env, ignoreFirst: i > 0 && !/^\s/.test(quasi.value.raw), ignoreLast: i < node.expressions.length && !/\s$/.test(quasi.value.raw), - tidyWhitespace: { - start: i === 0, - end: i >= node.expressions.length, - }, }) quasi.value.cooked = same @@ -311,10 +281,6 @@ function sortTemplateLiteral(node, { env }) { env, ignoreFirst: i > 0 && !/^\s/.test(quasi.value.cooked), ignoreLast: i < node.expressions.length && !/\s$/.test(quasi.value.cooked), - tidyWhitespace: { - start: i === 0, - end: i >= node.expressions.length, - }, }) if (quasi.value.raw !== originalRaw || quasi.value.cooked !== originalCooked) { @@ -433,10 +399,6 @@ function transformSvelte(ast, { env, changes }) { env, ignoreFirst: i > 0 && !/^\s/.test(value.raw), ignoreLast: i < attr.value.length - 1 && !/\s$/.test(value.raw), - tidyWhitespace: { - start: i === 0, - end: i >= attr.value.length - 1, - }, }) value.data = same ? value.raw @@ -444,10 +406,6 @@ function transformSvelte(ast, { env, changes }) { env, ignoreFirst: i > 0 && !/^\s/.test(value.data), ignoreLast: i < attr.value.length - 1 && !/\s$/.test(value.data), - tidyWhitespace: { - start: i === 0, - end: i >= attr.value.length - 1, - }, }) } else if (value.type === 'MustacheTag') { visit(value.expression, { diff --git a/tests/test.js b/tests/test.js index 618f3f15..9d7b1b64 100644 --- a/tests/test.js +++ b/tests/test.js @@ -59,7 +59,6 @@ let html = [ ['
', ''], t``, t``, - ['', ''], ] let css = [ @@ -96,15 +95,6 @@ let javascript = [ `;`, `;`, ], - [';', ';'], - [";", ";"], - [';', ';'], - [';', ';'], - [';', ';'], - [ - ';', - ';', - ], ] javascript = javascript.concat( javascript.map((test) => test.map((t) => t.replace(/class/g, 'className'))) @@ -138,8 +128,6 @@ let vue = [ ``, ``, ], - [``, ``], - [``, ``], ] let tests = { @@ -189,6 +177,7 @@ let tests = { ``, ``, ], + ['', '