{"version":3,"sources":["components/BasicPageBanner/index.module.scss","components/BasicPageBanner/index.tsx","../node_modules/react-scripts/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/react-scripts/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","react/RoutableLink/index.js","services/lists.ts","react/FavoriteButton/index.tsx"],"names":["module","exports","withSitecoreContext","props","_sitecoreContext$save","_fields$link","_fields$link$value","_fields$linkText","_fields$favoriteButto","_fields$link2","_fields$link2$value","_fields$linkText2","fields","sitecoreContext","favorites","savedItems","isEditing","pageEditing","pageState","React","createElement","className","concat","css","container","link","value","href","linkText","hasCta","noCta","titleContainer","Text","field","pageTitle","tag","favoriteButton","FavoriteButton","itemId","isFavorited","indexOf","ctaContainer","RoutableLink","cta","data-chevron","_slicedToArray","arr","i","arrayWithHoles","Symbol","iterator","Object","_arr","_n","_d","_e","undefined","_s","_i","next","done","push","length","err","unsupportedIterableToArray","nonIterableRest","_props$field","_props$field$value","_props$field2","_props$field3","_props$field3$value","_props$field4","_props$field4$value","_props$field6","hasValidHref","editable","target","linktype","ariaLabelObj","ariaLabel","_props$field5","_value$href","newProps","_objectWithoutProperties","startsWith","RouterLink","assign","to","children","text","linkProps","_objectSpread","Link","FAVORITES_ENDPOINT_ID","READING_ENDPOINT_ID","TOOLS_ENDPOINT_ID","ONE_TIME_POPUP_ENDPOINT_ID","xdbListServiceUrl","AddItemToList","listId","dataFetcher","data","ItemId","ListName","RemoveItemFromList","GetListingItems","SaveOrderedList","myjson","JsonData","GetSavedItemsAPICompatibleGUID","id","_id","match","newGuid","toLowerCase","parts","slice","join","AddToNewsSubscriptions","ids","ItemIds","RemoveFromNewsSubscriptions","GetAriaLabelText","GetIcon","iconOnly","_useState","useState","_useState2","setIsFavorited","_useState3","_useState4","isProcessing","setIsProcessing","_useState5","_useState6","setItemId","useEffect","updateSuccessful","then","catch","console","log","finally","UpdateFavorite","updateFavoriteState","Fragment","onClick","disabled","data-favorited","aria-label","GetButtonText"],"mappings":"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","file":"static/js/BasicPageBanner.bac56eeb.chunk.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"BasicPageBanner_container__2Ouy8\",\"noCta\":\"BasicPageBanner_noCta__3P5Tx\",\"hasCta\":\"BasicPageBanner_hasCta___rKPI\",\"isEditing\":\"BasicPageBanner_isEditing__1i9sD\",\"titleContainer\":\"BasicPageBanner_titleContainer__3H-fN\",\"ctaContainer\":\"BasicPageBanner_ctaContainer__235_u\",\"favoriteButton\":\"BasicPageBanner_favoriteButton__16NkT\",\"cta\":\"BasicPageBanner_cta__1ZPfm\"};","import React from \"react\";\r\nimport { Text, withSitecoreContext } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { RoutableLink } from \"../../react/RoutableLink\";\r\nimport { FavoriteButton } from \"../../react/FavoriteButton\";\r\nimport css from \"./index.module.scss\";\r\n\r\nconst BasicPageBanner = (props) => {\r\n const { fields, sitecoreContext } = props;\r\n const favorites = sitecoreContext?.savedItems?.favorites || [];\r\n const isEditing = sitecoreContext && (sitecoreContext.pageEditing == true || sitecoreContext.pageState == 'preview');\r\n\r\n return (\r\n \r\n
\r\n \r\n {fields?.favoriteButton?.value && (\r\n = 0}\r\n />\r\n )}\r\n
\r\n {fields?.link?.value?.href && fields?.linkText?.value && (\r\n
\r\n \r\n \r\n \r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(BasicPageBanner);","import arrayWithHoles from \"./arrayWithHoles\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray\";\nimport nonIterableRest from \"./nonIterableRest\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","import React from 'react';\r\nimport { Link } from '@sitecore-jss/sitecore-jss-react';\r\n// note we're aliasing the router's link component name, since it conflicts with JSS' link component\r\nimport { Link as RouterLink } from 'react-router-dom';\r\n\r\n/** React component that turns Sitecore link values that start with / into react-router route links */\r\nconst RoutableLink = (props) => {\r\n const hasValidHref = props.field?.value?.href;\r\n const isEditing = props?.editable && props?.field?.editable;\r\n const target = props?.field?.value?.linktype == \"external\" ? \"_blank\" : props.field?.value?.target || \"_self\";\r\n\r\n // only want to apply the routing link if not editing (if editing, need to render editable link value)\r\n\r\n var ariaLabelObj = {};\r\n if(props?.ariaLabel && props?.ariaLabel.length > 0){\r\n ariaLabelObj[\"aria-label\"] = props?.ariaLabel;\r\n }\r\n if (hasValidHref && !isEditing) {\r\n\r\n const value = props?.field?.value;\r\n var { field, editable, ariaLabel, ...newProps } = props;\r\n\r\n // determine if a link is a route or not. This logic may not be appropriate for all usages.\r\n if (value?.href?.startsWith('/')) {\r\n return (\r\n \r\n {\r\n \r\n {props?.children || value?.text || value?.href}\r\n \r\n }\r\n \r\n );\r\n }\r\n }\r\n var linkProps = { ...props, field: { value: { ...props?.field?.value, target: target } } };\r\n var {ariaLabel,...newProps} = linkProps;\r\n return {props?.children};\r\n};\r\n\r\n// usage - drop-in replacement for JSS' Link component\r\nexport { RoutableLink }","import { dataFetcher } from \"../dataFetcher\";\r\n\r\n// Services to add or remove a content item from a an xdbFacet list\r\n// Example lists include: Bookmarks, Favorites\r\nexport const FAVORITES_ENDPOINT_ID = \"Favorites\";\r\nexport const READING_ENDPOINT_ID = \"Reading\";\r\nexport const TOOLS_ENDPOINT_ID = \"Tools\";\r\nexport const ONE_TIME_POPUP_ENDPOINT_ID = \"Acknowledgments\";\r\n\r\nconst xdbListServiceUrl = \"/clientApi/SavedItems/\";\r\nexport const AddItemToList = (itemId, listId) => {\r\n return dataFetcher(`${xdbListServiceUrl}AddToList`, {\r\n data: {\r\n ItemId: itemId,\r\n ListName: listId,\r\n }\r\n });\r\n};\r\n\r\nexport const RemoveItemFromList = (itemId, listId) => {\r\n return dataFetcher(`${xdbListServiceUrl}RemoveFromList`, {\r\n data: {\r\n ItemId: itemId,\r\n ListName: listId,\r\n },\r\n });\r\n};\r\n\r\nexport const GetList = (listId) => {\r\n return dataFetcher(\r\n `${xdbListServiceUrl}GetList?listName=${listId}`,\r\n null\r\n );\r\n};\r\n\r\nexport const GetListingItems = (listId) => {\r\n return dataFetcher(\r\n `${xdbListServiceUrl}GetListing?listName=${listId}`,\r\n null\r\n );\r\n};\r\n\r\n\r\nexport const SaveOrderedList = (myjson, listId) => {\r\n return dataFetcher(`${xdbListServiceUrl}UpdateList?listName=${listId}`,\r\n {\r\n data : {\r\n JsonData: myjson\r\n }\r\n }\r\n);\r\n};\r\n\r\nexport const GetSavedItemsAPICompatibleGUID = (id) => {\r\n const multilistSerializedId = /^[[0-9A-F]{8}(?:[0-9A-F]{4}){3}[0-9A-F]{12}$/;\r\n const match = id?.match(multilistSerializedId);\r\n var newGuid = id;\r\n\r\n if (match?.length > 0) {\r\n id = id.toLowerCase();\r\n\r\n var parts = [];\r\n parts.push(id.slice(0, 8));\r\n parts.push(id.slice(8, 12));\r\n parts.push(id.slice(12, 16));\r\n parts.push(id.slice(16, 20));\r\n parts.push(id.slice(20, 32));\r\n newGuid = parts.join('-');\r\n }\r\n return newGuid;\r\n}\r\n\r\nexport const AddToNewsSubscriptions = (ids: string[]) => {\r\n return dataFetcher(`${xdbListServiceUrl}news-subscriptions`, {\r\n data: { \r\n ItemIds: ids \r\n }});\r\n};\r\n\r\nexport const RemoveFromNewsSubscriptions = (ids: string[]) => {\r\n return dataFetcher(`${xdbListServiceUrl}news-subscriptions-remove`, {\r\n data: { \r\n ItemIds: ids \r\n }});\r\n};","import React, { useState, useEffect } from \"react\";\r\nimport {\r\n AddItemToList,\r\n RemoveItemFromList,\r\n FAVORITES_ENDPOINT_ID,\r\n} from \"../../services/lists\";\r\nimport \"./index.scss\";\r\n\r\nconst GetAriaLabelText = (isFavorited) => {\r\n return isFavorited ? \"Remove from Favorites\" : \"Add to Favorites\";\r\n};\r\n\r\nconst GetButtonText = (isFavorited) => {\r\n return isFavorited ? \"Favorited\" : \"Favorite\";\r\n};\r\n\r\nconst GetIcon = (isFavorited) => {\r\n return isFavorited ? \"fa-star\" : \"fa-star-o\";\r\n};\r\n\r\nconst FavoriteButton = (props) => {\r\n const { className, iconOnly } = props;\r\n const [isFavorited, setIsFavorited] = useState(props.isFavorited);\r\n const [isProcessing, setIsProcessing] = useState(false);\r\n const [itemId, setItemId] = useState(props.itemId);\r\n\r\n useEffect(() => {\r\n if (props.itemId != itemId) {\r\n setItemId(props.itemId);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n const UpdateFavorite = () => {\r\n var updateSuccessful = false;\r\n if (isFavorited) {\r\n RemoveItemFromList(itemId, FAVORITES_ENDPOINT_ID)\r\n .then(() => {\r\n updateSuccessful = true;\r\n })\r\n .catch((err) => {\r\n console.log(\r\n \"An error occurred. Unable to remove item from favorites list.\"\r\n );\r\n })\r\n .finally(() => {\r\n setIsProcessing(false);\r\n if (updateSuccessful)\r\n setIsFavorited(!isFavorited);\r\n });\r\n\r\n } else {\r\n AddItemToList(itemId, FAVORITES_ENDPOINT_ID)\r\n .then(() => {\r\n updateSuccessful = true;\r\n })\r\n .catch((err) => {\r\n console.log(\r\n \"An error occurred. Unable to remove item from favorites list.\"\r\n );\r\n })\r\n .finally(() => {\r\n setIsProcessing(false);\r\n if (updateSuccessful)\r\n setIsFavorited(!isFavorited);\r\n });\r\n }\r\n };\r\n\r\n if (isProcessing && isFavorited !== undefined) UpdateFavorite();\r\n }, [isProcessing]);\r\n\r\n const updateFavoriteState = () => {\r\n if (!isProcessing) {\r\n setIsProcessing(true);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n {iconOnly ? (\r\n \r\n ) : (\r\n \r\n {GetButtonText(isFavorited)}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport { FavoriteButton };\r\n"],"sourceRoot":""}