Skip to content

Commit 5dcd5dd

Browse files
committed
Add Checkbox examples
1 parent c777e0a commit 5dcd5dd

File tree

3 files changed

+36
-0
lines changed

3 files changed

+36
-0
lines changed

packages/demo/src/main.tsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { createBrowserRouter, RouterProvider } from "react-router-dom";
44
import "./index.css";
55
import Root from "./routes/Root.tsx";
66
import BadgePage from "./routes/BadgePage.tsx";
7+
import CheckboxPage from "./routes/CheckboxPage.tsx";
78

89
if (import.meta.env.DEV) {
910
await import("@vscode-elements/webview-playground");
@@ -18,6 +19,10 @@ const router = createBrowserRouter([
1819
path: "/badge",
1920
element: <BadgePage />,
2021
},
22+
{
23+
path: "/checkbox",
24+
element: <CheckboxPage />,
25+
},
2126
],
2227
},
2328
]);
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import { VscodeCheckbox } from "@vscode-elements/react-elements";
2+
import { useState } from "react";
3+
4+
export default function BadgePage() {
5+
const [checked, setChecked] = useState(false);
6+
const [clickCount, setClickCount] = useState(0);
7+
8+
return (
9+
<div>
10+
<h1>Checkbox</h1>
11+
<p>
12+
<VscodeCheckbox
13+
checked={checked}
14+
onChange={(ev) => {
15+
console.log(ev);
16+
setChecked(!checked);
17+
}}
18+
onClick={(ev) => {
19+
console.log(ev);
20+
setClickCount(clickCount + 1);
21+
}}
22+
>
23+
Checkbox example
24+
</VscodeCheckbox>
25+
</p>
26+
<p>Checkbox is {checked ? "checked" : "unchecked"}</p>
27+
<p>Click count is {clickCount}</p>
28+
</div>
29+
);
30+
}

packages/demo/src/routes/Root.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ export default function Root() {
77
<aside>
88
<ul>
99
<li><a href="/badge">Badge</a></li>
10+
<li><a href="/checkbox">Checkbox</a></li>
1011
</ul>
1112
</aside>
1213
<main>

0 commit comments

Comments
 (0)