{"version":3,"file":"static/js/24.6a03e7d802ffc8410c38.chunk.js","mappings":"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","sources":["webpack:///./src/modules/lds-contact-us/lds-contact-us.tsx?a0d6","webpack:///./src/modules/lds-contact-us/components/ContactTable.tsx?c4d5","webpack:///./src/modules/lds-contact-us/components/ContactCountrySelect.tsx?fcd5","webpack:///./src/modules/lds-contact-us/components/ContactContent.tsx?7836","webpack:///./src/modules/lds-contact-us/lds-contact-us.view.tsx?0a24","webpack:///./src/modules/lds-store-locator/lds-store-locator.tsx?eae1","webpack:///./src/modules/lds-store-locator/components/timeHelper.ts?3597","webpack:///./src/modules/lds-store-locator/components/StoreLocationSelector.tsx?e484","webpack:///./src/modules/lds-store-locator/components/StoreLocatorTable.tsx?c0dc","webpack:///./src/modules/lds-store-locator/lds-store-locator.view.tsx?e6de"],"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 { ILdsContactUsData } from './lds-contact-us.data';\r\nimport { ILdsContactUsProps } from './lds-contact-us.props.autogenerated';\r\n\r\nexport interface ILdsContactUsViewProps extends ILdsContactUsProps {}\r\n\r\n/**\r\n *\r\n * LdsContactUs Component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass LdsContactUs extends React.PureComponent> {\r\n public render(): JSX.Element | null {\r\n return this.props.renderView(this.props);\r\n }\r\n}\r\n\r\nexport default LdsContactUs;\r\n","import * as React from 'react';\r\nimport styled from 'styled-components';\r\n// import { ILdsContactUsData } from '../lds-contact-us.data';\r\n\r\ninterface ContactTableProps {\r\n defaultCounty: any;\r\n selectedCountry: any;\r\n resources: any;\r\n}\r\n\r\nexport const ContactTable: React.FC = ({ defaultCounty, selectedCountry, resources }) => {\r\n const StyledTable = styled.div`\r\n text-align: left;\r\n width: 100%;\r\n display: flex;\r\n flex-direction: row;\r\n\r\n @media (max-width: 750px) {\r\n flex-direction: column;\r\n width: 95%;\r\n justify-content: space-around;\r\n }\r\n `;\r\n\r\n const TableWrapper = styled.div`\r\n display: flex;\r\n justify-content: space-around;\r\n width: 100%;\r\n `;\r\n\r\n const TableHeader = styled.div`\r\n width: 100%;\r\n display: flex;\r\n align-items: center;\r\n border-bottom: 2px solid #d0d3d3;\r\n height: 40px;\r\n font-style: normal;\r\n font-weight: 700;\r\n font-size: 14px;\r\n line-height: 17px;\r\n color: #212225;\r\n `;\r\n const TableData = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n border-bottom: 1px solid #d0d3d3;\r\n height: 50px;\r\n font-style: normal;\r\n font-weight: 400;\r\n font-size: 14px\r\n line-height: 20px;\r\n color: #212225;\r\n width: 100%;\r\n `;\r\n\r\n const TableRow = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n width: 100%;\r\n\r\n @media (max-width: 750px) {\r\n margin-bottom: 48.5px;\r\n }\r\n `;\r\n\r\n return (\r\n \r\n {JSON.stringify(selectedCountry) === '{}' || selectedCountry.EXTCODEVALUE === '' ? (\r\n \r\n \r\n {resources.tableHeaderCountry}\r\n {defaultCounty.CountryName}\r\n \r\n \r\n {resources.tableHeaderTelephone}\r\n {defaultCounty.EXTCODEVALUE}\r\n \r\n \r\n ) : (\r\n \r\n \r\n {resources.tableHeaderCountry}\r\n {/*@ts-ignore*/}\r\n {selectedCountry.CountryName}\r\n \r\n \r\n {resources.tableHeaderTelephone}\r\n {/*@ts-ignore*/}\r\n {selectedCountry.EXTCODEVALUE}\r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport styled from 'styled-components';\r\nimport { ILdsContactUsData } from '../lds-contact-us.data';\r\n//@ts-ignore\r\nimport { Primary } from '@churchofjesuschrist/eden-buttons';\r\n\r\ninterface SelectProps {\r\n ContactData: ILdsContactUsData;\r\n handleSelect: any;\r\n currentCountry: any;\r\n sortedList?: any;\r\n resources: any;\r\n}\r\n\r\nconst CountrySelector = styled.div`\r\n display: flex;\r\n width: 100%;\r\n margin-bottom: 81.5px;\r\n align-items: flex-end;\r\n\r\n @media (max-width: 750px) {\r\n flex-direction: column;\r\n align-items: center;\r\n }\r\n`;\r\n\r\nconst SelectWrapper = styled.div`\r\n width: 28%;\r\n margin-right: 10px;\r\n\r\n @media (max-width: 750px) {\r\n margin-right: 0xp;\r\n width: 50%;\r\n margin-bottom: 16px;\r\n }\r\n\r\n @media (max-width: 478px) {\r\n width: 75%;\r\n }\r\n`;\r\n\r\n// const StyledSelect = styled.select`\r\n// width: 100%;\r\n// height: 40px;\r\n// `;\r\n\r\n// const Label = styled.label`\r\n// font-size: 14px;\r\n// font-weight: 400;\r\n// line-height: 19px;\r\n// color: #53575b;\r\n// `;\r\n\r\nexport const ContactCountrySelect: React.FC = ({ ContactData, handleSelect, currentCountry, sortedList, resources }) => {\r\n const countriesList = ContactData.countries?.result;\r\n\r\n return (\r\n \r\n \r\n
\r\n \r\n
\r\n handleSelect(e.target.value)}\r\n //@ts-ignore\r\n value={currentCountry ? JSON.stringify(currentCountry.Id) : ''}\r\n >\r\n \r\n {sortedList\r\n ? sortedList?.map((country: any) => {\r\n return (\r\n \r\n );\r\n })\r\n : countriesList?.map((country: any) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import React from 'react';\r\nimport styled from 'styled-components';\r\n\r\ninterface ContactUsProps {\r\n contactHeader: string;\r\n contactMessage?: any;\r\n}\r\n\r\nexport const ContactContent: React.FC = ({ contactHeader, contactMessage }) => {\r\n const ContactHeader = styled.h1`\r\n font-weight: 300;\r\n font-size: 32px;\r\n line-height: 38.4px;\r\n `;\r\n\r\n const ContactBody = styled.p`\r\n font-weight: 400;\r\n font-size: 18px;\r\n line-height: 20.7px;\r\n margin-bottom: 32px;\r\n `;\r\n\r\n const defaultMessage = `A Customer Support Representative is ready to help you by telephone during the weekday business hours in your country. They are also available anytime at help@store.ChurchofJesusChrist.org. Please provide your name and order number or magazine subscription account number if applicable.

