Skip to content

Commit 1493d2f

Browse files
authored
Revert #70 (#72)
1 parent e2fec96 commit 1493d2f

File tree

2 files changed

+2
-55
lines changed

2 files changed

+2
-55
lines changed

src/index.js

Lines changed: 1 addition & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,7 @@ function getClassOrderPolyfill(classes, { env }) {
6363
return classNamesWithOrder
6464
}
6565

66-
function sortClasses(
67-
classStr,
68-
{ env, ignoreFirst = false, ignoreLast = false, tidyWhitespace = { start: true, end: true } }
69-
) {
66+
function sortClasses(classStr, { env, ignoreFirst = false, ignoreLast = false }) {
7067
if (typeof classStr !== 'string' || classStr === '') {
7168
return classStr
7269
}
@@ -77,10 +74,6 @@ function sortClasses(
7774
return classStr
7875
}
7976

80-
if (classStr.includes('\n')) {
81-
tidyWhitespace = false
82-
}
83-
8477
let result = ''
8578
let parts = classStr.split(/(\s+)/)
8679
let classes = parts.filter((_, i) => i % 2 === 0)
@@ -90,10 +83,6 @@ function sortClasses(
9083
classes.pop()
9184
}
9285

93-
if (tidyWhitespace) {
94-
whitespace = whitespace.map(() => ' ')
95-
}
96-
9786
let prefix = ''
9887
if (ignoreFirst) {
9988
prefix = `${classes.shift() ?? ''}${whitespace.shift() ?? ''}`
@@ -104,15 +93,6 @@ function sortClasses(
10493
suffix = `${whitespace.pop() ?? ''}${classes.pop() ?? ''}`
10594
}
10695

107-
// Remove duplicates
108-
classes = classes.filter((cls, index, arr) => {
109-
if (arr.indexOf(cls) === index) {
110-
return true
111-
}
112-
whitespace.splice(index - 1, 1)
113-
return false
114-
})
115-
11696
let classNamesWithOrder = env.context.getClassOrder
11797
? env.context.getClassOrder(classes)
11898
: getClassOrderPolyfill(classes, { env })
@@ -132,12 +112,6 @@ function sortClasses(
132112
result += `${classes[i]}${whitespace[i] ?? ''}`
133113
}
134114

135-
if (tidyWhitespace) {
136-
result = result
137-
.replace(/^\s+/, tidyWhitespace.start ? '' : ' ')
138-
.replace(/\s+$/, tidyWhitespace.end ? '' : ' ')
139-
}
140-
141115
return prefix + result + suffix
142116
}
143117

@@ -299,10 +273,6 @@ function sortTemplateLiteral(node, { env }) {
299273
env,
300274
ignoreFirst: i > 0 && !/^\s/.test(quasi.value.raw),
301275
ignoreLast: i < node.expressions.length && !/\s$/.test(quasi.value.raw),
302-
tidyWhitespace: {
303-
start: i === 0,
304-
end: i >= node.expressions.length,
305-
},
306276
})
307277

308278
quasi.value.cooked = same
@@ -311,10 +281,6 @@ function sortTemplateLiteral(node, { env }) {
311281
env,
312282
ignoreFirst: i > 0 && !/^\s/.test(quasi.value.cooked),
313283
ignoreLast: i < node.expressions.length && !/\s$/.test(quasi.value.cooked),
314-
tidyWhitespace: {
315-
start: i === 0,
316-
end: i >= node.expressions.length,
317-
},
318284
})
319285

320286
if (quasi.value.raw !== originalRaw || quasi.value.cooked !== originalCooked) {
@@ -433,21 +399,13 @@ function transformSvelte(ast, { env, changes }) {
433399
env,
434400
ignoreFirst: i > 0 && !/^\s/.test(value.raw),
435401
ignoreLast: i < attr.value.length - 1 && !/\s$/.test(value.raw),
436-
tidyWhitespace: {
437-
start: i === 0,
438-
end: i >= attr.value.length - 1,
439-
},
440402
})
441403
value.data = same
442404
? value.raw
443405
: sortClasses(value.data, {
444406
env,
445407
ignoreFirst: i > 0 && !/^\s/.test(value.data),
446408
ignoreLast: i < attr.value.length - 1 && !/\s$/.test(value.data),
447-
tidyWhitespace: {
448-
start: i === 0,
449-
end: i >= attr.value.length - 1,
450-
},
451409
})
452410
} else if (value.type === 'MustacheTag') {
453411
visit(value.expression, {

tests/test.js

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@ let html = [
5959
['<div class=" sm:p-0 p-0 "></div>', '<div class="p-0 sm:p-0"></div>'],
6060
t`<div class></div>`,
6161
t`<div class=""></div>`,
62-
['<div class="sm:p-0 p-0 p-0"></div>', '<div class="p-0 sm:p-0"></div>'],
6362
]
6463

6564
let css = [
@@ -96,15 +95,6 @@ let javascript = [
9695
`;<div class={\`sm:p-0 p-0 \${someVar}sm:block md:inline flex\`} />`,
9796
`;<div class={\`p-0 sm:p-0 \${someVar}sm:block flex md:inline\`} />`,
9897
],
99-
[';<div class=" m-0 sm:p-0 p-0 " />', ';<div class="m-0 p-0 sm:p-0" />'],
100-
[";<div class={' m-0 sm:p-0 p-0 '} />", ";<div class={'m-0 p-0 sm:p-0'} />"],
101-
[';<div class={` sm:p-0\n p-0 `} />', ';<div\n class={` p-0\n sm:p-0 `}\n/>'],
102-
[';<div class="flex flex" />', ';<div class="flex" />'],
103-
[';<div class={` flex flex `} />', ';<div class={`flex`} />'],
104-
[
105-
';<div class={` flex flex flex${someVar}block block`} />',
106-
';<div class={`flex flex${someVar}block block`} />',
107-
],
10898
]
10999
javascript = javascript.concat(
110100
javascript.map((test) => test.map((t) => t.replace(/class/g, 'className')))
@@ -138,8 +128,6 @@ let vue = [
138128
`<div :class="\`sm:p-0 p-0 \${someVar}sm:block md:inline flex\`"></div>`,
139129
`<div :class="\`p-0 sm:p-0 \${someVar}sm:block flex md:inline\`"></div>`,
140130
],
141-
[`<div :class="' flex flex '"></div>`, `<div :class="'flex'"></div>`],
142-
[`<div :class="\` flex flex \`"></div>`, `<div :class="\`flex\`"></div>`],
143131
]
144132

145133
let tests = {
@@ -189,6 +177,7 @@ let tests = {
189177
`<div class="sm:p-0 p-0 {someVar}sm:block md:inline flex" />`,
190178
`<div class="p-0 sm:p-0 {someVar}sm:block flex md:inline" />`,
191179
],
180+
['<div class={`sm:p-0\np-0`} />', '<div\n class={`p-0\nsm:p-0`}\n/>'],
192181
],
193182
}
194183

0 commit comments

Comments
 (0)