From 74d95d59793e4ca61e349da8b018b85b6fea641e Mon Sep 17 00:00:00 2001 From: Will Kashdan Date: Tue, 26 Mar 2024 13:21:10 -0400 Subject: [PATCH] fix(text): prevent always running detect text alignment --- src/components/Text/src/Text.vue | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/components/Text/src/Text.vue b/src/components/Text/src/Text.vue index 5aa858996..bb3d83283 100644 --- a/src/components/Text/src/Text.vue +++ b/src/components/Text/src/Text.vue @@ -123,7 +123,7 @@ export default { data() { return { - isCentered: false, + isCenteredAndSpaced: false, }; }, @@ -204,7 +204,7 @@ export default { if (this.resolvedLetterSpacing !== 'inherit') { styles.letterSpacing = this.resolvedLetterSpacing; } - if (this.isCentered) { + if (this.isCenteredAndSpaced) { styles.paddingLeft = styles.letterSpacing; } return styles; @@ -212,11 +212,11 @@ export default { }, mounted() { - this.detectAlignCenter(); + this.detectAlignCenterAndLetterSpacing(); }, updated() { - this.detectAlignCenter(); + this.detectAlignCenterAndLetterSpacing(); }, methods: { @@ -227,10 +227,14 @@ export default { * Detect if the text is center aligned and add left padding * to balance out the letter spacing */ - detectAlignCenter() { + detectAlignCenterAndLetterSpacing() { + if (!this.letterSpacing && !this.resolvedLetterSpacing) { + return; + } + const computedStyle = window.getComputedStyle(this.$el); const textAlign = computedStyle.getPropertyValue('text-align'); - this.isCentered = textAlign === 'center'; + this.isCenteredAndSpaced = textAlign === 'center'; }, },