Skip to content
Merged
Changes from 11 commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
274fc21
refactor: removed obsolete code
mfranzke Sep 17, 2025
c786738
refactor: integrated logic out of openVariantInNewWindow to getHref
mfranzke Sep 17, 2025
6ea1c73
refactor: restructured
mfranzke Sep 17, 2025
e2d8a13
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
mfranzke Sep 29, 2025
fbb386e
Apply suggestion from @mfranzke
mfranzke Sep 29, 2025
13c8ad2
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
michaelmkraus Oct 2, 2025
8b22297
Update showcases/react-showcase/src/components/default-component.tsx
mfranzke Oct 2, 2025
f5c3401
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
mfranzke Oct 15, 2025
91eab1e
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
mfranzke Oct 16, 2025
810d845
Update default-component.tsx
mfranzke Oct 17, 2025
07f7781
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
mfranzke Oct 17, 2025
9fffa28
Update default-component.tsx
mfranzke Oct 17, 2025
ba2b69a
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
mfranzke Oct 22, 2025
eb210a7
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
mfranzke Oct 24, 2025
bef2b91
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
michaelmkraus Oct 29, 2025
85b798f
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
michaelmkraus Oct 29, 2025
ade37e5
fix(): prevent crash by guarding window.location in getHref
michaelmkraus Oct 29, 2025
b2d2574
fix(): make useUniversalSearchParameters SSR-safe
michaelmkraus Oct 29, 2025
f10e6e7
Merge remote-tracking branch 'origin/4988-docs-clicking-the-detail-vi…
michaelmkraus Oct 29, 2025
bcff734
Merge branch 'main' into 4988-docs-clicking-the-detail-view-link-open…
michaelmkraus Oct 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 11 additions & 32 deletions showcases/react-showcase/src/components/default-component.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import React, { useCallback, useState } from 'react';
import { useCallback, useState } from 'react';
import { DBCard, DBDivider, DBLink } from '../../../../output/react/src';
import type {
ReactDefaultComponentProps,
Expand Down Expand Up @@ -115,41 +115,22 @@ const DefaultComponent = ({
const color = useQuery(redirectURLSearchParameters)[2];

const getHref = (variantName: string): string => {
if (typeof globalThis !== 'undefined') {
const searchParameters = new URLSearchParams(
globalThis?.location?.href.split('?')[1]
);
searchParameters.set('page', variantName.toLowerCase());
return `${globalThis?.location?.href.split('?')[0]}?${searchParameters.toString()}`;
if (typeof globalThis === 'undefined' || !globalThis.location.href) {
return '';
}

return '';
};

const openVariantInNewWindow = (
event: React.MouseEvent<HTMLAnchorElement>,
variantName: string
) => {
if (
typeof globalThis === 'undefined' ||
!globalThis.location.origin ||
!globalThis.location.href
) {
return;
}

const currentUrl = globalThis.location.href.split('?');
const rawComponentUrl = currentUrl[0];
const searchParameters = new URLSearchParams(currentUrl[1] ?? '');
const [baseUrl, query=''] = globalThis.location.href.split('?');
const rawComponentUrl = baseUrl;
const searchParameters = new URLSearchParams(query);
searchParameters.set('page', variantName.toLowerCase());

const regexComponentOverviewFragment = /\/[a-z\d\-_]*\/overview/;

const openUrl = componentName
? `${rawComponentUrl.replace(regexComponentOverviewFragment, `/${componentName}/overview`)}?${searchParameters.toString()}`
: `${currentUrl[0]}?${searchParameters.toString()}`;
if (componentName) {
return `${rawComponentUrl.replace(regexComponentOverviewFragment, `/${componentName}/overview`)}?${searchParameters.toString()}`;
}

window.open(openUrl, '_blank');
return `${rawComponentUrl}?${searchParameters.toString()}`;
};

if (pageName) {
Expand Down Expand Up @@ -196,9 +177,7 @@ const DefaultComponent = ({
className="link-headline"
content="external"
target="_blank"
onClick={(event) => {
openVariantInNewWindow(event, variant.name);
}}
rel="noopener noreferrer"
href={getHref(variant.name)}>
{variant.name}
</DBLink>
Expand Down
Loading