{"version":3,"file":"component---src-pages-search-portfolios-tsx-c3c8ffdaf29465615082.js","mappings":"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","sources":["webpack://gfw-brochure/./src/components/Breadcrumb.tsx","webpack://gfw-brochure/./src/components/Buttons/FormButtons.tsx","webpack://gfw-brochure/./src/components/Buttons/ToggleButton.tsx","webpack://gfw-brochure/./src/components/PageHeading/PageHeading.tsx","webpack://gfw-brochure/./src/components/PortfoliosTemplate/PortfolioCard.tsx","webpack://gfw-brochure/./src/components/PortfoliosTemplate/PortfolioCardGrid.tsx","webpack://gfw-brochure/./src/components/PortfoliosTemplate/specialisms.ts","webpack://gfw-brochure/./node_modules/@material-ui/core/esm/FormControl/FormControlContext.js","webpack://gfw-brochure/./node_modules/@material-ui/core/esm/internal/SwitchBase.js","webpack://gfw-brochure/./node_modules/@material-ui/core/esm/FormControl/useFormControl.js","webpack://gfw-brochure/./node_modules/@material-ui/core/esm/internal/svg-icons/CheckBoxOutlineBlank.js","webpack://gfw-brochure/./node_modules/@material-ui/core/esm/internal/svg-icons/CheckBox.js","webpack://gfw-brochure/./node_modules/@material-ui/core/esm/internal/svg-icons/IndeterminateCheckBox.js","webpack://gfw-brochure/./node_modules/@material-ui/core/esm/Checkbox/Checkbox.js","webpack://gfw-brochure/./src/components/PortfoliosTemplate/PortfolioFilter.tsx","webpack://gfw-brochure/./src/pages/search-portfolios.tsx"],"sourcesContent":["import React from \"react\"\nimport { Link } from \"gatsby\"\nimport styled from \"styled-components\"\n\ninterface Item {\n title: string\n url: string\n}\ninterface IBreadcrumb {\n data: Array\n}\nconst Breadcrumb = ({ data }: IBreadcrumb) => {\n return (\n \n {data &&\n data.map((item, key: number) => {\n return (\n \n \n {item.title}\n \n /\n \n )\n })}\n \n )\n}\n\nexport default Breadcrumb\n\nconst Container = styled.div`\n display: flex;\n align-items: center;\n /* padding: 10px 0px; */\n /* margin: 0 20px; */\n margin-bottom: 50px;\n position: relative;\n\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n display: none;\n }\n & span {\n margin: 0 8px;\n font-size: 9px;\n line-height: 11px;\n @media (min-width: ${props => props.theme.breakpoints.md}) {\n color: ${props => (props.color ? props.color : \"#000000\")};\n }\n\n &:last-of-type {\n display: none;\n }\n\n @media (min-width: ${props => props.theme.breakpoints.md}) {\n font-size: 12px;\n line-height: 15px;\n }\n }\n\n &::after {\n content: \"\";\n display: none;\n height: 1px;\n border-top: 2px solid #000000;\n position: absolute;\n bottom: 0;\n left: 20px;\n margin: 0 auto;\n\n @media (min-width: ${props => props.theme.breakpoints.md}) {\n width: 30%;\n max-width: 263px;\n margin: 0;\n left: 0;\n display: block;\n }\n }\n @media (min-width: ${props => props.theme.breakpoints.md}) {\n margin: 0 3%;\n }\n @media (min-width: ${props => props.theme.breakpoints.sm}) {\n padding: 20px 0;\n margin: 0;\n }\n`\n\nconst LinkBreadcrumb = styled(Link)`\n &,\n &:link,\n &:visited {\n color: #4a4a4a;\n font-size: 16px;\n line-height: 11px;\n display: inline;\n\n @media (min-width: ${props => props.theme.breakpoints.md}) {\n line-height: 15px;\n color: ${props => (props.color ? props.color : \"#4A4A4A\")};\n }\n }\n\n &:hover,\n &:active {\n color: ${props => props.theme.colors.turquoise};\n }\n &:last-of-type {\n color: #000000;\n font-weight: 600;\n &:hover,\n &:active {\n text-decoration: none;\n\n cursor: default;\n }\n }\n`\n","import styled from \"styled-components\"\nimport { Link } from \"gatsby\"\n\nexport enum SizeType {\n small,\n medium,\n large,\n}\n\ninterface BtnProps {\n size?: SizeType\n customwidth?: string\n inactive?: boolean\n onClick?: () => void\n to?: string\n}\n\nexport const FormButton = styled.div`\n background: ${props => props.theme.colors.turquoise};\n height: ${props => (props.size === SizeType.small ? \"40px\" : props.size === SizeType.medium ? \"50px\" : \"60px\")};\n min-width: ${props =>\n props.size === SizeType.small\n ? props.customwidth || \"125px\"\n : props.size === SizeType.medium\n ? props.customwidth || \"165px\"\n : props.customwidth || \"300px\"};\n width: ${props => props.customwidth};\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 30px;\n font-size: ${props => (props.size === SizeType.small ? \"14px\" : props.size === SizeType.medium ? \"20px\" : \"22px\")};\n font-weight: bold;\n text-align: center;\n text-transform: uppercase;\n color: white;\n cursor: pointer;\n border: 1px solid ${props => props.theme.colors.turquoise};\n transition: background 0.3s ease;\n &:hover {\n background-color: ${props => props.theme.colors.turquoiseHover};\n border-color: ${props => props.theme.colors.turquoiseHover};\n color: ${props => props.theme.tints.white};\n text-decoration: none;\n }\n`\n\nexport const ButtonSecondary = styled(FormButton)`\n background: ${props => props.theme.tints.white};\n color: ${props => props.theme.colors.secondary};\n border-color: ${props => props.theme.colors.secondary};\n &:hover {\n background-color: ${props => props.theme.colors.secondary};\n border-color: ${props => props.theme.colors.secondary};\n }\n`\n","import React, { FunctionComponent, useEffect, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { Link } from \"gatsby\"\n\nexport enum SizeType {\n small,\n medium,\n large,\n}\n\ninterface BtnProps {\n label: string\n checked: boolean\n onChange: any\n value: any\n}\n\nexport const ToggleButton: FunctionComponent = ({ label, checked, onChange, value }) => {\n function handleClick() {\n onChange(value, !checked)\n }\n\n return (\n \n )\n}\n\ninterface BtnProps {\n isActive: boolean\n}\n\nconst Button = styled.div`\n background: ${props => (props.isActive ? props.theme.colors.turquoise : \"white\")};\n\n height: 50px;\n margin: 0 5px;\n display: flex;\n align-items: center;\n justify-content: center;\n\n font-size: 16px;\n padding: 0 20px;\n font-weight: 500;\n text-align: center;\n text-transform: uppercase;\n color: ${props => (props.isActive ? \"white\" : \"black\")};\n cursor: pointer;\n border: 1px solid ${props => props.theme.colors.secondaryBorder};\n transition: background 0.3s ease;\n &:hover {\n background-color: ${props => props.theme.colors.turquoiseHover};\n border-color: ${props => props.theme.colors.turquoiseHover};\n color: ${props => props.theme.tints.white};\n text-decoration: none;\n }\n`\n\nexport const ToggleButtonSecondary = styled(ToggleButton)`\n background: ${props => props.theme.tints.white};\n color: ${props => props.theme.colors.secondary};\n border-color: ${props => props.theme.colors.secondary};\n &:hover {\n background-color: ${props => props.theme.colors.secondary};\n border-color: ${props => props.theme.colors.secondary};\n }\n`\n\nconst Label = styled.p`\n color: ${props => (props.isActive ? \"white\" : \"black\")};\n\n &:hover {\n color: white;\n }\n`\n","import React from \"react\"\nimport Breadcrumb from \"../Breadcrumb\"\nimport styled from \"styled-components\"\nimport { Container } from \"@material-ui/core\"\n\ninterface Item {\n title: string\n url: string\n}\ntype IBreadcrumb = Array\n\ninterface IPageHeading {\n breadcrumbData: IBreadcrumb\n pageTitle: string\n}\n\nconst PageHeading: React.FC = ({ breadcrumbData, pageTitle }) => {\n return (\n <>\n \n \n \n \n \n \n

{pageTitle}

\n
\n
\n
\n \n )\n}\n\nexport default PageHeading\n\nconst FullWidth = styled.div`\n width: 100vw;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n z-index: 10;\n background-color: #fafafa;\n`\n\nconst BreadCrumbContainer = styled(Container)`\n width: 100vw;\n justify-content: center;\n align-items: center;\n z-index: 10;\n`\nconst PageTitlePattern = styled.div`\n width: 100vw;\n background-color: #fafafa;\n background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUAgMAAADw5/WeAAAACVBMVEX6+vr4+Pjv7++npPQmAAAAKElEQVQI12NgCGBgZWBgEGBgZACzYWTo0tCoUAiJIs7gwMCCi02CXgD5agzBt66q6wAAAABJRU5ErkJggg==\");\n background-repeat: repeat;\n`\nconst PageTitleContainer = styled(Container)`\n justify-content: center;\n align-items: center;\n z-index: 10;\n margin-bottom: 50px;\n margin-top: 50px;\n`\n","import React, { useState } from \"react\"\nimport styled from \"styled-components\"\nimport { Link } from \"gatsby\"\nimport Img from \"gatsby-image\"\nimport { Card } from \"@material-ui/core\"\n\ninterface IportfolioCard {\n img?: any\n name: string\n slug: string\n desc: string\n tags?: string[]\n color?: string\n}\n\nconst PortfolioCard: React.FC = ({ img, name, desc, slug, tags, color }: IportfolioCard) => {\n const [shadow, setShadow] = useState({ front: 0, back: 0 })\n const onMouseOver = () => setShadow({ front: 15, back: 5 })\n const onMouseOut = () => setShadow({ front: 0, back: 0 })\n return (\n \n \n \n \n \n \n {tags && (\n \n {tags.slice(0, 2).map((item, i) => {\n return (\n \n {item}{\" \"}\n \n )\n })}\n \n )}\n {name}\n {desc}\n \n \n \n )\n}\n\nexport default PortfolioCard\n\nconst StyledCard = styled.div`\n border-radius: 0px !important;\n display: flex;\n align-items: flex-end;\n flex-direction: column;\n /* border: 1px solid red; */\n height: 100%;\n`\n\nconst PortfolioCardContainer = styled(Link)`\n margin: 10px 5px;\n background-color: #ffffff;\n &:hover {\n text-decoration: none;\n }\n max-width: 315px;\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n max-width: 100%;\n margin: 10px 5px;\n }\n`\nconst ImgContainer = styled(Card)`\n //width: 315px;\n width: 100%;\n height: 325px;\n max-height: 325px;\n border-top: 4px solid ${props => (props.color ? props.color : \"black\")};\n border-radius: 0px !important;\n & > .gatsby-image-wrapper {\n z-index: 1;\n }\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n max-width: 100%;\n height: auto;\n margin: 0 0px;\n }\n`\nconst PortfolioInfoBox = styled(Card)`\n padding: 21px 27px 26px;\n background: white;\n border-radius: 0px !important;\n height: 185px;\n width: 295px;\n\n background-color: #ffffff;\n border: 1px solid #e3e3e3;\n /* box-shadow: 0 0 5px 0 rgba(123, 123, 123, 0.2); */\n /* transition: transform 1s ease; */\n margin-top: -100px;\n margin-right: 0;\n z-index: 9;\n @media (max-width: ${props => props.theme.breakpoints.md}) {\n width: 100%;\n }\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n padding: 12px 13px;\n margin: 0 0px;\n width: 100%;\n }\n`\n\nconst PortfolioName = styled.p`\n font-size: 20px;\n font-weight: 500;\n letter-spacing: 0;\n line-height: 26px;\n height: 38px;\n margin-bottom: 0px;\n color: black;\n\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n font-size: 16px;\n\n line-height: 21px;\n }\n`\n\nconst PortfolioDesc = styled.p`\n color: #4a4a4a !important;\n font-size: 18px;\n line-height: 28px;\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n font-size: 14px;\n\n line-height: 24px;\n }\n`\nconst TagContainer = styled.div`\nmin-height:32px;\n /* display: flex; */\n flex-wrap: wrap;\n flex-direction: row;\n\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n padding-right: 0%;\n }\n`\ninterface IColor {\n color: string\n}\nconst Tag = styled.span`\n text-align: center;\n white-space: nowrap;\n text-transform: uppercase;\n background-color: ${props => (props.color ? props.color : \"black\")};\n color: white;\n font-size: 12px !important;\n line-height: 0.7rem;\n font-weight: 400;\n letter-spacing: 1px;\n margin: 0 5px 5px 0;\n\n //height: 20px;\n width: auto;\n padding: 4px 8px;\n border-radius: 10000px;\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n font-size: 10px;\n }\n`\n","import { Container } from \"@material-ui/core\"\nimport React, { FunctionComponent } from \"react\"\nimport styled from \"styled-components\"\nimport { v4 as uuidv4 } from \"uuid\"\nimport PortfolioCard from \"./PortfolioCard\"\n\ninterface IportfolioCard {\n img?: string\n name?: string\n desc?: string\n portfolioInfo?: any\n}\n\ninterface portfolioGridProps {\n portfolios: any\n}\n\n// type IUniversities = Array\n\nconst PortfolioCardGrid: FunctionComponent = ({ portfolios }) => {\n \n\n\n\n return (\n \n \n {portfolios.map((item, index) => {\n let image = null\n try{\n image = item.student_profile.searchImage.localFile.childImageSharp.fluid\n }catch(e){\n // console.log(e)\n }\n return (\n \n )\n })}\n \n \n )\n}\n\nexport default PortfolioCardGrid\n\nconst PortfoliosCardContainer = styled.div`\n margin: 0 auto;\n margin-top: 3rem;\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n width: 100%;\n max-width: 1291px;\n\n /* max-width: 1440px; */\n margin-bottom: 50px;\n\n @media (max-width: ${props => props.theme.breakpoints.lg}) {\n padding: 15px;\n grid-template-columns: repeat(3, 1fr);\n }\n\n @media (max-width: ${props => props.theme.breakpoints.md}) {\n padding: 0px;\n grid-template-columns: repeat(2, 1fr);\n }\n\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n padding: 0px;\n grid-template-columns: repeat(1, 1fr);\n }\n`\n","export const Sepcialisms = [\n \"Accessory Design\",\n \"Art Direction\",\n \"Atelier Design\",\n \"Award Nominee\",\n \"Award Winner\",\n \"Beauty Promotion\",\n \"Branding\",\n \"Business & Management\",\n \"Buying\",\n \"Childrenswear\",\n \"Digital Media\",\n \"Disabled Fashion\",\n \"Diversity\",\n \"Eco / Zero Waste Design\",\n \" Fashion Design\",\n \"Fashion Graphics\",\n \"Fashion Image\",\n \"Fashion Journalism\",\n \"Fashion Publication\",\n \"Fashion Technology\",\n \"Filmmaker\",\n \"Footwear Design\",\n \"Gender Neutral\",\n \"Heritage & Culture\",\n \"Illustration\",\n \"International Fashion\",\n \"Knitwear Design\",\n \"Makeup & Hair Design\",\n \"Marketing\",\n \"Menswear\",\n \"Merchandising\",\n \"Modestwear\",\n \"Photography\",\n \"Plus Size\",\n \"PR & Communications\",\n \"Promotion\",\n \"Retail Management\",\n \"Social Media\",\n \"Sportswear & Leisurewear\",\n \"Styling\",\n \"Sustainabilty\",\n \"Textiles\",\n \"Womenswear\",\n]\n","import * as React from 'react';\n/**\n * @ignore - internal component.\n */\n\nvar FormControlContext = React.createContext();\nif (process.env.NODE_ENV !== 'production') {\n FormControlContext.displayName = 'FormControlContext';\n}\nexport function useFormControl() {\n return React.useContext(FormControlContext);\n}\nexport default FormControlContext;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport { refType } from '@material-ui/utils';\nimport useControlled from '../utils/useControlled';\nimport useFormControl from '../FormControl/useFormControl';\nimport withStyles from '../styles/withStyles';\nimport IconButton from '../IconButton';\nexport var styles = {\n root: {\n padding: 9\n },\n checked: {},\n disabled: {},\n input: {\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n }\n};\n/**\n * @ignore - internal component.\n */\n\nvar SwitchBase = /*#__PURE__*/React.forwardRef(function SwitchBase(props, ref) {\n var autoFocus = props.autoFocus,\n checkedProp = props.checked,\n checkedIcon = props.checkedIcon,\n classes = props.classes,\n className = props.className,\n defaultChecked = props.defaultChecked,\n disabledProp = props.disabled,\n icon = props.icon,\n id = props.id,\n inputProps = props.inputProps,\n inputRef = props.inputRef,\n name = props.name,\n onBlur = props.onBlur,\n onChange = props.onChange,\n onFocus = props.onFocus,\n readOnly = props.readOnly,\n required = props.required,\n tabIndex = props.tabIndex,\n type = props.type,\n value = props.value,\n other = _objectWithoutProperties(props, [\"autoFocus\", \"checked\", \"checkedIcon\", \"classes\", \"className\", \"defaultChecked\", \"disabled\", \"icon\", \"id\", \"inputProps\", \"inputRef\", \"name\", \"onBlur\", \"onChange\", \"onFocus\", \"readOnly\", \"required\", \"tabIndex\", \"type\", \"value\"]);\n var _useControlled = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'SwitchBase',\n state: 'checked'\n }),\n _useControlled2 = _slicedToArray(_useControlled, 2),\n checked = _useControlled2[0],\n setCheckedState = _useControlled2[1];\n var muiFormControl = useFormControl();\n var handleFocus = function handleFocus(event) {\n if (onFocus) {\n onFocus(event);\n }\n if (muiFormControl && muiFormControl.onFocus) {\n muiFormControl.onFocus(event);\n }\n };\n var handleBlur = function handleBlur(event) {\n if (onBlur) {\n onBlur(event);\n }\n if (muiFormControl && muiFormControl.onBlur) {\n muiFormControl.onBlur(event);\n }\n };\n var handleInputChange = function handleInputChange(event) {\n var newChecked = event.target.checked;\n setCheckedState(newChecked);\n if (onChange) {\n // TODO v5: remove the second argument.\n onChange(event, newChecked);\n }\n };\n var disabled = disabledProp;\n if (muiFormControl) {\n if (typeof disabled === 'undefined') {\n disabled = muiFormControl.disabled;\n }\n }\n var hasLabelFor = type === 'checkbox' || type === 'radio';\n return /*#__PURE__*/React.createElement(IconButton, _extends({\n component: \"span\",\n className: clsx(classes.root, className, checked && classes.checked, disabled && classes.disabled),\n disabled: disabled,\n tabIndex: null,\n role: undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n ref: ref\n }, other), /*#__PURE__*/React.createElement(\"input\", _extends({\n autoFocus: autoFocus,\n checked: checkedProp,\n defaultChecked: defaultChecked,\n className: classes.input,\n disabled: disabled,\n id: hasLabelFor && id,\n name: name,\n onChange: handleInputChange,\n readOnly: readOnly,\n ref: inputRef,\n required: required,\n tabIndex: tabIndex,\n type: type,\n value: value\n }, inputProps)), checked ? checkedIcon : icon);\n}); // NB: If changed, please update Checkbox, Switch and Radio\n// so that the API documentation is updated.\n\nprocess.env.NODE_ENV !== \"production\" ? void 0 : void 0;\nexport default withStyles(styles, {\n name: 'PrivateSwitchBase'\n})(SwitchBase);","import * as React from 'react';\nimport FormControlContext from './FormControlContext';\nexport default function useFormControl() {\n return React.useContext(FormControlContext);\n}","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n/**\n * @ignore - internal component.\n */\n\nexport default createSvgIcon( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z\"\n}), 'CheckBoxOutlineBlank');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n/**\n * @ignore - internal component.\n */\n\nexport default createSvgIcon( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z\"\n}), 'CheckBox');","import * as React from 'react';\nimport createSvgIcon from '../../utils/createSvgIcon';\n/**\n * @ignore - internal component.\n */\n\nexport default createSvgIcon( /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z\"\n}), 'IndeterminateCheckBox');","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport { refType } from '@material-ui/utils';\nimport SwitchBase from '../internal/SwitchBase';\nimport CheckBoxOutlineBlankIcon from '../internal/svg-icons/CheckBoxOutlineBlank';\nimport CheckBoxIcon from '../internal/svg-icons/CheckBox';\nimport { alpha } from '../styles/colorManipulator';\nimport IndeterminateCheckBoxIcon from '../internal/svg-icons/IndeterminateCheckBox';\nimport capitalize from '../utils/capitalize';\nimport withStyles from '../styles/withStyles';\nexport var styles = function styles(theme) {\n return {\n /* Styles applied to the root element. */\n root: {\n color: theme.palette.text.secondary\n },\n /* Pseudo-class applied to the root element if `checked={true}`. */\n checked: {},\n /* Pseudo-class applied to the root element if `disabled={true}`. */\n disabled: {},\n /* Pseudo-class applied to the root element if `indeterminate={true}`. */\n indeterminate: {},\n /* Styles applied to the root element if `color=\"primary\"`. */\n colorPrimary: {\n '&$checked': {\n color: theme.palette.primary.main,\n '&:hover': {\n backgroundColor: alpha(theme.palette.primary.main, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n },\n '&$disabled': {\n color: theme.palette.action.disabled\n }\n },\n /* Styles applied to the root element if `color=\"secondary\"`. */\n colorSecondary: {\n '&$checked': {\n color: theme.palette.secondary.main,\n '&:hover': {\n backgroundColor: alpha(theme.palette.secondary.main, theme.palette.action.hoverOpacity),\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n },\n '&$disabled': {\n color: theme.palette.action.disabled\n }\n }\n };\n};\nvar defaultCheckedIcon = /*#__PURE__*/React.createElement(CheckBoxIcon, null);\nvar defaultIcon = /*#__PURE__*/React.createElement(CheckBoxOutlineBlankIcon, null);\nvar defaultIndeterminateIcon = /*#__PURE__*/React.createElement(IndeterminateCheckBoxIcon, null);\nvar Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(props, ref) {\n var _props$checkedIcon = props.checkedIcon,\n checkedIcon = _props$checkedIcon === void 0 ? defaultCheckedIcon : _props$checkedIcon,\n classes = props.classes,\n _props$color = props.color,\n color = _props$color === void 0 ? 'secondary' : _props$color,\n _props$icon = props.icon,\n iconProp = _props$icon === void 0 ? defaultIcon : _props$icon,\n _props$indeterminate = props.indeterminate,\n indeterminate = _props$indeterminate === void 0 ? false : _props$indeterminate,\n _props$indeterminateI = props.indeterminateIcon,\n indeterminateIconProp = _props$indeterminateI === void 0 ? defaultIndeterminateIcon : _props$indeterminateI,\n inputProps = props.inputProps,\n _props$size = props.size,\n size = _props$size === void 0 ? 'medium' : _props$size,\n other = _objectWithoutProperties(props, [\"checkedIcon\", \"classes\", \"color\", \"icon\", \"indeterminate\", \"indeterminateIcon\", \"inputProps\", \"size\"]);\n var icon = indeterminate ? indeterminateIconProp : iconProp;\n var indeterminateIcon = indeterminate ? indeterminateIconProp : checkedIcon;\n return /*#__PURE__*/React.createElement(SwitchBase, _extends({\n type: \"checkbox\",\n classes: {\n root: clsx(classes.root, classes[\"color\".concat(capitalize(color))], indeterminate && classes.indeterminate),\n checked: classes.checked,\n disabled: classes.disabled\n },\n color: color,\n inputProps: _extends({\n 'data-indeterminate': indeterminate\n }, inputProps),\n icon: /*#__PURE__*/React.cloneElement(icon, {\n fontSize: icon.props.fontSize === undefined && size === \"small\" ? size : icon.props.fontSize\n }),\n checkedIcon: /*#__PURE__*/React.cloneElement(indeterminateIcon, {\n fontSize: indeterminateIcon.props.fontSize === undefined && size === \"small\" ? size : indeterminateIcon.props.fontSize\n }),\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? void 0 : void 0;\nexport default withStyles(styles, {\n name: 'MuiCheckbox'\n})(Checkbox);","import { Checkbox, Container, Drawer, IconButton, makeStyles } from \"@material-ui/core\"\nimport React, { FunctionComponent, useEffect, useLayoutEffect, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { FormButton, ButtonSecondary } from \"../Buttons/FormButtons\"\nimport { ToggleButton } from \"../Buttons/ToggleButton\"\nimport MenuIcon from \"@material-ui/icons/Menu\"\nimport ClearIcon from \"@material-ui/icons/Clear\"\n\nimport Search from \"../../assets/svg/SearchBlue.svg\"\nimport PortfolioCardGrid from \"./PortfolioCardGrid\"\nimport _ from \"lodash\"\n\nimport RightArrow from \"../../assets/svg/long-arrow-right.svg\"\nimport { Sepcialisms } from \"./specialisms\"\nimport { Link } from \"gatsby\"\n\nconst useStyles = makeStyles(theme => ({\n drawer: {\n width: \"540px\",\n maxWidth: \"100%\",\n zIndex: 99,\n },\n}))\ninterface IportfolioCard {\n img?: string\n name?: string\n desc?: string\n portfolioInfo?: any\n}\ninterface portfolioFlierProps {\n data: any\n}\n\n// type IUniversities = Array\n\n// Sorry!\ntype IUniversities = any\n\nconst PortfolioFilter: FunctionComponent = ({ data }) => {\n const year = new Date().getFullYear()\n const studentYears = [year, year - 1, year - 2]\n const classes = useStyles()\n const [drawerOpen, setDrawerOpen] = useState(false)\n const [filtersSelected, setFiltersSelected] = useState([])\n const [numberOfSelected, setNumberOfSelected] = useState(0)\n const [displayFiltered, setDisplayFiltered] = useState([])\n const [resetChecks, setResetChecks] = useState(false)\n const [nameOfSelected, setNameOfSelected] = useState([])\n const [specialitiesObject, setSpecialitiesObject] = useState(Sepcialisms.map(v => false))\n const [yearObject, setYearObject] = useState(studentYears.map(v => false))\n const [yearToFilter, setYearToFilter] = useState(0)\n const [numberOfSpecialismsToShow, setNumberOfSpecialismsToShow] = useState(5)\n const [numberOfPortfoliosToShow, setNumberOfPortfoliosToShow] = useState(16)\n\n const [dataFilteredByYear, setDataFilteredByYear] = useState(data.sort(() => Math.random() - 0.5))\n const [shuffledData, setShuffledData] = useState(\n dataFilteredByYear.sort((a, b) =>\n a.student_profile.yearOfGraduation < b.student_profile.yearOfGraduation ? 1 : -1\n )\n )\n\n // useEffect(() => {\n // setShuffledData(\n // dataFilteredByYear.sort((a, b) =>\n // a.student_profile.yearOfGraduation < b.student_profile.yearOfGraduation ? 1 : -1\n // )\n // )\n // }, [dataFilteredByYear])\n\n useEffect(() => {\n let isMounted = true\n let portfoliosY = []\n if (isMounted) {\n switch (yearToFilter) {\n case 0:\n portfoliosY = data.sort(() => Math.random() - 0.5)\n break\n\n case year:\n data.map((item, index) => {\n if (item.student_profile.yearOfGraduation == year) {\n portfoliosY.push(item)\n }\n })\n break\n case year - 1:\n data.map((item, index) => {\n if (item.student_profile.yearOfGraduation == year - 1) {\n portfoliosY.push(item)\n }\n })\n break\n case year - 2:\n data.map((item, index) => {\n if (item.student_profile.yearOfGraduation == year - 2) {\n portfoliosY.push(item)\n }\n })\n break\n }\n }\n setDataFilteredByYear(portfoliosY)\n return () => {\n isMounted = false\n }\n }, [yearToFilter])\n\n\n useLayoutEffect(() => {\n if (window.innerWidth >= 1200) {\n setNumberOfSpecialismsToShow(4)\n } else if (window.innerWidth < 1200) {\n setNumberOfSpecialismsToShow(2)\n }\n }, [])\n\n function handleShowMore() {\n setDrawerOpen(!drawerOpen)\n }\n\n useEffect(() => {\n //reset checks\n let isMounted = true\n if (isMounted && resetChecks) {\n const tempspecialitiesObject = []\n const tempYearsObject = []\n Sepcialisms.map((title, index) => {\n tempspecialitiesObject.push(false)\n })\n studentYears.map((title, index) => {\n tempYearsObject.push(false)\n })\n\n setSpecialitiesObject(tempspecialitiesObject)\n setResetChecks(false)\n setNumberOfSelected(0)\n setYearToFilter(0)\n setYearObject(tempYearsObject)\n }\n return () => {\n isMounted = false\n }\n }, [resetChecks])\n \n useEffect(() => {\n let indexofSelected = []\n let isMounted = true\n if (isMounted) {\n if (numberOfSelected >= 1) {\n const nameSelected = [] //array of the name values of each specialism\n filtersSelected.map((item, index) => {\n //array of index values of each specialism\n if (item) {\n //if the item selected from the boolean list\n indexofSelected.push(index)\n }\n })\n indexofSelected.map((item, index) => {\n nameSelected.push(Sepcialisms[item])\n })\n setNameOfSelected(nameSelected) // creates usestate array of\n const map = new Map()\n for(let i = 0; i< shuffledData.length; i++){\n // if any of the names selected exist in the specialism array. Append\n for(let l =0; l< nameSelected.length; l++){\n const specs = shuffledData[i].student_profile.specialism\n if(specs.includes(nameSelected[l])){\n map.set(shuffledData[i].id,shuffledData[i])\n }\n }\n\n }\n const result = Array.from(map.values())\n setDisplayFiltered(result)\n } else {\n setDisplayFiltered(shuffledData)\n }\n }\n return () => {\n isMounted = false\n }\n }, [filtersSelected, numberOfSelected, yearObject])\n\n\n useEffect(() => {\n let isMounted = true\n if (isMounted) {\n setFiltersSelected(specialitiesObject)\n }\n return () => {\n isMounted = false\n }\n }, [specialitiesObject])\n\n\n // Hanlde the toggling of specialisms\n const handleCheck = e => {\n const tempSO = _.cloneDeep(specialitiesObject)\n tempSO[e.target.value] = e.target.checked\n const selectedSpecs = tempSO.filter(Boolean).length\n setNumberOfSelected(selectedSpecs)\n setSpecialitiesObject(tempSO)\n }\n\n const handleToggle = (value, newValue) => {\n const tempSO = _.cloneDeep(specialitiesObject)\n tempSO[value] = newValue\n const selectedSpecs = tempSO.filter(Boolean).length\n setNumberOfSelected(selectedSpecs)\n setSpecialitiesObject(tempSO)\n }\n\n const handleYear = (value, newValue) => {\n let tempYearsObject = []\n\n studentYears.map(i => {\n tempYearsObject.push(false)\n })\n const index = studentYears.indexOf(parseInt(value))\n tempYearsObject[index] = !tempYearsObject[index]\n\n setYearToFilter(value)\n setYearObject(tempYearsObject)\n }\n\n useEffect(() => {\n let isMounted = true\n if (isMounted) {\n if (numberOfSelected === 0) {\n setDisplayFiltered(shuffledData)\n }\n }\n return () => {\n isMounted = false\n }\n }, [numberOfSelected, dataFilteredByYear])\n\n return (\n \n \n \n \n
Filter Graduates By:
\n\n handleShowMore()}>\n {drawerOpen ? : }\n \n
\n
\n \n\n {Sepcialisms.map((title, index) => {\n return (\n \n \n {title}\n handleCheck(e)}\n value={index}\n style={{\n color: \"#4F9F31\",\n }}\n key={index}\n inputProps={{ \"aria-label\": title }}\n />\n \n \n )\n })}\n \n {\"\"}\n \n \n {\"\"}\n \n \n {\"\"}\n \n\n \n setResetChecks(true)}>\n {\" \"}\n CLEAR FILTERS\n \n setDrawerOpen(false)}>\n {\" \"}\n APPLY FILTERS {numberOfSelected}{\" \"}\n \n \n
\n\n \n \n
\n \n
\n Search for Graduate\n
\n \n setResetChecks(true)}\n value={\"all\"}\n >\n\n {/* {studentYears.map((item, index) => {\n return (\n \n )\n })} */}\n\n {Sepcialisms.slice(0, numberOfSpecialismsToShow).map((title, index) => {\n return (\n \n )\n })}\n \n handleShowMore()}>\n SHOW ALL FILTERS\n \n \n
\n\n \n setNumberOfPortfoliosToShow(numberOfPortfoliosToShow + 8)}>\n REVEAL MORE GRADUATES\n \n
\n )\n}\n\nexport default PortfolioFilter\nconst SearchIcon = styled(Search)`\n height: 24px;\n width: 24px;\n color: \"#0DB0E7\";\n position: relative;\n top: 5px;\n left: -5px;\n`\n\nconst SearchSection = styled(Link)`\n min-width: 150px;\n color: #4a4a4a;\n font-size: 16px;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n margin-right: 10px;\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n width: 100%;\n justify-content: left;\n }\n`\n\nconst StyledDrawer = styled(Drawer)`\n max-width: 100% !important;\n max-height: 100% !important;\n`\nconst LinkContainer = styled.div`\n color: ${props => props.theme.colors.turquoise};\n display: flex;\n flex-direction: row;\n align-items: center;\n min-width: 150px;\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n width: 100%;\n justify-content: right;\n }\n`\n\nconst ShowAllSpan = styled.span`\n color: #0db0e7;\n font-size: 16px;\n font-weight: 500;\n min-width: 110px;\n line-height: 26px;\n`\nconst StyledRightArrow = styled(RightArrow)``\nconst DrawerHeader = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: baseline;\n\n border-bottom: 1px solid #cbcbcb;\n`\nconst StyledClearIcon = styled(ClearIcon)`\n width: 30px !important;\n height: 30px !important;\n\n color: ${props => props.theme.colors.turquoise} !important;\n`\nconst StyledCheckbox = styled(Checkbox)``\n\nconst DrawTitleContainer = styled.div`\n height: 50px;\n padding: 10px 40px;\n`\nconst StyledMenuIcon = styled(MenuIcon)`\n width: 30px !important;\n height: 30px !important;\n\n color: ${props => props.theme.colors.turquoise} !important;\n`\nconst SpecialitiesContainer = styled.div`\n margin: 20px 0px 0;\n padding: 0 0px;\n width: 100%;\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n`\nconst DrawerFooter = styled.div`\n position: fixed;\n bottom: 0;\n background-color: black;\n display: flex;\n flex-direction: row;\n justify-content: space-around;\n padding: 23px 0;\n width: 100%;\n max-width: 540px;\n`\n\nconst SearchBar = styled(Container)`\n margin-top: 50px;\n padding-bottom: 20px;\n border-bottom: 1px solid #cbcbcb;\n display: flex;\n flex-direction: row;\n @media (max-width: 765px) {\n flex-direction: column;\n }\n`\n\nconst ButtonContainer = styled.div`\n display: flex;\n column-gap: 5px;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n margin: 0 auto;\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n justify-content: space-between;\n width: 100%;\n margin: 10px 0px;\n }\n`\nconst ButtonContainer2 = styled.div`\n display: flex;\n\n flex-direction: row;\n align-items: center;\n justify-content: center;\n margin: 0 auto 60px;\n @media (max-width: ${props => props.theme.breakpoints.sm}) {\n width: 100%;\n }\n`\n","import React from \"react\"\nimport { Layout } from \"../components/layout\"\nimport { graphql } from \"gatsby\"\nimport { LazyBlockFactory } from \"../util/LazyBlockFactory\"\nimport PageHeading from \"../components/PageHeading/PageHeading\"\n\nimport { Container } from \"@material-ui/core\"\n\nimport PortfolioFilter from \"../components/PortfoliosTemplate/PortfolioFilter\"\n\nconst headings = [\"Accessory Design\", \"Atelier Design\", \"Social Media\", \"Award Winner\", \"Beauty Promotion\"]\n\nconst breadcrumbData = [\n {\n title: \"Home\",\n url: \"/\",\n },\n {\n title: \"Search Portfolios\",\n url: \"/search-portfolios\",\n },\n]\n\nconst SearchPortfolios: React.FC = ({ data }) => {\n const portfoliosData = data.allWpPortfolio.edges.map(v => v.node)\n\n const blocks = LazyBlockFactory(data.wpPage.lazy_data, data.wpPage.title)\n\n const portfolios = portfoliosData.sort(() => Math.random() - 0.5)\n // const portfolios = portfoliosData\n\n return (\n \n \n \n {blocks.map(v => v)}\n \n \n \n\n \n )\n}\n\nexport default SearchPortfolios\n\nexport const pageQuery = graphql`\n query portfolios {\n site {\n siteMetadata {\n amplifyBranch\n }\n }\n wpPage(title: { eq: \"Portfolio Listing\" }) {\n id\n lazy_data\n title\n }\n allWpPortfolio {\n edges {\n node {\n id\n title\n slug\n student_portfolio {\n aboutMeHeading\n }\n student_profile {\n studentName\n specialism\n yearOfGraduation\n searchImage {\n localFile {\n childImageSharp {\n fluid(maxWidth: 400) {\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n }\n }\n }\n }\n }\n`\n {/* {data.site.siteMetadata.amplifyBranch !== \"master\" ? (\n \n \n \n {blocks.map(v => v)}\n \n \n ) : ( \n \n \n \n )} */}"],"names":["data","Container","map","item","key","LinkBreadcrumb","to","url","title","styled","props","theme","breakpoints","sm","md","color","Link","colors","turquoise","SizeType","FormButton","size","small","medium","customwidth","turquoiseHover","tints","white","ButtonSecondary","secondary","ToggleButton","label","checked","onChange","value","Button","onClick","isActive","secondaryBorder","breadcrumbData","pageTitle","FullWidth","BreadCrumbContainer","PageTitlePattern","PageTitleContainer","img","name","desc","slug","tags","useState","front","back","shadow","setShadow","PortfolioCardContainer","StyledCard","onMouseOver","onMouseOut","ImgContainer","className","elevation","fluid","style","height","width","imgStyle","objectFit","loading","PortfolioInfoBox","TagContainer","slice","i","Tag","PortfolioName","PortfolioDesc","Card","portfolios","maxWidth","PortfoliosCardContainer","index","image","student_profile","searchImage","localFile","childImageSharp","e","uuidv4","studentName","student_portfolio","aboutMeHeading","specialism","lg","Sepcialisms","FormControlContext","SwitchBase","ref","autoFocus","checkedProp","checkedIcon","classes","defaultChecked","disabledProp","disabled","icon","id","inputProps","inputRef","onBlur","onFocus","readOnly","required","tabIndex","type","other","_useControlled","useControlled","controlled","default","Boolean","state","_useControlled2","setCheckedState","muiFormControl","hasLabelFor","IconButton","component","root","role","undefined","event","input","newChecked","target","withStyles","padding","cursor","position","opacity","top","left","margin","zIndex","createSvgIcon","d","defaultCheckedIcon","CheckBox","defaultIcon","CheckBoxOutlineBlank","defaultIndeterminateIcon","IndeterminateCheckBox","Checkbox","_props$checkedIcon","_props$color","_props$icon","iconProp","_props$indeterminate","indeterminate","_props$indeterminateI","indeterminateIcon","indeterminateIconProp","_props$size","concat","capitalize","fontSize","palette","text","colorPrimary","primary","main","backgroundColor","action","hoverOpacity","colorSecondary","useStyles","makeStyles","drawer","year","Date","getFullYear","studentYears","drawerOpen","setDrawerOpen","filtersSelected","setFiltersSelected","numberOfSelected","setNumberOfSelected","displayFiltered","setDisplayFiltered","resetChecks","setResetChecks","setNameOfSelected","v","specialitiesObject","setSpecialitiesObject","yearObject","setYearObject","yearToFilter","setYearToFilter","numberOfSpecialismsToShow","setNumberOfSpecialismsToShow","numberOfPortfoliosToShow","setNumberOfPortfoliosToShow","sort","Math","random","dataFilteredByYear","setDataFilteredByYear","a","b","yearOfGraduation","shuffledData","handleShowMore","useEffect","isMounted","portfoliosY","push","useLayoutEffect","window","innerWidth","tempspecialitiesObject","tempYearsObject","indexofSelected","nameSelected","Map","length","l","includes","set","result","Array","from","values","handleToggle","newValue","tempSO","selectedSpecs","filter","StyledDrawer","anchor","open","paper","DrawTitleContainer","DrawerHeader","StyledClearIcon","StyledMenuIcon","SpecialitiesContainer","handleCheck","DrawerFooter","SearchBar","SearchSection","SearchIcon","ButtonContainer","LinkContainer","ShowAllSpan","StyledRightArrow","PortfolioCardGrid","ButtonContainer2","Search","Drawer","RightArrow","ClearIcon","MenuIcon","portfoliosData","allWpPortfolio","edges","node","blocks","LazyBlockFactory","wpPage","lazy_data","PageHeading"],"sourceRoot":""}