summaryrefslogtreecommitdiff
path: root/packages/frontend/src/components/MkButton.vue
diff options
context:
space:
mode:
authorAcid Chicken (硫酸鶏) <root@acid-chicken.com>2023-06-01 17:19:46 +0900
committerGitHub <noreply@github.com>2023-06-01 17:19:46 +0900
commit337dd97b490fb6bcfc351566a4fd80c35a9cda14 (patch)
tree5dc95fc8617a22f713dcf8511398f4100d96c5a9 /packages/frontend/src/components/MkButton.vue
parentUpdate index.d.ts (diff)
downloadsharkey-337dd97b490fb6bcfc351566a4fd80c35a9cda14.tar.gz
sharkey-337dd97b490fb6bcfc351566a4fd80c35a9cda14.tar.bz2
sharkey-337dd97b490fb6bcfc351566a4fd80c35a9cda14.zip
perf(#10923): CSS Modules のクラス名をインライン化する (#10930)
* perf(#10923): unwind css module class name * perf(#10923): support multiple components * refactor: clean up * refactor(#10923): avoid `useCssModule()` * fix(#10923): allow direct literal class name * fix(#10923): avoid computed class name * fix(#10923): allow literal keys * fix(#10923): typo * fix(#10923): invalid class names * chore: test * revert: test This reverts commit 5c7ef366eceebe8ba260efa4d5d675f6c1775c45. * fix(#10923): hidden tale * perf(#10923): also unwind scoped css contained components * perf(#10923): `normalizeClass` AOT compilation --------- Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
Diffstat (limited to 'packages/frontend/src/components/MkButton.vue')
-rw-r--r--packages/frontend/src/components/MkButton.vue10
1 files changed, 4 insertions, 6 deletions
diff --git a/packages/frontend/src/components/MkButton.vue b/packages/frontend/src/components/MkButton.vue
index 6de6a4cc70..16e44ec618 100644
--- a/packages/frontend/src/components/MkButton.vue
+++ b/packages/frontend/src/components/MkButton.vue
@@ -7,7 +7,7 @@
@click="emit('click', $event)"
@mousedown="onMousedown"
>
- <div ref="ripples" :class="$style.ripples"></div>
+ <div ref="ripples" :class="$style.ripples" :data-children-class="$style.ripple"></div>
<div :class="$style.content">
<slot></slot>
</div>
@@ -18,7 +18,7 @@
:to="to"
@mousedown="onMousedown"
>
- <div ref="ripples" :class="$style.ripples"></div>
+ <div ref="ripples" :class="$style.ripples" :data-children-class="$style.ripple"></div>
<div :class="$style.content">
<slot></slot>
</div>
@@ -26,9 +26,7 @@
</template>
<script lang="ts" setup>
-import { nextTick, onMounted, useCssModule } from 'vue';
-
-const $style = useCssModule();
+import { nextTick, onMounted } from 'vue';
const props = defineProps<{
type?: 'button' | 'submit' | 'reset';
@@ -81,7 +79,7 @@ function onMousedown(evt: MouseEvent): void {
const rect = target.getBoundingClientRect();
const ripple = document.createElement('div');
- ripple.classList.add($style.ripple);
+ ripple.classList.add(ripples!.dataset.childrenClass!);
ripple.style.top = (evt.clientY - rect.top - 1).toString() + 'px';
ripple.style.left = (evt.clientX - rect.left - 1).toString() + 'px';