{"version":3,"file":"zipcode.b067ffbb7c0258166d50.js","mappings":"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","sources":["webpack://stdcheck-exposed-wp-theme/./themes/stdcheck-exposed/src/js/zipcode.js","webpack://stdcheck-exposed-wp-theme/./themes/stdcheck-exposed/src/js/services/storage.js"],"sourcesContent":["import { StorageService } from './services/storage';\n\n$(document).ready(function () {\n const validZip = new RegExp('^\\\\s*(\\\\d{5})\\\\s*$');\n const storageService = new StorageService();\n\n /* The following script binds into search button in About Page */\n $('#findNearLab-btn').click(function () {\n $('#validzc').addClass('hide');\n\n let zipCode = $('#widget-zipCode').val();\n\n if (validZip.test(zipCode)) {\n storageService.zipCode = zipCode;\n location.href = '/std-test-center.php';\n } else {\n $('#validzc').removeClass('hide');\n }\n });\n\n /* The following script binds to the findalab search button on the Home page */\n $('#findalab-btn').on('click', function () {\n if (Object.keys(storageService.psc).length > 0) {\n return (window.location.href = '/std-test-center.php');\n }\n\n const zipCode = $('#findalab-input').val();\n\n if (validZip.test(zipCode)) {\n storageService.zipCode = zipCode;\n location.href = '/std-test-center.php';\n } else {\n $('#invalid-zip-code-error').removeClass('hide');\n }\n });\n});\n","/**\n * Service class for accessing localStorage.\n */\nexport function StorageService() {\n /**\n * Keys used to reference data in localStorage\n */\n const CJ_EVENT_KEY = 'ngStorage-cjevent';\n const COUPON_KEY = 'ngStorage-coupon';\n const FEE_KEY = 'ngStorage-fee';\n const LAB_KEY = 'ngStorage-center';\n const REORDER_KEY = 'ngStorage-reorder';\n const TESTS_KEY = 'ngStorage-tests';\n const TOKEN_KEY = 'ngStorage-token';\n const ZIPCODE_KEY = 'ngStorage-zip_code';\n const IN_HOME_KEY = 'ngStorage-in-home-booking-result';\n const EMAIL_KEY = 'ngStorage-email';\n const FREE_KEY = 'ngStorage-free';\n const TRANSACTION_ID_KEY = 'transaction_id';\n const BETTER_LAB = 'ngStorage-betterlab';\n const IHC_PROVIDERS_KEY = 'ngStorage-ihc-providers';\n\n /**\n * Retrieves a value stored as JSON in localStorage\n *\n * @param {string} key the key to retrieve from storage\n *\n * @return {any} The value stored in localStorage\n */\n function getLocalStorage(key) {\n return JSON.parse(window.localStorage?.getItem(key) || null);\n }\n\n /**\n * Saves a value in localStorage as a JSON string\n *\n * @param {string} key The key to store the value in\n * @param {any} value The value to be stored\n *\n * @return {void}\n */\n function setLocalStorage(key, value) {\n window.localStorage?.setItem(key, JSON.stringify(value || null));\n }\n\n /**\n * Deletes a value from the storage.\n *\n * @param key {string} The value's key.\n *\n * @return void\n */\n function removeLocalStorage(key) {\n window.localStorage?.removeItem(key);\n }\n\n // Initialize tests in localStorage\n if (!getLocalStorage(TESTS_KEY)) {\n setLocalStorage(TESTS_KEY, []);\n }\n\n return {\n /**\n * Local Storage get, set and remove\n */\n localStorage: {\n get: getLocalStorage,\n set: setLocalStorage,\n remove: removeLocalStorage,\n },\n\n /**\n * Removes any reorder information from local storage\n */\n removeReorderInformation: function () {\n window.localStorage?.removeItem(REORDER_KEY);\n },\n\n /**\n * Removes previous order information from local storage\n */\n removePreviousOrderInformation: function () {\n window.localStorage?.removeItem(TRANSACTION_ID_KEY);\n window.localStorage?.removeItem(BETTER_LAB);\n },\n\n /**\n * Retrieve coupon data from local storage\n */\n get coupon() {\n return this.localStorage.get(COUPON_KEY) ?? {};\n },\n\n /**\n * Store coupon data in local storage\n */\n set coupon(coupon) {\n this.localStorage.set(COUPON_KEY, coupon);\n },\n\n /**\n * Retrieve fee data from localStorage\n */\n get fee() {\n return this.localStorage.get(FEE_KEY);\n },\n\n /**\n * Store fee data in localStorage\n */\n set fee(fee) {\n this.localStorage.set(FEE_KEY, fee);\n },\n\n /**\n * Retrieve lab data from local storage\n */\n get lab() {\n return this.localStorage.get(LAB_KEY) ?? {};\n },\n\n /**\n * Store lab data in local storage\n */\n set lab(lab) {\n this.localStorage.set(LAB_KEY, lab);\n },\n\n /**\n * Retrieve psc data from local storage\n */\n get psc() {\n return this.lab;\n },\n\n /**\n * Store psc data in local storage\n */\n set psc(psc) {\n this.lab = psc;\n },\n\n /**\n * Retrieve selected tests data from local storage\n */\n get tests() {\n return this.localStorage.get(TESTS_KEY) ?? [];\n },\n\n /**\n * Store selected tests data in local storage\n */\n set tests(tests) {\n this.localStorage.set(TESTS_KEY, tests);\n },\n\n /**\n * Retrieve token data from localStorage\n */\n get token() {\n return this.localStorage.get(TOKEN_KEY);\n },\n\n /**\n * Store token data in localStorage\n */\n set token(token) {\n this.localStorage.set(TOKEN_KEY, token);\n },\n\n /**\n * Retrieve CJ Affiliate data from localStorage\n */\n get cjevent() {\n return this.localStorage.get(CJ_EVENT_KEY);\n },\n\n /**\n * Store CJ Affiliate data in localStorage\n */\n set cjevent(cjevent) {\n this.localStorage.set(CJ_EVENT_KEY, cjevent);\n },\n\n /**\n * Retrieve zip code data from localStorage\n */\n get zipCode() {\n return this.localStorage.get(ZIPCODE_KEY);\n },\n\n /**\n * Store zip code data in localStorage\n */\n set zipCode(zipCode) {\n this.localStorage.set(ZIPCODE_KEY, zipCode);\n },\n\n get inHomeResult() {\n return this.localStorage.get(IN_HOME_KEY);\n },\n\n /**\n * Retrieve email data from local storage\n */\n get email() {\n return this.localStorage.get(EMAIL_KEY) ?? {};\n },\n\n /**\n * Store email data in local storage\n */\n set email(email) {\n this.localStorage.set(EMAIL_KEY, email);\n },\n\n /**\n * Retrieve free order data from local storage\n */\n get free() {\n return this.localStorage.get(FREE_KEY) ?? {};\n },\n\n /**\n * Store free order data in local storage\n */\n set free(free) {\n this.localStorage.set(FREE_KEY, free);\n },\n\n /**\n * Retrieve In-Home Collection provider IDs from local storage\n */\n get ihcProviders() {\n return this.localStorage.get(IHC_PROVIDERS_KEY);\n },\n\n /**\n * Store In-Home Collection provider IDs in local storage\n */\n set ihcProviders(ihcProviders) {\n this.localStorage.set(IHC_PROVIDERS_KEY, ihcProviders);\n },\n };\n}\n"],"names":["$","document","ready","validZip","RegExp","storageService","click","addClass","zipCode","val","test","location","href","removeClass","on","Object","keys","psc","length","window","StorageService","CJ_EVENT_KEY","COUPON_KEY","FEE_KEY","LAB_KEY","TESTS_KEY","TOKEN_KEY","ZIPCODE_KEY","EMAIL_KEY","FREE_KEY","IHC_PROVIDERS_KEY","getLocalStorage","key","JSON","parse","localStorage","getItem","setLocalStorage","value","setItem","stringify","get","set","remove","removeItem","removeReorderInformation","removePreviousOrderInformation","coupon","this","fee","lab","tests","token","cjevent","inHomeResult","email","free","ihcProviders"],"sourceRoot":""}