Skip to content
This repository was archived by the owner on May 7, 2025. It is now read-only.

Commit c9d4121

Browse files
author
Emanuel Suriano
committed
demo: remove dynamic buttons
1 parent 868c93f commit c9d4121

File tree

2 files changed

+13
-38
lines changed

2 files changed

+13
-38
lines changed

packages/demo/src/App.tsx

Lines changed: 4 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,16 @@
11
import { useState } from 'react';
22
import { ScrollingProvider, Section } from 'react-scroll-section';
3-
import ModeToggle, { MenuKind } from './ModeToggle';
3+
import ModeToggle, { Mode } from './ModeToggle';
44
import { DynamicMenu, StaticMenu } from './Menu';
55
import { Footer, Menu, SectionContainer } from './Builders';
66
import logo from './logo.svg';
77

88
function App() {
9-
const [menu, setMenu] = useState<MenuKind>('dynamic');
10-
const [sections, setSections] = useState(['s1']);
9+
const [mode, setMode] = useState<Mode>('dynamic');
1110

1211
return (
1312
<ScrollingProvider>
14-
<Menu>{menu === 'static' ? <StaticMenu /> : <DynamicMenu />}</Menu>
13+
<Menu>{mode === 'static' ? <StaticMenu /> : <DynamicMenu />}</Menu>
1514

1615
<Section id="home">
1716
<SectionContainer>
@@ -46,32 +45,8 @@ function App() {
4645
</SectionContainer>
4746
</Section>
4847

49-
{sections.map((name) => (
50-
<Section id={name} key={name}>
51-
<SectionContainer>
52-
<span role="img" aria-label="letter">
53-
{name}
54-
</span>
55-
<button
56-
onClick={() => {
57-
setSections((prev) => [...prev, 's' + (prev.length + 1)]);
58-
}}
59-
>
60-
Add
61-
</button>
62-
<button
63-
onClick={() => {
64-
setSections((prev) => prev.filter((s) => s !== name));
65-
}}
66-
>
67-
Remove
68-
</button>
69-
</SectionContainer>
70-
</Section>
71-
))}
72-
7348
<Footer>
74-
<ModeToggle menu={menu} onChange={setMenu} />
49+
<ModeToggle mode={mode} onChange={setMode} />
7550
<a href="https://www.netlify.com">
7651
<img
7752
src="https://www.netlify.com/img/global/badges/netlify-color-bg.svg"

packages/demo/src/ModeToggle.tsx

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
11
import styled from 'styled-components';
22
import Toggle from 'react-toggle';
33

4-
export type MenuKind = 'static' | 'dynamic';
4+
export type Mode = 'static' | 'dynamic';
55

66
type Props = {
7-
menu: MenuKind;
8-
onChange: (menu: MenuKind) => void;
7+
mode: Mode;
8+
onChange: (mode: Mode) => void;
99
};
1010

11-
const ModeToggle = ({ menu, onChange }: Props) => (
11+
const ModeToggle = ({ mode, onChange }: Props) => (
1212
<Container>
1313
<Toggle
14-
id="menu-type"
15-
defaultChecked={menu === 'static'}
14+
id="mode-type"
15+
defaultChecked={mode === 'dynamic'}
1616
onChange={({ currentTarget }) =>
17-
onChange(currentTarget.checked ? 'static' : 'dynamic')
17+
onChange(currentTarget.checked ? 'dynamic' : 'static')
1818
}
1919
/>
20-
<label htmlFor="menu-type" style={{ marginLeft: '10px' }}>
21-
Menu: <b>{menu}</b>
20+
<label htmlFor="mode-type" style={{ marginLeft: '10px' }}>
21+
Mode: <b>{mode}</b>
2222
</label>
2323
</Container>
2424
);

0 commit comments

Comments
 (0)