From cc23a7542502968b13f903791f03bbd69a10ee0b Mon Sep 17 00:00:00 2001 From: Phuoc Nguyen Date: Sat, 16 Nov 2019 21:32:22 +0700 Subject: [PATCH] Add stepper input --- client/App.jsx | 2 + client/Home.jsx | 8 +-- client/covers/StepperCover.jsx | 19 ------- client/covers/StepperInputCover.jsx | 19 +++++++ client/layouts/Badge.jsx | 2 - client/layouts/StepperInput.jsx | 87 +++++++++++++++++++++++++++++ 6 files changed, 112 insertions(+), 25 deletions(-) delete mode 100644 client/covers/StepperCover.jsx create mode 100644 client/covers/StepperInputCover.jsx create mode 100644 client/layouts/StepperInput.jsx diff --git a/client/App.jsx b/client/App.jsx index 1e95923..941e6e1 100644 --- a/client/App.jsx +++ b/client/App.jsx @@ -5,6 +5,7 @@ import Home from './Home'; import Badge from './layouts/Badge'; import Centering from './layouts/Centering'; import Sidebar from './layouts/Sidebar'; +import StepperInput from './layouts/StepperInput'; import StickyFooter from './layouts/StickyFooter'; import StickyHeader from './layouts/StickyHeader'; @@ -16,6 +17,7 @@ const App = () => { + diff --git a/client/Home.jsx b/client/Home.jsx index 0ee77a9..0a368aa 100644 --- a/client/Home.jsx +++ b/client/Home.jsx @@ -6,7 +6,7 @@ import CenterCover from './covers/CenterCover'; import SidebarCover from './covers/SidebarCover'; import StickyFooterCover from './covers/StickyFooterCover'; import StickyHeaderCover from './covers/StickyHeaderCover'; -import StepperCover from './covers/StepperCover'; +import StepperInputCover from './covers/StepperInputCover'; import Layout from './Layout'; import useDocumentTitle from './useDocumentTitle'; @@ -69,9 +69,9 @@ const Home = () => {
- - -

Stepper

+ + +

Stepper input

diff --git a/client/covers/StepperCover.jsx b/client/covers/StepperCover.jsx deleted file mode 100644 index c0ad80d..0000000 --- a/client/covers/StepperCover.jsx +++ /dev/null @@ -1,19 +0,0 @@ -import React from 'react'; - -import Frame from '../placeholders/Frame'; - -const StepperCover = () => { - return ( - -
-
-
-
-
-
+
-
-
- - ); -}; - -export default StepperCover; diff --git a/client/covers/StepperInputCover.jsx b/client/covers/StepperInputCover.jsx new file mode 100644 index 0000000..977fab7 --- /dev/null +++ b/client/covers/StepperInputCover.jsx @@ -0,0 +1,19 @@ +import React from 'react'; + +import Frame from '../placeholders/Frame'; + +const StepperInputCover = () => { + return ( + +
+
+
-
+
+
+
+
+
+ + ); +}; + +export default StepperInputCover; diff --git a/client/layouts/Badge.jsx b/client/layouts/Badge.jsx index acf45f8..01a3554 100644 --- a/client/layouts/Badge.jsx +++ b/client/layouts/Badge.jsx @@ -2,8 +2,6 @@ import React from 'react'; import DetailsLayout from '../DetailsLayout'; import BrowserFrame from '../placeholders/BrowserFrame'; -import Dot from '../placeholders/Dot'; -import Rectangle from '../placeholders/Rectangle'; import SampleCode from '../SampleCode'; import useDocumentTitle from '../useDocumentTitle'; diff --git a/client/layouts/StepperInput.jsx b/client/layouts/StepperInput.jsx new file mode 100644 index 0000000..c4ecfb9 --- /dev/null +++ b/client/layouts/StepperInput.jsx @@ -0,0 +1,87 @@ +import React, { useState } from 'react'; +import { Link } from 'react-router-dom'; + +import DetailsLayout from '../DetailsLayout'; +import BrowserFrame from '../placeholders/BrowserFrame'; +import SampleCode from '../SampleCode'; +import useDocumentTitle from '../useDocumentTitle'; + +const StepperInput = () => { + useDocumentTitle('CSS Layout ∙ Stepper input'); + const [value, setValue] = useState(0); + const decrease = () => setValue(value - 1); + const increase = () => setValue(value + 1); + const change = (e) => setValue(parseInt(e.target.value, 10)); + + return ( + +

Stepper input

+
+ The content of minus and plus buttons are centered by using the technique in the Centering page. +
+ +
+ +
+ +
+ +
+ + } + source={ + + + + + +
+ +
+ + + + +`} +/> + } + /> +
+ ); +}; + +export default StepperInput;