Skip to content

Commit 276baef

Browse files
committed
feat: change ESQuery Selector placeholder text based on language
1 parent 66e21a6 commit 276baef

1 file changed

Lines changed: 18 additions & 3 deletions

File tree

src/components/esquery-selector-input.tsx

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,27 @@
11
import { useId, type FC } from "react";
22
import { Label } from "@/components/ui/label";
33
import { TextField } from "@/components/ui/text-field";
4-
import { useExplorer } from "@/hooks/use-explorer";
4+
import { useExplorer, type Language } from "@/hooks/use-explorer";
55
import { useAST } from "@/hooks/use-ast";
66
import { cn } from "@/lib/utils";
77

8+
const esquerySelectorPlaceholder = (language: Language) => {
9+
switch (language) {
10+
case "javascript":
11+
return 'e.g. "ImportDeclaration > Literal"';
12+
case "json":
13+
return 'e.g. "Member > String"';
14+
case "markdown":
15+
return 'e.g. "Heading > Text"';
16+
case "css":
17+
return 'e.g. "Block > Declaration"';
18+
case "html":
19+
return 'e.g. "Document > Doctype"';
20+
}
21+
};
22+
823
export const EsquerySelectorInput: FC = () => {
9-
const { esquerySelector, setEsquerySelector } = useExplorer();
24+
const { esquerySelector, setEsquerySelector, language } = useExplorer();
1025
const astParseResult = useAST();
1126
const htmlId = useId();
1227

@@ -21,7 +36,7 @@ export const EsquerySelectorInput: FC = () => {
2136
</Label>
2237
<TextField
2338
id={htmlId}
24-
placeholder={'e.g. "ImportDeclaration > Literal"'}
39+
placeholder={esquerySelectorPlaceholder(language)}
2540
className={cn(
2641
"flex-1",
2742
!astParseResult.ok ||

0 commit comments

Comments
 (0)