diff --git a/client/App.tsx b/client/App.tsx index 2eec746..7e48bbf 100644 --- a/client/App.tsx +++ b/client/App.tsx @@ -48,6 +48,7 @@ const App = () => { + diff --git a/client/Home.tsx b/client/Home.tsx index 822e308..161903b 100644 --- a/client/Home.tsx +++ b/client/Home.tsx @@ -96,6 +96,7 @@ const Home = () => { + diff --git a/client/constants/Pattern.ts b/client/constants/Pattern.ts index 5f8044e..5d58adf 100644 --- a/client/constants/Pattern.ts +++ b/client/constants/Pattern.ts @@ -27,6 +27,7 @@ enum Pattern { Sidebar = 'Sidebar', SimpleGrid = 'Simple grid', Slider = 'Slider', + SpinButton = 'Spin button', SplitNavigation = 'Split navigation', SplitScreen = 'Split screen', StepperInput = 'Stepper input', diff --git a/client/patterns/spin-button/Cover.tsx b/client/patterns/spin-button/Cover.tsx new file mode 100644 index 0000000..bad86cf --- /dev/null +++ b/client/patterns/spin-button/Cover.tsx @@ -0,0 +1,44 @@ +import React from 'react'; + +import Frame from '../../placeholders/Frame'; +import Triangle from '../../placeholders/Triangle'; + +const Cover: React.FC<{}> = () => { + return ( + +
+
+
+
+
+
+
+
+ + ); +}; + +export default Cover; diff --git a/client/patterns/spin-button/Details.tsx b/client/patterns/spin-button/Details.tsx new file mode 100644 index 0000000..bdd8f6c --- /dev/null +++ b/client/patterns/spin-button/Details.tsx @@ -0,0 +1,128 @@ +import React, { useState } from 'react'; + +import RelatedPatterns from '../../components/RelatedPatterns'; +import Pattern from '../../constants/Pattern'; +import DetailsLayout from '../../layouts/DetailsLayout'; +import BrowserFrame from '../../placeholders/BrowserFrame'; +import Triangle from '../../placeholders/Triangle'; + +const Details: React.FC<{}> = () => { + const [value, setValue] = useState(0); + const decrease = () => setValue(value - 1); + const increase = () => setValue(value + 1); + const change = (e: React.ChangeEvent) => setValue(parseInt(e.target.value, 10)); + + return ( + +
+ +
+ +
+ + +
+
+
+ )} + source={` +
+ + + + +
+ + + + + +
+
+`} + /> + + +
+ ); +}; + +export default Details; diff --git a/client/patterns/stepper-input/Details.tsx b/client/patterns/stepper-input/Details.tsx index 3a87559..05098e1 100644 --- a/client/patterns/stepper-input/Details.tsx +++ b/client/patterns/stepper-input/Details.tsx @@ -1,6 +1,8 @@ import React, { useState } from 'react'; import { Link } from 'react-router-dom'; +import RelatedPatterns from '../../components/RelatedPatterns'; +import Pattern from '../../constants/Pattern'; import DetailsLayout from '../../layouts/DetailsLayout'; import BrowserFrame from '../../placeholders/BrowserFrame'; @@ -83,6 +85,7 @@ const Details: React.FC<{}> = () => { `} /> + ); }; diff --git a/public/sitemap.xml b/public/sitemap.xml index 629fd0b..ad8808b 100644 --- a/public/sitemap.xml +++ b/public/sitemap.xml @@ -30,6 +30,7 @@ https://csslayout.io/separator https://csslayout.io/simple-grid https://csslayout.io/slider + https://csslayout.io/spin-button https://csslayout.io/split-navigation https://csslayout.io/stepper-input https://csslayout.io/switch