From 4050eb478fc33db6459f48f1c92fa9d34ded9a81 Mon Sep 17 00:00:00 2001 From: SB-virendrasolanke Date: Tue, 7 Apr 2026 12:34:04 +0530 Subject: [PATCH 1/2] fix : added logic to handle branches --- .../BranchSelector/BranchSelector.stories.tsx | 4 ++-- .../NodeContent/NodeContent.stories.tsx | 4 ++-- .../src/components/Search/Search.stories.tsx | 4 ++-- .../TableOfContents/TableOfContents.stories.tsx | 4 ++-- .../src/containers/StoplightProject.stories.tsx | 6 +++--- .../src/containers/StoplightProject.tsx | 15 ++++++++++++++- .../__stories__/StoplightProject.stories.tsx | 4 ++-- 7 files changed, 27 insertions(+), 14 deletions(-) diff --git a/packages/elements-dev-portal/src/components/BranchSelector/BranchSelector.stories.tsx b/packages/elements-dev-portal/src/components/BranchSelector/BranchSelector.stories.tsx index a4e0d9a7f..24b5dd8d8 100644 --- a/packages/elements-dev-portal/src/components/BranchSelector/BranchSelector.stories.tsx +++ b/packages/elements-dev-portal/src/components/BranchSelector/BranchSelector.stories.tsx @@ -29,8 +29,8 @@ export default { platformUrl: { table: { category: 'Input' } }, }, args: { - projectId: 'cHJqOjYwNjYx', - platformUrl: 'https://stoplight.io', + projectId: 'cHJqOjMwODc1MA', + platformUrl: 'https://persistentteams.stoplight.io', }, }; diff --git a/packages/elements-dev-portal/src/components/NodeContent/NodeContent.stories.tsx b/packages/elements-dev-portal/src/components/NodeContent/NodeContent.stories.tsx index aebaf927d..d0c21a906 100644 --- a/packages/elements-dev-portal/src/components/NodeContent/NodeContent.stories.tsx +++ b/packages/elements-dev-portal/src/components/NodeContent/NodeContent.stories.tsx @@ -47,9 +47,9 @@ export default { }, args: { nodeSlug: 'b3A6Mzg5NDM2-create-todo', - projectId: 'cHJqOjYwNjYx', + projectId: 'cHJqOjMwODc1MA', branchSlug: '', - platformUrl: 'https://stoplight.io', + platformUrl: 'https://persistentteams.stoplight.io', }, }; diff --git a/packages/elements-dev-portal/src/components/Search/Search.stories.tsx b/packages/elements-dev-portal/src/components/Search/Search.stories.tsx index 7e0fb0faf..c0ef3c685 100644 --- a/packages/elements-dev-portal/src/components/Search/Search.stories.tsx +++ b/packages/elements-dev-portal/src/components/Search/Search.stories.tsx @@ -136,9 +136,9 @@ export default { isInResponsiveMode: { table: { category: 'Input' } }, }, args: { - projectIds: ['cHJqOjYwNjYx'], + projectIds: ['cHJqOjMwODc1MA'], workspaceId: 'd2s6NDE1NTU', - platformUrl: 'https://stoplight.io', + platformUrl: 'https://persistentteams.stoplight.io', isInResponsiveMode: false, }, }; diff --git a/packages/elements-dev-portal/src/components/TableOfContents/TableOfContents.stories.tsx b/packages/elements-dev-portal/src/components/TableOfContents/TableOfContents.stories.tsx index 8a99740ab..44e9fa6de 100644 --- a/packages/elements-dev-portal/src/components/TableOfContents/TableOfContents.stories.tsx +++ b/packages/elements-dev-portal/src/components/TableOfContents/TableOfContents.stories.tsx @@ -51,9 +51,9 @@ export default { isInResponsiveMode: { table: { category: 'Input' } }, }, args: { - projectId: 'cHJqOjYwNjYx', + projectId: 'cHJqOjMwODc1MA', branchSlug: '', - platformUrl: 'https://stoplight.io', + platformUrl: 'https://persistentteams.stoplight.io', isInResponsiveMode: false, }, }; diff --git a/packages/elements-dev-portal/src/containers/StoplightProject.stories.tsx b/packages/elements-dev-portal/src/containers/StoplightProject.stories.tsx index 28b0b84ec..dfca59a03 100644 --- a/packages/elements-dev-portal/src/containers/StoplightProject.stories.tsx +++ b/packages/elements-dev-portal/src/containers/StoplightProject.stories.tsx @@ -16,13 +16,13 @@ export default { }, args: { router: 'memory', - platformUrl: 'https://stoplight.io', + platformUrl: 'https://persistentteams.stoplight.io', }, }; export const Playground: Story = args => ; Playground.storyName = 'Studio Demo'; Playground.args = { - projectId: 'cHJqOjYwNjYx', - platformUrl: 'https://stoplight.io', + projectId: 'cHJqOjMwODc1MA', + platformUrl: 'https://persistentteams.stoplight.io', }; diff --git a/packages/elements-dev-portal/src/containers/StoplightProject.tsx b/packages/elements-dev-portal/src/containers/StoplightProject.tsx index ef0b105c3..d968cfc94 100644 --- a/packages/elements-dev-portal/src/containers/StoplightProject.tsx +++ b/packages/elements-dev-portal/src/containers/StoplightProject.tsx @@ -120,6 +120,19 @@ const StoplightProjectImpl: React.FC = ({ projectId, coll const container = React.useRef(null); + // Create a custom Link component that preserves the branch path + const BranchAwareLink = React.useMemo(() => { + return React.forwardRef>((props, ref) => { + const { to, ...rest } = props; + // If we're on a branch, prefix all relative links with the branch path + // Only modify relative paths (not starting with /, #, http://, https://, or .) + const shouldPrefixBranch = branchSlug && typeof to === 'string' && to !== '.' && !/^(\/|#|https?:\/\/)/.test(to); + + const adjustedTo = shouldPrefixBranch ? `branches/${encodeURIComponent(branchSlug)}/${to}` : to; + return ; + }); + }, [branchSlug]); + if (!nodeSlug && isTocFetched && tableOfContents?.items) { const firstNode = findFirstNode(tableOfContents.items); if (firstNode) { @@ -152,7 +165,7 @@ const StoplightProjectImpl: React.FC = ({ projectId, coll diff --git a/packages/elements-dev-portal/src/web-components/__stories__/StoplightProject.stories.tsx b/packages/elements-dev-portal/src/web-components/__stories__/StoplightProject.stories.tsx index 2185e7cdd..c441c285e 100644 --- a/packages/elements-dev-portal/src/web-components/__stories__/StoplightProject.stories.tsx +++ b/packages/elements-dev-portal/src/web-components/__stories__/StoplightProject.stories.tsx @@ -28,6 +28,6 @@ export default { export const defaultProject = Template.bind({}); defaultProject.storyName = "Stoplight's Demo workspace"; defaultProject.args = { - projectId: 'cHJqOjYwNjYx', - platformUrl: 'https://stoplight.io', + projectId: 'cHJqOjMwODc1MA', + platformUrl: 'https://persistentteams.stoplight.io', }; From 6b1b5865f333e6d3bcff05a9669e1a53ab131691 Mon Sep 17 00:00:00 2001 From: SB-virendrasolanke Date: Fri, 17 Apr 2026 11:49:02 +0530 Subject: [PATCH 2/2] reverted configs --- .../components/BranchSelector/BranchSelector.stories.tsx | 4 ++-- .../src/components/NodeContent/NodeContent.stories.tsx | 4 ++-- .../src/components/Search/Search.stories.tsx | 4 ++-- .../components/TableOfContents/TableOfContents.stories.tsx | 4 ++-- .../src/containers/StoplightProject.stories.tsx | 6 +++--- .../web-components/__stories__/StoplightProject.stories.tsx | 4 ++-- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/elements-dev-portal/src/components/BranchSelector/BranchSelector.stories.tsx b/packages/elements-dev-portal/src/components/BranchSelector/BranchSelector.stories.tsx index 24b5dd8d8..a4e0d9a7f 100644 --- a/packages/elements-dev-portal/src/components/BranchSelector/BranchSelector.stories.tsx +++ b/packages/elements-dev-portal/src/components/BranchSelector/BranchSelector.stories.tsx @@ -29,8 +29,8 @@ export default { platformUrl: { table: { category: 'Input' } }, }, args: { - projectId: 'cHJqOjMwODc1MA', - platformUrl: 'https://persistentteams.stoplight.io', + projectId: 'cHJqOjYwNjYx', + platformUrl: 'https://stoplight.io', }, }; diff --git a/packages/elements-dev-portal/src/components/NodeContent/NodeContent.stories.tsx b/packages/elements-dev-portal/src/components/NodeContent/NodeContent.stories.tsx index d0c21a906..aebaf927d 100644 --- a/packages/elements-dev-portal/src/components/NodeContent/NodeContent.stories.tsx +++ b/packages/elements-dev-portal/src/components/NodeContent/NodeContent.stories.tsx @@ -47,9 +47,9 @@ export default { }, args: { nodeSlug: 'b3A6Mzg5NDM2-create-todo', - projectId: 'cHJqOjMwODc1MA', + projectId: 'cHJqOjYwNjYx', branchSlug: '', - platformUrl: 'https://persistentteams.stoplight.io', + platformUrl: 'https://stoplight.io', }, }; diff --git a/packages/elements-dev-portal/src/components/Search/Search.stories.tsx b/packages/elements-dev-portal/src/components/Search/Search.stories.tsx index c0ef3c685..7e0fb0faf 100644 --- a/packages/elements-dev-portal/src/components/Search/Search.stories.tsx +++ b/packages/elements-dev-portal/src/components/Search/Search.stories.tsx @@ -136,9 +136,9 @@ export default { isInResponsiveMode: { table: { category: 'Input' } }, }, args: { - projectIds: ['cHJqOjMwODc1MA'], + projectIds: ['cHJqOjYwNjYx'], workspaceId: 'd2s6NDE1NTU', - platformUrl: 'https://persistentteams.stoplight.io', + platformUrl: 'https://stoplight.io', isInResponsiveMode: false, }, }; diff --git a/packages/elements-dev-portal/src/components/TableOfContents/TableOfContents.stories.tsx b/packages/elements-dev-portal/src/components/TableOfContents/TableOfContents.stories.tsx index 44e9fa6de..8a99740ab 100644 --- a/packages/elements-dev-portal/src/components/TableOfContents/TableOfContents.stories.tsx +++ b/packages/elements-dev-portal/src/components/TableOfContents/TableOfContents.stories.tsx @@ -51,9 +51,9 @@ export default { isInResponsiveMode: { table: { category: 'Input' } }, }, args: { - projectId: 'cHJqOjMwODc1MA', + projectId: 'cHJqOjYwNjYx', branchSlug: '', - platformUrl: 'https://persistentteams.stoplight.io', + platformUrl: 'https://stoplight.io', isInResponsiveMode: false, }, }; diff --git a/packages/elements-dev-portal/src/containers/StoplightProject.stories.tsx b/packages/elements-dev-portal/src/containers/StoplightProject.stories.tsx index dfca59a03..28b0b84ec 100644 --- a/packages/elements-dev-portal/src/containers/StoplightProject.stories.tsx +++ b/packages/elements-dev-portal/src/containers/StoplightProject.stories.tsx @@ -16,13 +16,13 @@ export default { }, args: { router: 'memory', - platformUrl: 'https://persistentteams.stoplight.io', + platformUrl: 'https://stoplight.io', }, }; export const Playground: Story = args => ; Playground.storyName = 'Studio Demo'; Playground.args = { - projectId: 'cHJqOjMwODc1MA', - platformUrl: 'https://persistentteams.stoplight.io', + projectId: 'cHJqOjYwNjYx', + platformUrl: 'https://stoplight.io', }; diff --git a/packages/elements-dev-portal/src/web-components/__stories__/StoplightProject.stories.tsx b/packages/elements-dev-portal/src/web-components/__stories__/StoplightProject.stories.tsx index c441c285e..2185e7cdd 100644 --- a/packages/elements-dev-portal/src/web-components/__stories__/StoplightProject.stories.tsx +++ b/packages/elements-dev-portal/src/web-components/__stories__/StoplightProject.stories.tsx @@ -28,6 +28,6 @@ export default { export const defaultProject = Template.bind({}); defaultProject.storyName = "Stoplight's Demo workspace"; defaultProject.args = { - projectId: 'cHJqOjMwODc1MA', - platformUrl: 'https://persistentteams.stoplight.io', + projectId: 'cHJqOjYwNjYx', + platformUrl: 'https://stoplight.io', };