diff --git a/gatsby-node.js b/gatsby-node.js new file mode 100644 index 0000000..f7c586e --- /dev/null +++ b/gatsby-node.js @@ -0,0 +1,57 @@ +const { resolve } = require("path"); +const caseStudies = require("./src/data/case-studies.json"); + +exports.sourceNodes = ({ actions, createNodeId, createContentDigest }) => { + Object.keys(caseStudies).forEach(key => { + caseStudies[key].forEach((cs, i) => { + const { + title, + titleColor, + location, + image, + key_features, + price, + time_taken, + date, + content + } = cs; + const node = { + path: `/services/${key}/case-study-${i + 1}`, + type: key, + title, + titleColor, + location, + image, + key_features, + price, + time_taken, + date, + content, + id: createNodeId(`${key}-${i + 1}`), + internal: { + type: "CaseStudy", + contentDigest: createContentDigest(cs) + } + }; + actions.createNode(node); + }); + }); +}; + +exports.createPages = async ({ actions }) => { + const { createPage } = actions; + const template = resolve(__dirname, `src/case-study.js`); + Object.keys(caseStudies).forEach(key => { + caseStudies[key].forEach((cs, i) => { + const path = `/services/${key}/case-study-${i + 1}`; + createPage({ + path, + component: template, + context: { + pagePath: path, + images: `/${key}-cs${i + 1}(.*).jpg$/` + } + }); + }); + }); +}; diff --git a/src/case-study.js b/src/case-study.js new file mode 100644 index 0000000..2b56f0d --- /dev/null +++ b/src/case-study.js @@ -0,0 +1,122 @@ +import React from "react"; +import { graphql } from "gatsby"; +import Layout from "./layout"; +import { + CustomGallery, + Header, + Heading, + Section, + Table, + Text +} from "./components"; + +const shadows = { + white: "xl-white", + "dark-grey": "xl-black" +}; + +export default function CaseStudy({ data }) { + const { + path, + title, + titleColor, + location, + image, + key_features, + price, + time_taken, + date, + content + } = data.caseStudy; + const images = data.images.nodes.map(node => node.childImageSharp); + return ( + +
+ + {title} + + + {location} + +
+
+ + + + + + + + + + + + + + + + + + + +
Key features{key_features}
Price{price}
Time taken{time_taken}
Date{date}
+ {content.map((child, i) => ( + {child} + ))} +
+
+ +
+
+ ); +} + +export const query = graphql` + query CaseStudyQuery($pagePath: String!, $images: String!) { + caseStudy(path: { eq: $pagePath }) { + path + title + titleColor + location + image + key_features + price + time_taken + date + content + } + images: allFile( + filter: { relativePath: { regex: $images } } + sort: { fields: relativePath } + ) { + nodes { + childImageSharp { + thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { + ...GatsbyImageSharpFluid_withWebp + } + full: fluid(maxWidth: 1280, quality: 90) { + ...GatsbyImageSharpFluid_withWebp + } + } + } + } + } +`; +/* + images: allFile + filter: { relativePath: { regex: $images } } + sort: { fields: relativePath } + ) { + nodes { + childImageSharp { + thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { + ...GatsbyImageSharpFluid_withWebp + } + full: fluid(maxWidth: 1280, quality: 90) { + ...GatsbyImageSharpFluid_withWebp + } + } + } + } + } +`;*/ diff --git a/src/data/case-studies.json b/src/data/case-studies.json new file mode 100644 index 0000000..f08ed32 --- /dev/null +++ b/src/data/case-studies.json @@ -0,0 +1,187 @@ +{ + "bathrooms": [ + { + "title": "Modern Bathroom", + "titleColor": "white", + "location": "Maldon, Essex", + "image": 0, + "key_features": "Damp proofing, Tiling, Alcove lighting", + "price": "£4,900", + "time_taken": "12 days", + "date": "December 2020", + "content": [ + "This medium sized bathroom in Maldon, Essex came with very few design problems. The old bathroom was completely stripped out to a shell. The bathroom showed small signs of damp which was easily rectified with a waterproof membrane inserted within the shower walls.", + "The client decided to replace the old bath with a large walk-in shower. Client chose to have a false ceiling installed with spot lights and an alcove with electrics and lighting was fitted to give the bathroom a warm feeling.", + "We stripped out the old bathroom and disposed of all rubbish. We tiled, plastered and painted the floor and walls, installed the new bathroom with tiling, plastering, painting and all electrical works.", + "Total price for labour and building materials: £4,900." + ] + }, + { + "title": "Compact Bathroom", + "titleColor": "white", + "location": "Hackney, London", + "image": 0, + "key_features": "Damp proofing, Recessed shower mixer", + "price": "£4,000", + "time_taken": "10 days", + "date": "November 2020", + "content": [ + "Very small bathroom in a block of flats In Hackney, E9.", + "Existing bathroom was extremely old. We stripped the bathroom back to the shell and addressed damp issues.", + "Client went with our suggestion of using two different wall tiles.", + "Shower mixer was inserted in to wall to give the bathroom a modern, minimal feel.", + "Bathroom went from old and dated to fresh and modern.", + "Total price for labour and materials: £4,000." + ] + }, + { + "title": "Modest Shower Room", + "titleColor": "dark-grey", + "location": "Maldon, Essex", + "image": 0, + "key_features": "Accessible shower, False ceiling with spot lights", + "price": "£4,300", + "time_taken": "10 days", + "date": "January 2021", + "content": [ + "Medium sized bathroom for an elderly lady who had trouble getting in and out of the bath.", + "Complete refurbishment, bathroom was 20 years old and showed signs of damp. Completely stripped out old bathroom, disposed of all rubbish and lefy to air out with windows open for 3 days", + "New bathroom installed with a fresh look and easy to maintain. 4 spot lights installed in false ceiling.", + "Total price for labour and materials: £4,300." + ] + }, + { + "title": "Period with a Modern Twist", + "titleColor": "white", + "location": "Hampstead, London", + "image": 0, + "key_features": "Period features with modern twist", + "price": "£7,800", + "time_taken": "3 weeks", + "date": "October 2020", + "content": [ + "A complete refurbishment in a three bedroom house in Hampstead, London.", + "Existing bathroom was more than 20 years old. We completely stripped out the old bathroom and disposed of all rubbish.", + "Client went for a Victorian style with a modern twist.", + "Total price for labour and materials: £7,800." + ] + }, + { + "title": "En-suite", + "titleColor": "white", + "location": "Chelmsford, Essex", + "image": 0, + "key_features": "Feature wall with alcove shelf", + "price": "£6,400", + "time_taken": "11 days", + "date": "December 2020", + "content": [ + "2 bedroom flat Chelmsford. An en-suite bathroom. The existing bathroom was 10 years old and very dated.", + "Client went for fairly cheap products and tiles to keep within their budget.", + "Service included stripping out old bathroom and disposing of all rubbish, supplying and fitting everything.", + "Total price for labour and materials: £6,400." + ] + } + ], + "tiling": [ + { + "title": "New Extension", + "titleColor": "dark-grey", + "location": "Eltham, London", + "image": 3, + "key_features": "Under floor heating", + "price": "£2,400", + "time_taken": "4 days", + "date": "November 2020", + "content": [ + "20 square meters of floor tiles laid in a new extension.", + "We fitted under floor heating before laying self levelling compound.", + "The tiles were also grouted and sealed.", + "The project took 4 days to complete.", + "Total price for labour and materials: £2,400." + ] + }, + { + "title": "Ceramic Floor Tiles", + "titleColor": "white", + "location": "Brentwood, Essex", + "image": 3, + "key_features": "Ceramic floor tiles", + "price": "£1,100", + "time_taken": "1 day", + "date": "December 2020", + "content": [ + "The client needed 19 square meters of ceramic floor tiles fitted at short notice.", + "We first applied self leveling compound as the concrete floor was quite uneven. After 2 days to allow for the compound to completely dry, we returned to install the tiles.", + "The installation was completed in one day and the client was able to continue with the kitchen installation the following day.", + "The client provided the ceramic floor tiles and we provided the levelling compound, adhesive and grout.", + "Total price for labour and materials: £1,100." + ] + }, + { + "title": "Period Floor Tiles", + "titleColor": "white", + "location": "Barnes, London", + "image": 0, + "key_features": "Period style tiles", + "price": "£2,100", + "time_taken": "5 days", + "date": "October 2020", + "content": [ + "This room had old porcelain tiles, which we removed and disposed. We then applied self levelling compound to the floor and allowed to set for 24 hours.", + "All skirting and radiators were removed.", + "20 square meters of new tiles were laid and sealed for protection.", + "Total price for labour and materials: £2,100." + ] + }, + { + "title": "Wood Effect Porcelain", + "titleColor": "white", + "location": "Charlton, London", + "image": 0, + "key_features": "Wood effect porcelain tiles", + "price": "£3,100", + "time_taken": "7 days", + "date": "October 2020", + "content": [ + "Client needed old wooden floor removed. Once floor was removed 12mm concrete boards were laid to create a solid foundation.", + "50 square meters long porcelain tiles were laid sealed and grouted.", + "All rubbish was removed from site and included in the price.", + "We supplied all materials except tiles.", + "Total price for labour and materials: £3,100." + ] + }, + { + "title": "Period Floor Tiles", + "titleColor": "white", + "location": "Chelsea, London", + "image": 0, + "key_features": "Under floor heating", + "price": "£5,600", + "time_taken": "2 weeks", + "date": "October 2020", + "content": [ + "Existing floor consisted of dated tiles, client wanted to replace them and install under floor heating at the same time.", + "Floor and adhesive was removed and disposed.", + "Electric under floor heating system was installed and levelling compound applied.", + "54 square meters new tiles were laid, grouted and sealed.", + "Total price for labour and materials: £5,600." + ] + }, + { + "title": "Patterned Floor Tiles", + "titleColor": "dark-grey", + "location": "Fulham, London", + "image": 0, + "key_features": "Under floor heating", + "price": "£4,500", + "time_taken": "1 week", + "date": "October 2020", + "content": [ + "Removed old flooring and adhesive and disposed of all rubbish.", + "Installed electric under floor heating and laid 35 square meters of new tiles.", + "Total price for labour and materials: £4,500." + ] + } + ] +} diff --git a/src/images/bathroom-cs1a.jpg b/src/images/bathrooms-cs1a.jpg similarity index 100% rename from src/images/bathroom-cs1a.jpg rename to src/images/bathrooms-cs1a.jpg diff --git a/src/images/bathroom-cs1b.jpg b/src/images/bathrooms-cs1b.jpg similarity index 100% rename from src/images/bathroom-cs1b.jpg rename to src/images/bathrooms-cs1b.jpg diff --git a/src/images/bathroom-cs1c.jpg b/src/images/bathrooms-cs1c.jpg similarity index 100% rename from src/images/bathroom-cs1c.jpg rename to src/images/bathrooms-cs1c.jpg diff --git a/src/images/bathroom-cs1d.jpg b/src/images/bathrooms-cs1d.jpg similarity index 100% rename from src/images/bathroom-cs1d.jpg rename to src/images/bathrooms-cs1d.jpg diff --git a/src/images/bathroom-cs1e.jpg b/src/images/bathrooms-cs1e.jpg similarity index 100% rename from src/images/bathroom-cs1e.jpg rename to src/images/bathrooms-cs1e.jpg diff --git a/src/images/bathroom-cs2a.jpg b/src/images/bathrooms-cs2a.jpg similarity index 100% rename from src/images/bathroom-cs2a.jpg rename to src/images/bathrooms-cs2a.jpg diff --git a/src/images/bathroom-cs2b.jpg b/src/images/bathrooms-cs2b.jpg similarity index 100% rename from src/images/bathroom-cs2b.jpg rename to src/images/bathrooms-cs2b.jpg diff --git a/src/images/bathroom-cs2c.jpg b/src/images/bathrooms-cs2c.jpg similarity index 100% rename from src/images/bathroom-cs2c.jpg rename to src/images/bathrooms-cs2c.jpg diff --git a/src/images/bathroom-cs3a.jpg b/src/images/bathrooms-cs3a.jpg similarity index 100% rename from src/images/bathroom-cs3a.jpg rename to src/images/bathrooms-cs3a.jpg diff --git a/src/images/bathroom-cs3b.jpg b/src/images/bathrooms-cs3b.jpg similarity index 100% rename from src/images/bathroom-cs3b.jpg rename to src/images/bathrooms-cs3b.jpg diff --git a/src/images/bathroom-cs3c.jpg b/src/images/bathrooms-cs3c.jpg similarity index 100% rename from src/images/bathroom-cs3c.jpg rename to src/images/bathrooms-cs3c.jpg diff --git a/src/images/bathroom-cs4a.jpg b/src/images/bathrooms-cs4a.jpg similarity index 100% rename from src/images/bathroom-cs4a.jpg rename to src/images/bathrooms-cs4a.jpg diff --git a/src/images/bathroom-cs4b.jpg b/src/images/bathrooms-cs4b.jpg similarity index 100% rename from src/images/bathroom-cs4b.jpg rename to src/images/bathrooms-cs4b.jpg diff --git a/src/images/bathroom-cs4c.jpg b/src/images/bathrooms-cs4c.jpg similarity index 100% rename from src/images/bathroom-cs4c.jpg rename to src/images/bathrooms-cs4c.jpg diff --git a/src/images/bathroom-cs5a.jpg b/src/images/bathrooms-cs5a.jpg similarity index 100% rename from src/images/bathroom-cs5a.jpg rename to src/images/bathrooms-cs5a.jpg diff --git a/src/images/bathroom-cs5b.jpg b/src/images/bathrooms-cs5b.jpg similarity index 100% rename from src/images/bathroom-cs5b.jpg rename to src/images/bathrooms-cs5b.jpg diff --git a/src/pages/services/bathrooms/index.js b/src/pages/services/bathrooms.js similarity index 60% rename from src/pages/services/bathrooms/index.js rename to src/pages/services/bathrooms.js index 8b18f18..98e4102 100644 --- a/src/pages/services/bathrooms/index.js +++ b/src/pages/services/bathrooms.js @@ -1,14 +1,7 @@ import React from "react"; import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - Card, - Grid, - Header, - Heading, - Section, - Text -} from "../../../components"; +import Layout from "../../layout"; +import { Card, Grid, Header, Heading, Section, Text } from "../../components"; export default function Index({ data }) { return ( @@ -45,41 +38,16 @@ export default function Index({ data }) {
- Modern Bathroom} - > - Maldon, Essex - - Compact Bathroom} - > - Hackney, London - - Modest Shower Room} - > - Maldon, Essex - - Period with a Modern Twist} - > - Hampstead, London - - En-suite} - > - Chelmsford, Essex - + {data.caseStudies.nodes.map((cs, i) => ( + {cs.title}} + > + {cs.location} + + ))}
@@ -95,8 +63,18 @@ export const query = graphql` } } } + caseStudies: allCaseStudy( + filter: { type: { eq: "bathrooms" } } + sort: { fields: path } + ) { + nodes { + title + location + path + } + } images: allFile( - filter: { relativePath: { regex: "/bathroom-cs(.*)a.jpg$/" } } + filter: { relativePath: { regex: "/bathrooms-cs(.*)a.jpg$/" } } sort: { fields: relativePath } ) { nodes { diff --git a/src/pages/services/bathrooms/case-study-1.js b/src/pages/services/bathrooms/case-study-1.js deleted file mode 100644 index 4a42bb5..0000000 --- a/src/pages/services/bathrooms/case-study-1.js +++ /dev/null @@ -1,89 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- Modern Bathroom - Maldon, Essex -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresDamp proofing, Tiling, Alcove lighting
Price£4,900
Time taken12 days
DateDecember 2020
- - This medium sized bathroom in Maldon, Essex came with very few design - problems. The old bathroom was completely stripped out to a shell. The - bathroom showed small signs of damp which was easily rectified with a - waterproof membrane inserted within the shower walls. - - - The client decided to replace the old bath with a large walk-in - shower. Client chose to have a false ceiling installed with spot - lights and an alcove with electrics and lighting was fitted to give - the bathroom a warm feeling. - - - We stripped out the old bathroom and disposed of all rubbish. We - tiled, plastered and painted the floor and walls, installed the new - bathroom with tiling, plastering, painting and all electrical works. - - Total price for labour and building materials: £4,900. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/bathroom-cs1(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/bathrooms/case-study-2.js b/src/pages/services/bathrooms/case-study-2.js deleted file mode 100644 index 72cfc97..0000000 --- a/src/pages/services/bathrooms/case-study-2.js +++ /dev/null @@ -1,85 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- Compact Bathroom - Hackney, London -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresDamp proofing, Recessed shower mixer
Price£4,000
Time taken10 days
DateNovember 2020
- Very small bathroom in a block of flats In Hackney, E9. - - Existing bathroom was extremely old. We stripped the bathroom back to - the shell and addressed damp issues. - - - Client went with our suggestion of using two different wall tiles. - - - Shower mixer was inserted in to wall to give the bathroom a modern, - minimal feel. - - Bathroom went from old and dated to fresh and modern. - Total price for labour and materials: £4,000. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/bathroom-cs2(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/bathrooms/case-study-3.js b/src/pages/services/bathrooms/case-study-3.js deleted file mode 100644 index 3ae9d11..0000000 --- a/src/pages/services/bathrooms/case-study-3.js +++ /dev/null @@ -1,89 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- - Modest Shower Room - - - Maldon, Essex - -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresAccessible shower, False ceiling with spot lights
Price£4,300
Time taken10 days
DateJanuary 2021
- - Medium sized bathroom for an elderly lady who had trouble getting in - and out of the bath. - - - Complete refurbishment, bathroom was 20 years old and showed signs of - damp. Completely stripped out old bathroom, disposed of all rubbish - and lefy to air out with windows open for 3 days - - - New bathroom installed with a fresh look and easy to maintain. 4 spot - lights installed in false ceiling. - - Total price for labour and materials: £4,300. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/bathroom-cs3(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/bathrooms/case-study-4.js b/src/pages/services/bathrooms/case-study-4.js deleted file mode 100644 index be241fc..0000000 --- a/src/pages/services/bathrooms/case-study-4.js +++ /dev/null @@ -1,81 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- Period with a Modern Twist - Hampstead, London -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresPeriod features with modern twist
Price£7,800
Time taken3 weeks
DateOctober 2020
- - A complete refurbishment in a three bedroom house in Hampstead, - London. - - - Existing bathroom was more than 20 years old. We completely stripped - out the old bathroom and disposed of all rubbish. - - Client went for a Victorian style with a modern twist - Total price for labour and materials: £7,800. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/bathroom-cs4(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/bathrooms/case-study-5.js b/src/pages/services/bathrooms/case-study-5.js deleted file mode 100644 index ca42d88..0000000 --- a/src/pages/services/bathrooms/case-study-5.js +++ /dev/null @@ -1,84 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- En-suite - Chelmsford, Essex -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresFeature wall with alcove shelf
Price£6,400
Time taken11 days
DateDecember 2020
- - 2 bedroom flat Chelmsford. An en-suite bathroom. The existing bathroom - was 10 years old and very dated. - - - Client went for fairly cheap products and tiles to keep within their - budget. - - - Service included stripping out old bathroom and disposing of all - rubbish, supplying and fitting everything. - - Total price for labour and materials: £6,400. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/bathroom-cs5(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/tiling.js b/src/pages/services/tiling.js new file mode 100644 index 0000000..cfe9d74 --- /dev/null +++ b/src/pages/services/tiling.js @@ -0,0 +1,74 @@ +import React from "react"; +import { graphql } from "gatsby"; +import Layout from "../../layout"; +import { Card, Grid, Header, Heading, Section, Text } from "../../components"; + +export default function Index({ data }) { + return ( + +
+ + Tiling + +
+
+ + We can install both floor and wall tiles, including ceramic, natural + stone, marble, quartz, porcelain and mosaic tiles. + + + Our elite team of 3 stonemasons and 3 tilers has a combined total of + 112 years of experience within the industry. + +
+
+ + {data.caseStudies.nodes.map((cs, i) => ( + {cs.title}} + > + {cs.location} + + ))} + +
+
+ ); +} + +export const query = graphql` + query { + headerImage: file(relativePath: { eq: "banner_tiling.jpg" }) { + childImageSharp { + fluid(maxWidth: 1920, quality: 90) { + ...GatsbyImageSharpFluid_withWebp + } + } + } + caseStudies: allCaseStudy( + filter: { type: { eq: "tiling" } } + sort: { fields: path } + ) { + nodes { + title + location + path + } + } + images: allFile( + filter: { relativePath: { regex: "/tiling-cs(1d|2e|3a|4a|5a|6a).jpg$/" } } + sort: { fields: relativePath } + ) { + nodes { + childImageSharp { + fluid(maxWidth: 640, maxHeight: 480, quality: 90) { + ...GatsbyImageSharpFluid_withWebp + } + } + } + } + } +`; diff --git a/src/pages/services/tiling/case-study-1.js b/src/pages/services/tiling/case-study-1.js deleted file mode 100644 index 4ad707a..0000000 --- a/src/pages/services/tiling/case-study-1.js +++ /dev/null @@ -1,84 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- - New Extension - - - Eltham, London - -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresUnder floor heating
Price£2,400
Time taken4 days
DateNovember 2020
- - 20m2 of floor tiles laid in a new extension. - - - We fitted under floor heating before laying self levelling compound. - - The tiles were also grouted and sealed. - The project took 4 days to complete. - Total price for labour and materials: £2,400. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/tiling-cs1(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/tiling/case-study-2.js b/src/pages/services/tiling/case-study-2.js deleted file mode 100644 index b9f8528..0000000 --- a/src/pages/services/tiling/case-study-2.js +++ /dev/null @@ -1,89 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- Ceramic Floor Tiles - Brentwood, Essex -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresCeramic floor tiles
Price£1,100
Time taken1 day
DateDecember 2020
- - The client needed 19m2 of ceramic floor tiles fitted at - short notice. - - - We first applied self leveling compound as the concrete floor was - quite uneven. After 2 days to allow for the compound to completely - dry, we returned to install the tiles. - - - The installation was completed in one day and the client was able to - continue with the kitchen installation the following day. - - - The client provided the ceramic floor tiles and we provided the - levelling compound, adhesive and grout. - - Total price for labour and materials: £1,100. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/tiling-cs2(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/tiling/case-study-3.js b/src/pages/services/tiling/case-study-3.js deleted file mode 100644 index e3474f7..0000000 --- a/src/pages/services/tiling/case-study-3.js +++ /dev/null @@ -1,81 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- Period Floor Tiles - Barnes, London -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresPeriod style tiles
Price£2,100
Time taken5 days
DateOctober 2020
- - This room had old porcelain tiles, which we removed and disposed. We - then applied self levelling compound to the floor and allowed to set - for 24 hours. - - All skirting and radiators were removed. - - 20m2 of new tiles were laid and sealed for protection. - - Total price for labour and materials: £2,100. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/tiling-cs3(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/tiling/case-study-4.js b/src/pages/services/tiling/case-study-4.js deleted file mode 100644 index 17e3c50..0000000 --- a/src/pages/services/tiling/case-study-4.js +++ /dev/null @@ -1,83 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- Wood Effect Porcelain - Charlton, London -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresWood effect porcelain tiles
Price£3,100
Time taken7 days
DateOctober 2020
- - Client needed old wooden floor removed. Once floor was removed 12mm - concrete boards were laid to create a solid foundation. - - - 50m2 long porcelain tiles were laid sealed and grouted. - - - All rubbish was removed from site and included in the price. - - We supplied all materials except tiles. - Total price for labour and materials: £3,100. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/tiling-cs4(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/tiling/case-study-5.js b/src/pages/services/tiling/case-study-5.js deleted file mode 100644 index 07cb9ed..0000000 --- a/src/pages/services/tiling/case-study-5.js +++ /dev/null @@ -1,84 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- Period Floor Tiles - Chelsea, London -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresUnder floor heating
Price£5,600
Time taken2 weeks
DateOctober 2020
- - Existing floor consisted of dated tiles, client wanted to replace them - and install under floor heating at the same time. - - Floor and adhesive was removed and disposed. - - Electric under floor heating system was installed and levelling - compound applied. - - - 54m2 new tiles were laid, grouted and sealed. - - Total price for labour and materials: £5,600. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/tiling-cs5(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/tiling/case-study-6.js b/src/pages/services/tiling/case-study-6.js deleted file mode 100644 index 03d7da7..0000000 --- a/src/pages/services/tiling/case-study-6.js +++ /dev/null @@ -1,83 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - CustomGallery, - Header, - Heading, - Section, - Table, - Text -} from "../../../components"; - -export default function Index({ data }) { - const images = data.images.nodes.map(node => node.childImageSharp); - return ( - -
- - Patterned Floor Tiles - - - Fulham, London - -
-
- - - - - - - - - - - - - - - - - - - -
Key featuresUnder floor heating
Price£4,500
Time taken1 week
DateOctober 2020
- - Removed old flooring and adhesive and disposed of all rubbish. - - - Installed electric under floor heating and laid 35m2 of new - tiles. - - Total price for labour and materials: £4,500. -
-
- -
-
- ); -} - -export const query = graphql` - query { - images: allFile( - filter: { relativePath: { regex: "/tiling-cs6(.*).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - thumb: fluid(maxWidth: 256, maxHeight: 256, quality: 80) { - ...GatsbyImageSharpFluid_withWebp - } - full: fluid(maxWidth: 1280, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`; diff --git a/src/pages/services/tiling/index.js b/src/pages/services/tiling/index.js deleted file mode 100644 index b873015..0000000 --- a/src/pages/services/tiling/index.js +++ /dev/null @@ -1,103 +0,0 @@ -import React from "react"; -import { graphql } from "gatsby"; -import Layout from "../../../layout"; -import { - Card, - Grid, - Header, - Heading, - Section, - Text -} from "../../../components"; - -export default function Index({ data }) { - return ( - -
- - Tiling - -
-
- - We can install both floor and wall tiles, including ceramic, natural - stone, marble, quartz, porcelain and mosaic tiles. - - - Our elite team of 3 stonemasons and 3 tilers has a combined total of - 112 years of experience within the industry. - -
-
- - New Extension} - > - Eltham, London - - Ceramic Floor Tiles} - > - Brentwood, Essex - - Period Floor Tiles} - > - Barnes, London - - Wood Effect Porcelain} - > - Charlton, London - - Period Floor Tiles} - > - Chelsea, London - - Patterned Floor Tiles} - > - Fulham, London - - -
-
- ); -} - -export const query = graphql` - query { - headerImage: file(relativePath: { eq: "banner_tiling.jpg" }) { - childImageSharp { - fluid(maxWidth: 1920, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - images: allFile( - filter: { relativePath: { regex: "/tiling-cs(1d|2e|3a|4a|5a|6a).jpg$/" } } - sort: { fields: relativePath } - ) { - nodes { - childImageSharp { - fluid(maxWidth: 640, maxHeight: 480, quality: 90) { - ...GatsbyImageSharpFluid_withWebp - } - } - } - } - } -`;