fix(truncate): preserve existing class names on node (#541)

This commit is contained in:
Eric Liu 2021-02-26 14:21:53 -08:00 committed by GitHub
commit 24e36a7fd0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -11,8 +11,14 @@
* <h1 use:truncate={{ clamp: "front" }}>...</h1>
*/
export function truncate(node, params = {}) {
const prefix = "bx--text-truncate--";
function toggleClass(front = false) {
node.className = `bx--text-truncate--${front ? "front" : "end"}`;
const classes = [...node.classList]
.filter((name) => !name.startsWith(prefix))
.join(" ");
node.className = `${classes} ${prefix}${front ? "front" : "end"}`;
}
toggleClass(params.clamp === "front");