From b503032f0d540f8b98e5d73916eeb79f04ae645a Mon Sep 17 00:00:00 2001 From: Phuoc Nguyen Date: Sat, 30 Nov 2019 19:04:19 +0700 Subject: [PATCH] Add radial progress bar --- client/constants/Pattern.ts | 1 + client/pages/ExplorePage.tsx | 1 + client/patterns/radial-progress-bar/Cover.tsx | 61 ++++++ .../patterns/radial-progress-bar/Details.tsx | 176 ++++++++++++++++++ public/sitemap.xml | 1 + 5 files changed, 240 insertions(+) create mode 100644 client/patterns/radial-progress-bar/Cover.tsx create mode 100644 client/patterns/radial-progress-bar/Details.tsx diff --git a/client/constants/Pattern.ts b/client/constants/Pattern.ts index 9c3be3e..86e1dfd 100644 --- a/client/constants/Pattern.ts +++ b/client/constants/Pattern.ts @@ -29,6 +29,7 @@ enum Pattern { PropertyList = 'Property list', ProgressBar = 'Progress bar', QuestionsAndAnswers = 'Questions and answers', + RadialProgressBar = 'Radial progress bar', RadioSwitch = 'Radio switch', Rating = 'Rating', SameHeightColumns = 'Same height columns', diff --git a/client/pages/ExplorePage.tsx b/client/pages/ExplorePage.tsx index 8e178be..3d517ac 100644 --- a/client/pages/ExplorePage.tsx +++ b/client/pages/ExplorePage.tsx @@ -112,6 +112,7 @@ const ExplorePage = () => { + diff --git a/client/patterns/radial-progress-bar/Cover.tsx b/client/patterns/radial-progress-bar/Cover.tsx new file mode 100644 index 0000000..4c43e26 --- /dev/null +++ b/client/patterns/radial-progress-bar/Cover.tsx @@ -0,0 +1,61 @@ +import React from 'react'; + +import Frame from '../../placeholders/Frame'; + +const Cover: React.FC<{}> = () => { + return ( + +
+
+
+ 45% +
+
+
+
+
+
+ + ); +}; + +export default Cover; diff --git a/client/patterns/radial-progress-bar/Details.tsx b/client/patterns/radial-progress-bar/Details.tsx new file mode 100644 index 0000000..faf9e8f --- /dev/null +++ b/client/patterns/radial-progress-bar/Details.tsx @@ -0,0 +1,176 @@ +import React from 'react'; + +import DetailsLayout from '../../layouts/DetailsLayout'; +import BrowserFrame from '../../placeholders/BrowserFrame'; + +interface RadialProgressProps { + percentages: number; +} + +const RadialProgress: React.FC = ({ percentages }) => { + return ( +
+
+ {percentages}% +
+
= 50 + ? 'rect(auto, auto, auto, auto)' + : 'rect(0px, 128px, 128px, 64px)', + height: '100%', + left: 0, + position: 'absolute', + top: 0, + width: '100%', + }} + > +
+
= 50 ? 180 : 0}deg)`, + width: '100%', + }} + /> +
+
+ ); +}; + +const Details: React.FC<{}> = () => { + return ( + +
+ +
+ +
+ )} + source={` +
+ +
+ ... +
+ + +
+ +
+ + +
+
+
+`} + /> +
+ + ); +}; + +export default Details; diff --git a/public/sitemap.xml b/public/sitemap.xml index 719a0c8..cdc60c3 100644 --- a/public/sitemap.xml +++ b/public/sitemap.xml @@ -34,6 +34,7 @@ https://csslayout.io/patterns/progress-bar https://csslayout.io/patterns/property-list https://csslayout.io/patterns/questions-and-answers + https://csslayout.io/patterns/radial-progress-bar https://csslayout.io/patterns/radio-switch https://csslayout.io/patterns/rating https://csslayout.io/patterns/same-height-columns