{"version":3,"file":"static/js/355582c69234936864ca.bundle.js","mappings":"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","sources":["webpack://Dobbies.Commerce/./src/modules/dobbies-brand/dobbies-brand.tsx?a366","webpack://Dobbies.Commerce/./src/modules/dobbies-brand/dobbies-brand.view.tsx?a2be","webpack://Dobbies.Commerce/./lib/dobbies-brand/module-registration.js?8fa9","webpack://Dobbies.Commerce/external var \"React\"?0d3b","webpack://Dobbies.Commerce/external var \"ReactDOM\"?853b"],"sourcesContent":["/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\n\r\nimport { IDobbiesBrandData } from './dobbies-brand.data';\r\nimport { IDobbiesBrandProps } from './dobbies-brand.props.autogenerated';\r\nimport { CategoryHierarchy } from '@msdyn365-commerce/commerce-entities';\r\n\r\nexport interface IDobbiesAlphabeticBrandsData {\r\n alphabet: string;\r\n brands: CategoryHierarchy[];\r\n}\r\n\r\ninterface IDobbiesBrandsState {\r\n alphabeticallySortedBrands?: IDobbiesAlphabeticBrandsData[];\r\n}\r\nexport interface IDobbiesBrandViewProps extends IDobbiesBrandProps {\r\n alphabeticallySortedBrands?: IDobbiesAlphabeticBrandsData[];\r\n}\r\n\r\n/**\r\n *\r\n * DobbiesBrand component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass DobbiesBrand extends React.PureComponent, IDobbiesBrandsState> {\r\n constructor(props: IDobbiesBrandProps) {\r\n super(props);\r\n this.state = {};\r\n }\r\n private getAlphabeticallySortedCategories = (): IDobbiesAlphabeticBrandsData[] => {\r\n const categories = this.props.data.categories.result;\r\n const alphabeticallySortedBrands: IDobbiesAlphabeticBrandsData[] = [];\r\n if (categories) {\r\n const alphabets = [\r\n 'A',\r\n 'B',\r\n 'C',\r\n 'D',\r\n 'E',\r\n 'F',\r\n 'G',\r\n 'H',\r\n 'I',\r\n 'J',\r\n 'K',\r\n 'L',\r\n 'M',\r\n 'N',\r\n 'O',\r\n 'P',\r\n 'Q',\r\n 'R',\r\n 'S',\r\n 'T',\r\n 'U',\r\n 'V',\r\n 'W',\r\n 'X',\r\n 'Y',\r\n 'Z'\r\n ];\r\n for (const alphabet of alphabets) {\r\n const alphabetBrand: IDobbiesAlphabeticBrandsData = { alphabet: alphabet, brands: [] };\r\n alphabeticallySortedBrands.push(alphabetBrand);\r\n }\r\n const seoFriendlyBrandsMenuItemName = this.props.config.seoFriendlyBrandsMenuName || 'Brands';\r\n let brandsId = -1;\r\n for (const c of categories) {\r\n if (c.Name === seoFriendlyBrandsMenuItemName && c.Children && c.Children.length) {\r\n brandsId = c.RecordId;\r\n for (const bc of c.Children) {\r\n this.sortAlphabeticallyCategories(bc, alphabeticallySortedBrands, brandsId);\r\n }\r\n }\r\n }\r\n }\r\n return alphabeticallySortedBrands;\r\n };\r\n\r\n private getBrandUrlFromConfig = (brandName: string) => {\r\n const brandDetails = this.props.config.brandsDetails;\r\n if (brandDetails && brandDetails.length) {\r\n for (const bd of brandDetails) {\r\n if (bd.brandName && bd.brandName?.toLowerCase() === brandName.toLowerCase()) {\r\n return bd.brandUrl;\r\n }\r\n }\r\n }\r\n return undefined;\r\n };\r\n\r\n private sortAlphabeticallyCategories = (\r\n cat: CategoryHierarchy,\r\n alphabeticallySortedBrands: IDobbiesAlphabeticBrandsData[],\r\n brandsId: number\r\n ) => {\r\n for (const asb of alphabeticallySortedBrands) {\r\n if (\r\n ((this.props.config.hideMenuItemPrefix && !cat.NeutralizedName?.startsWith(this.props.config.hideMenuItemPrefix)) ||\r\n !this.props.config.hideMenuItemPrefix) &&\r\n (cat.Name?.startsWith(asb.alphabet.toLowerCase()) || cat.Name?.startsWith(asb.alphabet))\r\n ) {\r\n if (cat.ParentCategory === brandsId) {\r\n const brandUrlInConfig = this.getBrandUrlFromConfig(cat.Name);\r\n if (brandUrlInConfig) {\r\n cat.Url = brandUrlInConfig;\r\n }\r\n asb.brands.push(cat);\r\n }\r\n if (cat.Children && cat.Children.length) {\r\n for (const cc of cat.Children) {\r\n this.sortAlphabeticallyCategories(cc, alphabeticallySortedBrands, brandsId);\r\n }\r\n }\r\n break;\r\n }\r\n }\r\n };\r\n\r\n public async componentDidMount(): Promise {\r\n if (this.props.config.showBrandsWithSEOFriendlyUrls) {\r\n const alphabeticallySortedBrands = this.getAlphabeticallySortedCategories();\r\n const brandsAddedInConfigOnly = this.props.config.brandsDetails?.filter(b => {\r\n if (alphabeticallySortedBrands && alphabeticallySortedBrands.length) {\r\n for (const abs of alphabeticallySortedBrands) {\r\n if (abs.brands && abs.brands.length) {\r\n for (const br of abs.brands) {\r\n if (br.Name && br.Name?.toLowerCase() === b.brandName?.toLowerCase()) {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return true;\r\n });\r\n\r\n for (const asb of alphabeticallySortedBrands) {\r\n if (brandsAddedInConfigOnly && brandsAddedInConfigOnly.length) {\r\n for (const configBrand of brandsAddedInConfigOnly) {\r\n if (\r\n configBrand.brandName?.startsWith(asb.alphabet.toLowerCase()) ||\r\n configBrand.brandName?.startsWith(asb.alphabet)\r\n ) {\r\n const c: CategoryHierarchy = {\r\n Name: configBrand.brandName,\r\n NeutralizedName: configBrand.brandName,\r\n Url: configBrand.brandUrl,\r\n Children: [],\r\n RecordId: -2\r\n };\r\n asb.brands.push(c);\r\n }\r\n }\r\n }\r\n asb.brands = asb.brands.filter(\r\n cat =>\r\n (this.props.config.hideMenuItemPrefix && !cat.Name?.startsWith(this.props.config.hideMenuItemPrefix)) ||\r\n !this.props.config.hideMenuItemPrefix\r\n );\r\n }\r\n this.setState({ alphabeticallySortedBrands: alphabeticallySortedBrands });\r\n }\r\n }\r\n public render(): JSX.Element | null {\r\n const productCollectionViewProps = {\r\n ...this.props,\r\n alphabeticallySortedBrands: this.state.alphabeticallySortedBrands\r\n };\r\n return this.props.renderView(productCollectionViewProps);\r\n }\r\n}\r\n\r\nexport default DobbiesBrand;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\nimport { IDobbiesBrandViewProps } from './dobbies-brand';\r\n// import { convertToString } from '@msdyn365-commerce/retail-proxy';\r\nimport Button from 'reactstrap/lib/Button';\r\nimport MsDyn365, * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport { IBrandProductsImagesUrlsData } from './dobbies-brand.props.autogenerated';\r\n\r\n// const decodeHtmlCharCodes = (str: string) => {\r\n// return str.replace(/(&#(\\d+);)/g, function(match, capture, charCode) {\r\n// return String.fromCharCode(charCode);\r\n// });\r\n// };\r\nexport interface IDobbiesBrandsDisplayInformation {\r\n brandLink?: string;\r\n brandLogo?: string;\r\n brandProductsImageInfo?: IBrandProductsImagesUrlsData[];\r\n brandsDescription?: string;\r\n brandName?: string;\r\n brandStartingAlphabet?: string;\r\n}\r\n\r\nexport interface IDobbiesAllAlphabetsView {\r\n brandsView: IDobbiesBrandsDisplayInformation[][];\r\n alphabet: string;\r\n}\r\nexport default (props: IDobbiesBrandViewProps) => {\r\n // const htmlTotext = decodeHtmlCharCodes(convertToString(props.config.brands)).replace(/&/g, '&');\r\n // const brands = htmlTotext.split(',');\r\n // const id = props.config.categoryID ? props.config.categoryID : 5637242076;\r\n const [selectedAlphabet, setSelectedAlphabet] = React.useState('');\r\n const alphabetsList = [\r\n 'A',\r\n 'B',\r\n 'C',\r\n 'D',\r\n 'E',\r\n 'F',\r\n 'G',\r\n 'H',\r\n 'I',\r\n 'J',\r\n 'K',\r\n 'L',\r\n 'M',\r\n 'N',\r\n 'O',\r\n 'P',\r\n 'Q',\r\n 'R',\r\n 'S',\r\n 'T',\r\n 'U',\r\n 'V',\r\n 'W',\r\n 'X',\r\n 'Y',\r\n 'Z',\r\n '#'\r\n ];\r\n\r\n const _getScreenSize = (ctx: Msdyn365.ICoreContext): number => {\r\n // always render in mobile viewport on a mobile device\r\n // if (ctx.request && ctx.request.device && ctx.request.device.Type === 'Mobile') {\r\n // return 1;\r\n // }\r\n\r\n if ((MsDyn365.isBrowser && window) !== undefined && MsDyn365.isBrowser && window && window.innerWidth) {\r\n const gridSettings = ctx.request.gridSettings;\r\n if (gridSettings) {\r\n if (gridSettings.xs && (MsDyn365.isBrowser && window && window.innerWidth) < gridSettings.xs.w) {\r\n // mobile\r\n return 1;\r\n } else if (gridSettings.sm && (MsDyn365.isBrowser && window && window.innerWidth) <= gridSettings.sm.w) {\r\n // iPad\r\n return 2;\r\n } else if (gridSettings.md && (MsDyn365.isBrowser && window && window.innerWidth) <= gridSettings.md.w) {\r\n // Desktop\r\n return 3;\r\n } else if (gridSettings.lg && (MsDyn365.isBrowser && window && window.innerWidth) <= gridSettings.lg.w) {\r\n // Desktop\r\n return 3;\r\n } else {\r\n return 3;\r\n }\r\n }\r\n }\r\n\r\n return 3; // desktop\r\n };\r\n // const brandsView: IDobbiesBrandsDisplayInformation[][] = [];\r\n const allAlphabetsBrandsView: IDobbiesAllAlphabetsView[] = [];\r\n const screenSize = _getScreenSize(props.context);\r\n const maxBrandsPerColumn = screenSize === 3 ? 4 : 7;\r\n const columnClassname = screenSize === 3 ? 'col-3' : 'col-6';\r\n let currentColumn = 0;\r\n const startsWithNumber = (str: string): boolean => {\r\n return /^\\d/.test(str);\r\n };\r\n\r\n for (const apbt of alphabetsList) {\r\n const alphabetBrandsView: IDobbiesBrandsDisplayInformation[][] = [];\r\n props.alphabeticallySortedBrands?.map((sortedItem, index: number) => {\r\n if (apbt === '#' && startsWithNumber(sortedItem.alphabet)) {\r\n currentColumn = 0;\r\n sortedItem.brands.map(item => {\r\n if (alphabetBrandsView.length < currentColumn + 1) {\r\n alphabetBrandsView.push([]);\r\n }\r\n if (alphabetBrandsView[currentColumn] && alphabetBrandsView[currentColumn].length >= maxBrandsPerColumn) {\r\n alphabetBrandsView.push([]);\r\n if (alphabetBrandsView[currentColumn].length > 0) {\r\n currentColumn = currentColumn + 1;\r\n }\r\n }\r\n const brandlink = item.Url;\r\n const brandLogoUrl: string | undefined = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n ?.brandLogoUrl;\r\n const brandProductsInfo = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n ?.brandProductsImagesUrls;\r\n const brandsDescription = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)?.brandDescription;\r\n const brandInfo: IDobbiesBrandsDisplayInformation = {\r\n brandLink: brandlink,\r\n brandLogo: brandLogoUrl,\r\n brandProductsImageInfo: brandProductsInfo,\r\n brandsDescription: brandsDescription,\r\n brandName: item.Name,\r\n brandStartingAlphabet: sortedItem.alphabet\r\n };\r\n if (alphabetBrandsView[currentColumn]) {\r\n alphabetBrandsView[currentColumn].push(brandInfo);\r\n }\r\n // else if (alphabetBrandsView[currentColumn - 1] && !alphabetBrandsView[currentColumn - 1].length) {\r\n // alphabetBrandsView[currentColumn - 1].push(brandInfo);\r\n // } else if (alphabetBrandsView[currentColumn - 2] && !alphabetBrandsView[currentColumn - 2].length) {\r\n // alphabetBrandsView[currentColumn - 2].push(brandInfo);\r\n // }\r\n // else {\r\n // alphabetBrandsView[currentColumn] = [];\r\n // }\r\n });\r\n } else if (sortedItem.alphabet === apbt) {\r\n currentColumn = 0;\r\n sortedItem.brands.map(item => {\r\n if (alphabetBrandsView.length < currentColumn + 1) {\r\n alphabetBrandsView.push([]);\r\n }\r\n if (alphabetBrandsView[currentColumn] && alphabetBrandsView[currentColumn].length >= maxBrandsPerColumn) {\r\n alphabetBrandsView.push([]);\r\n if (alphabetBrandsView[currentColumn].length > 0) {\r\n currentColumn = currentColumn + 1;\r\n }\r\n }\r\n const brandlink = item.Url;\r\n const brandLogoUrl: string | undefined = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n ?.brandLogoUrl;\r\n const brandProductsInfo = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n ?.brandProductsImagesUrls;\r\n const brandsDescription = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)?.brandDescription;\r\n const brandInfo: IDobbiesBrandsDisplayInformation = {\r\n brandLink: brandlink,\r\n brandLogo: brandLogoUrl,\r\n brandProductsImageInfo: brandProductsInfo,\r\n brandsDescription: brandsDescription,\r\n brandName: item.Name,\r\n brandStartingAlphabet: sortedItem.alphabet\r\n };\r\n if (alphabetBrandsView[currentColumn]) {\r\n alphabetBrandsView[currentColumn].push(brandInfo);\r\n }\r\n // else if (alphabetBrandsView[currentColumn - 1] && !alphabetBrandsView[currentColumn - 1].length) {\r\n // alphabetBrandsView[currentColumn - 1].push(brandInfo);\r\n // } else if (alphabetBrandsView[currentColumn - 2] && !alphabetBrandsView[currentColumn - 2].length) {\r\n // alphabetBrandsView[currentColumn - 2].push(brandInfo);\r\n // }\r\n // else {\r\n // alphabetBrandsView[currentColumn] = [];\r\n // }\r\n });\r\n }\r\n });\r\n\r\n allAlphabetsBrandsView.push({ alphabet: apbt, brandsView: alphabetBrandsView });\r\n }\r\n\r\n console.log('All alphabets brands view', allAlphabetsBrandsView);\r\n\r\n // if (props.alphabeticallySortedBrands) {\r\n // if (selectedAlphabet === '') {\r\n // for (const apbt of alphabetsList) {\r\n // props.alphabeticallySortedBrands?.map((sortedItem, index: number) => {\r\n // if (sortedItem.alphabet === apbt) {\r\n // sortedItem.brands.map(item => {\r\n // if (brandsView.length < currentColumn + 1) {\r\n // brandsView.push([]);\r\n // }\r\n // if (brandsView[currentColumn].length >= maxBrandsPerColumn) {\r\n // brandsView.push([]);\r\n // currentColumn = currentColumn + 1;\r\n // }\r\n // const brandlink = item.Url;\r\n // const brandLogoUrl: string | undefined = props.config.brandsDetails?.find(\r\n // detail => detail.brandName === item.Name\r\n // )?.brandLogoUrl;\r\n // const brandProductsInfo = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n // ?.brandProductsImagesUrls;\r\n // const brandsDescription = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n // ?.brandDescription;\r\n // const brandInfo: IDobbiesBrandsDisplayInformation = {\r\n // brandLink: brandlink,\r\n // brandLogo: brandLogoUrl,\r\n // brandProductsImageInfo: brandProductsInfo,\r\n // brandsDescription: brandsDescription,\r\n // brandName: item.Name,\r\n // brandStartingAlphabet: sortedItem.alphabet\r\n // };\r\n // brandsView[currentColumn].push(brandInfo);\r\n // });\r\n // }\r\n // });\r\n // }\r\n // } else {\r\n // props.alphabeticallySortedBrands?.map((sortedItem, index: number) => {\r\n // if (sortedItem.brands && sortedItem.brands.length && selectedAlphabet === '#') {\r\n // sortedItem.brands.map(item => {\r\n // if (item.Name && !startsWithNumber(item.Name)) {\r\n // return;\r\n // }\r\n // if (brandsView.length < currentColumn + 1) {\r\n // brandsView.push([]);\r\n // }\r\n // if (brandsView[currentColumn].length >= maxBrandsPerColumn) {\r\n // brandsView.push([]);\r\n // currentColumn = currentColumn + 1;\r\n // }\r\n // const brandlink = item.Url;\r\n // const brandLogoUrl: string | undefined = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n // ?.brandLogoUrl;\r\n // const brandProductsInfo = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n // ?.brandProductsImagesUrls;\r\n // const brandsDescription = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n // ?.brandDescription;\r\n // const brandInfo: IDobbiesBrandsDisplayInformation = {\r\n // brandLink: brandlink,\r\n // brandLogo: brandLogoUrl,\r\n // brandProductsImageInfo: brandProductsInfo,\r\n // brandsDescription: brandsDescription,\r\n // brandName: item.Name,\r\n // brandStartingAlphabet: sortedItem.alphabet\r\n // };\r\n // brandsView[currentColumn].push(brandInfo);\r\n // });\r\n // } else if (\r\n // !sortedItem.brands ||\r\n // !sortedItem.brands.length ||\r\n // sortedItem.alphabet.toLowerCase() !== selectedAlphabet.toLowerCase()\r\n // ) {\r\n // return;\r\n // } else if (\r\n // sortedItem.brands &&\r\n // sortedItem.brands.length &&\r\n // sortedItem.alphabet.toLowerCase() === selectedAlphabet.toLowerCase()\r\n // ) {\r\n // sortedItem.brands.map(item => {\r\n // if (brandsView.length < currentColumn + 1) {\r\n // brandsView.push([]);\r\n // }\r\n // if (brandsView[currentColumn].length >= maxBrandsPerColumn) {\r\n // brandsView.push([]);\r\n // currentColumn = currentColumn + 1;\r\n // }\r\n // const brandlink = item.Url;\r\n // const brandLogoUrl: string | undefined = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n // ?.brandLogoUrl;\r\n // const brandProductsInfo = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n // ?.brandProductsImagesUrls;\r\n // const brandsDescription = props.config.brandsDetails?.find(detail => detail.brandName === item.Name)\r\n // ?.brandDescription;\r\n // const brandInfo: IDobbiesBrandsDisplayInformation = {\r\n // brandLink: brandlink,\r\n // brandLogo: brandLogoUrl,\r\n // brandProductsImageInfo: brandProductsInfo,\r\n // brandsDescription: brandsDescription,\r\n // brandName: item.Name,\r\n // brandStartingAlphabet: sortedItem.alphabet\r\n // };\r\n // brandsView[currentColumn].push(brandInfo);\r\n // });\r\n // }\r\n // });\r\n // }\r\n // }\r\n React.useEffect(() => {\r\n resetUI();\r\n }, [selectedAlphabet]);\r\n React.useEffect(() => {\r\n setTimeout(() => {\r\n const brandSelected = document.getElementById(`brand-select-${selectedAlphabet}`);\r\n brandSelected?.classList.add('brand-selected');\r\n }, 2000);\r\n }, []);\r\n const resetUI = () => {\r\n const selectedClassname = `brand-selected`;\r\n for (const alphabet of alphabetsList) {\r\n if (alphabet !== selectedAlphabet) {\r\n const alphabetID = `brand-select-${alphabet}`;\r\n const alphabetElement = document.getElementById(alphabetID);\r\n alphabetElement?.classList.remove(selectedClassname);\r\n }\r\n }\r\n // brandsView.map((brandInfoRow, i: number) => {\r\n // brandInfoRow.map((column, index: number) => {\r\n // const dropdownElem = document.getElementById(`brand-id-${column.brandName?.toLowerCase()}`);\r\n // const dropDownBtn = document.getElementsByClassName('brands-dropdown-btn')[0];\r\n // dropdownElem?.classList.remove('show-brands-dropdown');\r\n // dropDownBtn?.classList.remove('showdropdown');\r\n // if (!dropdownElem?.classList.contains('hide-brands-dropdown')) {\r\n // dropdownElem?.classList.add('hide-brands-dropdown');\r\n // }\r\n // });\r\n // });\r\n };\r\n\r\n const maxProductImages = 1; //screenSize === 1 ? 2 : 3;\r\n\r\n return (\r\n
\r\n

Shop by brand

\r\n
    \r\n {alphabetsList.map((alphabet, index) => {\r\n return (\r\n {\r\n setSelectedAlphabet(alphabet);\r\n const brandSelected = document.getElementById(`brand-select-${alphabet}`);\r\n brandSelected?.classList.add('brand-selected');\r\n }}\r\n >\r\n {alphabet}\r\n \r\n );\r\n })}\r\n
\r\n
\r\n ) => {\r\n setSelectedAlphabet('');\r\n resetUI();\r\n }}\r\n >\r\n See all brands\r\n \r\n
\r\n {allAlphabetsBrandsView.length ? (\r\n
\r\n \r\n {/*
*/}\r\n <>\r\n {allAlphabetsBrandsView.map((alphabetView, iter) => {\r\n const brandsView = alphabetView.brandsView;\r\n if (\r\n (!brandsView.length || (brandsView.length && !brandsView[0].length)) &&\r\n selectedAlphabet !== '' &&\r\n alphabetView.alphabet === selectedAlphabet\r\n ) {\r\n return (\r\n
\r\n
\r\n

{props.config.noBrandMessage ? props.config.noBrandMessage : 'No Brands Found'}

\r\n
\r\n
\r\n );\r\n } else if (!brandsView.length || (brandsView.length && !brandsView[0].length)) {\r\n return <>;\r\n }\r\n return (\r\n <>\r\n \r\n

{alphabetView.alphabet}

\r\n {/*
\r\n
\r\n\r\n
\r\n
*/}\r\n
\r\n {brandsView.map((brandInfoRow, i: number) => {\r\n return (\r\n
\r\n {brandInfoRow.map((column, index: number) => {\r\n return (\r\n
\r\n

\r\n \r\n {column.brandName}\r\n \r\n {\r\n const toggle = document.getElementById(\r\n `${column.brandName}-dropdown-btn`\r\n );\r\n const dropdownElem = document.getElementById(\r\n `brand-id-${column.brandName?.toLowerCase()}`\r\n );\r\n\r\n if (\r\n dropdownElem?.classList.contains(\r\n 'hide-brands-dropdown'\r\n )\r\n ) {\r\n dropdownElem?.classList.remove(\r\n 'hide-brands-dropdown'\r\n );\r\n dropdownElem?.classList.add('show-brands-dropdown');\r\n toggle?.classList.add('showdropdown');\r\n } else {\r\n dropdownElem?.classList.remove(\r\n 'show-brands-dropdown'\r\n );\r\n dropdownElem?.classList.add('hide-brands-dropdown');\r\n toggle?.classList.remove('showdropdown');\r\n }\r\n }}\r\n className='brands-dropdown-btn '\r\n >\r\n

\r\n \r\n {column.brandLogo && (\r\n
\r\n \r\n
\r\n )}\r\n {column.brandProductsImageInfo && (\r\n
\r\n {column.brandProductsImageInfo\r\n .slice(0, maxProductImages)\r\n .map((imgInfo, index) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n })}\r\n
\r\n )}\r\n\r\n {column.brandsDescription && (\r\n

\r\n {column.brandsDescription}\r\n

\r\n )}\r\n\r\n \r\n Find out more\r\n \r\n
\r\n
\r\n );\r\n })}\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n \r\n );\r\n })}\r\n {/* {props.alphabeticallySortedBrands &&\r\n props.alphabeticallySortedBrands?.map((sortedItem, index: number) => {\r\n if (\r\n !sortedItem.brands ||\r\n !sortedItem.brands.length ||\r\n sortedItem.alphabet.toLowerCase() !== selectedAlphabet.toLowerCase()\r\n ) {\r\n return <>;\r\n }\r\n return (\r\n
\r\n
\r\n

\r\n {sortedItem.alphabet}\r\n

\r\n {props.alphabeticallySortedBrands &&\r\n sortedItem.brands.map((item, i: number) => {\r\n const brandlink = item.Url;\r\n const brandLogoUrl = props.config.brandsDetails?.find(\r\n detail => detail.brandName === item.Name\r\n )?.brandLogoUrl;\r\n const brandProductsImageUrl = props.config.brandsDetails?.find(\r\n detail => detail.brandName === item.Name\r\n )?.brandProductsImageUrl;\r\n const brandsDescription = props.config.brandsDetails?.find(\r\n detail => detail.brandName === item.Name\r\n )?.brandDescription;\r\n return (\r\n
\r\n

\r\n \r\n {item.Name}\r\n \r\n {\r\n const toggle = document.getElementsByClassName(\r\n 'brands-dropdown-btn'\r\n )[0];\r\n\r\n // toggle.classList.toggle('grow');\r\n\r\n const dropdownElem = document.getElementById(\r\n `brand-id-${item.Name?.toLowerCase()}`\r\n );\r\n\r\n if (dropdownElem?.classList.contains('hide-brands-dropdown')) {\r\n dropdownElem?.classList.remove('hide-brands-dropdown');\r\n dropdownElem?.classList.add('show-brands-dropdown');\r\n toggle?.classList.add('showdropdown');\r\n } else {\r\n dropdownElem?.classList.remove('show-brands-dropdown');\r\n dropdownElem?.classList.add('hide-brands-dropdown');\r\n toggle?.classList.remove('showdropdown');\r\n }\r\n }}\r\n className='brands-dropdown-btn '\r\n >\r\n

\r\n \r\n {brandLogoUrl && }\r\n {brandProductsImageUrl && (\r\n \r\n )}\r\n\r\n {brandsDescription && (\r\n

{brandsDescription}

\r\n )}\r\n\r\n \r\n Find out more\r\n \r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n );\r\n })} */}\r\n {/* {!props.alphabeticallySortedBrands && (\r\n <>\r\n
\r\n

\r\n A\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'A') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n B\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'B') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n C\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'C') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n D\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'D') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n E\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'E') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n F\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'F') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n G\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'G') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n H\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'H') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n I\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'I') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n J\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'J') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n K\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'K') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n L\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'L') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n M\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'M') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n N\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'N') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n O\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'O') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n P\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'P') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n Q\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'Q') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n R\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'R') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n S\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'S') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n T\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'T') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n U\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'U') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n V\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'V') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n W\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'W') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n X\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'X') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n Y\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'Y') {\r\n return (\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n
\r\n

\r\n Z\r\n

\r\n
    \r\n {brands?.map((item, index: number) => {\r\n const brandlink = `/all/${id}.c?refiners=%5B%5B5%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C5637147579%2C1%2C\"${item\r\n .trim()\r\n .replace(/(<([^>]+)>)/gi, '')\r\n .replace(/[+]/g, '%2B')\r\n .replace(/&/g, '%26')\r\n .replace(/\\s/g, '+')}\"%2C\"\"%5D%5D`;\r\n if (item.trim().charAt(0) === 'Z') {\r\n return console.log(\r\n 'Z',\r\n
  • \r\n {item.trim().replace(/(<([^>]+)>)/gi, '')}\r\n
  • \r\n );\r\n } else {\r\n return;\r\n }\r\n })}\r\n
\r\n
\r\n \r\n )} */}\r\n \r\n {/* */}\r\n \r\n \r\n ) : (\r\n
\r\n

{props.config.noBrandMessage ? props.config.noBrandMessage : 'No Brands Found'}

\r\n
\r\n )}\r\n \r\n );\r\n};\r\n","const binding = { modules: {}, dataActions: {} };\n\n const registerActionId = (actionPath) => {\n if (binding.dataActions[actionPath] &&\n binding.dataActions[actionPath].default &&\n binding.dataActions[actionPath].default.prototype &&\n binding.dataActions[actionPath].default.prototype.id) {\n binding.dataActions[binding.dataActions[actionPath].default.prototype.id] = binding.dataActions[actionPath];\n } else {\n Object.keys(binding.dataActions[actionPath] || {}).forEach(exportName => {\n if (binding.dataActions[actionPath][exportName] &&\n binding.dataActions[actionPath][exportName].prototype &&\n binding.dataActions[actionPath][exportName].prototype.Action) {\n binding.dataActions[binding.dataActions[actionPath][exportName].prototype.id] = binding.dataActions[actionPath][exportName];\n }\n })\n }\n };\n\n const registerSanitizedActionPath = (sanitizedActionPath, dataAction) => {\n if (process.env.NODE_ENV === 'development') {\n if (!dataAction.default) {\n throw new Error('Data action path does not have a default export');\n }\n if (!(dataAction.default.prototype.id && binding.dataActions[dataAction.default.prototype.id]) || !binding.dataActions[sanitizedActionPath]) {\n binding.dataActions[sanitizedActionPath] = dataAction;\n }\n } else {\n binding.dataActions[sanitizedActionPath] = dataAction;\n if (!binding.dataActions[sanitizedActionPath].default) {\n throw new Error('Data action path ' + sanitizedActionPath + ' does not have a default export');\n }\n binding.dataActions[sanitizedActionPath].default.prototype.RegistrationId = sanitizedActionPath;\n if (binding.dataActions[sanitizedActionPath].default.prototype.id) {\n binding.dataActions[binding.dataActions[sanitizedActionPath].default.prototype.id] = sanitizedActionPath;\n }\n }\n };\n \n\n (binding.modules['dobbies-brand'] = {\n c: () => require('partner/modules/dobbies-brand/dobbies-brand.tsx'),\n $type: 'contentModule',\n da: [{name:'categories', path:'@msdyn365-commerce-modules/retail-actions/dist/lib/get-categories-hierarchy', runOn: 1}],\n \n iNM: false,\n ns: '__local__',\n n: 'dobbies-brand',\n p: '__local__',\n \n pdp: '',\n \n \n md: 'src/modules/dobbies-brand'\n });\n \n\n {\n const sanitizedActionPath = '@msdyn365-commerce-modules/retail-actions/dist/lib/get-categories-hierarchy';\n let dataAction = require('@msdyn365-commerce-modules/retail-actions/dist/lib/get-categories-hierarchy');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n \n window.__bindings__ = window.__bindings__ || {};\n window.__bindings__.modules = {\n ...window.__bindings__.modules || {},\n ...binding.modules\n };\n \n window.__bindings__.dataActions = {\n ...window.__bindings__.dataActions || {},\n ...binding.dataActions\n };\n export const viewDictionary = {};\n viewDictionary['__local__|__local__|modules|dobbies-brand|dobbies-brand'] = {\n c: () => require('partner/modules/dobbies-brand/dobbies-brand.view.tsx'),\n cn: '__local__-__local__-dobbies-brand'\n };\nwindow.__bindings__ = window.__bindings__ || {};\nwindow.__bindings__.viewDictionary = {\n ...window.__bindings__.viewDictionary || {},\n ...viewDictionary\n };","module.exports = React;","module.exports = ReactDOM;"],"names":["DobbiesBrand","React","constructor","props","super","getAlphabeticallySortedCategories","categories","this","data","result","alphabeticallySortedBrands","alphabets","alphabet","alphabetBrand","brands","push","seoFriendlyBrandsMenuItemName","config","seoFriendlyBrandsMenuName","brandsId","c","Name","Children","length","RecordId","bc","sortAlphabeticallyCategories","getBrandUrlFromConfig","brandName","brandDetails","brandsDetails","bd","_bd$brandName","toLowerCase","brandUrl","cat","asb","_cat$NeutralizedName","_cat$Name","_cat$Name2","hideMenuItemPrefix","NeutralizedName","startsWith","ParentCategory","brandUrlInConfig","Url","cc","state","showBrandsWithSEOFriendlyUrls","_this$props$config$br","brandsAddedInConfigOnly","filter","b","abs","br","_br$Name","_b$brandName","configBrand","_configBrand$brandNam","_configBrand$brandNam2","_cat$Name3","setState","render","productCollectionViewProps","_objectSpread","renderView","selectedAlphabet","setSelectedAlphabet","alphabetsList","allAlphabetsBrandsView","screenSize","ctx","undefined","MsDyn365","isBrowser","window","innerWidth","gridSettings","request","xs","w","sm","md","lg","_getScreenSize","context","maxBrandsPerColumn","columnClassname","currentColumn","apbt","_props$alphabetically","alphabetBrandsView","map","sortedItem","index","str","test","item","_props$config$brandsD","_props$config$brandsD2","_props$config$brandsD3","brandInfo","brandLink","brandLogo","find","detail","brandLogoUrl","brandProductsImageInfo","brandProductsImagesUrls","brandsDescription","brandDescription","brandStartingAlphabet","_props$config$brandsD4","_props$config$brandsD5","_props$config$brandsD6","brandsView","console","log","resetUI","setTimeout","brandSelected","document","getElementById","classList","add","alphabetID","alphabetElement","remove","className","id","key","onClick","href","e","alphabetView","iter","style","display","brandInfoRow","i","column","_column$brandName2","title","Button","_column$brandName","toggle","dropdownElem","contains","src","slice","imgInfo","imageLink","imageUrl","noBrandMessage","binding","modules","dataActions","require","$type","da","name","path","runOn","iNM","ns","n","p","pdp","registerSanitizedActionPath","sanitizedActionPath","dataAction","default","Error","prototype","RegistrationId","__bindings__","viewDictionary","cn","module","exports","ReactDOM"],"sourceRoot":""}