{"version":3,"sources":["components/AlertBanner.js","services/CMSService.js","components/PrivacyForm.js","App.js","index.js"],"names":["AlertBanner","props","className","type","role","style","heading","body","FakeAGAData","Promise","resolve","companyName","headingContentHTML","contactContentHTML","sanitize","DOMPurify","PrivacyForm","state","data","firstName","middleName","lastName","maidenName","street","city","zip","phone","dob","ss4","policyNumbers","wantsPersonalInfoA","wantsPersonalInfoB","wantsPersonalInfoC","wantsPersonalInfoD","wantsPersonalInfoE","wantsPersonalInfoF","wantInfoCorrected","wantInfoDeleted","wantsLimitUseDisclosure","wantsOptedOutOfSale","contactNotes","requestingAtLeastOneItem","wasSubmitted","needsToClickOnFormLink","didClickOnFormLink","CMS","headerContent","contactContent","errors","schema","Joi","string","allow","label","regex","error","message","min","max","required","doSubmit","setState","document","getElementById","value","inputs","getElementsByTagName","i","length","setTimeout","submit","url","getAttribute","fetch","headers","then","res","json","getCCPAContent","catch","badRes","console","log","dangerouslySetInnerHTML","__html","this","renderForm","renderInput","name","renderSelect","placeholder","maxLength","Separator","id","onFocus","renderCheckGroup","normalFontWeight","children","hidden","Fragment","href","process","target","rel","onClick","renderSubmitButton","components","OnfsForm","fontWeight","borderTopColor","App","useState","formIsSubmitted","setFormIsSubmitted","emailSuccessStatus","setEmailSuccessStatus","privacyEmailEndpointUrl","bannerStyle","minWidth","maxWidth","privacyRequest","window","scrollTo","method","JSON","stringify","parse","emailSent","ReactDOM","render","StrictMode"],"mappings":"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","file":"static/js/main.8ff3dba4.chunk.js","sourcesContent":["import React from 'react'\r\n\r\nfunction AlertBanner(props) {\r\n return (\r\n \r\n

\r\n {props.heading}\r\n

\r\n

{props.body}

\r\n \r\n )\r\n}\r\n\r\nexport { AlertBanner }\r\n","function getCCPAContent() {\r\n let url\r\n if (document.getElementById('ccpaContentEndpoint')) {\r\n url = document\r\n .getElementById('ccpaContentEndpoint')\r\n .getAttribute('data-url')\r\n return fetch(url, {\r\n headers: {\r\n 'Content-Type': 'application/json'\r\n }\r\n }).then((res) => res.json())\r\n } else {\r\n return FakeAGAData\r\n }\r\n}\r\n\r\nconst FakeAGAData = new Promise((resolve) => {\r\n resolve({\r\n companyName: 'Ohio National',\r\n headingContentHTML: '

Placeholder for heading Content

',\r\n contactContentHTML: '

Placeholder for contact Content

'\r\n })\r\n})\r\n\r\nexport { getCCPAContent }\r\n","import React from 'react'\r\nimport { components } from 'onfsspacommon'\r\nimport Joi from 'joi-browser'\r\nimport 'onfsspacommon/dist/index.css'\r\nimport { getCCPAContent } from '../services/CMSService'\r\n\r\nimport DOMPurify from 'dompurify'\r\n\r\nconst { sanitize } = DOMPurify\r\n\r\nconst { OnfsForm } = components\r\n\r\nexport default class PrivacyForm extends OnfsForm {\r\n componentDidMount() {\r\n const contentResponse = getCCPAContent()\r\n\r\n contentResponse\r\n .then(({ contactContentHTML, companyName, headingContentHTML }) => {\r\n const CMS = {\r\n headerContent: sanitize(headingContentHTML),\r\n contactContent: sanitize(contactContentHTML)\r\n }\r\n this.setState({ CMS })\r\n this.setState({ companyName })\r\n })\r\n .catch((badRes) => console.log(`Bad CCPA CMS Data response -- ${badRes}`))\r\n }\r\n\r\n state = {\r\n data: {\r\n firstName: '',\r\n middleName: '',\r\n lastName: '',\r\n maidenName: '',\r\n street: '',\r\n city: '',\r\n state: '',\r\n zip: '',\r\n phone: '',\r\n dob: '',\r\n ss4: '',\r\n policyNumbers: '',\r\n wantsPersonalInfoA: 'false',\r\n wantsPersonalInfoB: 'false',\r\n wantsPersonalInfoC: 'false',\r\n wantsPersonalInfoD: 'false',\r\n wantsPersonalInfoE: 'false',\r\n wantsPersonalInfoF: 'false',\r\n wantInfoCorrected: 'false',\r\n wantInfoDeleted: 'false',\r\n wantsLimitUseDisclosure: 'false',\r\n wantsOptedOutOfSale: 'false',\r\n contactNotes: ''\r\n },\r\n requestingAtLeastOneItem: false,\r\n wasSubmitted: false,\r\n needsToClickOnFormLink: false,\r\n didClickOnFormLink: false,\r\n CMS: { headerContent: '', contactContent: '' },\r\n companyName: 'our company',\r\n errors: {}\r\n }\r\n\r\n schema = {\r\n firstName: Joi.string().allow('').label('First Name'),\r\n middleName: Joi.string().allow('').label('Middle Name'),\r\n lastName: Joi.string().allow('').label('Last Name'),\r\n maidenName: Joi.string().allow('').label('Maiden/Nickname'),\r\n street: Joi.string().allow('').label('Street Address'),\r\n city: Joi.string().allow('').label('City'),\r\n state: Joi.string().allow('').label('State'),\r\n zip: Joi.string()\r\n .allow('')\r\n .regex(/^\\d{5}(?:[-\\s]\\d{4})?$/)\r\n .error(() => {\r\n return {\r\n message: 'Must be a valid ZIP code'\r\n }\r\n })\r\n .label('ZIP'),\r\n phone: Joi.string()\r\n .regex(/^[+]?[(]?[0-9]{3}[)]?[-\\s.]?[0-9]{3}[-\\s.]?[0-9]{4,6}$/im)\r\n .allow('')\r\n .error(() => {\r\n return {\r\n message: 'Must be a valid phone number'\r\n }\r\n })\r\n .label('Phone Number'),\r\n dob: Joi.string().allow('').label('Date of Birth'),\r\n ss4: Joi.string()\r\n .allow('')\r\n .min(4)\r\n .max(4)\r\n .regex(/^[0-9]+$/)\r\n .error(() => {\r\n return {\r\n message: 'Needs to be only digits and exactly 4 characters long'\r\n }\r\n })\r\n .label('Last 4 Digits of Social Security Number'),\r\n policyNumbers: Joi.string()\r\n .allow('')\r\n .label('Policy/Contract number(s), if applicable:'),\r\n wantsPersonalInfoA: Joi.string().allow('').label('1a'),\r\n wantsPersonalInfoB: Joi.string().allow('').label('b'),\r\n wantsPersonalInfoC: Joi.string().allow('').label('1c'),\r\n wantsPersonalInfoD: Joi.string().allow('').label('1d'),\r\n wantsPersonalInfoE: Joi.string().allow('').label('1e'),\r\n wantsPersonalInfoF: Joi.string().allow('').label('1f'),\r\n wantInfoCorrected: Joi.string().allow('').label('2'),\r\n wantInfoDeleted: Joi.string().allow('').label('3'),\r\n wantsLimitUseDisclosure: Joi.string().allow('').label('4'),\r\n wantsOptedOutOfSale: Joi.string().allow('').label('5'),\r\n contactNotes: Joi.string().required().label('Contact Method')\r\n }\r\n\r\n doSubmit = () => {\r\n this.setState({ wasSubmitted: true })\r\n this.setState({\r\n needsToClickOnFormLink:\r\n document.getElementById('wantsPersonalInfoF')?.value === 'true'\r\n })\r\n\r\n const inputs = document\r\n .getElementById('requestedInfoContainer')\r\n .getElementsByTagName('input')\r\n\r\n this.setState({ requestingAtLeastOneItem: false })\r\n for (let i = 0; i < inputs.length; i++) {\r\n if (inputs[i].value === 'true') {\r\n this.setState({ requestingAtLeastOneItem: true })\r\n }\r\n }\r\n\r\n setTimeout(() => {\r\n if (this.state.requestingAtLeastOneItem) {\r\n if (this.state.needsToClickOnFormLink) {\r\n if (this.state.didClickOnFormLink) {\r\n // Call the server\r\n this.props.submit(this.state.data)\r\n }\r\n } else {\r\n // Call the server\r\n this.props.submit(this.state.data)\r\n }\r\n }\r\n }, 0)\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n {/*** CMS Div Placeholder ***/}\r\n \r\n\r\n {this.renderForm(\r\n <>\r\n {this.renderInput({\r\n name: 'firstName',\r\n label: 'First Name'\r\n })}\r\n {this.renderInput({\r\n name: 'middleName',\r\n label: 'Middle Name'\r\n })}\r\n {this.renderInput({\r\n name: 'lastName',\r\n label: 'Last Name'\r\n })}\r\n {this.renderInput({\r\n name: 'maidenName',\r\n label: 'Maiden/Nickname'\r\n })}\r\n {this.renderInput({\r\n name: 'street',\r\n label: 'Street Address'\r\n })}\r\n {this.renderInput({\r\n name: 'city',\r\n label: 'City'\r\n })}\r\n {this.renderSelect({\r\n name: 'state',\r\n label: 'State',\r\n type: 'states'\r\n })}\r\n {this.renderInput({\r\n name: 'zip',\r\n label: 'ZIP'\r\n })}\r\n {this.renderInput({\r\n name: 'phone',\r\n label: 'Phone Number'\r\n })}\r\n {this.renderInput({\r\n name: 'dob',\r\n label: 'Date of Birth',\r\n type: 'date'\r\n })}\r\n {this.renderInput({\r\n name: 'ss4',\r\n label: 'Last 4 Digits of Social Security Number',\r\n placeholder: 'xxxx',\r\n maxLength: 4\r\n })}\r\n {this.renderInput({\r\n name: 'policyNumbers',\r\n label: 'Policy/Contract number(s), if applicable:',\r\n placeholder: 'Enter Policy Number(s)'\r\n })}\r\n \r\n

\r\n The CCPA grants consumers the right to (check all that you are\r\n requesting):\r\n

\r\n this.setState({ wasSubmitted: false })}\r\n >\r\n {this.renderCheckGroup({\r\n label: (\r\n
\r\n 1.{' '}\r\n Request to Know and Access My Personal Information. {' '}\r\n I request that you disclose to me the following information\r\n (check all that you are requesting):\r\n
\r\n ),\r\n name: 'wantsPersonalInfoGroup',\r\n children: (\r\n <>\r\n {this.renderInput({\r\n name: 'wantsPersonalInfoA',\r\n label: (\r\n
\r\n A. The categories of personal information that you\r\n have collected about me\r\n
\r\n ),\r\n type: 'checkbox'\r\n })}\r\n {this.renderInput({\r\n name: 'wantsPersonalInfoB',\r\n label: (\r\n
\r\n B. The categories of personal information about me\r\n that you disclosed or sold for a business purpose\r\n
\r\n ),\r\n type: 'checkbox'\r\n })}\r\n {this.renderInput({\r\n name: 'wantsPersonalInfoC',\r\n label: (\r\n
\r\n C. The categories of sources from which my personal\r\n information is collected\r\n
\r\n ),\r\n type: 'checkbox'\r\n })}\r\n {this.renderInput({\r\n name: 'wantsPersonalInfoD',\r\n label: (\r\n
\r\n D. The business or commercial purpose for collecting\r\n or selling my personal information\r\n
\r\n ),\r\n type: 'checkbox'\r\n })}\r\n {this.renderInput({\r\n name: 'wantsPersonalInfoE',\r\n label: (\r\n
\r\n E. The categories of third parties to whom you\r\n disclosed or sold my personal information for a\r\n business purpose\r\n
\r\n ),\r\n type: 'checkbox'\r\n })}\r\n {this.renderInput({\r\n name: 'wantsPersonalInfoF',\r\n label: (\r\n
\r\n F. The specific pieces of personal information you\r\n have collected about me{' '}\r\n \r\n (see the section entitled \"Declaration\" for\r\n additional instructions)\r\n \r\n ,\r\n
\r\n ),\r\n\r\n type: 'checkbox'\r\n })}\r\n \r\n )\r\n })}\r\n {this.renderInput({\r\n name: 'wantInfoCorrected',\r\n label: (\r\n
\r\n 2. Request to Correct My Personal Information. I\r\n request that you correct an inaccuracy in the personal information that you maintain about me.\r\n
\r\n ),\r\n type: 'checkbox'\r\n })}\r\n {this.renderInput({\r\n name: 'wantInfoDeleted',\r\n label: (\r\n
\r\n 3. Request to Delete My Personal Information. I\r\n request that you delete the personal information that you\r\n have collected about me.\r\n
\r\n ),\r\n type: 'checkbox'\r\n })}\r\n {this.renderInput({\r\n name: 'wantsLimitUseDisclosure',\r\n label: (\r\n
\r\n 4.{' '}\r\n \r\n Request to Limit Use and Disclosure of Sensitive Personal Information.\r\n {' '}\r\n I request that you limit the Use and Disclosure of my Sensitive Personal Information to\r\n that which is necessary to provide goods or services to me. (Please note that our use\r\n and disclosure of your Sensitive Personal Information is already limited to\r\n that which is necessary to provide goods and services to you.)',\r\n
\r\n ),\r\n type: 'checkbox'\r\n })}\r\n {this.renderInput({\r\n name: 'wantsOptedOutOfSale',\r\n label: (\r\n
\r\n 5.{' '}\r\n \r\n Request to Opt-Out of the Sale or Sharing of My Personal Information.\r\n {' '}\r\n I request to opt-out of the Sale or Sharing of the personal information\r\n that you have collected about me. (Please note that{' '}\r\n {this.state.companyName} does not Sell or Share personal information\r\n about consumers, accordingly, you do not need to opt out of\r\n the Sale or Sharing of your personal information.)',\r\n
\r\n ),\r\n type: 'checkbox'\r\n })}\r\n {this.state.wasSubmitted &&\r\n !this.state.requestingAtLeastOneItem && (\r\n
\r\n You must check at least one CCPA Request Option.\r\n
\r\n )}\r\n
\r\n \r\n\r\n {/*** CMS Div ***/}\r\n \r\n\r\n {this.renderInput({\r\n name: 'contactNotes',\r\n label: (\r\n \r\n ),\r\n type: 'textarea',\r\n placeholder: 'How should we contact you?'\r\n })}\r\n {document.getElementById('wantsPersonalInfoF')?.value ===\r\n 'true' && (\r\n \r\n \r\n

Declaration

\r\n

\r\n \r\n Note: This section must be completed only if you are making\r\n a request above in Section 1(F) for the specific pieces of\r\n information collected about you.\r\n \r\n

\r\n

\r\n Please sign this{' '}\r\n this.setState({ didClickOnFormLink: true })}\r\n >\r\n declaration\r\n {' '}\r\n and mail it to us at Ohio National Financial Services, Attn:\r\n Legal, One Financial Way, Cincinnati, OH 45242, or e-mail a\r\n copy of it to us at legal@ohionational.com.\r\n

\r\n {!this.state.didClickOnFormLink && this.state.wasSubmitted && (\r\n
\r\n If you request option 1F, you must mail or email us the\r\n declaration above. To continue, please click on the form\r\n link above.\r\n
\r\n )}\r\n
\r\n )}\r\n {this.renderSubmitButton('Submit Request')}\r\n \r\n )}\r\n \r\n )\r\n }\r\n}\r\n\r\nconst normalFontWeight = { fontWeight: 'normal' }\r\n\r\nfunction Separator() {\r\n return
\r\n}\r\n","import React, { useState } from 'react'\r\nimport { AlertBanner } from './components/AlertBanner'\r\nimport PrivacyForm from './components/PrivacyForm'\r\n\r\nexport default function App() {\r\n const [formIsSubmitted, setFormIsSubmitted] = useState(false)\r\n const [emailSuccessStatus, setEmailSuccessStatus] = useState(null)\r\n const privacyEmailEndpointUrl = document\r\n .getElementById('privacyEmailEndpoint')\r\n ?.getAttribute('data-url')\r\n const bannerStyle = { minWidth: '250px', maxWidth: '650px' }\r\n\r\n function submitForm(privacyRequest) {\r\n setFormIsSubmitted(true)\r\n\r\n // Scroll to top\r\n window.scrollTo(0, 0)\r\n\r\n // Make the request\r\n fetch(privacyEmailEndpointUrl, {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: JSON.stringify(privacyRequest)\r\n })\r\n .then((res) => res.json())\r\n .then((res) => {\r\n let response = JSON.parse(res)\r\n\r\n if (response.emailSent === '1') {\r\n setEmailSuccessStatus(true)\r\n } else {\r\n setEmailSuccessStatus(false)\r\n }\r\n })\r\n }\r\n\r\n if (!formIsSubmitted) {\r\n return (\r\n <>\r\n \r\n \r\n )\r\n } else if (!privacyEmailEndpointUrl) {\r\n return (\r\n \r\n )\r\n } else if (emailSuccessStatus === null) {\r\n return
Loading...
\r\n } else if (emailSuccessStatus === true) {\r\n return (\r\n \r\n )\r\n } else if (emailSuccessStatus === false) {\r\n return (\r\n \r\n )\r\n }\r\n}\r\n","import React from 'react'\r\nimport ReactDOM from 'react-dom'\r\nimport App from './App'\r\n\r\n// Bootstrap Scoped\r\n// The div parent class needed to use this style is .bootstrap-scope but this is\r\n// already included in index.html by default\r\nimport './css/bootstrap-4.1.1-scoped.min.css'\r\nimport './css/index.css'\r\n\r\nReactDOM.render(\r\n \r\n \r\n ,\r\n document.getElementById('privacy_form_root')\r\n)\r\n"],"sourceRoot":""}