diff --git a/client/App.tsx b/client/App.tsx
index cc794b6..2eec746 100644
--- a/client/App.tsx
+++ b/client/App.tsx
@@ -3,6 +3,7 @@ import { BrowserRouter as Router, Route, Switch as RouteSwitch } from 'react-rou
import './index.css';
+import Pattern from './constants/Pattern';
import Home from './Home';
import DetailsLoader from './loaders/DetailsLoader';
@@ -11,46 +12,53 @@ const App = () => {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
);
diff --git a/client/Home.tsx b/client/Home.tsx
index e15d163..822e308 100644
--- a/client/Home.tsx
+++ b/client/Home.tsx
@@ -87,6 +87,7 @@ const Home = () => {
+
diff --git a/client/constants/Pattern.ts b/client/constants/Pattern.ts
index 2fcc9fd..5f8044e 100644
--- a/client/constants/Pattern.ts
+++ b/client/constants/Pattern.ts
@@ -17,6 +17,7 @@ enum Pattern {
Pagination = 'Pagination',
PreviousNextButtons = 'Previous next buttons',
PricingTable = 'Pricing table',
+ PropertyList = 'Property list',
ProgressBar = 'Progress bar',
QuestionsAndAnswers = 'Questions and answers',
RadioSwitch = 'Radio switch',
diff --git a/client/loaders/DetailsLoader.tsx b/client/loaders/DetailsLoader.tsx
index 751fb90..2815774 100644
--- a/client/loaders/DetailsLoader.tsx
+++ b/client/loaders/DetailsLoader.tsx
@@ -1,10 +1,11 @@
import loadable, { LoadableComponent } from '@loadable/component';
import React from 'react';
+import Pattern from '../constants/Pattern';
import './spinner.css';
interface DetailsLoaderProps {
- pattern: string;
+ pattern: Pattern;
}
const slug = (item: string) => item.toLowerCase().split(' ').join('-');
diff --git a/client/patterns/menu/Details.tsx b/client/patterns/menu/Details.tsx
index b772189..13d1712 100644
--- a/client/patterns/menu/Details.tsx
+++ b/client/patterns/menu/Details.tsx
@@ -1,5 +1,7 @@
import React from 'react';
+import RelatedPatterns from '../../components/RelatedPatterns';
+import Pattern from '../../constants/Pattern';
import DetailsLayout from '../../layouts/DetailsLayout';
import BrowserFrame from '../../placeholders/BrowserFrame';
import Circle from '../../placeholders/Circle';
@@ -108,6 +110,7 @@ const Details: React.FC<{}> = () => {
`}
/>
+
);
};
diff --git a/client/patterns/property-list/Cover.tsx b/client/patterns/property-list/Cover.tsx
new file mode 100644
index 0000000..91f3dba
--- /dev/null
+++ b/client/patterns/property-list/Cover.tsx
@@ -0,0 +1,30 @@
+import React from 'react';
+
+import Circle from '../../placeholders/Circle';
+import Frame from '../../placeholders/Frame';
+import Rectangle from '../../placeholders/Rectangle';
+
+const Cover: React.FC<{}> = () => {
+ return (
+
+
+
+ );
+};
+
+export default Cover;
diff --git a/client/patterns/property-list/Details.tsx b/client/patterns/property-list/Details.tsx
new file mode 100644
index 0000000..a347fe1
--- /dev/null
+++ b/client/patterns/property-list/Details.tsx
@@ -0,0 +1,110 @@
+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';
+import Circle from '../../placeholders/Circle';
+import Rectangle from '../../placeholders/Rectangle';
+
+const Details: React.FC<{}> = () => {
+ const Item: React.FC<{}> = ({ children }) => {
+ return (
+
+ {children}
+
+ );
+ };
+
+ return (
+
+
+
+
+ -
+
+
+
+ -
+
+
+
+ -
+
+
+
+ -
+
+
+
+
+
+ )}
+ source={`
+
+
+
+ - ...
+
+
+ - ...
+
+`}
+ />
+
+
+
+
+
+ -
+ Name
+ WebAssembly in Action
+
+ -
+ Author
+ Gerard Gallant
+
+ -
+ Publishing date
+ November 2019
+
+ -
+ ISBN
+ 9781617295744
+
+
+
+
+
+ );
+};
+
+export default Details;
diff --git a/client/placeholders/Circle.tsx b/client/placeholders/Circle.tsx
index f09127f..41c3959 100644
--- a/client/placeholders/Circle.tsx
+++ b/client/placeholders/Circle.tsx
@@ -7,8 +7,9 @@ interface CircleProps {
const Circle: React.FC = ({ size = 16 }) => {
return (
= ({ height = 8 }) => {
return (
);
};
diff --git a/public/sitemap.xml b/public/sitemap.xml
index 8d515ca..629fd0b 100644
--- a/public/sitemap.xml
+++ b/public/sitemap.xml
@@ -22,6 +22,7 @@
https://csslayout.io/previous-next-buttons
https://csslayout.io/pricing-table
https://csslayout.io/progress-bar
+
https://csslayout.io/property-list
https://csslayout.io/questions-and-answers
https://csslayout.io/radio-switch
https://csslayout.io/same-height-columns