Skip to content

Commit 553f73e

Browse files
committed
Update LogoPattern.vue
1 parent 39ea0e7 commit 553f73e

1 file changed

Lines changed: 26 additions & 6 deletions

File tree

app/components/LogoPattern.vue

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,40 @@
11
<template>
22
<!-- Size & interactivity come from parent classes -->
3-
<div class="scribble-badge relative isolate grid place-items-center">
3+
<div class="scribble-badge relative isolate grid place-items-center" :style="cssVars">
44
<!-- Put your number (or any content) here -->
55
<slot>0</slot>
66
</div>
77
</template>
88

99
<script setup>
10-
// no props needed — style via classes on the component usage
10+
const props = defineProps({
11+
maskUrl: {
12+
type: String,
13+
default: 'pattern-square.svg'
14+
}
15+
});
16+
17+
const { app } = useRuntimeConfig();
18+
const baseURL = app.baseURL || '/';
19+
20+
// Construct the full pattern URL
21+
const fullMaskPath = props.maskUrl.startsWith('http') || props.maskUrl.startsWith('/')
22+
? props.maskUrl
23+
: `${baseURL}images/${props.maskUrl}`.replace(/\/+/g, '/');
24+
25+
const patternUrl = `${baseURL}images/pattern-square.svg`.replace(/\/+/g, '/');
26+
27+
const cssVars = {
28+
'--pattern-url': `url("${patternUrl}")`,
29+
'--mask-url': `url("${fullMaskPath}")`
30+
};
1131
</script>
1232

1333
<style scoped>
1434
/* Apply the mask to the host element so regular backgrounds get clipped too */
1535
.scribble-badge {
16-
-webkit-mask-image: var(--mask-url, url("/website/images/pattern-square.svg"));
17-
mask-image: var(--mask-url, url("/website/images/pattern-square.svg"));
36+
-webkit-mask-image: var(--mask-url, var(--pattern-url));
37+
mask-image: var(--mask-url, var(--pattern-url));
1838
-webkit-mask-repeat: no-repeat;
1939
mask-repeat: no-repeat;
2040
-webkit-mask-position: var(--mask-position, center);
@@ -32,8 +52,8 @@
3252
pointer-events: none;
3353
3454
/* Mask shape (user can override URL via a CSS var) */
35-
-webkit-mask-image: var(--mask-url, url("/website/images/pattern-square.svg"));
36-
mask-image: var(--mask-url, url("/website/images/pattern-square.svg"));
55+
-webkit-mask-image: var(--mask-url, var(--pattern-url));
56+
mask-image: var(--mask-url, var(--pattern-url));
3757
-webkit-mask-repeat: no-repeat;
3858
mask-repeat: no-repeat;
3959
-webkit-mask-position: var(--mask-position, center);

0 commit comments

Comments
 (0)