import moment from "moment"; import { get, startCase, uniqueId } from "lodash"; import { ILayoutSettings, PageSectionCategory, } from "@sc/plugins/misc/v2/blocks/weblayouts/types"; import { ComponentTypes } from "@sc/plugins/webcomponents/v2/types"; import { LinkDisplayTypes, LinkLayoutStyles, } from "@sc/plugins/webcomponents/v2/Navigation/types"; import { combineData, lorem } from "../../utils"; import { default as defaultData } from "./data.json"; import { style } from "./style"; import { getImagePlaceholder, ImagePlaceholderTypes, getVideoPlaceholder, VideoPlaceholderTypes, } from "../../Placeholders"; import theme from "../../theme"; import { FooterLayouts } from "../types"; import { IconSource } from "@sc/plugins/webcomponents/v2/Icon/live"; import { faFacebookF, faGoogle, faTwitter, faInstagram, } from "@fortawesome/free-brands-svg-icons"; const content = combineData(defaultData); const settings: ILayoutSettings = { label: FooterLayouts.NINE, layout: FooterLayouts.NINE, previewImage: "https://sandcastleassets.s3.amazonaws.com/blocks/footers/Footer09.png", default: { type: ComponentTypes.SECTION, label: PageSectionCategory.FOOTER, bodyOnly: true, canHaveChildren: false, properties: { ...style.SECTION, ...style.SECTION_INNER, }, children: [ { type: ComponentTypes.COLUMNS, canHaveChildren: false, properties: { width: "100%", }, children: [ { type: ComponentTypes.COLUMN, canHaveChildren: true, preventDelete: true, md: parseInt((4 * 100) / 12), properties: { height: "100%", padding: 0, minHeight: 20 }, children: [ getImagePlaceholder({ type: ImagePlaceholderTypes.NONE, src: theme.logoIcon, style: { width: 50, display: "inline-block", mobile: { desktop: { textAlign: "left", }, smartphone: { textAlign: "center", }, }, }, }), { type: ComponentTypes.TEXT, canHaveChildren: false, properties: { ...style.TEXT, fontSize: "10pt", ...get(content, "sub_headline.style", {}), }, html: `It's true. Getting results is much easier than you think.`, }, { type: ComponentTypes.NAVIGATION, canHaveChildren: false, linkStyle: style.NAVIGATION.linkStyle, layoutStyle: LinkLayoutStyles.HORIZONTAL, properties: { display: "inline-block", mobile: { desktop: { marginTop: 20, textAlign: "left", }, smartphone: { marginTop: 0, textAlign: "center", }, }, }, data: [ { id: uniqueId(), caption: " ", linkDisplayType: LinkDisplayTypes.ICON, label: " ", icon: "Twitter", }, { id: uniqueId(), caption: " ", linkDisplayType: LinkDisplayTypes.ICON, label: " ", icon: "Facebook", }, { id: uniqueId(), caption: " ", linkDisplayType: LinkDisplayTypes.ICON, label: " ", icon: "Instagram", }, ], }, ], }, { type: ComponentTypes.COLUMN, canHaveChildren: true, preventDelete: true, md: parseInt((8 * 100) / 12), properties: { height: "100%", padding: 0, minHeight: 20 }, children: [ { type: ComponentTypes.CONTAINER, canHaveChildren: true, properties: { width: 400, maxWidth: "100%", textAlign: "right", mobile: { desktop: { display: "inline-block", }, smartphone: { display: "none", }, }, }, children: [ { type: ComponentTypes.COLUMNS, canHaveChildren: false, properties: { width: "100%", }, children: [ { type: ComponentTypes.COLUMN, canHaveChildren: true, preventDelete: true, md: parseInt((4 * 100) / 12), properties: { height: "100%", padding: 0, minHeight: 20, }, children: [ { type: ComponentTypes.HEADLINE, canHaveChildren: false, properties: { ...style.HEADLINE, ...get(content, "main_headline.style", {}), }, html: "Information", }, { type: ComponentTypes.NAVIGATION, canHaveChildren: false, linkStyle: style.NAVIGATION.linkStyle, layoutStyle: LinkLayoutStyles.VERTICAL, properties: { padding: 20, }, data: [ { id: uniqueId(), caption: "About Us", linkDisplayType: LinkDisplayTypes.TEXT, }, { id: uniqueId(), caption: "Contact Us", linkDisplayType: LinkDisplayTypes.TEXT, }, { id: uniqueId(), caption: "FAQs", linkDisplayType: LinkDisplayTypes.TEXT, }, ], }, ], }, { type: ComponentTypes.COLUMN, canHaveChildren: true, preventDelete: true, md: parseInt((4 * 100) / 12), properties: { height: "100%", padding: 0, minHeight: 20, }, children: [ { type: ComponentTypes.HEADLINE, canHaveChildren: false, properties: { ...style.HEADLINE, ...get(content, "main_headline.style", {}), }, html: "Support", }, { type: ComponentTypes.NAVIGATION, canHaveChildren: false, linkStyle: style.NAVIGATION.linkStyle, layoutStyle: LinkLayoutStyles.VERTICAL, properties: { padding: 20, }, data: [ { id: uniqueId(), caption: "About Us", linkDisplayType: LinkDisplayTypes.TEXT, }, { id: uniqueId(), caption: "Contact Us", linkDisplayType: LinkDisplayTypes.TEXT, }, { id: uniqueId(), caption: "FAQs", linkDisplayType: LinkDisplayTypes.TEXT, }, ], }, ], }, { type: ComponentTypes.COLUMN, canHaveChildren: true, preventDelete: true, md: parseInt((4 * 100) / 12), properties: { height: "100%", padding: 0, minHeight: 20, }, children: [ { type: ComponentTypes.HEADLINE, canHaveChildren: false, properties: { ...style.HEADLINE, ...get(content, "main_headline.style", {}), }, html: "Features", }, { type: ComponentTypes.NAVIGATION, canHaveChildren: false, linkStyle: style.NAVIGATION.linkStyle, layoutStyle: LinkLayoutStyles.VERTICAL, properties: { padding: 20, }, data: [ { id: uniqueId(), caption: "About Us", linkDisplayType: LinkDisplayTypes.TEXT, }, { id: uniqueId(), caption: "Contact Us", linkDisplayType: LinkDisplayTypes.TEXT, }, { id: uniqueId(), caption: "FAQs", linkDisplayType: LinkDisplayTypes.TEXT, }, ], }, ], }, ], }, ], }, ], }, ], }, ], }, }; export default settings;