If you are looking for contact information for stores in another country, you can change the country contact information below.`;\r\n\r\n const contactBodyText = contactMessage ? contactMessage : defaultMessage;\r\n\r\n return (\r\n <>\r\n {contactHeader ? contactHeader : 'Contact Us'}\r\n \r\n
\r\n \r\n \r\n );\r\n};\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 React, { useState } from 'react';\r\n\r\nimport { ILdsContactUsViewProps } from './lds-contact-us';\r\n\r\nimport styled from 'styled-components';\r\nimport { ContactTable } from './components/ContactTable';\r\nimport { ContactCountrySelect } from './components/ContactCountrySelect';\r\nimport { ContactContent } from './components/ContactContent';\r\n\r\nexport default (props: ILdsContactUsViewProps) => {\r\n const [selectedCountry, setSelectedCountry] = useState({});\r\n const [defaultCountry, setDefaultCountry] = useState({ CountryName: 'United States', EXTCODEVALUE: '1-800-537-5971' });\r\n const ContactUsTable = styled.div`\r\n font-family: Ensign:Sans;\r\n display: flex;\r\n align-content: center;\r\n flex-direction: column;\r\n flex-wrap: wrap;\r\n align-items: flex-start;\r\n width: 100%;\r\n `;\r\n\r\n const ContactWrapper = styled.div`\r\n width: 930px;\r\n\r\n @media (max-width: 930px) {\r\n width: 100%;\r\n }\r\n `;\r\n\r\n const countries = props.data.countries?.result;\r\n\r\n // let defaultCountry: any = { CountryName: 'United States', EXTCODEVALUE: '1-800-537-5971' };\r\n let userCountry: any;\r\n\r\n let countriesWithPhone;\r\n if (countries) {\r\n countriesWithPhone = countries.filter(country => {\r\n return country.EXTCODEVALUE;\r\n });\r\n }\r\n let sortedRegions: any;\r\n if (countries && countriesWithPhone) {\r\n sortedRegions = countriesWithPhone.sort((a, b) => (a.CountryName! > b.CountryName! ? 1 : b.CountryName! > a.CountryName! ? -1 : 0));\r\n }\r\n React.useEffect(() => {\r\n let currentCountry: any;\r\n if (props.data.cart && props.data.cart.result) {\r\n const userCountry: any =\r\n props.data.cart && props.data.cart.result && props.data.cart.result.cart.ExtensionProperties\r\n ? props.data.cart.result.cart.ExtensionProperties.filter((property: any) => {\r\n return property.Key === 'Country';\r\n })\r\n : '';\r\n\r\n // currentCountry = props.data.cart.result.cart.ExtensionProperties![2].Value?.StringValue;\r\n currentCountry = userCountry[0].Value.StringValue;\r\n }\r\n countries?.map(country => {\r\n if (country.countryRegionId === props.context.request.channel?.CountryRegionId) {\r\n setDefaultCountry(country);\r\n } else if (sortedRegions) {\r\n setDefaultCountry(sortedRegions[0]);\r\n }\r\n });\r\n\r\n if (countries) {\r\n userCountry = countries.filter(country => {\r\n if (currentCountry) {\r\n return country.countryRegionId === currentCountry;\r\n } else {\r\n return country.CountryName === defaultCountry.CountryName;\r\n }\r\n });\r\n setSelectedCountry(userCountry[0]);\r\n }\r\n }, [props.data]);\r\n\r\n const handleSelect = (option: string) => {\r\n const userCountry = countries!.filter((country: any) => {\r\n return country.Id.toString() === option;\r\n });\r\n\r\n setSelectedCountry(userCountry[0]);\r\n };\r\n\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 * 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 { ILdsStoreLocatorData } from './lds-store-locator.data';\r\nimport { ILdsStoreLocatorProps } from './lds-store-locator.props.autogenerated';\r\n\r\nexport interface ILdsStoreProps extends ILdsStoreLocatorProps {}\r\n\r\n/**\r\n *\r\n * LdsContactUs Component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass LdsContactUs extends React.PureComponent> {\r\n public render(): JSX.Element | null {\r\n return this.props.renderView(this.props);\r\n }\r\n}\r\n\r\nexport default LdsContactUs;\r\n","/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\n\r\nimport { RegularStoreHours } from '@msdyn365-commerce/retail-proxy';\r\nimport get from 'lodash/get';\r\n\r\n// import { IStoreSelectorLocationLineItemResources } from './timeHelperData';\r\n\r\ninterface IStoreSelectorLocationLineItemResources {\r\n contactInfoHeader: string;\r\n storeHoursHeader: string;\r\n availabilityInfoHeader: string;\r\n\r\n closedText: string;\r\n\r\n outOfStock: string;\r\n inStock: string;\r\n\r\n currentLocation: string;\r\n selectLocation: string;\r\n selectLocationAriaLabelFormat: string;\r\n setAsPreferredStoreText: string;\r\n setAsPreferredStoreTextAriaLabel: string;\r\n preferredStoreText: string;\r\n preferredStoreAriaLabel: string;\r\n\r\n days: {\r\n monday: string;\r\n tuesday: string;\r\n wednesday: string;\r\n thursday: string;\r\n friday: string;\r\n saturday: string;\r\n sunday: string;\r\n mondayFull: string;\r\n tuesdayFull: string;\r\n wednesdayFull: string;\r\n thursdayFull: string;\r\n fridayFull: string;\r\n saturdayFull: string;\r\n sundayFull: string;\r\n };\r\n}\r\n\r\nexport interface IHoursDisplayInfo {\r\n startDayShort: string;\r\n startDayFull: string;\r\n endDayShort?: string;\r\n endDayFull?: string;\r\n timeRange: string;\r\n}\r\n\r\ninterface IHoursInfo {\r\n isClosed: boolean;\r\n openTime?: number;\r\n closeTime?: number;\r\n}\r\n\r\ntype DayType = 'MON' | 'TUE' | 'WED' | 'THU' | 'FRI' | 'SAT' | 'SUN';\r\n\r\nexport const secondsToTime = (seconds: number | undefined): string | undefined => {\r\n if (seconds === undefined) {\r\n return undefined;\r\n }\r\n let hours = Math.floor(seconds / (60 * 60));\r\n const ampm = hours >= 12 ? 'pm' : 'am';\r\n hours %= 12;\r\n hours = hours ? hours : 12;\r\n const divisorForMinutes = seconds % (60 * 60);\r\n const minutes = Math.floor(divisorForMinutes / 60) < 10 ? `0${Math.floor(divisorForMinutes / 60)}` : Math.floor(divisorForMinutes / 60);\r\n return `${hours}:${minutes} ${ampm}`;\r\n};\r\n\r\nconst getShortTimeString = (day: DayType, resources: IStoreSelectorLocationLineItemResources): string => {\r\n switch (day) {\r\n case 'MON':\r\n return resources.days.monday;\r\n case 'TUE':\r\n return resources.days.tuesday;\r\n case 'WED':\r\n return resources.days.wednesday;\r\n case 'THU':\r\n return resources.days.thursday;\r\n case 'FRI':\r\n return resources.days.friday;\r\n case 'SAT':\r\n return resources.days.saturday;\r\n default:\r\n // Case 'SUN':\r\n return resources.days.sunday;\r\n }\r\n};\r\n\r\nconst getFullTimeString = (day: DayType, resources: IStoreSelectorLocationLineItemResources): string => {\r\n switch (day) {\r\n case 'MON':\r\n return resources.days.mondayFull;\r\n case 'TUE':\r\n return resources.days.tuesdayFull;\r\n case 'WED':\r\n return resources.days.wednesdayFull;\r\n case 'THU':\r\n return resources.days.thursdayFull;\r\n case 'FRI':\r\n return resources.days.fridayFull;\r\n case 'SAT':\r\n return resources.days.saturdayFull;\r\n default:\r\n // Case 'SUN':\r\n return resources.days.sundayFull;\r\n }\r\n};\r\n\r\nconst buildHoursDisplayInfo = (\r\n startDay: DayType,\r\n endDay: DayType,\r\n hoursInfo: string,\r\n resources: IStoreSelectorLocationLineItemResources\r\n): IHoursDisplayInfo => {\r\n return {\r\n startDayShort: getShortTimeString(startDay, resources),\r\n startDayFull: getFullTimeString(startDay, resources),\r\n endDayShort: startDay !== endDay ? getShortTimeString(endDay, resources) : undefined,\r\n endDayFull: startDay !== endDay ? getFullTimeString(endDay, resources) : undefined,\r\n timeRange: hoursInfo\r\n };\r\n};\r\n\r\nconst shouldMergeLines = (firstLine: IHoursInfo, secondLine: IHoursInfo): boolean => {\r\n if (firstLine.isClosed && secondLine.isClosed) {\r\n return true;\r\n }\r\n\r\n if (!firstLine.isClosed && !secondLine.isClosed) {\r\n return firstLine.openTime === secondLine.openTime && firstLine.closeTime === secondLine.closeTime;\r\n }\r\n\r\n return false;\r\n};\r\n\r\nconst getStoreHoursData = (storeHours: RegularStoreHours, dateForLookup: string): IHoursInfo => {\r\n return {\r\n isClosed: get(storeHours, `CLOSEDON${dateForLookup}`, false),\r\n openTime: get(storeHours, `${dateForLookup}OPENTIME`, undefined),\r\n closeTime: get(storeHours, `${dateForLookup}CLOSETIME`, undefined)\r\n };\r\n};\r\n\r\nlet closedText: string;\r\n\r\nconst buildStoreHoursString = (hoursInfo: IHoursInfo, resources: IStoreSelectorLocationLineItemResources): string => {\r\n if (hoursInfo.isClosed) {\r\n return closedText;\r\n }\r\n const openFrom: string | undefined = secondsToTime(hoursInfo.openTime);\r\n const openTo: string | undefined = secondsToTime(hoursInfo.closeTime);\r\n\r\n return `${openFrom} – ${openTo}`;\r\n};\r\n\r\nexport const buildStoreHours = (storeHours: RegularStoreHours, resources: IStoreSelectorLocationLineItemResources): IHoursDisplayInfo[] => {\r\n const storeHoursList: IHoursDisplayInfo[] = [];\r\n\r\n const mondayHours = getStoreHoursData(storeHours, 'MONDAY');\r\n const tuesdayHours = getStoreHoursData(storeHours, 'TUESDAY');\r\n const wednesdayHours = getStoreHoursData(storeHours, 'WEDNESDAY');\r\n const thursdayHours = getStoreHoursData(storeHours, 'THURSDAY');\r\n const fridayHours = getStoreHoursData(storeHours, 'FRIDAY');\r\n const saturdayHours = getStoreHoursData(storeHours, 'SATURDAY');\r\n const sundayHours = getStoreHoursData(storeHours, 'SUNDAY');\r\n\r\n let periodStart: DayType = 'MON';\r\n let periodEnd: DayType = 'MON';\r\n\r\n if (!shouldMergeLines(mondayHours, tuesdayHours)) {\r\n storeHoursList.push(buildHoursDisplayInfo(periodStart, periodEnd, buildStoreHoursString(mondayHours, resources), resources));\r\n\r\n periodStart = 'TUE';\r\n }\r\n periodEnd = 'TUE';\r\n if (!shouldMergeLines(tuesdayHours, wednesdayHours)) {\r\n storeHoursList.push(buildHoursDisplayInfo(periodStart, periodEnd, buildStoreHoursString(tuesdayHours, resources), resources));\r\n\r\n periodStart = 'WED';\r\n }\r\n periodEnd = 'WED';\r\n\r\n if (!shouldMergeLines(wednesdayHours, thursdayHours)) {\r\n storeHoursList.push(buildHoursDisplayInfo(periodStart, periodEnd, buildStoreHoursString(wednesdayHours, resources), resources));\r\n\r\n periodStart = 'THU';\r\n }\r\n periodEnd = 'THU';\r\n\r\n if (!shouldMergeLines(thursdayHours, fridayHours)) {\r\n storeHoursList.push(buildHoursDisplayInfo(periodStart, periodEnd, buildStoreHoursString(thursdayHours, resources), resources));\r\n\r\n periodStart = 'FRI';\r\n }\r\n periodEnd = 'FRI';\r\n\r\n if (!shouldMergeLines(fridayHours, saturdayHours)) {\r\n storeHoursList.push(buildHoursDisplayInfo(periodStart, periodEnd, buildStoreHoursString(fridayHours, resources), resources));\r\n\r\n periodStart = 'SAT';\r\n }\r\n periodEnd = 'SAT';\r\n\r\n if (!shouldMergeLines(saturdayHours, sundayHours)) {\r\n storeHoursList.push(buildHoursDisplayInfo(periodStart, periodEnd, buildStoreHoursString(saturdayHours, resources), resources));\r\n\r\n periodStart = 'SUN';\r\n }\r\n periodEnd = 'SUN';\r\n\r\n storeHoursList.push(buildHoursDisplayInfo(periodStart, periodEnd, buildStoreHoursString(sundayHours, resources), resources));\r\n\r\n return storeHoursList;\r\n};\r\n","import React from 'react';\r\nimport styled from 'styled-components';\r\nimport { ICountryLanguageEntity } from '../../../actions/DataServiceEntities.g';\r\n\r\ninterface StoreLocationProps {\r\n storeRegion: string;\r\n handleChange: any;\r\n state: string;\r\n handleClick: any;\r\n regionList: ICountryLanguageEntity[] | undefined;\r\n displayState: boolean;\r\n stateList: Object[];\r\n resources: any;\r\n}\r\n\r\nexport const StoreLocationSelector: React.FC = ({\r\n storeRegion,\r\n handleChange,\r\n handleClick,\r\n state,\r\n regionList,\r\n displayState,\r\n stateList,\r\n resources\r\n}) => {\r\n const LocationSelector = styled.div`\r\n display: flex;\r\n width: 100%;\r\n margin-bottom: 81.5px;\r\n align-items: flex-end;\r\n\r\n @media (max-width: 750px) {\r\n flex-direction: column;\r\n align-items: center;\r\n }\r\n `;\r\n const SelectWrapper = styled.div`\r\n width: 28%;\r\n margin-right: 10px;\r\n\r\n @media (max-width: 750px) {\r\n margin-right: 0xp;\r\n width: 65%;\r\n margin-bottom: 16px;\r\n }\r\n\r\n @media (max-width: 478px) {\r\n width: 90%;\r\n }\r\n `;\r\n\r\n // const SelectLabel = styled.label`\r\n // font-size: .8em;\r\n // padding: 0 0 4px 6px;\r\n // color: #212225;\r\n // font-weight: 300\r\n // line-height: 1.45;\r\n // font-family: Ensign:Sans\r\n // `;\r\n\r\n // const StoreLocatorSelect = styled.select`\r\n // height: 40px;\r\n // width: 100%;\r\n // background: #ffffff;\r\n // border: 1px solid #878a8c;\r\n // border-radius: 2px;\r\n // color: #0b6081;\r\n // font-size: 16px;\r\n // `;\r\n\r\n // const StyledOption = styled.option`\r\n // background: #fff;\r\n // font-size: 14px;\r\n // font-weight: 400;\r\n // font-family: Ensign:Sans;\r\n // line-height: 1.45;\r\n // color: #212225;\r\n // `;\r\n\r\n return (\r\n \r\n \r\n \r\n handleChange(e.target.value)}\r\n >\r\n \r\n {regionList ? (\r\n regionList.map(region => {\r\n return (\r\n \r\n );\r\n })\r\n ) : (\r\n \r\n )}\r\n \r\n \r\n {displayState ? (\r\n \r\n \r\n \r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport styled from 'styled-components';\r\nimport { IChurchGlobalStoreLocatorInformation } from '../../../actions/DataServiceEntities.g';\r\nimport { IHoursDisplayInfo } from './timeHelper';\r\n\r\ninterface StoreLocatorTableProps {\r\n regionStores: IChurchGlobalStoreLocatorInformation[];\r\n storeHours: IHoursDisplayInfo[][] | undefined;\r\n resources: any;\r\n}\r\n\r\nexport const StoreLocatorTable: React.FC = ({ regionStores, storeHours, resources }) => {\r\n const TableWrapper = styled.div`\r\n display: flex;\r\n justify-content: space-around;\r\n width: 100%;\r\n `;\r\n\r\n const StyledTable = styled.table`\r\n width: 100%;\r\n border-collapse: collapse;\r\n table-layout: fixed;\r\n\r\n @media (max-width: 600px) {\r\n border-top: 1px solid #dcdcdc;\r\n }\r\n `;\r\n\r\n const StyledHeaderRow = styled.tr`\r\n text-align: left;\r\n\r\n @media (max-width: 600px) {\r\n display: none;\r\n }\r\n `;\r\n\r\n // const StyledRow = styled.tr`\r\n // border-bottom: 1px solid #dcdcdc;\r\n // font-size: 14px;\r\n // font-weight: 300;\r\n // font-family: Ensign:Sans;\r\n // @media (max-width: 600px) {\r\n // display: flex;\r\n // flex-direction: column;\r\n // padding-top: 10px;\r\n // }\r\n // `;\r\n\r\n const StyledTableDataColOne = styled.td`\r\n border-right: 1px solid #dcdcdc;\r\n padding: 20px;\r\n @media (max-width: 600px) {\r\n display: block;\r\n border-right: none;\r\n padding: 10px;\r\n }\r\n `;\r\n\r\n // const StyledTableDataColTwo = styled.td`\r\n // padding: 20px;\r\n\r\n // @media (max-width: 600px) {\r\n // display: block;\r\n // padding: 10px;\r\n // }\r\n // `;\r\n\r\n const StyledTableHeaderColOne = styled.th`\r\n border-bottom: 1px solid #dcdcdc;\r\n padding: 10px;\r\n `;\r\n\r\n const StyledTableHeaderColTwo = styled.th`\r\n border-bottom: 1px solid #dcdcdc;\r\n border-left: 1px solid #dcdcdc;\r\n padding: 10px;\r\n `;\r\n\r\n // const StyledTableHoursWrapper = styled.div`\r\n // display: flex;\r\n // flex-direction: column;\r\n // justify-content: center;\r\n // `;\r\n\r\n const StyledTableHours = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n `;\r\n\r\n const StyledStoreName = styled.div`\r\n padding-bottom: 10px;\r\n font-weight: 700;\r\n `;\r\n\r\n const InnerTableHeader = styled.th`\r\n font-size: 14px;\r\n font-family: Ensign:Sans;\r\n font-weight: 700;\r\n\r\n @media (min-width: 600px) {\r\n display: none;\r\n }\r\n `;\r\n\r\n return (\r\n \r\n \r\n \r\n {resources.storeLocatorTableHeader}\r\n {resources.storeLocatorTableHeaderHours}\r\n \r\n\r\n {regionStores && regionStores[0] !== undefined && storeHours !== undefined\r\n ? regionStores.map((store, index) => {\r\n const storeIndex = index;\r\n return (\r\n \r\n {resources.storeLocatorTableHeader}\r\n \r\n
\r\n {store.NAME}\r\n
{store.STREET}
\r\n
{`${store.CITY} ${store.ZIPCODE}`}
\r\n
{store.PHONE}
\r\n
\r\n
\r\n {resources.storeLocatorTableHeaderHours}\r\n {storeHours[0] ? (\r\n \r\n
{resources.storeLocatorStoreHoursMessage}
\r\n \r\n \r\n {/* eslint-disable-next-line security/detect-object-injection */}\r\n {storeHours[storeIndex]\r\n ? /* eslint-disable-next-line security/detect-object-injection */\r\n storeHours[storeIndex].map((hours, index) => {\r\n return (\r\n <>\r\n
\r\n {hours.endDayFull\r\n ? `${hours.startDayFull} - ${hours.endDayFull}`\r\n : `${hours.startDayFull}`}{' '}\r\n {hours.timeRange\r\n ? `${hours.timeRange}`\r\n : resources.storeHoursClosedText}\r\n
\r\n {/*
{hours.timeRange ? `${hours.timeRange}` : 'Closed'}
*/}\r\n \r\n );\r\n })\r\n : null}\r\n
\r\n
{' '}\r\n \r\n ) : null}\r\n \r\n );\r\n })\r\n : null}\r\n \r\n \r\n );\r\n};\r\n","/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\n\r\nimport React, { useState, useEffect } from 'react';\r\n\r\n//@ts-ignore\r\nimport { Primary } from '@churchofjesuschrist/eden-buttons';\r\nimport { ILdsStoreProps } from './lds-store-locator';\r\nimport { IChurchGlobalStoreLocatorInformation, ICountryLanguageEntity } from '../../actions/DataServiceEntities.g';\r\n\r\nimport { IStoreSelectorLocationLineItemResources } from './components/timeHelperData';\r\nimport { IHoursDisplayInfo, buildStoreHours } from './components/timeHelper';\r\nimport { StoreLocationSelector } from './components/StoreLocationSelector';\r\nimport { StoreLocatorTable } from './components/StoreLocatorTable';\r\n\r\nimport { getStoreHoursAsync } from '../../actions/DataActionExtension.g';\r\n\r\nimport styled from 'styled-components';\r\n\r\nconst LdsStoreLocatorView: React.FC = props => {\r\n const StoreLocator = styled.div`\r\n font-family: Ensign:Sans;\r\n display: flex;\r\n align-content: center;\r\n flex-direction: column;\r\n flex-wrap: wrap;\r\n align-items: flex-start;\r\n width: 100%;\r\n color: #212225;\r\n `;\r\n\r\n const StoreLocatorWrapper = styled.div`\r\n width: 930px;\r\n\r\n @media (max-width: 930px) {\r\n width: 100%;\r\n }\r\n `;\r\n const Header = styled.h1`\r\n font-family: 'Ensign:Sans', Arial, 'noto sans', sans-serif;\r\n font-style: normal;\r\n font-weight: 300;\r\n font-size: 28px;\r\n line-height: 1.15;\r\n color: #212225;\r\n `;\r\n\r\n const StoreLocatorBody = styled.p`\r\n font-family: 'Ensign:Sans', Arial, 'noto sans', sans-serif;\r\n font-style: normal;\r\n font-weight: 300;\r\n font-size: 16px;\r\n line-height: 1.45;\r\n color: #212225;\r\n `;\r\n\r\n const StatesDefaultList = [\r\n { name: 'Alabama', abbreviation: 'AL' },\r\n { name: 'Alaska', abbreviation: 'AK' },\r\n { name: 'Arizona', abbreviation: 'AZ' },\r\n { name: 'Arkansas', abbreviation: 'AR' },\r\n { name: 'California', abbreviation: 'CA' },\r\n { name: 'Colorado', abbreviation: 'CO' },\r\n { name: 'Connecticut', abbreviation: 'CT' },\r\n { name: 'Delaware', abbreviation: 'DE' },\r\n { name: 'Florida', abbreviation: 'FL' },\r\n { name: 'Georgia', abbreviation: 'GA' },\r\n { name: 'Hawaii', abbreviation: 'HI' },\r\n { name: 'Idaho', abbreviation: 'ID' },\r\n { name: 'Illinois', abbreviation: 'IL' },\r\n { name: 'Indiana', abbreviation: 'IN' },\r\n { name: 'Iowa', abbreviation: 'IA' },\r\n { name: 'Kansas', abbreviation: 'KS' },\r\n { name: 'Kentucky', abbreviation: 'KY' },\r\n { name: 'Louisiana', abbreviation: 'LA' },\r\n { name: 'Maine', abbreviation: 'ME' },\r\n { name: 'Maryland', abbreviation: 'MD' },\r\n { name: 'Massachusetts', abbreviation: 'MA' },\r\n { name: 'Michigan', abbreviation: 'MI' },\r\n { name: 'Minnesota', abbreviation: 'MN' },\r\n { name: 'Mississippi', abbreviation: 'MS' },\r\n { name: 'Missouri', abbreviation: 'MO' },\r\n { name: 'Montana', abbreviation: 'MT' },\r\n { name: 'Nebraska', abbreviation: 'NE' },\r\n { name: 'Nevada', abbreviation: 'NV' },\r\n { name: 'New Hampshire', abbreviation: 'NH' },\r\n { name: 'New Jersey', abbreviation: 'NJ' },\r\n { name: 'New Mexico', abbreviation: 'NM' },\r\n { name: 'New York', abbreviation: 'NY' },\r\n { name: 'North Carolina', abbreviation: 'NC' },\r\n { name: 'North Dakota', abbreviation: 'ND' },\r\n { name: 'Ohio', abbreviation: 'OH' },\r\n { name: 'Oklahoma', abbreviation: 'OK' },\r\n { name: 'Oregon', abbreviation: 'OR' },\r\n { name: 'Pennsylvania', abbreviation: 'PA' },\r\n { name: 'Rhode Island', abbreviation: 'RI' },\r\n { name: 'South Carolina', abbreviation: 'SC' },\r\n { name: 'South Dakota', abbreviation: 'SD' },\r\n { name: 'Tennessee', abbreviation: 'TN' },\r\n { name: 'Texas', abbreviation: 'TX' },\r\n { name: 'Utah', abbreviation: 'UT' },\r\n { name: 'Vermont', abbreviation: 'VT' },\r\n { name: 'Virginia', abbreviation: 'VA' },\r\n { name: 'Washington', abbreviation: 'WA' },\r\n { name: 'West Virginia', abbreviation: 'WV' },\r\n { name: 'Wisconsin', abbreviation: 'WI' },\r\n { name: 'Wyoming', abbreviation: 'WY' }\r\n ];\r\n const [stateList, setStateList] = useState(StatesDefaultList);\r\n\r\n const [storeRegion, setStoreRegion] = useState('');\r\n const [regionList, setRegionList] = useState();\r\n const [state, setState] = useState('');\r\n const [displayState, setDisplayStates] = useState(false);\r\n const [regionStores, setRegionStores] = useState([]);\r\n const [storeHours, setStoreHours] = useState();\r\n const [filteredRegions, setFilteredRegions] = useState();\r\n const [storesFound, setStoresFound] = useState(true);\r\n\r\n const RegionList = props.data.countries?.result;\r\n let formattedStoreHours: any;\r\n const StoreHoursContext: IStoreSelectorLocationLineItemResources = {\r\n contactInfoHeader: props.resources.contactText,\r\n storeHoursHeader: props.resources.timeText,\r\n availabilityInfoHeader: props.resources.availabilityText,\r\n\r\n closedText: props.resources.storeHoursClosedText,\r\n outOfStock: props.resources.outOfStockText,\r\n inStock: props.resources.inStockText,\r\n\r\n currentLocation: props.resources.selectedStoreLocationText,\r\n selectLocation: props.resources.selectStoreText,\r\n selectLocationAriaLabelFormat: props.resources.selectStoreAriaFormatText,\r\n setAsPreferredStoreText: props.resources.setAsPreferredStoreText,\r\n setAsPreferredStoreTextAriaLabel: props.resources.setAsPreferredStoreTextAriaLabel,\r\n preferredStoreText: props.resources.preferredStoreText,\r\n preferredStoreAriaLabel: props.resources.preferredStoreAriaLabel,\r\n\r\n days: {\r\n monday: props.resources.storeHoursMondayText,\r\n tuesday: props.resources.storeHoursTuesdayText,\r\n wednesday: props.resources.storeHoursWednesdayText,\r\n thursday: props.resources.storeHoursThursdayText,\r\n friday: props.resources.storeHoursFridayText,\r\n saturday: props.resources.storeHoursSaturdayText,\r\n sunday: props.resources.storeHoursSundayText,\r\n mondayFull: props.resources.storeHoursMondayFullText,\r\n tuesdayFull: props.resources.storeHoursTuesdayFullText,\r\n wednesdayFull: props.resources.storeHoursWednesdayFullText,\r\n thursdayFull: props.resources.storeHoursThursdayFullText,\r\n fridayFull: props.resources.storeHoursFridayFullText,\r\n saturdayFull: props.resources.storeHoursSaturdayFullText,\r\n sundayFull: props.resources.storeHoursSundayFullText\r\n }\r\n };\r\n let StateSelectOptions: any = StatesDefaultList;\r\n const cart = props.data.cart?.result;\r\n const filterFunction = async () => {\r\n const storesWithHours = await getStoreHoursAsync({ callerContext: props.context.actionContext }, '0');\r\n if (storesWithHours && regionList) {\r\n const filteredRegions = regionList.filter(el => {\r\n return storesWithHours.some(f => {\r\n return f.COUNTRYREGIONID === el.countryRegionId;\r\n });\r\n });\r\n setFilteredRegions(filteredRegions);\r\n }\r\n };\r\n const getAvailableState = async () => {\r\n await handleChange('USA');\r\n setDisplayStates(true);\r\n StateSelectOptions = StatesDefaultList.filter(({ abbreviation: id1 }) => regionStores.some(({ STATE: id2 }) => id2 === id1));\r\n setStateList(StateSelectOptions);\r\n };\r\n\r\n useEffect(() => {\r\n if (cart && !storeRegion && cart.cart.ExtensionProperties) {\r\n const userCountry = cart.cart.ExtensionProperties?.find((x: any) => x.Key === 'Country')?.Value?.StringValue;\r\n setStoreRegion(userCountry);\r\n void handleChange(userCountry!);\r\n }\r\n if (storeRegion === 'USA' && !displayState) {\r\n void getAvailableState();\r\n } else if (storeRegion !== 'USA') {\r\n setDisplayStates(false);\r\n }\r\n\r\n if (RegionList && !filteredRegions) {\r\n const sortedRegions = RegionList.sort((a, b) =>\r\n a.CountryName! > b.CountryName! ? 1 : b.CountryName! > a.CountryName! ? -1 : 0\r\n );\r\n setRegionList(sortedRegions);\r\n void filterFunction();\r\n }\r\n\r\n if (regionStores.length >= 1) {\r\n formattedStoreHours = regionStores.map(store => {\r\n return buildStoreHours(store, StoreHoursContext);\r\n });\r\n setStoreHours(formattedStoreHours);\r\n }\r\n if (!storesFound && filteredRegions && filteredRegions[0]) {\r\n void handleChange(filteredRegions[0].countryRegionId);\r\n }\r\n }, [storeRegion, regionStores, RegionList, storesFound, filteredRegions]);\r\n\r\n const handleChange = async (value: string) => {\r\n const getRegionStores = await getStoreHoursAsync({ callerContext: props.context.actionContext }, value);\r\n if (getRegionStores[0] !== undefined) {\r\n const sortedRegionStores = getRegionStores.sort((a: any, b: any) => {\r\n const compareStrings = (str1: any, str2: any) => {\r\n const trimmedStr1 = str1.startsWith('DS ') ? str1.slice(3) : str1.startsWith('Deseret Book ') ? str1.slice(13) : str1;\r\n const trimmedStr2 = str2.startsWith('DS ') ? str2.slice(3) : str2.startsWith('Deseret Book ') ? str2.slice(13) : str2;\r\n\r\n for (let i = 0; i < Math.min(trimmedStr1.length, trimmedStr2.length); i++) {\r\n const charCode1 = trimmedStr1.charCodeAt(i);\r\n const charCode2 = trimmedStr2.charCodeAt(i);\r\n\r\n if (charCode1 < charCode2) {\r\n return -1;\r\n } else if (charCode1 > charCode2) {\r\n return 1;\r\n }\r\n }\r\n\r\n if (trimmedStr1.length < trimmedStr2.length) {\r\n return -1;\r\n } else if (trimmedStr1.length > trimmedStr2.length) {\r\n return 1;\r\n }\r\n\r\n return 0;\r\n };\r\n\r\n return compareStrings(a.NAME, b.NAME);\r\n });\r\n\r\n // formattedStoreHours = getRegionStores.map(store => {\r\n // return buildStoreHours(store, StoreHoursContext);\r\n // });\r\n formattedStoreHours = sortedRegionStores.map(store => {\r\n return buildStoreHours(store, StoreHoursContext);\r\n });\r\n\r\n setStoreHours(formattedStoreHours);\r\n\r\n // setRegionStores(getRegionStores);\r\n setRegionStores(sortedRegionStores);\r\n setStoreRegion(value);\r\n setStoresFound(true);\r\n } else {\r\n setStoresFound(false);\r\n }\r\n };\r\n\r\n const handleClick = async (state: string) => {\r\n const getStores = await getStoreHoursAsync({ callerContext: props.context.actionContext }, storeRegion);\r\n setState(state);\r\n\r\n const filteredStores = state\r\n ? getStores.filter(store => {\r\n return store.STATE === state;\r\n })\r\n : null;\r\n let sortedRegionStores;\r\n if (filteredStores) {\r\n sortedRegionStores = filteredStores.sort((a: any, b: any) => {\r\n const compareStrings = (str1: any, str2: any) => {\r\n const trimmedStr1 = str1.startsWith('DS ') ? str1.slice(3) : str1.startsWith('Deseret Book ') ? str1.slice(13) : str1;\r\n const trimmedStr2 = str2.startsWith('DS ') ? str2.slice(3) : str2.startsWith('Deseret Book ') ? str2.slice(13) : str2;\r\n\r\n for (let i = 0; i < Math.min(trimmedStr1.length, trimmedStr2.length); i++) {\r\n const charCode1 = trimmedStr1.charCodeAt(i);\r\n const charCode2 = trimmedStr2.charCodeAt(i);\r\n\r\n if (charCode1 < charCode2) {\r\n return -1;\r\n } else if (charCode1 > charCode2) {\r\n return 1;\r\n }\r\n }\r\n\r\n if (trimmedStr1.length < trimmedStr2.length) {\r\n return -1;\r\n } else if (trimmedStr1.length > trimmedStr2.length) {\r\n return 1;\r\n }\r\n\r\n return 0;\r\n };\r\n\r\n // Compare the strings using the custom comparison function\r\n return compareStrings(a.NAME, b.NAME);\r\n });\r\n }\r\n\r\n // if (filteredStores) {\r\n // formattedStoreHours = filteredStores.map(store => {\r\n // return buildStoreHours(store, StoreHoursContext);\r\n // });\r\n // setStoreHours(formattedStoreHours);\r\n // }\r\n if (sortedRegionStores) {\r\n formattedStoreHours = sortedRegionStores.map(store => {\r\n return buildStoreHours(store, StoreHoursContext);\r\n });\r\n setStoreHours(formattedStoreHours);\r\n }\r\n\r\n // setRegionStores(filteredStores ? filteredStores : getStores);\r\n setRegionStores(sortedRegionStores ? sortedRegionStores : getStores);\r\n };\r\n\r\n const { storeLocatorHeader, storeLocatorMessage } = props.resources;\r\n\r\n return (\r\n \r\n \r\n <>\r\n
{storeLocatorHeader}
\r\n {storeLocatorMessage}\r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default LdsStoreLocatorView;\r\n"],"names":["LdsContactUs","React","render","this","props","renderView","ContactTable","_ref","defaultCounty","selectedCountry","resources","StyledTable","styled","div","TableWrapper","TableHeader","TableData","TableRow","JSON","stringify","EXTCODEVALUE","tableHeaderCountry","CountryName","tableHeaderTelephone","CountrySelector","SelectWrapper","ContactCountrySelect","_ContactData$countrie","ContactData","handleSelect","currentCountry","sortedList","countriesList","countries","result","createElement","className","htmlFor","name","id","onChange","e","target","value","Id","disabled","selected","defaultSelectValue","map","country","key","ContactContent","contactHeader","contactMessage","ContactHeader","h1","ContactBody","p","contactBodyText","Fragment","dangerouslySetInnerHTML","__html","_props$data$countries","setSelectedCountry","useState","defaultCountry","setDefaultCountry","ContactUsTable","ContactWrapper","data","userCountry","countriesWithPhone","sortedRegions","filter","sort","a","b","useEffect","cart","ExtensionProperties","property","Key","Value","StringValue","_props$context$reques","countryRegionId","context","request","channel","CountryRegionId","config","contactUsText","option","toString","secondsToTime","seconds","undefined","hours","Math","floor","ampm","divisorForMinutes","getShortTimeString","day","days","monday","tuesday","wednesday","thursday","friday","saturday","sunday","getFullTimeString","mondayFull","tuesdayFull","wednesdayFull","thursdayFull","fridayFull","saturdayFull","sundayFull","buildHoursDisplayInfo","startDay","endDay","hoursInfo","startDayShort","startDayFull","endDayShort","endDayFull","timeRange","shouldMergeLines","firstLine","secondLine","isClosed","openTime","closeTime","getStoreHoursData","storeHours","dateForLookup","get","buildStoreHoursString","buildStoreHours","storeHoursList","mondayHours","tuesdayHours","wednesdayHours","thursdayHours","fridayHours","saturdayHours","sundayHours","periodStart","periodEnd","push","StoreLocationSelector","storeRegion","handleChange","handleClick","state","regionList","displayState","stateList","LocationSelector","storeLocatorCountryLabel","defaultDropdown","region","storeLocatorStateLabel","defalutDropdown","abbreviation","StoreLocatorTable","regionStores","table","StyledHeaderRow","tr","StyledTableDataColOne","td","StyledTableHeaderColOne","th","StyledTableHeaderColTwo","StyledTableHours","StyledStoreName","InnerTableHeader","storeLocatorTableHeader","storeLocatorTableHeaderHours","store","index","storeIndex","NAME","STREET","CITY","ZIPCODE","PHONE","style","padding","storeLocatorStoreHoursMessage","display","flexDirection","justifyContent","storeHoursClosedText","LdsStoreLocatorView","_props$data$cart","StoreLocator","StoreLocatorWrapper","Header","StoreLocatorBody","StatesDefaultList","setStateList","setStoreRegion","setRegionList","setState","setDisplayStates","setRegionStores","setStoreHours","filteredRegions","setFilteredRegions","storesFound","setStoresFound","RegionList","formattedStoreHours","StoreHoursContext","contactInfoHeader","contactText","storeHoursHeader","timeText","availabilityInfoHeader","availabilityText","closedText","outOfStock","outOfStockText","inStock","inStockText","currentLocation","selectedStoreLocationText","selectLocation","selectStoreText","selectLocationAriaLabelFormat","selectStoreAriaFormatText","setAsPreferredStoreText","setAsPreferredStoreTextAriaLabel","preferredStoreText","preferredStoreAriaLabel","storeHoursMondayText","storeHoursTuesdayText","storeHoursWednesdayText","storeHoursThursdayText","storeHoursFridayText","storeHoursSaturdayText","storeHoursSundayText","storeHoursMondayFullText","storeHoursTuesdayFullText","storeHoursWednesdayFullText","storeHoursThursdayFullText","storeHoursFridayFullText","storeHoursSaturdayFullText","storeHoursSundayFullText","StateSelectOptions","_cart$cart$ExtensionP","find","x","async","id1","some","_ref2","STATE","id2","getAvailableState","storesWithHours","getStoreHoursAsync","callerContext","actionContext","el","f","COUNTRYREGIONID","filterFunction","length","getRegionStores","sortedRegionStores","compareStrings","str1","str2","trimmedStr1","startsWith","slice","trimmedStr2","i","min","charCode1","charCodeAt","charCode2","storeLocatorHeader","storeLocatorMessage","getStores","filteredStores"],"sourceRoot":""}