diff --git a/client/constants/Pattern.ts b/client/constants/Pattern.ts index 1efff21..485ea8f 100644 --- a/client/constants/Pattern.ts +++ b/client/constants/Pattern.ts @@ -24,6 +24,7 @@ enum Pattern { FeatureComparison = 'Feature comparison', FeatureList = 'Feature list', FixedAtCorner = 'Fixed at corner', + FixedAtSide = 'Fixed at side', FloatingLabel = 'Floating label', FullScreenMenu = 'Full screen menu', HolyGrail = 'Holy grail', diff --git a/client/pages/ExplorePage.tsx b/client/pages/ExplorePage.tsx index a28903a..01414d5 100644 --- a/client/pages/ExplorePage.tsx +++ b/client/pages/ExplorePage.tsx @@ -150,6 +150,7 @@ const ExplorePage = () => { + diff --git a/client/patterns/fixed-at-corner/Details.tsx b/client/patterns/fixed-at-corner/Details.tsx index 2e3cb17..4517860 100644 --- a/client/patterns/fixed-at-corner/Details.tsx +++ b/client/patterns/fixed-at-corner/Details.tsx @@ -70,7 +70,7 @@ const Details: React.FC<{}> = () => { `} /> - + ); }; diff --git a/client/patterns/fixed-at-side/Cover.tsx b/client/patterns/fixed-at-side/Cover.tsx new file mode 100644 index 0000000..7377c5e --- /dev/null +++ b/client/patterns/fixed-at-side/Cover.tsx @@ -0,0 +1,31 @@ +import React from 'react'; + +import Frame from '../../placeholders/Frame'; + +const Cover: React.FC<{}> = () => { + return ( + +
+
+
+ + ); +}; + +export default Cover; diff --git a/client/patterns/fixed-at-side/Details.tsx b/client/patterns/fixed-at-side/Details.tsx new file mode 100644 index 0000000..b0ffaff --- /dev/null +++ b/client/patterns/fixed-at-side/Details.tsx @@ -0,0 +1,255 @@ +import React from 'react'; + +import Heading from '../../components/Heading'; +import RelatedPatterns from '../../components/RelatedPatterns'; +import Pattern from '../../constants/Pattern'; +import DetailsLayout from '../../layouts/DetailsLayout'; +import BrowserFrame from '../../placeholders/BrowserFrame'; + +const Details: React.FC<{}> = () => { + return ( + +
+ +
+
+ )} + source={` + +
+ ... +
+`} + /> +
+ +
+ + +
+
+

A Feedback button

+
+ Feedback +
+
+ +
+

Navgiate between full page sections

+
+
+
+
+
+
+
+ +
+

Social sharing toolbar

+
+
+ + + +
+
+ + + +
+
+ + + +
+
+
+
+
+ + +
+ ); +}; + +export default Details; diff --git a/client/placeholders/BrowserFrame.tsx b/client/placeholders/BrowserFrame.tsx index 1f85c28..4447470 100644 --- a/client/placeholders/BrowserFrame.tsx +++ b/client/placeholders/BrowserFrame.tsx @@ -4,7 +4,7 @@ import SampleCode from '../components/SampleCode'; interface BrowserFrameProps { content: React.ReactNode; - source: string; + source?: string; } const BrowserFrame: React.FC = ({ content, source }) => { @@ -55,21 +55,23 @@ const BrowserFrame: React.FC = ({ content, source }) => { width: '16px', }} /> -
- -
+ {source && ( +
+ +
+ )}
= ({ content, source }) => { > {content}
-
- -
+ {source && ( +
+ +
+ )} ); diff --git a/public/sitemap.xml b/public/sitemap.xml index 7f70f96..19af251 100644 --- a/public/sitemap.xml +++ b/public/sitemap.xml @@ -25,6 +25,7 @@ https://csslayout.io/patterns/feature-comparison https://csslayout.io/patterns/feature-list https://csslayout.io/patterns/fixed-at-corner + https://csslayout.io/patterns/fixed-at-side https://csslayout.io/patterns/floating-label https://csslayout.io/patterns/full-screen-menu https://csslayout.io/patterns/holy-grail