Skip to content

Commit 77605b3

Browse files
Refactor: Update JS platform key and remove unused handler
Co-authored-by: shannon.anahata <[email protected]>
1 parent 8240cd4 commit 77605b3

File tree

2 files changed

+6
-19
lines changed

2 files changed

+6
-19
lines changed

src/components/platformSelector/index.tsx

Lines changed: 4 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
import {
33
Fragment,
44
Ref,
5-
startTransition,
6-
useCallback,
75
useEffect,
86
useMemo,
97
useRef,
@@ -73,18 +71,6 @@ export function PlatformSelector({
7371
const [open, setOpen] = useState(false);
7472
const [searchValue, setSearchValue] = useState('');
7573

76-
// Controlled search handler for virtual guide stability
77-
const handleSearchValueChange = useCallback(
78-
(value: string) => {
79-
// Use startTransition for virtual guides to prevent focus issues
80-
if (currentPlatformKey === 'javascript-platform') {
81-
startTransition(() => setSearchValue(value));
82-
} else {
83-
setSearchValue(value);
84-
}
85-
},
86-
[currentPlatformKey]
87-
);
8874

8975
const matches = useMemo(() => {
9076
if (!searchValue) {
@@ -118,9 +104,9 @@ export function PlatformSelector({
118104
let targetPlatform = platformsAndGuides.find(platform => platform.key === cleanKey);
119105

120106
// Special handling for JavaScript: when platform "javascript" is selected,
121-
// redirect to the virtual guide "javascript-platform" instead
107+
// redirect to the virtual guide "javascript.browser" instead
122108
if (cleanKey === 'javascript' && targetPlatform?.type === 'platform') {
123-
const virtualGuide = platformsAndGuides.find(p => p.key === 'javascript-platform');
109+
const virtualGuide = platformsAndGuides.find(p => p.key === 'javascript.browser');
124110
if (virtualGuide) {
125111
targetPlatform = virtualGuide;
126112
}
@@ -148,7 +134,7 @@ export function PlatformSelector({
148134

149135
// Handle stored JavaScript platform: redirect to virtual guide
150136
if (storedPlatformKey === 'javascript' && storedPlatform?.type === 'platform') {
151-
const virtualGuide = platformsAndGuides.find(p => p.key === 'javascript-platform');
137+
const virtualGuide = platformsAndGuides.find(p => p.key === 'javascript.browser');
152138
if (virtualGuide) {
153139
storedPlatform = virtualGuide;
154140
}
@@ -188,7 +174,7 @@ export function PlatformSelector({
188174
open={open}
189175
setOpen={setOpen}
190176
includesBaseElement={false}
191-
setValue={handleSearchValueChange}
177+
setValue={setSearchValue}
192178
>
193179
<RadixSelect.Trigger aria-label="Platform" className={styles.select}>
194180
<RadixSelect.Value placeholder="Choose your SDK" />

src/docTree.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -376,7 +376,8 @@ function extractGuides(platformNode: DocNode): PlatformGuide[] {
376376
const defaultGuide = platformNode.frontmatter.platformTitle
377377
? {
378378
...nodeToGuide(platformNode.slug, platformNode),
379-
key: `${platformNode.slug}-platform`,
379+
key: `${platformNode.slug}.browser`,
380+
name: 'browser',
380381
// Enhance searchable properties for virtual guides
381382
title: platformNode.frontmatter.title || platformNode.frontmatter.platformTitle,
382383
aliases: [...(platformNode.frontmatter.aliases || []), platformNode.slug],

0 commit comments

Comments
 (0)