{"version":3,"file":"chunks/Views-CookiesConsentView-jsx.js","mappings":"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","sources":["webpack:///./React/Components/Shared/Controls/Toggle.jsx","webpack:///./React/Views/CookiesConsentView.jsx"],"sourcesContent":["const Toggle = (props) => {\r\n\r\n const {\r\n isLabelWrapped,\r\n isHidden\r\n } = props;\r\n\r\n const toggleChange = (e) => {\r\n const checkbox = document.getElementById(props.id);\r\n if (e.target.className.includes('switch')) {\r\n e.target.checked = !checkbox.checked;\r\n }\r\n if (props.onChange) {\r\n if (props.emailAlert) {\r\n props.onChange(props.emailAlert);\r\n } else {\r\n props.onChange(e.target.checked);\r\n }\r\n }\r\n }\r\n\r\n const getToggleInput = () => {\r\n return (\r\n <>\r\n
\r\n { if (e.key === 'Enter') toggleChange() }} />\r\n
\r\n
\r\n
\r\n \r\n )\r\n }\r\n\r\n return (\r\n
\r\n {isLabelWrapped && props.label ?\r\n :\r\n <>\r\n {props.label && }\r\n { getToggleInput() }\r\n \r\n }\r\n
\r\n );\r\n};\r\n\r\nexport default Toggle;","import { useEffect, useState } from 'react';\r\nimport { useRecoilState, useRecoilValue } from 'recoil';\r\nimport { allowModalBackgroundScroll, stringEqualsIgnoreCase, sandhillsRequest } from '@Components/Utilities/SandhillsUtility';\r\nimport { consentCookieNames, sandhillsCookieClassifications } from '@Components/Utilities/SandhillsConstants';\r\nimport { getAllSavedCookieNames, getConsentCookie, getConsentCookieJSON, getConsentCookieName, getExpireTimeUTCStringForCookies, setConsentChanged, SetSandhillsConsentCookie } from '@Components/Utilities/CookieHelper';\r\nimport Modal from '@Components/Shared/Modals/Modal';\r\nimport Toggle from '@Components/Shared/Controls/Toggle';\r\nimport atoms from '@Components/Utilities/SandhillsAtoms';\r\n\r\nconst _saveSelections = 'saveselections';\r\n\r\nconst CookiesConsentView = (props) => {\r\n const {\r\n Actions,\r\n Buttons,\r\n Toggles,\r\n Message,\r\n RequireInternationalConsent,\r\n CookieSettings,\r\n Classifications,\r\n } = props;\r\n\r\n const currentUser = useRecoilValue(atoms.currentUser);\r\n const [ckySettings, setConsentSettings] = useState(CookieSettings);\r\n const [showModal, setShowModal] = useRecoilState(atoms.showCookieConsent);\r\n const routes = useRecoilValue(atoms.routes);\r\n\r\n useEffect(() => {\r\n if (showModal) {\r\n allowModalBackgroundScroll();\r\n\r\n //Using footer link to open modal.\r\n //Check if cookie exists, otherwise, reset ckySettings state. \r\n if (RequireInternationalConsent) {\r\n var consentCookie = getConsentCookieJSON();\r\n if (consentCookie == null) {\r\n resetConsentSettings();\r\n }\r\n }\r\n }\r\n }, [showModal]);\r\n\r\n //on page load, check if user is authenticated and cookie exists\r\n //if TrackingUserID is not set or different, update cookie with CentralTrackingUserID and save consent preferences to DB\r\n useEffect(() => {\r\n setCookiePolicyLinkEvent();\r\n checkAgreementVersion();\r\n if (RequireInternationalConsent) {\r\n initSettingsAndCookies();\r\n }\r\n }, []);\r\n\r\n const initSettingsAndCookies = () => {\r\n //If the only cookie that exists is a guest cookie, use the preferences for that cookie and create a new sandhills-consent-[UserID] cookie tied to that logged-in user.\r\n //If both a guest cookie and a UserID cookie exist, and the person logging in matches that UserID, then apply those preferences and do not prompt the user.\r\n //If both a guest cookie and a UserID cookie exist, and the person logging in does not match the existing UserID cookie, prompt the user with the cookie modal.\r\n if (currentUser.IsAuthenticated) {\r\n var guestCookie = getConsentCookie(true);\r\n var usersCookieNames = getAllSavedCookieNames().filter(c => c.includes(consentCookieNames.SandhillsConsent + '-'));\r\n var authenticatedUserConsent = getConsentCookie()\r\n\r\n if (guestCookie) {\r\n if ((usersCookieNames.length == 0 || (guestCookie.ShouldResync || authenticatedUserConsent == null)) && (!guestCookie.TrackingUserID || guestCookie?.TrackingUserID == ckySettings.TrackingUserID)) {\r\n setConsentChanged(guestCookie);\r\n authenticatedUserConsent = guestCookie;\r\n if (guestCookie.TrackingUserID) guestCookie.TrackingUserID = ckySettings.TrackingUserID;\r\n SetSandhillsConsentCookie(guestCookie, daysToSetCookie(guestCookie.ConsentStatus), guestCookie.TrackingUserID);\r\n setConsentSettings(guestCookie);\r\n\r\n if (RequireInternationalConsent && (guestCookie.ShouldResync || guestCookie?.WebAgreementConsentID <= 0)) {\r\n //Don't save unless resync and not tied to WebAgreementConsentID, otherwise we'll create dupes. \r\n saveConsentToDB(guestCookie);\r\n }\r\n }\r\n else if (RequireInternationalConsent && authenticatedUserConsent?.ShouldResync) {\r\n saveConsentToDB(authenticatedUserConsent);\r\n } else if (authenticatedUserConsent && guestCookie.TrackingUserID != authenticatedUserConsent.TrackingUserID) {\r\n //sync guest cookie with authenticated user cookie to persist settings after logging out. \r\n SetSandhillsConsentCookie(authenticatedUserConsent, daysToSetCookie(authenticatedUserConsent.ConsentStatus));\r\n }\r\n } else if (authenticatedUserConsent) {\r\n //guest cookie isn't set, create it. \r\n SetSandhillsConsentCookie(authenticatedUserConsent, daysToSetCookie(authenticatedUserConsent.ConsentStatus));\r\n }\r\n\r\n if (authenticatedUserConsent == null) {\r\n setConsentChanged(ckySettings);\r\n setShowModal(true);\r\n }\r\n }\r\n }\r\n\r\n const setCookiePolicyLinkEvent = () => {\r\n const hereLink = document.getElementById('open-consent-modal');\r\n if (hereLink) {\r\n hereLink.setAttribute('tabIndex', 0);\r\n hereLink.setAttribute('role', 'button');\r\n hereLink.onclick = function (e) {\r\n e.preventDefault();\r\n setShowModal(true);\r\n };\r\n }\r\n }\r\n\r\n const checkAgreementVersion = () => {\r\n var consentCookie = getConsentCookie();\r\n var shouldReset = true;\r\n if (ckySettings?.TrackingUserID > 0 && currentUser.IsAuthenticated) {\r\n var guestCookie = getConsentCookie(true);\r\n if (guestCookie?.TrackingUserID == consentCookie?.TrackingUserID &&\r\n guestCookie?.WebAgreementID == ckySettings?.WebAgreementID &&\r\n consentCookie?.WebAgreementID != ckySettings?.WebAgreementID) {\r\n SetSandhillsConsentCookie(guestCookie, daysToSetCookie(guestCookie.ConsentStatus), guestCookie.TrackingUserID);\r\n shouldReset = false;\r\n }\r\n }\r\n\r\n if (consentCookie && shouldReset && consentCookie.WebAgreementID != ckySettings.WebAgreementID) {\r\n document.cookie = getConsentCookieName() + '=; ' + 'expires=' + getExpireTimeUTCStringForCookies(-1) + '; path=/;';\r\n document.cookie = getConsentCookieName(true) + '=; ' + 'expires=' + getExpireTimeUTCStringForCookies(-1) + '; path=/;';\r\n resetConsentSettings();\r\n setShowModal(true);\r\n }\r\n }\r\n\r\n const onSubmit = (classification, isAccepting) => {\r\n var consentCookie = getConsentCookieJSON();\r\n\r\n //Don't run if they're just closing the modal and there's existing consent. \r\n if (!consentCookie || (consentCookie && isAccepting)) {\r\n isAccepting = !RequireInternationalConsent || isAccepting;\r\n\r\n setConsentSettings(prvCkySettings => {\r\n //update ckySettings properties then save to cookies\r\n const newSettings = {\r\n ...prvCkySettings,\r\n ConsentStatus: getStatus(isAccepting, prvCkySettings.ConsentStatus),\r\n ActionDateTime: new Date().toISOString(),\r\n ShouldResync: RequireInternationalConsent \r\n };\r\n\r\n if (RequireInternationalConsent && !stringEqualsIgnoreCase(classification, _saveSelections)) {\r\n Classifications.forEach(c => {\r\n if (!(stringEqualsIgnoreCase(classification, c) || stringEqualsIgnoreCase(c, sandhillsCookieClassifications.StrictlyNecessary))) {\r\n newSettings[c] = !stringEqualsIgnoreCase(classification, sandhillsCookieClassifications.StrictlyNecessary);\r\n }\r\n });\r\n }\r\n\r\n SetSandhillsConsentCookie(newSettings, daysToSetCookie(newSettings.ConsentStatus));\r\n if (RequireInternationalConsent) {\r\n if (currentUser.IsAuthenticated && prvCkySettings?.TrackingUserID > 0) {\r\n SetSandhillsConsentCookie(newSettings, daysToSetCookie(newSettings.ConsentStatus), prvCkySettings.TrackingUserID);\r\n }\r\n setConsentChanged(newSettings);\r\n saveConsentToDB(newSettings);\r\n }\r\n return newSettings;\r\n });\r\n }\r\n setShowModal(false);\r\n }\r\n\r\n const saveConsentToDB = (consentSettings) => {\r\n if (RequireInternationalConsent && currentUser.IsAuthenticated) {\r\n sandhillsRequest({\r\n url: routes.SaveCookieConsent,\r\n method: 'post',\r\n data: { consentSettings: consentSettings },\r\n errorHandling: {\r\n message: 'Error Saving Cookie Preferences.',\r\n showDetails: true,\r\n useConsole: true,\r\n useAlert: false\r\n }\r\n }).then((response) => {\r\n //if successful, update WebAgreementConsentID \r\n if (response) {\r\n setConsentSettings(prvCkySettings => {\r\n if (response.Success && response.WebAgreementConsentID && response.WebAgreementConsentID > 0) {\r\n prvCkySettings.WebAgreementConsentID = response.WebAgreementConsentID\r\n }\r\n\r\n prvCkySettings.ShouldResync = response.ShouldResync; \r\n SetSandhillsConsentCookie(response, daysToSetCookie(prvCkySettings.ConsentStatus));\r\n\r\n if (response.TrackingUserID && response.TrackingUserID > 0) {\r\n SetSandhillsConsentCookie(response, daysToSetCookie(prvCkySettings.ConsentStatus), response.TrackingUserID);\r\n }\r\n\r\n return prvCkySettings;\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n const onChange = (e, classification) => {\r\n if (!stringEqualsIgnoreCase(classification,)) {\r\n setConsentSettings(prvCkySettings => ({ ...prvCkySettings, [classification]: e }))\r\n }\r\n }\r\n\r\n //if for some reason user deletes cookie and reopens the modal,\r\n //we need to reset the ckySettings state\r\n const resetConsentSettings = () => {\r\n setConsentSettings(prvCkySettings => {\r\n const newSettings = {\r\n ...prvCkySettings,\r\n ConsentStatus: Actions.Deny,\r\n ActionDateTime: null,\r\n ShouldResync:RequireInternationalConsent,\r\n };\r\n\r\n Classifications.forEach(c => {\r\n newSettings[c] = stringEqualsIgnoreCase(c, sandhillsCookieClassifications.StrictlyNecessary);\r\n });\r\n\r\n return newSettings;\r\n });\r\n }\r\n\r\n const getStatus = (Accept, currentStatus) => {\r\n var status = currentStatus;\r\n if (Accept) {\r\n if (currentStatus === Actions.Deny) {\r\n status = Actions.Accept;\r\n } else if (currentStatus === Actions.Accept || currentStatus === Actions.Update) {\r\n status = Actions.Update;\r\n } else {\r\n status = Actions.Deny;\r\n }\r\n }\r\n return status\r\n }\r\n\r\n const daysToSetCookie = (status) => {\r\n var days = 400;\r\n if (RequireInternationalConsent && (status == Actions.Deny)) {\r\n days = 30;\r\n }\r\n return days;\r\n }\r\n\r\n const getLabel = (classification, label) => {\r\n\r\n if (stringEqualsIgnoreCase(classification, sandhillsCookieClassifications.StrictlyNecessary)) {\r\n return ();\r\n }\r\n\r\n return label;\r\n }\r\n\r\n return (\r\n <>\r\n {(showModal) &&\r\n (\r\n onSubmit(sandhillsCookieClassifications.StrictlyNecessary, false)} xMarkClassName='fa-regular fa-circle-xmark' >\r\n
\r\n \r\n
\r\n
\r\n\r\n {RequireInternationalConsent &&\r\n <>\r\n \r\n {Toggles.map(t =>\r\n onChange(e, t.Classification)}\r\n label={getLabel(t.Classification, t.Label)}\r\n isLabelWrapped\r\n />)}\r\n \r\n
\r\n {Buttons.map((b) => )}\r\n
\r\n }\r\n
)\r\n }\r\n \r\n )\r\n};\r\n\r\nexport default CookiesConsentView;\r\nglobal.CookiesConsentView = CookiesConsentView;"],"names":["props","isLabelWrapped","isHidden","toggleChange","e","checkbox","document","getElementById","id","target","className","includes","checked","onChange","emailAlert","getToggleInput","_jsx","_Fragment","children","_jsxs","type","IsChecked","onClick","onKeyDown","key","classNames","label","hideLabel","htmlFor","CookiesConsentView","Actions","Buttons","Toggles","Message","RequireInternationalConsent","CookieSettings","Classifications","currentUser","useRecoilValue","atoms","ckySettings","setConsentSettings","useState","showModal","setShowModal","useRecoilState","routes","useEffect","allowModalBackgroundScroll","getConsentCookieJSON","resetConsentSettings","setCookiePolicyLinkEvent","checkAgreementVersion","initSettingsAndCookies","IsAuthenticated","_authenticatedUserCon","guestCookie","getConsentCookie","usersCookieNames","getAllSavedCookieNames","filter","c","consentCookieNames","authenticatedUserConsent","length","ShouldResync","TrackingUserID","saveConsentToDB","SetSandhillsConsentCookie","daysToSetCookie","ConsentStatus","setConsentChanged","WebAgreementConsentID","hereLink","setAttribute","onclick","preventDefault","consentCookie","shouldReset","WebAgreementID","cookie","getConsentCookieName","getExpireTimeUTCStringForCookies","onSubmit","classification","isAccepting","prvCkySettings","newSettings","_objectSpread","getStatus","ActionDateTime","Date","toISOString","stringEqualsIgnoreCase","forEach","sandhillsCookieClassifications","consentSettings","sandhillsRequest","url","SaveCookieConsent","method","data","errorHandling","message","showDetails","useConsole","useAlert","then","response","Success","Deny","Accept","currentStatus","status","Update","days","Modal","containerClassName","allowScroll","onClose","xMarkClassName","dangerouslySetInnerHTML","__html","bodyClassName","map","t","Toggle","Classification","Id","Label","getLabel","b","global"],"sourceRoot":""}