Skip to content

Commit 81d6e74

Browse files
committed
Merge remote-tracking branch 'origin/main' into feat/likes
2 parents 95191dd + 20e08b1 commit 81d6e74

2 files changed

Lines changed: 30 additions & 3 deletions

File tree

app/middleware/canonical-redirects.global.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* - /package/docs/* → /package-docs/*
77
* - /docs/* → /package-docs/*
88
* - /org/* → /@*
9-
* - /* → /package/* (Unless its an existing page)
9+
* - /* → /package/* (Unless it's an existing page)
1010
*/
1111
export default defineNuxtRouteMiddleware(to => {
1212
// Only redirect on client-side to avoid breaking crawlers mid-transition
@@ -38,7 +38,7 @@ export default defineNuxtRouteMiddleware(to => {
3838
}
3939

4040
// Keep this one last as it will catch everything
41-
// /* → /package/* (Unless its an existing page)
41+
// /* → /package/* (Unless it's an existing page)
4242
if (path.startsWith('/') && !path.startsWith('/package/')) {
4343
const router = useRouter()
4444
const resolved = router.resolve(path)

app/pages/package/[...package].vue

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,7 @@ defineOgImageComponent('Package', {
496496
<button
497497
type="button"
498498
@click="copyPkgName()"
499-
class="copy-button absolute z-20 left-0 top-full inline-flex items-center gap-1 px-2 py-1 rounded border text-xs font-mono whitespace-nowrap text-fg-muted bg-bg border-border opacity-0 -translate-y-1 pointer-events-none transition-all duration-150 group-hover:opacity-100 group-hover:translate-y-0 group-hover:pointer-events-auto focus-visible:opacity-100 focus-visible:translate-y-0 focus-visible:pointer-events-auto hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fg/40"
499+
class="copy-button absolute z-20 left-0 top-full inline-flex items-center gap-1 px-2 py-1 rounded border text-xs font-mono whitespace-nowrap text-fg-muted bg-bg border-border opacity-0 -translate-y-1 pointer-events-none group-hover:opacity-100 group-hover:translate-y-0 group-hover:pointer-events-auto focus-visible:opacity-100 focus-visible:translate-y-0 focus-visible:pointer-events-auto hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fg/40"
500500
:aria-label="$t('package.copy_name')"
501501
>
502502
<span class="i-carbon:copy w-3.5 h-3.5" aria-hidden="true" />
@@ -1263,6 +1263,33 @@ defineOgImageComponent('Package', {
12631263
min-width: 0;
12641264
}
12651265
1266+
.copy-button {
1267+
clip: rect(0 0 0 0);
1268+
clip-path: inset(50%);
1269+
height: 1px;
1270+
overflow: hidden;
1271+
width: 1px;
1272+
transition:
1273+
opacity 0.25s 0.1s,
1274+
translate 0.15s 0.1s,
1275+
clip 0.01s 0.34s allow-discrete,
1276+
clip-path 0.01s 0.34s allow-discrete,
1277+
height 0.01s 0.34s allow-discrete,
1278+
width 0.01s 0.34s allow-discrete;
1279+
}
1280+
1281+
.group:hover .copy-button,
1282+
.copy-button:focus-visible {
1283+
clip: auto;
1284+
clip-path: none;
1285+
height: auto;
1286+
overflow: visible;
1287+
width: auto;
1288+
transition:
1289+
opacity 0.15s,
1290+
translate 0.15s;
1291+
}
1292+
12661293
@media (hover: none) {
12671294
.copy-button {
12681295
display: none;

0 commit comments

Comments
 (0)