@sheerid/jslib 1.131.0 → 1.133.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es5/Tmetrix.bundle.js +4 -4
- package/es5/messages_ar.bundle.js +5 -5
- package/es5/messages_bg.bundle.js +5 -5
- package/es5/messages_cs.bundle.js +5 -5
- package/es5/messages_da.bundle.js +5 -5
- package/es5/messages_de.bundle.js +5 -5
- package/es5/messages_el.bundle.js +5 -5
- package/es5/messages_en-GB.bundle.js +5 -5
- package/es5/messages_es-ES.bundle.js +5 -5
- package/es5/messages_es.bundle.js +5 -5
- package/es5/messages_fi.bundle.js +5 -5
- package/es5/messages_fr-CA.bundle.js +5 -5
- package/es5/messages_fr.bundle.js +5 -5
- package/es5/messages_ga.bundle.js +5 -5
- package/es5/messages_hr.bundle.js +5 -5
- package/es5/messages_hu.bundle.js +5 -5
- package/es5/messages_id.bundle.js +5 -5
- package/es5/messages_it.bundle.js +5 -5
- package/es5/messages_iw.bundle.js +5 -5
- package/es5/messages_ja.bundle.js +5 -5
- package/es5/messages_ko.bundle.js +5 -5
- package/es5/messages_lo.bundle.js +5 -5
- package/es5/messages_lt.bundle.js +5 -5
- package/es5/messages_ms.bundle.js +5 -5
- package/es5/messages_nl.bundle.js +5 -5
- package/es5/messages_no.bundle.js +5 -5
- package/es5/messages_pl.bundle.js +5 -5
- package/es5/messages_pt-BR.bundle.js +5 -5
- package/es5/messages_pt.bundle.js +5 -5
- package/es5/messages_ru.bundle.js +5 -5
- package/es5/messages_sk.bundle.js +5 -5
- package/es5/messages_sl.bundle.js +5 -5
- package/es5/messages_sr.bundle.js +5 -5
- package/es5/messages_sv.bundle.js +5 -5
- package/es5/messages_th.bundle.js +5 -5
- package/es5/messages_tr.bundle.js +5 -5
- package/es5/messages_zh-HK.bundle.js +5 -5
- package/es5/messages_zh.bundle.js +5 -5
- package/es6/{ar-2a0ea0a2.es.js → ar-b27b7093.es.js} +7 -1
- package/es6/{cs-69493771.es.js.map → ar-b27b7093.es.js.map} +1 -1
- package/es6/{bg-7492e98f.es.js → bg-dc006d27.es.js} +7 -1
- package/es6/{ar-2a0ea0a2.es.js.map → bg-dc006d27.es.js.map} +1 -1
- package/es6/{cs-69493771.es.js → cs-c69d953e.es.js} +7 -1
- package/es6/{da-c183492c.es.js.map → cs-c69d953e.es.js.map} +1 -1
- package/es6/{da-c183492c.es.js → da-b076ddb8.es.js} +7 -1
- package/es6/{bg-7492e98f.es.js.map → da-b076ddb8.es.js.map} +1 -1
- package/es6/{de-e87946f1.es.js → de-354c036e.es.js} +7 -1
- package/es6/de-354c036e.es.js.map +1 -0
- package/es6/{el-901232c4.es.js → el-f6dbc2d3.es.js} +7 -1
- package/es6/el-f6dbc2d3.es.js.map +1 -0
- package/es6/{en-GB-705bcf25.es.js → en-GB-860e8aa7.es.js} +7 -1
- package/es6/{en-GB-705bcf25.es.js.map → en-GB-860e8aa7.es.js.map} +1 -1
- package/es6/{es-fc0efe3b.es.js → es-353dbd9f.es.js} +7 -1
- package/es6/es-353dbd9f.es.js.map +1 -0
- package/es6/{es-ES-de4f369c.es.js → es-ES-bf00171e.es.js} +7 -1
- package/es6/{es-ES-de4f369c.es.js.map → es-ES-bf00171e.es.js.map} +1 -1
- package/es6/{fi-d36e43af.es.js → fi-c7989cb5.es.js} +7 -1
- package/es6/fi-c7989cb5.es.js.map +1 -0
- package/es6/{fr-CA-32c93ab3.es.js → fr-CA-4099284c.es.js} +7 -1
- package/es6/{fr-CA-32c93ab3.es.js.map → fr-CA-4099284c.es.js.map} +1 -1
- package/es6/{fr-389b68b2.es.js → fr-b4eb4bb8.es.js} +7 -1
- package/es6/fr-b4eb4bb8.es.js.map +1 -0
- package/es6/{ga-8a7fa7c0.es.js → ga-411aa244.es.js} +7 -1
- package/es6/ga-411aa244.es.js.map +1 -0
- package/es6/{hr-c62d82b8.es.js → hr-5cbbd24b.es.js} +7 -1
- package/es6/hr-5cbbd24b.es.js.map +1 -0
- package/es6/{hu-30eada8c.es.js → hu-70183b5c.es.js} +7 -1
- package/es6/hu-70183b5c.es.js.map +1 -0
- package/es6/{id-cb32d82c.es.js → id-5bff21ac.es.js} +7 -1
- package/es6/id-5bff21ac.es.js.map +1 -0
- package/es6/{it-253978c9.es.js → it-71448850.es.js} +7 -1
- package/es6/it-71448850.es.js.map +1 -0
- package/es6/{iw-91688793.es.js → iw-688d2e54.es.js} +7 -1
- package/es6/iw-688d2e54.es.js.map +1 -0
- package/es6/{ja-3193a4d4.es.js → ja-34d2940e.es.js} +7 -1
- package/es6/ja-34d2940e.es.js.map +1 -0
- package/es6/{ko-f3bfa87b.es.js → ko-f5c9d886.es.js} +7 -1
- package/es6/ko-f5c9d886.es.js.map +1 -0
- package/es6/{lo-2129d0ad.es.js → lo-ac700ebc.es.js} +7 -1
- package/es6/lo-ac700ebc.es.js.map +1 -0
- package/es6/{lt-8da08268.es.js → lt-ab484249.es.js} +7 -1
- package/es6/lt-ab484249.es.js.map +1 -0
- package/es6/{ms-3721a2b0.es.js → ms-10199939.es.js} +7 -1
- package/es6/ms-10199939.es.js.map +1 -0
- package/es6/{nl-00c90dfa.es.js → nl-20646f48.es.js} +7 -1
- package/es6/nl-20646f48.es.js.map +1 -0
- package/es6/{no-35d2b69f.es.js → no-b3a23bde.es.js} +7 -1
- package/es6/no-b3a23bde.es.js.map +1 -0
- package/es6/{pl-691de3d9.es.js → pl-d8bd7c17.es.js} +7 -1
- package/es6/pl-d8bd7c17.es.js.map +1 -0
- package/es6/{pt-BR-100c45c6.es.js → pt-BR-ea3788be.es.js} +7 -1
- package/es6/{pt-BR-100c45c6.es.js.map → pt-BR-ea3788be.es.js.map} +1 -1
- package/es6/{pt-3be0a3a6.es.js → pt-d888c58c.es.js} +7 -1
- package/es6/pt-d888c58c.es.js.map +1 -0
- package/es6/{ru-5e886dd4.es.js → ru-1e1c813e.es.js} +7 -1
- package/es6/ru-1e1c813e.es.js.map +1 -0
- package/es6/{sk-f4ed521d.es.js → sk-2b93af62.es.js} +7 -1
- package/es6/sk-2b93af62.es.js.map +1 -0
- package/es6/{sl-9a37658c.es.js → sl-2d43a487.es.js} +7 -1
- package/es6/sl-2d43a487.es.js.map +1 -0
- package/es6/{sr-aa226b40.es.js → sr-be7bfaef.es.js} +7 -1
- package/es6/sr-be7bfaef.es.js.map +1 -0
- package/es6/{sv-ba6c3f38.es.js → sv-9c576699.es.js} +7 -1
- package/es6/sv-9c576699.es.js.map +1 -0
- package/es6/{th-b84abfa6.es.js → th-b93ed852.es.js} +7 -1
- package/es6/th-b93ed852.es.js.map +1 -0
- package/es6/{tr-008fab12.es.js → tr-ac128e10.es.js} +7 -1
- package/es6/tr-ac128e10.es.js.map +1 -0
- package/es6/{zh-14e5aaab.es.js → zh-61c87e17.es.js} +7 -1
- package/es6/zh-61c87e17.es.js.map +1 -0
- package/es6/{zh-HK-e35398a8.es.js → zh-HK-8a1f572e.es.js} +7 -1
- package/es6/zh-HK-8a1f572e.es.js.map +1 -0
- package/localized-messages/ar.json +6 -0
- package/localized-messages/bg.json +6 -0
- package/localized-messages/cs.json +6 -0
- package/localized-messages/da.json +6 -0
- package/localized-messages/de.json +6 -0
- package/localized-messages/el.json +6 -0
- package/localized-messages/en-GB.json +6 -0
- package/localized-messages/en-US.json +34 -28
- package/localized-messages/es-ES.json +6 -0
- package/localized-messages/es.json +6 -0
- package/localized-messages/fi.json +6 -0
- package/localized-messages/fr-CA.json +6 -0
- package/localized-messages/fr.json +6 -0
- package/localized-messages/ga.json +6 -0
- package/localized-messages/hr.json +6 -0
- package/localized-messages/hu.json +6 -0
- package/localized-messages/id.json +6 -0
- package/localized-messages/it.json +6 -0
- package/localized-messages/iw.json +6 -0
- package/localized-messages/ja.json +6 -0
- package/localized-messages/ko.json +6 -0
- package/localized-messages/lo.json +6 -0
- package/localized-messages/lt.json +6 -0
- package/localized-messages/ms.json +6 -0
- package/localized-messages/nl.json +6 -0
- package/localized-messages/no.json +6 -0
- package/localized-messages/pl.json +6 -0
- package/localized-messages/pt-BR.json +6 -0
- package/localized-messages/pt.json +6 -0
- package/localized-messages/ro.json +960 -0
- package/localized-messages/ru.json +6 -0
- package/localized-messages/sk.json +6 -0
- package/localized-messages/sl.json +6 -0
- package/localized-messages/sr.json +6 -0
- package/localized-messages/sv.json +6 -0
- package/localized-messages/th.json +6 -0
- package/localized-messages/tr.json +6 -0
- package/localized-messages/ur.json +958 -0
- package/localized-messages/vi.json +960 -0
- package/localized-messages/zh-HK.json +6 -0
- package/localized-messages/zh.json +6 -0
- package/localized-messages/zu.json +958 -0
- package/manifest.json +48 -48
- package/metrics-preview.js +11 -0
- package/metrics-sandbox.js +11 -0
- package/metrics.js +11 -0
- package/package.json +1 -1
- package/sheerid-requestOrg.css +5 -5
- package/sheerid-requestOrg.css.map +1 -1
- package/sheerid-requestOrg.js +12 -12
- package/sheerid-requestOrg.js.map +1 -1
- package/sheerid-utils.js +8 -8
- package/sheerid-utils.js.map +1 -1
- package/sheerid.css +5 -5
- package/sheerid.css.map +1 -1
- package/sheerid.js +16 -16
- package/sheerid.js.map +1 -1
- package/sheerides6.js +163 -200
- package/sheerides6.js.map +1 -1
- package/src/components/DateComponent/DateComponent.d.ts +14 -0
- package/src/components/FormFields/ActiveDutyStartDate/ActiveDutyStartDateComponent.d.ts +2 -0
- package/src/components/FormFields/BirthDate/BirthDateComponent.d.ts +1 -11
- package/src/components/FormFields/DischargeDate/DischargeDateComponent.d.ts +1 -11
- package/src/lib/types/runtimeTypes.d.ts +1 -0
- package/src/lib/types/types.d.ts +16 -4
- package/types-reference.zip +0 -0
- package/es6/de-e87946f1.es.js.map +0 -1
- package/es6/el-901232c4.es.js.map +0 -1
- package/es6/es-fc0efe3b.es.js.map +0 -1
- package/es6/fi-d36e43af.es.js.map +0 -1
- package/es6/fr-389b68b2.es.js.map +0 -1
- package/es6/ga-8a7fa7c0.es.js.map +0 -1
- package/es6/hr-c62d82b8.es.js.map +0 -1
- package/es6/hu-30eada8c.es.js.map +0 -1
- package/es6/id-cb32d82c.es.js.map +0 -1
- package/es6/it-253978c9.es.js.map +0 -1
- package/es6/iw-91688793.es.js.map +0 -1
- package/es6/ja-3193a4d4.es.js.map +0 -1
- package/es6/ko-f3bfa87b.es.js.map +0 -1
- package/es6/lo-2129d0ad.es.js.map +0 -1
- package/es6/lt-8da08268.es.js.map +0 -1
- package/es6/ms-3721a2b0.es.js.map +0 -1
- package/es6/nl-00c90dfa.es.js.map +0 -1
- package/es6/no-35d2b69f.es.js.map +0 -1
- package/es6/pl-691de3d9.es.js.map +0 -1
- package/es6/pt-3be0a3a6.es.js.map +0 -1
- package/es6/ru-5e886dd4.es.js.map +0 -1
- package/es6/sk-f4ed521d.es.js.map +0 -1
- package/es6/sl-9a37658c.es.js.map +0 -1
- package/es6/sr-aa226b40.es.js.map +0 -1
- package/es6/sv-ba6c3f38.es.js.map +0 -1
- package/es6/th-b84abfa6.es.js.map +0 -1
- package/es6/tr-008fab12.es.js.map +0 -1
- package/es6/zh-14e5aaab.es.js.map +0 -1
- package/es6/zh-HK-e35398a8.es.js.map +0 -1
package/sheerides6.js
CHANGED
|
@@ -667,6 +667,7 @@ var FieldIdEnum;
|
|
|
667
667
|
FieldIdEnum["country"] = "country";
|
|
668
668
|
FieldIdEnum["state"] = "state";
|
|
669
669
|
FieldIdEnum["dischargeDate"] = "dischargeDate";
|
|
670
|
+
FieldIdEnum["activeDutyStartDate"] = "activeDutyStartDate";
|
|
670
671
|
FieldIdEnum["docUpload"] = "docUpload";
|
|
671
672
|
FieldIdEnum["status"] = "status";
|
|
672
673
|
FieldIdEnum["statuses"] = "statuses";
|
|
@@ -1911,6 +1912,7 @@ var enUSMessages = {
|
|
|
1911
1912
|
"defaultMessages.SNAP_BENEFITS": "Snap Benefits Recipient",
|
|
1912
1913
|
"defaultMessages.VETERAN": "Military Veteran or Retiree",
|
|
1913
1914
|
"defaultMessages.VETERINARIAN": "Veterinarian",
|
|
1915
|
+
"defaultMessages.activeDutyStartDate": "Active Duty Start Date",
|
|
1914
1916
|
"defaultMessages.address": "Address",
|
|
1915
1917
|
"defaultMessages.addressPlaceholder": "Address",
|
|
1916
1918
|
"defaultMessages.birthDate": "Date of birth",
|
|
@@ -2195,6 +2197,7 @@ var enUSMessages = {
|
|
|
2195
2197
|
"defaultMessages.emailAddress": "Email address",
|
|
2196
2198
|
"defaultMessages.emailAddressPlaceholder": "Email address",
|
|
2197
2199
|
"defaultMessages.error": "Error",
|
|
2200
|
+
"defaultMessages.errorId.activeDutyStartDateBeforeBirthDate": "Start date must be after birth date",
|
|
2198
2201
|
"defaultMessages.errorId.apiRateLimitExceeded": "Unable to process your request at this time, please try again later",
|
|
2199
2202
|
"defaultMessages.errorId.dischargeDateBeforeBirthDate": "Discharge Date before birthdate",
|
|
2200
2203
|
"defaultMessages.errorId.docReviewLimitExceeded": "Document review limit exceeded",
|
|
@@ -2204,11 +2207,13 @@ var enUSMessages = {
|
|
|
2204
2207
|
"defaultMessages.errorId.expiredVerification": "This verification is expired. Please submit a new verification.",
|
|
2205
2208
|
"defaultMessages.errorId.failedToFetch": "Failed HTTP request",
|
|
2206
2209
|
"defaultMessages.errorId.fraudRulesReject": "We're unable to verify you using the information submitted. Please check your information for accuracy, and only use your own mobile device or computer.<br><br>Still having trouble? <a href=\"{feedbackUrl}&pid={programId}&locale={locale}\">Contact SheerID's support team</a> to confirm your identity.",
|
|
2210
|
+
"defaultMessages.errorId.futureActiveDutyStartDate": "Future start date",
|
|
2207
2211
|
"defaultMessages.errorId.futureBirthDate": "Future birthdate",
|
|
2208
2212
|
"defaultMessages.errorId.futureDischargeDate": "Future discharge date",
|
|
2209
2213
|
"defaultMessages.errorId.inactiveProgram": "Due to tremendous demand, the offer is no longer available. Please check tomorrow to see if it is available.",
|
|
2210
2214
|
"defaultMessages.errorId.incorrectVerificationOverrideCodeAttemptLimitExceeded": "Override code limit exceeded",
|
|
2211
2215
|
"defaultMessages.errorId.internalServerError": "Internal server error",
|
|
2216
|
+
"defaultMessages.errorId.invalidActiveDutyStartDate": "Invalid start date",
|
|
2212
2217
|
"defaultMessages.errorId.invalidAddress": "Invalid address",
|
|
2213
2218
|
"defaultMessages.errorId.invalidApiToken": "Provided API token was invalid or empty",
|
|
2214
2219
|
"defaultMessages.errorId.invalidBirthDate": "Invalid birth date",
|
|
@@ -2244,6 +2249,7 @@ var enUSMessages = {
|
|
|
2244
2249
|
"defaultMessages.errorId.marketConsentRequired": "Market consent required",
|
|
2245
2250
|
"defaultMessages.errorId.maxMetadataLengthExceeded": "Maximum length of metadata value exceeded",
|
|
2246
2251
|
"defaultMessages.errorId.maxMetadataValuesExceeded": "Maximum number of metadata values exceeded",
|
|
2252
|
+
"defaultMessages.errorId.missingRequiredMetadata": "You must be logged in to verify. Log in to your account then try again.",
|
|
2247
2253
|
"defaultMessages.errorId.noProgram": "No program found",
|
|
2248
2254
|
"defaultMessages.errorId.noRemainingRewardCodes": "Due to tremendous demand, the offer is no longer available. Please check tomorrow to see if it is available.",
|
|
2249
2255
|
"defaultMessages.errorId.noValidFiles": "No valid files",
|
|
@@ -2268,7 +2274,7 @@ var enUSMessages = {
|
|
|
2268
2274
|
"defaultMessages.howDoesVerifyingWork": "How does verifying work?",
|
|
2269
2275
|
"defaultMessages.infoShared1": "By clicking, I consent to processing my information for the purpose of verifying my eligibility as described within the {privacyPolicyLink}",
|
|
2270
2276
|
"defaultMessages.infoShared2": ". I understand that my information will be shared with {companyName}. ",
|
|
2271
|
-
"defaultMessages.informationTransferredToUS": "
|
|
2277
|
+
"defaultMessages.informationTransferredToUS": "Your information will be transferred to the United States and will be treated according to SheerID’s privacy policy.",
|
|
2272
2278
|
"defaultMessages.lastName": "Last name",
|
|
2273
2279
|
"defaultMessages.lastNamePlaceholder": "Last name",
|
|
2274
2280
|
"defaultMessages.limitExceededError": "Verification Limit Exceeded",
|
|
@@ -2561,6 +2567,7 @@ var enUSMessages = {
|
|
|
2561
2567
|
"defaultMessages.step.error.errorId.expiredProgram.title": "Offer Sold Out!",
|
|
2562
2568
|
"defaultMessages.step.error.errorId.inactiveProgram.buttonText": "See More Offers",
|
|
2563
2569
|
"defaultMessages.step.error.errorId.inactiveProgram.title": "Offer Sold Out!",
|
|
2570
|
+
"defaultMessages.step.error.errorId.missingRequiredMetadata.title": "Please log in.",
|
|
2564
2571
|
"defaultMessages.step.error.errorId.noRemainingRewardCodes.buttonText": "See More Offers",
|
|
2565
2572
|
"defaultMessages.step.error.errorId.noRemainingRewardCodes.title": "Offer Sold Out!",
|
|
2566
2573
|
"defaultMessages.step.error.errorId.unauthorizedAccountStatus.buttonText": "Contact Support",
|
|
@@ -2604,7 +2611,7 @@ var enUSMessages = {
|
|
|
2604
2611
|
"defaultMessages.step.sso.title": "Verify using your school credentials",
|
|
2605
2612
|
"defaultMessages.step.success.copyCouponCode": "Copy Coupon code",
|
|
2606
2613
|
"defaultMessages.step.success.emailNotification": "We have emailed you a copy so you can use your new code now or later. Look for the email from verify@sheerid.com.",
|
|
2607
|
-
"defaultMessages.step.success.verificationOnly": "\n
|
|
2614
|
+
"defaultMessages.step.success.verificationOnly": "\n SheerID handles verification only.\n Now that you've been approved, please direct all questions about the\n promotion terms to {companyName} customer service.\n ",
|
|
2608
2615
|
"defaultMessages.streetAddress": "Street Address",
|
|
2609
2616
|
"defaultMessages.studentInfoShared": "Information entered here will be used for verification purposes and shared with {companyName}. ",
|
|
2610
2617
|
"defaultMessages.tryAgain": "Try again",
|
|
@@ -2662,11 +2669,11 @@ var enUSMessages = {
|
|
|
2662
2669
|
"requestOrganizationMessages.submit": "Submit",
|
|
2663
2670
|
"requestOrganizationMessages.title": "Request to Add School",
|
|
2664
2671
|
"segmentMessages.age.emailExplanation": "Needed to send you your unique code",
|
|
2665
|
-
"segmentMessages.age.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying age.\n<br><br>\
|
|
2672
|
+
"segmentMessages.age.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying age.\n <br><br>\n Documents are used only for verifying your current age and will be permanently deleted after review is finalized. They will not be shared with {companyName}",
|
|
2666
2673
|
"segmentMessages.age.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2667
2674
|
"segmentMessages.age.step.docUpload.title": "We need your license or passport",
|
|
2668
2675
|
"segmentMessages.age.step.docUpload.uploadInstructions": "Upload a government-issued document that shows",
|
|
2669
|
-
"segmentMessages.age.step.personalInfo.howDoesVerifyingWorkDetails": "\
|
|
2676
|
+
"segmentMessages.age.step.personalInfo.howDoesVerifyingWorkDetails": "\n To be eligible for this offer, you must be of a certain age.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify your age. SheerID only collects information that assists in\n verifying your eligibility. Additional information or documentation may be requested.",
|
|
2670
2677
|
"segmentMessages.age.step.personalInfo.subtitle": "Verify your current age.",
|
|
2671
2678
|
"segmentMessages.age.step.personalInfo.title": "Unlock Your Special Offer",
|
|
2672
2679
|
"segmentMessages.age.step.personalInfo.tryAgain.subtitle": "Your full name and birthdate must match what is on your government-issued documents.",
|
|
@@ -2676,11 +2683,11 @@ var enUSMessages = {
|
|
|
2676
2683
|
"segmentMessages.age.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2677
2684
|
"segmentMessages.age.step.success.title": "You've been verified",
|
|
2678
2685
|
"segmentMessages.employment.emailExplanation": "Use your work email if you have one",
|
|
2679
|
-
"segmentMessages.employment.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying employees.\n<br><br>\
|
|
2686
|
+
"segmentMessages.employment.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying employees.\n <br><br>\n Documents are used only for verify your employment status is current and will be permanently deleted after review is finalized. They will not be shared with {companyName}",
|
|
2680
2687
|
"segmentMessages.employment.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2681
2688
|
"segmentMessages.employment.step.docUpload.title": "We need more information",
|
|
2682
2689
|
"segmentMessages.employment.step.docUpload.uploadInstructions": "Upload an official document that shows",
|
|
2683
|
-
"segmentMessages.employment.step.personalInfo.howDoesVerifyingWorkDetails": "{companyName} has set up this special offer for all current employees of select companies.\n<br><br>\n{companyName} uses SheerID, a trusted partner, to verify that you are currently employed. SheerID only collects information that assists in verifying your eligibility. Additional information or documentation may be requested.",
|
|
2690
|
+
"segmentMessages.employment.step.personalInfo.howDoesVerifyingWorkDetails": "{companyName} has set up this special offer for all current employees of select companies.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify that you are currently employed. SheerID only collects information that assists in verifying your eligibility. Additional information or documentation may be requested.",
|
|
2684
2691
|
"segmentMessages.employment.step.personalInfo.subtitle": "Verify you're a current employee at an eligible company.",
|
|
2685
2692
|
"segmentMessages.employment.step.personalInfo.title": "Unlock this Employment-Only Offer",
|
|
2686
2693
|
"segmentMessages.employment.step.personalInfo.tryAgain.subtitle": "The information you have provided should match your official documents.",
|
|
@@ -2695,11 +2702,11 @@ var enUSMessages = {
|
|
|
2695
2702
|
"segmentMessages.employment.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2696
2703
|
"segmentMessages.employment.step.success.title": "You've been verified",
|
|
2697
2704
|
"segmentMessages.firstResponder.emailExplanation": "Needed to send you your unique code",
|
|
2698
|
-
"segmentMessages.firstResponder.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying first responders.\n<br><br>\
|
|
2705
|
+
"segmentMessages.firstResponder.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying first responders.\n <br><br>\n Documents are used only for verifying your first responder status is current and will be permanently deleted after review is finalized.\n They will not be shared with {companyName}",
|
|
2699
2706
|
"segmentMessages.firstResponder.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2700
2707
|
"segmentMessages.firstResponder.step.docUpload.title": "We need your ID",
|
|
2701
2708
|
"segmentMessages.firstResponder.step.docUpload.uploadInstructions": "Upload an official document that shows",
|
|
2702
|
-
"segmentMessages.firstResponder.step.personalInfo.howDoesVerifyingWorkDetails": "\
|
|
2709
|
+
"segmentMessages.firstResponder.step.personalInfo.howDoesVerifyingWorkDetails": "\n This offer is available to all US first responders and emergency personnel - including law enforcement,\n EMTs, paramedics, and firefighters.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify that you are an active first responder. SheerID\n only collects information that assists in verifying your eligibility. Additional information or documentation may be requested.",
|
|
2703
2710
|
"segmentMessages.firstResponder.step.personalInfo.subtitle": "Verify you're an active first responder.",
|
|
2704
2711
|
"segmentMessages.firstResponder.step.personalInfo.title": "Unlock this 1st Responder-Only Offer",
|
|
2705
2712
|
"segmentMessages.firstResponder.step.personalInfo.tryAgain.subtitle": "Your full name, organization name, and email must match what is on record with your agency.",
|
|
@@ -2709,11 +2716,11 @@ var enUSMessages = {
|
|
|
2709
2716
|
"segmentMessages.firstResponder.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2710
2717
|
"segmentMessages.firstResponder.step.success.title": "You've been verified",
|
|
2711
2718
|
"segmentMessages.identity.emailExplanation": "Needed to send you your unique code",
|
|
2712
|
-
"segmentMessages.identity.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying identity.\n<br><br>\
|
|
2719
|
+
"segmentMessages.identity.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying identity.\n <br><br>\n Documents are used only for verifying your current eligibility and will be permanently deleted after review is finalized. They will not be shared with {companyName}",
|
|
2713
2720
|
"segmentMessages.identity.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2714
2721
|
"segmentMessages.identity.step.docUpload.title": "We need your driver license",
|
|
2715
2722
|
"segmentMessages.identity.step.docUpload.uploadInstructions": "Upload a government-issued document that shows",
|
|
2716
|
-
"segmentMessages.identity.step.personalInfo.howDoesVerifyingWorkDetails": "\
|
|
2723
|
+
"segmentMessages.identity.step.personalInfo.howDoesVerifyingWorkDetails": "\n To be eligible for this offer, you must have a valid driver license.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify your identity. SheerID only collects information that assists in\n verifying your eligibility. Additional information or documentation may be requested.",
|
|
2717
2724
|
"segmentMessages.identity.step.personalInfo.subtitle": "Verify your current identity.",
|
|
2718
2725
|
"segmentMessages.identity.step.personalInfo.title": "Unlock Your Special Offer",
|
|
2719
2726
|
"segmentMessages.identity.step.personalInfo.tryAgain.subtitle": "Your information must match what is on your government-issued document(s).",
|
|
@@ -2723,11 +2730,11 @@ var enUSMessages = {
|
|
|
2723
2730
|
"segmentMessages.identity.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2724
2731
|
"segmentMessages.identity.step.success.title": "You've been verified",
|
|
2725
2732
|
"segmentMessages.licensedProfessional.emailExplanation": "Needed to send you your unique code",
|
|
2726
|
-
"segmentMessages.licensedProfessional.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying licensed professionals.\n<br><br>\
|
|
2733
|
+
"segmentMessages.licensedProfessional.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying licensed professionals.\n <br><br>\n Documents are used only for verifying your licensure or certification status is current and will be permanently deleted after review is finalized. They will not be shared with {companyName}",
|
|
2727
2734
|
"segmentMessages.licensedProfessional.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2728
2735
|
"segmentMessages.licensedProfessional.step.docUpload.title": "We need your professional license or certificate",
|
|
2729
2736
|
"segmentMessages.licensedProfessional.step.docUpload.uploadInstructions": "Upload a government-issued document that shows",
|
|
2730
|
-
"segmentMessages.licensedProfessional.step.personalInfo.howDoesVerifyingWorkDetails": "\
|
|
2737
|
+
"segmentMessages.licensedProfessional.step.personalInfo.howDoesVerifyingWorkDetails": "\n To be eligible for this offer, you must hold a current professional license in your specified field. Eligible fields are shown in the Status selector of this form.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify that you are a licensed professional.\n SheerID only collects information that assists in verifying your eligibility. Additional information or documentation may be requested.",
|
|
2731
2738
|
"segmentMessages.licensedProfessional.step.personalInfo.subtitle": "\"Verify you have a professional license in your field.",
|
|
2732
2739
|
"segmentMessages.licensedProfessional.step.personalInfo.title": "Unlock this Special Offer",
|
|
2733
2740
|
"segmentMessages.licensedProfessional.step.personalInfo.tryAgain.subtitle": "Your information must match what is on your government-issued document(s).",
|
|
@@ -2737,11 +2744,11 @@ var enUSMessages = {
|
|
|
2737
2744
|
"segmentMessages.licensedProfessional.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2738
2745
|
"segmentMessages.licensedProfessional.step.success.title": "You've been verified",
|
|
2739
2746
|
"segmentMessages.lowIncome.emailExplanation": "Needed to send you your unique code",
|
|
2740
|
-
"segmentMessages.lowIncome.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying your eligibility.\n<br><br>\
|
|
2747
|
+
"segmentMessages.lowIncome.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying your eligibility.\n <br><br>\n Documents are used only for verifying your eligibility status is current and will be permanently deleted after review is finalized. They will not be shared with {companyName}",
|
|
2741
2748
|
"segmentMessages.lowIncome.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2742
2749
|
"segmentMessages.lowIncome.step.docUpload.title": "We need some more info",
|
|
2743
2750
|
"segmentMessages.lowIncome.step.docUpload.uploadInstructions": "Upload an official document that shows:",
|
|
2744
|
-
"segmentMessages.lowIncome.step.personalInfo.howDoesVerifyingWorkDetails": "\
|
|
2751
|
+
"segmentMessages.lowIncome.step.personalInfo.howDoesVerifyingWorkDetails": "\n To be eligible for this offer, you must currently qualify for an eligible government assistance program. The eligible Government Assistance Programs for this offer can be found in the box below. \n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify that you are a recipient of these benefits. \n SheerID only collects information that assists in verifying your eligibility. Additional information or documentation may be requested.",
|
|
2745
2752
|
"segmentMessages.lowIncome.step.personalInfo.subtitle": "Verify you qualify for an eligible government assistance program.",
|
|
2746
2753
|
"segmentMessages.lowIncome.step.personalInfo.title": "Unlock this Special Offer",
|
|
2747
2754
|
"segmentMessages.lowIncome.step.personalInfo.tryAgain.subtitle": "Your information must match what is on your government-issued document(s).",
|
|
@@ -2751,11 +2758,11 @@ var enUSMessages = {
|
|
|
2751
2758
|
"segmentMessages.lowIncome.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2752
2759
|
"segmentMessages.lowIncome.step.success.title": "You've been verified",
|
|
2753
2760
|
"segmentMessages.medical.emailExplanation": "Use your work email if you have one",
|
|
2754
|
-
"segmentMessages.medical.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying\n
|
|
2761
|
+
"segmentMessages.medical.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying\n medical professionals.<br><br>Documents are used only for verifying your medical professional status is\n current and will be permanently deleted after review is finalized. They will not be shared with {companyName}",
|
|
2755
2762
|
"segmentMessages.medical.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2756
2763
|
"segmentMessages.medical.step.docUpload.title": "We need more information",
|
|
2757
2764
|
"segmentMessages.medical.step.docUpload.uploadInstructions": "Upload an official document that shows",
|
|
2758
|
-
"segmentMessages.medical.step.personalInfo.howDoesVerifyingWorkDetails": "To be eligible for this offer, you must (1) be a medical professional currently licensed in the United States\n
|
|
2765
|
+
"segmentMessages.medical.step.personalInfo.howDoesVerifyingWorkDetails": "To be eligible for this offer, you must (1) be a medical professional currently licensed in the United States\n and (2) be a member of an eligible branch of the medical profession. Eligible branches are shown in the Status\n selector of this form.<br><br>{companyName} uses SheerID, a trusted partner, to verify that you are a medical professional.\n SheerID only collects information that assists in verifying your eligibility.\n Additional information or documentation may be requested.",
|
|
2759
2766
|
"segmentMessages.medical.step.personalInfo.subtitle": "Verify you're a licensed medical professional.",
|
|
2760
2767
|
"segmentMessages.medical.step.personalInfo.title": "Unlock this Medical Professional-Only Offer",
|
|
2761
2768
|
"segmentMessages.medical.step.personalInfo.tryAgain.subtitle": "Your first and last name, birthdate and organization must match what is on your official documents.",
|
|
@@ -2768,11 +2775,11 @@ var enUSMessages = {
|
|
|
2768
2775
|
"segmentMessages.medical.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2769
2776
|
"segmentMessages.medical.step.success.title": "You've been verified",
|
|
2770
2777
|
"segmentMessages.member.emailExplanation": "Needed to send you your unique code",
|
|
2771
|
-
"segmentMessages.member.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying members.\n<br><br>\
|
|
2778
|
+
"segmentMessages.member.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying members.\n <br><br>\n Documents are used only to verify that your membership status is current and will be permanently deleted after review is finalized. They will not be shared with {companyName}",
|
|
2772
2779
|
"segmentMessages.member.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2773
2780
|
"segmentMessages.member.step.docUpload.title": "We need more information",
|
|
2774
2781
|
"segmentMessages.member.step.docUpload.uploadInstructions": "Upload an official document that shows",
|
|
2775
|
-
"segmentMessages.member.step.personalInfo.howDoesVerifyingWorkDetails": "{companyName} has set up this special offer for all current members of select organizations.\n<br><br>\n{companyName} uses SheerID, a trusted partner, to verify that you are currently employed. SheerID only collects\
|
|
2782
|
+
"segmentMessages.member.step.personalInfo.howDoesVerifyingWorkDetails": "{companyName} has set up this special offer for all current members of select organizations.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify that you are currently employed. SheerID only collects\n information that assists in verifying your eligibility. Additional information or documentation may be requested.",
|
|
2776
2783
|
"segmentMessages.member.step.personalInfo.subtitle": "Verify you're a current member of an eligible organization.",
|
|
2777
2784
|
"segmentMessages.member.step.personalInfo.title": "Unlock this Members-Only Offer",
|
|
2778
2785
|
"segmentMessages.member.step.personalInfo.tryAgain.subtitle": "The information you have provided should match your official documents.",
|
|
@@ -2782,11 +2789,11 @@ var enUSMessages = {
|
|
|
2782
2789
|
"segmentMessages.member.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2783
2790
|
"segmentMessages.member.step.success.title": "You've been verified",
|
|
2784
2791
|
"segmentMessages.military.emailExplanation": "Personal email address is recommended",
|
|
2785
|
-
"segmentMessages.military.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying military.\n<br><br>\
|
|
2792
|
+
"segmentMessages.military.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying military.\n <br><br>\n Documents are used only for verifying your military status is current and will be permanently deleted after review is finalized.\n They will not be shared with {companyName}",
|
|
2786
2793
|
"segmentMessages.military.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2787
2794
|
"segmentMessages.military.step.docUpload.title": "We need more information",
|
|
2788
2795
|
"segmentMessages.military.step.docUpload.uploadInstructions": "Upload your government-issued document that shows:",
|
|
2789
|
-
"segmentMessages.military.step.personalInfo.howDoesVerifyingWorkDetails": "\
|
|
2796
|
+
"segmentMessages.military.step.personalInfo.howDoesVerifyingWorkDetails": "\n This offer is available to military personnel who have served or are currently serving in the United States Armed Forces.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify that you are a member of the military. SheerID only collects information\n that assists in verifying your eligibility. Additional information or documentation may be requested.",
|
|
2790
2797
|
"segmentMessages.military.step.personalInfo.subtitle": "Verify you're a member of the armed forces.",
|
|
2791
2798
|
"segmentMessages.military.step.personalInfo.title": "Unlock this Military-Only Offer",
|
|
2792
2799
|
"segmentMessages.military.step.personalInfo.tryAgain.subtitle": "Enter your first and last name on the form as it appears on your military document(s). Keep in mind that may be your given name.",
|
|
@@ -2796,11 +2803,11 @@ var enUSMessages = {
|
|
|
2796
2803
|
"segmentMessages.military.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2797
2804
|
"segmentMessages.military.step.success.title": "You've been verified",
|
|
2798
2805
|
"segmentMessages.recentMover.emailExplanation": "Needed to send you your unique code",
|
|
2799
|
-
"segmentMessages.recentMover.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying recent movers.\n
|
|
2806
|
+
"segmentMessages.recentMover.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying recent movers.\n <br/><br/>\n Documents are used only for verifying that you've recently moved and will will be permanently deleted after review is finalized. They will not be shared with {companyName}",
|
|
2800
2807
|
"segmentMessages.recentMover.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2801
2808
|
"segmentMessages.recentMover.step.docUpload.title": "We need some more info",
|
|
2802
2809
|
"segmentMessages.recentMover.step.docUpload.uploadInstructions": "Upload an official document that shows",
|
|
2803
|
-
"segmentMessages.recentMover.step.personalInfo.howDoesVerifyingWorkDetails": "\n
|
|
2810
|
+
"segmentMessages.recentMover.step.personalInfo.howDoesVerifyingWorkDetails": "\n To be eligible for this offer, you must have moved to a new address within the last 60 days.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify that you have recently moved. SheerID only\n collects information that assists in verifying your eligibility.\n Additional information or documentation may be requested.",
|
|
2804
2811
|
"segmentMessages.recentMover.step.personalInfo.subtitle": "Verify you have recently moved.",
|
|
2805
2812
|
"segmentMessages.recentMover.step.personalInfo.title": "Unlock this Special Offer",
|
|
2806
2813
|
"segmentMessages.recentMover.step.personalInfo.tryAgain.subtitle": "Your first and last name and address must match what is on your official documents.",
|
|
@@ -2810,11 +2817,11 @@ var enUSMessages = {
|
|
|
2810
2817
|
"segmentMessages.recentMover.step.success.subtitle": "Here is your personal coupon code. It is unique to you and can only be used once.",
|
|
2811
2818
|
"segmentMessages.recentMover.step.success.title": "You've been verified",
|
|
2812
2819
|
"segmentMessages.senior.emailExplanation": "Needed to send you your unique code",
|
|
2813
|
-
"segmentMessages.senior.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying age.\n<br><br>\
|
|
2820
|
+
"segmentMessages.senior.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying age.\n <br><br>\n Documents are used only for verifying your current age and will be permanently deleted after review is finalized. They will not be shared with {companyName}",
|
|
2814
2821
|
"segmentMessages.senior.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2815
2822
|
"segmentMessages.senior.step.docUpload.title": "We need your license or passport",
|
|
2816
2823
|
"segmentMessages.senior.step.docUpload.uploadInstructions": "Upload a government-issued document that shows",
|
|
2817
|
-
"segmentMessages.senior.step.personalInfo.howDoesVerifyingWorkDetails": "\
|
|
2824
|
+
"segmentMessages.senior.step.personalInfo.howDoesVerifyingWorkDetails": "\n To be eligible for this offer, you must be of a certain age.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify your age. SheerID only collects information that assists in\n verifying your eligibility. Additional information or documentation may be requested.",
|
|
2818
2825
|
"segmentMessages.senior.step.personalInfo.subtitle": "Verify your current age.",
|
|
2819
2826
|
"segmentMessages.senior.step.personalInfo.title": "Unlock Your Special Offer",
|
|
2820
2827
|
"segmentMessages.senior.step.personalInfo.tryAgain.subtitle": "Your full name and birthdate must match what is on your government-issued documents.",
|
|
@@ -2825,11 +2832,11 @@ var enUSMessages = {
|
|
|
2825
2832
|
"segmentMessages.senior.step.success.title": "You've been verified",
|
|
2826
2833
|
"segmentMessages.student.emailExplanation": "A student email address is preferred",
|
|
2827
2834
|
"segmentMessages.student.schoolName": "University / college name",
|
|
2828
|
-
"segmentMessages.student.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying students.\n
|
|
2835
|
+
"segmentMessages.student.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying students.\n <br/><br/>\n Documents are used only for verifying your student status is current and will be permanently deleted after review is finalized.",
|
|
2829
2836
|
"segmentMessages.student.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2830
2837
|
"segmentMessages.student.step.docUpload.title": "We need your ID & class schedule",
|
|
2831
2838
|
"segmentMessages.student.step.docUpload.uploadInstructions": "Upload your school-issued document that shows",
|
|
2832
|
-
"segmentMessages.student.step.personalInfo.howDoesVerifyingWorkDetails": "\n
|
|
2839
|
+
"segmentMessages.student.step.personalInfo.howDoesVerifyingWorkDetails": "\n To be eligible for this offer, you must currently be enrolled in a degree\n or certificate-granting, accredited school of education.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify that you are a current student. SheerID only\n collects information that assists in verifying your eligibility.\n Additional information or documentation may be requested.",
|
|
2833
2840
|
"segmentMessages.student.step.personalInfo.subtitle": "Verify you're a student at a degree-granting school.",
|
|
2834
2841
|
"segmentMessages.student.step.personalInfo.title": "Unlock this Student-Only Offer",
|
|
2835
2842
|
"segmentMessages.student.step.personalInfo.tryAgain.subtitle": "Your full name and birthdate must match what is on your official school records.",
|
|
@@ -2842,11 +2849,11 @@ var enUSMessages = {
|
|
|
2842
2849
|
"segmentMessages.teacher.emailExplanation": "Must be your school-issued email address",
|
|
2843
2850
|
"segmentMessages.teacher.schoolName": "School name",
|
|
2844
2851
|
"segmentMessages.teacher.schoolNamePlaceholder": "School name",
|
|
2845
|
-
"segmentMessages.teacher.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying teachers.\n
|
|
2852
|
+
"segmentMessages.teacher.step.docUpload.howDoesVerifyingWorkDetails": "Document review is handled by SheerID, a trusted partner who specializes in verifying teachers.\n <br><br>\n Documents are used only for verifying your teacher or faculty status is current and will be permanently\n deleted after review is finalized. They will not be shared with {companyName}",
|
|
2846
2853
|
"segmentMessages.teacher.step.docUpload.subtitle": "Documents will be reviewed in {estimatedWaitTime} by staff at SheerID, a trusted partner.",
|
|
2847
2854
|
"segmentMessages.teacher.step.docUpload.title": "We need more information",
|
|
2848
2855
|
"segmentMessages.teacher.step.docUpload.uploadInstructions": "Upload your school-issued document that shows",
|
|
2849
|
-
"segmentMessages.teacher.step.personalInfo.howDoesVerifyingWorkDetails": "\
|
|
2856
|
+
"segmentMessages.teacher.step.personalInfo.howDoesVerifyingWorkDetails": "\n To be eligible for this offer, you must currently be employed as a teacher, faculty or staff at a K-12\n school or university in the United States.\n <br><br>\n {companyName} uses SheerID, a trusted partner, to verify that you are a current teacher, faculty or staff\n member. SheerID only collects information that assists in verifying your eligibility. Additional information\n or documentation may be requested.",
|
|
2850
2857
|
"segmentMessages.teacher.step.personalInfo.subtitle": "Verify you're a teacher, faculty or staff at a K-12 or degree-granting university.",
|
|
2851
2858
|
"segmentMessages.teacher.step.personalInfo.title": "Unlock this Teaching Staff-Only Offer",
|
|
2852
2859
|
"segmentMessages.teacher.step.personalInfo.tryAgain.subtitle": "Your full name and email address must match what is on record with your school.",
|
|
@@ -2877,154 +2884,154 @@ const getMessagesModuleByLocale = async (locale) => {
|
|
|
2877
2884
|
switch (locale) {
|
|
2878
2885
|
case "ar":
|
|
2879
2886
|
localizedMessages = await import(
|
|
2880
|
-
/* webpackChunkName: "messages_ar" */ './es6/ar-
|
|
2887
|
+
/* webpackChunkName: "messages_ar" */ './es6/ar-b27b7093.es.js').then((m) => m.default);
|
|
2881
2888
|
break;
|
|
2882
2889
|
case "bg":
|
|
2883
2890
|
localizedMessages = await import(
|
|
2884
|
-
/* webpackChunkName: "messages_bg" */ './es6/bg-
|
|
2891
|
+
/* webpackChunkName: "messages_bg" */ './es6/bg-dc006d27.es.js').then((m) => m.default);
|
|
2885
2892
|
break;
|
|
2886
2893
|
case "cs":
|
|
2887
2894
|
localizedMessages = await import(
|
|
2888
|
-
/* webpackChunkName: "messages_cs" */ './es6/cs-
|
|
2895
|
+
/* webpackChunkName: "messages_cs" */ './es6/cs-c69d953e.es.js').then((m) => m.default);
|
|
2889
2896
|
break;
|
|
2890
2897
|
case "da":
|
|
2891
2898
|
localizedMessages = await import(
|
|
2892
|
-
/* webpackChunkName: "messages_da" */ './es6/da-
|
|
2899
|
+
/* webpackChunkName: "messages_da" */ './es6/da-b076ddb8.es.js').then((m) => m.default);
|
|
2893
2900
|
break;
|
|
2894
2901
|
case "de":
|
|
2895
2902
|
localizedMessages = await import(
|
|
2896
|
-
/* webpackChunkName: "messages_de" */ './es6/de-
|
|
2903
|
+
/* webpackChunkName: "messages_de" */ './es6/de-354c036e.es.js').then((m) => m.default);
|
|
2897
2904
|
break;
|
|
2898
2905
|
case "el":
|
|
2899
2906
|
localizedMessages = await import(
|
|
2900
|
-
/* webpackChunkName: "messages_el" */ './es6/el-
|
|
2907
|
+
/* webpackChunkName: "messages_el" */ './es6/el-f6dbc2d3.es.js').then((m) => m.default);
|
|
2901
2908
|
break;
|
|
2902
2909
|
case "en-GB":
|
|
2903
2910
|
localizedMessages = await import(
|
|
2904
|
-
/* webpackChunkName: "messages_en-GB" */ './es6/en-GB-
|
|
2911
|
+
/* webpackChunkName: "messages_en-GB" */ './es6/en-GB-860e8aa7.es.js').then((m) => m.default);
|
|
2905
2912
|
break;
|
|
2906
2913
|
case "en-US":
|
|
2907
2914
|
localizedMessages = enUSMessages;
|
|
2908
2915
|
break;
|
|
2909
2916
|
case "es-ES":
|
|
2910
2917
|
localizedMessages = await import(
|
|
2911
|
-
/* webpackChunkName: "messages_es-ES" */ './es6/es-ES-
|
|
2918
|
+
/* webpackChunkName: "messages_es-ES" */ './es6/es-ES-bf00171e.es.js').then((m) => m.default);
|
|
2912
2919
|
break;
|
|
2913
2920
|
case "es":
|
|
2914
2921
|
localizedMessages = await import(
|
|
2915
|
-
/* webpackChunkName: "messages_es" */ './es6/es-
|
|
2922
|
+
/* webpackChunkName: "messages_es" */ './es6/es-353dbd9f.es.js').then((m) => m.default);
|
|
2916
2923
|
break;
|
|
2917
2924
|
case "fi":
|
|
2918
2925
|
localizedMessages = await import(
|
|
2919
|
-
/* webpackChunkName: "messages_fi" */ './es6/fi-
|
|
2926
|
+
/* webpackChunkName: "messages_fi" */ './es6/fi-c7989cb5.es.js').then((m) => m.default);
|
|
2920
2927
|
break;
|
|
2921
2928
|
case "fr-CA":
|
|
2922
2929
|
localizedMessages = await import(
|
|
2923
|
-
/* webpackChunkName: "messages_fr-CA" */ './es6/fr-CA-
|
|
2930
|
+
/* webpackChunkName: "messages_fr-CA" */ './es6/fr-CA-4099284c.es.js').then((m) => m.default);
|
|
2924
2931
|
break;
|
|
2925
2932
|
case "fr":
|
|
2926
2933
|
localizedMessages = await import(
|
|
2927
|
-
/* webpackChunkName: "messages_fr" */ './es6/fr-
|
|
2934
|
+
/* webpackChunkName: "messages_fr" */ './es6/fr-b4eb4bb8.es.js').then((m) => m.default);
|
|
2928
2935
|
break;
|
|
2929
2936
|
case "ga":
|
|
2930
2937
|
localizedMessages = await import(
|
|
2931
|
-
/* webpackChunkName: "messages_ga" */ './es6/ga-
|
|
2938
|
+
/* webpackChunkName: "messages_ga" */ './es6/ga-411aa244.es.js').then((m) => m.default);
|
|
2932
2939
|
break;
|
|
2933
2940
|
case "hr":
|
|
2934
2941
|
localizedMessages = await import(
|
|
2935
|
-
/* webpackChunkName: "messages_hr" */ './es6/hr-
|
|
2942
|
+
/* webpackChunkName: "messages_hr" */ './es6/hr-5cbbd24b.es.js').then((m) => m.default);
|
|
2936
2943
|
break;
|
|
2937
2944
|
case "hu":
|
|
2938
2945
|
localizedMessages = await import(
|
|
2939
|
-
/* webpackChunkName: "messages_hu" */ './es6/hu-
|
|
2946
|
+
/* webpackChunkName: "messages_hu" */ './es6/hu-70183b5c.es.js').then((m) => m.default);
|
|
2940
2947
|
break;
|
|
2941
2948
|
case "id":
|
|
2942
2949
|
localizedMessages = await import(
|
|
2943
|
-
/* webpackChunkName: "messages_id" */ './es6/id-
|
|
2950
|
+
/* webpackChunkName: "messages_id" */ './es6/id-5bff21ac.es.js').then((m) => m.default);
|
|
2944
2951
|
break;
|
|
2945
2952
|
case "it":
|
|
2946
2953
|
localizedMessages = await import(
|
|
2947
|
-
/* webpackChunkName: "messages_it" */ './es6/it-
|
|
2954
|
+
/* webpackChunkName: "messages_it" */ './es6/it-71448850.es.js').then((m) => m.default);
|
|
2948
2955
|
break;
|
|
2949
2956
|
case "iw":
|
|
2950
2957
|
localizedMessages = await import(
|
|
2951
|
-
/* webpackChunkName: "messages_iw" */ './es6/iw-
|
|
2958
|
+
/* webpackChunkName: "messages_iw" */ './es6/iw-688d2e54.es.js').then((m) => m.default);
|
|
2952
2959
|
break;
|
|
2953
2960
|
case "ja":
|
|
2954
2961
|
localizedMessages = await import(
|
|
2955
|
-
/* webpackChunkName: "messages_ja" */ './es6/ja-
|
|
2962
|
+
/* webpackChunkName: "messages_ja" */ './es6/ja-34d2940e.es.js').then((m) => m.default);
|
|
2956
2963
|
break;
|
|
2957
2964
|
case "ko":
|
|
2958
2965
|
localizedMessages = await import(
|
|
2959
|
-
/* webpackChunkName: "messages_ko" */ './es6/ko-
|
|
2966
|
+
/* webpackChunkName: "messages_ko" */ './es6/ko-f5c9d886.es.js').then((m) => m.default);
|
|
2960
2967
|
break;
|
|
2961
2968
|
case "lo":
|
|
2962
2969
|
localizedMessages = await import(
|
|
2963
|
-
/* webpackChunkName: "messages_lo" */ './es6/lo-
|
|
2970
|
+
/* webpackChunkName: "messages_lo" */ './es6/lo-ac700ebc.es.js').then((m) => m.default);
|
|
2964
2971
|
break;
|
|
2965
2972
|
case "lt":
|
|
2966
2973
|
localizedMessages = await import(
|
|
2967
|
-
/* webpackChunkName: "messages_lt" */ './es6/lt-
|
|
2974
|
+
/* webpackChunkName: "messages_lt" */ './es6/lt-ab484249.es.js').then((m) => m.default);
|
|
2968
2975
|
break;
|
|
2969
2976
|
case "ms":
|
|
2970
2977
|
localizedMessages = await import(
|
|
2971
|
-
/* webpackChunkName: "messages_ms" */ './es6/ms-
|
|
2978
|
+
/* webpackChunkName: "messages_ms" */ './es6/ms-10199939.es.js').then((m) => m.default);
|
|
2972
2979
|
break;
|
|
2973
2980
|
case "nl":
|
|
2974
2981
|
localizedMessages = await import(
|
|
2975
|
-
/* webpackChunkName: "messages_nl" */ './es6/nl-
|
|
2982
|
+
/* webpackChunkName: "messages_nl" */ './es6/nl-20646f48.es.js').then((m) => m.default);
|
|
2976
2983
|
break;
|
|
2977
2984
|
case "no":
|
|
2978
2985
|
localizedMessages = await import(
|
|
2979
|
-
/* webpackChunkName: "messages_no" */ './es6/no-
|
|
2986
|
+
/* webpackChunkName: "messages_no" */ './es6/no-b3a23bde.es.js').then((m) => m.default);
|
|
2980
2987
|
break;
|
|
2981
2988
|
case "pl":
|
|
2982
2989
|
localizedMessages = await import(
|
|
2983
|
-
/* webpackChunkName: "messages_pl" */ './es6/pl-
|
|
2990
|
+
/* webpackChunkName: "messages_pl" */ './es6/pl-d8bd7c17.es.js').then((m) => m.default);
|
|
2984
2991
|
break;
|
|
2985
2992
|
case "pt-BR":
|
|
2986
2993
|
localizedMessages = await import(
|
|
2987
|
-
/* webpackChunkName: "messages_pt-BR" */ './es6/pt-BR-
|
|
2994
|
+
/* webpackChunkName: "messages_pt-BR" */ './es6/pt-BR-ea3788be.es.js').then((m) => m.default);
|
|
2988
2995
|
break;
|
|
2989
2996
|
case "pt":
|
|
2990
2997
|
localizedMessages = await import(
|
|
2991
|
-
/* webpackChunkName: "messages_pt" */ './es6/pt-
|
|
2998
|
+
/* webpackChunkName: "messages_pt" */ './es6/pt-d888c58c.es.js').then((m) => m.default);
|
|
2992
2999
|
break;
|
|
2993
3000
|
case "ru":
|
|
2994
3001
|
localizedMessages = await import(
|
|
2995
|
-
/* webpackChunkName: "messages_ru" */ './es6/ru-
|
|
3002
|
+
/* webpackChunkName: "messages_ru" */ './es6/ru-1e1c813e.es.js').then((m) => m.default);
|
|
2996
3003
|
break;
|
|
2997
3004
|
case "sk":
|
|
2998
3005
|
localizedMessages = await import(
|
|
2999
|
-
/* webpackChunkName: "messages_sk" */ './es6/sk-
|
|
3006
|
+
/* webpackChunkName: "messages_sk" */ './es6/sk-2b93af62.es.js').then((m) => m.default);
|
|
3000
3007
|
break;
|
|
3001
3008
|
case "sl":
|
|
3002
3009
|
localizedMessages = await import(
|
|
3003
|
-
/* webpackChunkName: "messages_sl" */ './es6/sl-
|
|
3010
|
+
/* webpackChunkName: "messages_sl" */ './es6/sl-2d43a487.es.js').then((m) => m.default);
|
|
3004
3011
|
break;
|
|
3005
3012
|
case "sr":
|
|
3006
3013
|
localizedMessages = await import(
|
|
3007
|
-
/* webpackChunkName: "messages_sr" */ './es6/sr-
|
|
3014
|
+
/* webpackChunkName: "messages_sr" */ './es6/sr-be7bfaef.es.js').then((m) => m.default);
|
|
3008
3015
|
break;
|
|
3009
3016
|
case "sv":
|
|
3010
3017
|
localizedMessages = await import(
|
|
3011
|
-
/* webpackChunkName: "messages_sv" */ './es6/sv-
|
|
3018
|
+
/* webpackChunkName: "messages_sv" */ './es6/sv-9c576699.es.js').then((m) => m.default);
|
|
3012
3019
|
break;
|
|
3013
3020
|
case "th":
|
|
3014
3021
|
localizedMessages = await import(
|
|
3015
|
-
/* webpackChunkName: "messages_th" */ './es6/th-
|
|
3022
|
+
/* webpackChunkName: "messages_th" */ './es6/th-b93ed852.es.js').then((m) => m.default);
|
|
3016
3023
|
break;
|
|
3017
3024
|
case "tr":
|
|
3018
3025
|
localizedMessages = await import(
|
|
3019
|
-
/* webpackChunkName: "messages_tr" */ './es6/tr-
|
|
3026
|
+
/* webpackChunkName: "messages_tr" */ './es6/tr-ac128e10.es.js').then((m) => m.default);
|
|
3020
3027
|
break;
|
|
3021
3028
|
case "zh-HK":
|
|
3022
3029
|
localizedMessages = await import(
|
|
3023
|
-
/* webpackChunkName: "messages_zh-HK" */ './es6/zh-HK-
|
|
3030
|
+
/* webpackChunkName: "messages_zh-HK" */ './es6/zh-HK-8a1f572e.es.js').then((m) => m.default);
|
|
3024
3031
|
break;
|
|
3025
3032
|
case "zh":
|
|
3026
3033
|
localizedMessages = await import(
|
|
3027
|
-
/* webpackChunkName: "messages_zh" */ './es6/zh-
|
|
3034
|
+
/* webpackChunkName: "messages_zh" */ './es6/zh-61c87e17.es.js').then((m) => m.default);
|
|
3028
3035
|
break;
|
|
3029
3036
|
default:
|
|
3030
3037
|
logger.warn(`getMessagesModuleByLocale: Unable to load messages for ${locale}, falling back to en-US`);
|
|
@@ -3538,6 +3545,7 @@ const activeMilitaryPInfoReqEmpty = {
|
|
|
3538
3545
|
...withLocaleAndCountryEmpty,
|
|
3539
3546
|
...withFieldsToSkipValidationEmpty,
|
|
3540
3547
|
...blankOrganization,
|
|
3548
|
+
activeDutyStartDate: "",
|
|
3541
3549
|
birthDate: "",
|
|
3542
3550
|
status: undefined,
|
|
3543
3551
|
metadata: {
|
|
@@ -3550,6 +3558,7 @@ const inactiveMilitaryPInfoReqEmpty = {
|
|
|
3550
3558
|
...withLocaleAndCountryEmpty,
|
|
3551
3559
|
...withFieldsToSkipValidationEmpty,
|
|
3552
3560
|
...blankOrganization,
|
|
3561
|
+
activeDutyStartDate: "",
|
|
3553
3562
|
birthDate: "",
|
|
3554
3563
|
dischargeDate: "",
|
|
3555
3564
|
status: undefined,
|
|
@@ -3720,6 +3729,7 @@ const initialErrorStructure = {
|
|
|
3720
3729
|
city: undefined,
|
|
3721
3730
|
country: undefined,
|
|
3722
3731
|
state: undefined,
|
|
3732
|
+
activeDutyStartDate: undefined,
|
|
3723
3733
|
dischargeDate: undefined,
|
|
3724
3734
|
docUpload: undefined,
|
|
3725
3735
|
status: undefined,
|
|
@@ -4542,20 +4552,36 @@ const getStateValidationError = (value) => {
|
|
|
4542
4552
|
return invalidError;
|
|
4543
4553
|
}
|
|
4544
4554
|
};
|
|
4555
|
+
const existsAndIsValidDate = (value) => value !== undefined && isValidDateFormat(value) && isValidDate(value);
|
|
4556
|
+
const isBeforeBirthdate = (value, vm) => {
|
|
4557
|
+
const date = new Date(value);
|
|
4558
|
+
const birthDate = new Date(vm.birthDate);
|
|
4559
|
+
return date < birthDate;
|
|
4560
|
+
};
|
|
4545
4561
|
const getDischargeDateValidationError = (value, formValidationOptions) => {
|
|
4546
|
-
|
|
4547
|
-
|
|
4548
|
-
|
|
4549
|
-
if (
|
|
4550
|
-
return
|
|
4562
|
+
if (!existsAndIsValidDate(value)) {
|
|
4563
|
+
return "invalidDischargeDate";
|
|
4564
|
+
}
|
|
4565
|
+
if (isFutureDate(value)) {
|
|
4566
|
+
return "futureDischargeDate";
|
|
4567
|
+
}
|
|
4568
|
+
if (isBeforeBirthdate(value, formValidationOptions.viewModel)) {
|
|
4569
|
+
return "dischargeDateBeforeBirthDate";
|
|
4570
|
+
}
|
|
4571
|
+
};
|
|
4572
|
+
const getActiveDutyStartDateValidationError = (value, formValidationOptions) => {
|
|
4573
|
+
if (!value && !formValidationOptions.strictMilitaryValidationEnabled) {
|
|
4574
|
+
// a falsey value is valid unless strictMilitaryValidation is enabled.
|
|
4575
|
+
return;
|
|
4576
|
+
}
|
|
4577
|
+
if (!existsAndIsValidDate(value)) {
|
|
4578
|
+
return "invalidActiveDutyStartDate";
|
|
4551
4579
|
}
|
|
4552
4580
|
if (isFutureDate(value)) {
|
|
4553
|
-
return
|
|
4581
|
+
return "futureActiveDutyStartDate";
|
|
4554
4582
|
}
|
|
4555
|
-
|
|
4556
|
-
|
|
4557
|
-
if (dischargeDate < birthDate) {
|
|
4558
|
-
return dischargeDateBeforeBirthDate;
|
|
4583
|
+
if (isBeforeBirthdate(value, formValidationOptions.viewModel)) {
|
|
4584
|
+
return "activeDutyStartDateBeforeBirthDate";
|
|
4559
4585
|
}
|
|
4560
4586
|
};
|
|
4561
4587
|
const getSsnValidationError = (value) => {
|
|
@@ -4780,6 +4806,9 @@ const validateFieldById = (fieldId, value, formValidationOptions) => {
|
|
|
4780
4806
|
case FieldIdEnum.dischargeDate:
|
|
4781
4807
|
defaultValidator = getDischargeDateValidationError;
|
|
4782
4808
|
return getValidationError(fieldId, value, defaultValidator, overriddenValidator, formValidationOptions);
|
|
4809
|
+
case FieldIdEnum.activeDutyStartDate:
|
|
4810
|
+
defaultValidator = getActiveDutyStartDateValidationError;
|
|
4811
|
+
return getValidationError(fieldId, value, defaultValidator, overriddenValidator, formValidationOptions);
|
|
4783
4812
|
case FieldIdEnum.socialSecurityNumber:
|
|
4784
4813
|
defaultValidator = getSsnValidationError;
|
|
4785
4814
|
return getValidationError(fieldId, value, defaultValidator, overriddenValidator, formValidationOptions);
|
|
@@ -11863,6 +11892,7 @@ const activeMilitaryViewModelToRequest = (viewModel) => ({
|
|
|
11863
11892
|
firstName: viewModel.firstName,
|
|
11864
11893
|
lastName: viewModel.lastName,
|
|
11865
11894
|
birthDate: viewModel.birthDate,
|
|
11895
|
+
activeDutyStartDate: viewModel.activeDutyStartDate || undefined,
|
|
11866
11896
|
email: viewModel.email,
|
|
11867
11897
|
phoneNumber: viewModel.phoneNumber,
|
|
11868
11898
|
organization: viewModel.organization,
|
|
@@ -11876,6 +11906,7 @@ const inactiveMilitaryViewModelToRequest = (viewModel) => ({
|
|
|
11876
11906
|
firstName: viewModel.firstName,
|
|
11877
11907
|
lastName: viewModel.lastName,
|
|
11878
11908
|
birthDate: viewModel.birthDate,
|
|
11909
|
+
activeDutyStartDate: viewModel.activeDutyStartDate || undefined,
|
|
11879
11910
|
email: viewModel.email,
|
|
11880
11911
|
phoneNumber: viewModel.phoneNumber,
|
|
11881
11912
|
organization: viewModel.organization,
|
|
@@ -12013,9 +12044,11 @@ const lowIncomeViewModelToRequest = (viewModel) => ({
|
|
|
12013
12044
|
birthDate: viewModel.birthDate,
|
|
12014
12045
|
postalCode: viewModel.postalCode,
|
|
12015
12046
|
statuses: viewModel.statuses,
|
|
12016
|
-
organization: viewModel.
|
|
12047
|
+
organization: viewModel.statuses.includes("OTHER_GOVERNMENT_ASSISTANCE")
|
|
12048
|
+
? viewModel.organization
|
|
12049
|
+
: undefined,
|
|
12017
12050
|
deviceFingerprintHash: viewModel.deviceFingerprintHash,
|
|
12018
|
-
ebtCardNumber: viewModel.ebtCardNumber,
|
|
12051
|
+
ebtCardNumber: viewModel.statuses.includes("SNAP_BENEFITS") ? viewModel.ebtCardNumber : undefined,
|
|
12019
12052
|
locale: viewModel.localeChoice.value,
|
|
12020
12053
|
metadata: viewModel.metadata,
|
|
12021
12054
|
});
|
|
@@ -14877,6 +14910,7 @@ const verificationServiceReducer = (state = getInitialState(), action) => {
|
|
|
14877
14910
|
maxAge: state.verificationResponse.maxAge || state.programTheme.config.maxAge,
|
|
14878
14911
|
minAge: state.verificationResponse.minAge || state.programTheme.config.minAge,
|
|
14879
14912
|
smsLoopEnabled: state.programTheme.smsLoopEnabled,
|
|
14913
|
+
strictMilitaryValidationEnabled: state.programTheme.strictMilitaryValidationEnabled,
|
|
14880
14914
|
currentStep: state.verificationResponse.currentStep,
|
|
14881
14915
|
viewModel: state.viewModel,
|
|
14882
14916
|
},
|
|
@@ -16972,12 +17006,14 @@ const formatTwoDigitValues = (value) => {
|
|
|
16972
17006
|
}
|
|
16973
17007
|
};
|
|
16974
17008
|
|
|
16975
|
-
const
|
|
16976
|
-
const
|
|
16977
|
-
const
|
|
16978
|
-
const
|
|
16979
|
-
const
|
|
16980
|
-
|
|
17009
|
+
const DateInput = ({ onChange, intl, isErrored, isRequired = true, value = "2000-01-01", errorMsg, label, fieldName, fieldId, mode = "date", }) => {
|
|
17010
|
+
const cssId = `sid-${fieldId}`;
|
|
17011
|
+
const dateParts = value.split("-");
|
|
17012
|
+
const dateYear = Number.parseInt(dateParts[0], 10) || undefined;
|
|
17013
|
+
const dateMonth = Number.parseInt(dateParts[1], 10) || undefined;
|
|
17014
|
+
// Default day to 1 if in month mode (where days are ignored) so that we return valid date strings.
|
|
17015
|
+
const dateDay = mode === "month" ? 1 : Number.parseInt(dateParts[2], 10) || undefined;
|
|
17016
|
+
const minYear = 1900;
|
|
16981
17017
|
const thisYear = new Date().getFullYear();
|
|
16982
17018
|
/* prettier-ignore */
|
|
16983
17019
|
const months = [
|
|
@@ -16995,98 +17031,86 @@ const BirthDate = ({ onChange, intl, isErrored, isRequired = true, errorId, valu
|
|
|
16995
17031
|
{ value: "12", label: intl.formatHTMLMessage({ id: "dateTime.december", defaultMessage: "December" }) },
|
|
16996
17032
|
];
|
|
16997
17033
|
const isDateFieldEmpty = (year, month, day) => (!day || day === "") && (!month || month === "") && (!year || year === "");
|
|
16998
|
-
const
|
|
16999
|
-
if (isDateFieldEmpty(
|
|
17034
|
+
const updateMonth = (month) => {
|
|
17035
|
+
if (isDateFieldEmpty(dateYear, month, dateDay)) {
|
|
17000
17036
|
onChange("");
|
|
17001
17037
|
return;
|
|
17002
17038
|
}
|
|
17003
17039
|
if (month === "" || month === null) {
|
|
17004
|
-
onChange(`${
|
|
17040
|
+
onChange(`${dateYear}--${dateDay}`);
|
|
17005
17041
|
}
|
|
17006
17042
|
const newVal = Number.parseInt(month, 10);
|
|
17007
17043
|
if (typeof newVal === "number" && newVal >= 1 && newVal <= 12) {
|
|
17008
|
-
onChange(`${
|
|
17044
|
+
onChange(`${dateYear}-${formatTwoDigitValues(month)}-${formatTwoDigitValues(dateDay)}`);
|
|
17009
17045
|
}
|
|
17010
17046
|
else {
|
|
17011
|
-
logger.warn(`Value '${newVal}' is an invalid
|
|
17047
|
+
logger.warn(`Value '${newVal}' is an invalid month`);
|
|
17012
17048
|
}
|
|
17013
17049
|
};
|
|
17014
|
-
const
|
|
17015
|
-
if (isDateFieldEmpty(
|
|
17050
|
+
const updateDay = (day) => {
|
|
17051
|
+
if (isDateFieldEmpty(dateYear, dateMonth, day)) {
|
|
17016
17052
|
onChange("");
|
|
17017
17053
|
return;
|
|
17018
17054
|
}
|
|
17019
17055
|
if (day === "") {
|
|
17020
|
-
onChange(`${
|
|
17056
|
+
onChange(`${dateYear}-${dateMonth}-`);
|
|
17021
17057
|
}
|
|
17022
17058
|
const newVal = Number.parseInt(day, 10);
|
|
17023
17059
|
if (typeof newVal === "number" && newVal >= 1 && newVal <= 31) {
|
|
17024
|
-
onChange(`${
|
|
17060
|
+
onChange(`${dateYear}-${formatTwoDigitValues(dateMonth)}-${formatTwoDigitValues(newVal)}`);
|
|
17025
17061
|
}
|
|
17026
17062
|
else {
|
|
17027
|
-
logger.warn(`Value '${newVal}' is an invalid
|
|
17063
|
+
logger.warn(`Value '${newVal}' is an invalid day`);
|
|
17028
17064
|
}
|
|
17029
17065
|
};
|
|
17030
17066
|
const updateBirthYear = (year) => {
|
|
17031
|
-
if (isDateFieldEmpty(year,
|
|
17067
|
+
if (isDateFieldEmpty(year, dateMonth, dateDay)) {
|
|
17032
17068
|
onChange("");
|
|
17033
17069
|
return;
|
|
17034
17070
|
}
|
|
17035
17071
|
if (year === "") {
|
|
17036
|
-
onChange(`-${
|
|
17072
|
+
onChange(`-${dateMonth}-${dateDay}`);
|
|
17037
17073
|
}
|
|
17038
17074
|
const newVal = Number.parseInt(year, 10);
|
|
17039
17075
|
if (typeof newVal === "number" && newVal >= 1 && newVal <= thisYear) {
|
|
17040
|
-
onChange(`${newVal}-${formatTwoDigitValues(
|
|
17076
|
+
onChange(`${newVal}-${formatTwoDigitValues(dateMonth)}-${formatTwoDigitValues(dateDay)}`);
|
|
17041
17077
|
}
|
|
17042
17078
|
else {
|
|
17043
|
-
logger.warn(`Value '${newVal}' is an invalid
|
|
17079
|
+
logger.warn(`Value '${newVal}' is an invalid year`);
|
|
17044
17080
|
}
|
|
17045
17081
|
};
|
|
17046
|
-
const
|
|
17047
|
-
if (!
|
|
17082
|
+
const getDate = () => {
|
|
17083
|
+
if (!dateDay && !dateMonth && !dateYear) {
|
|
17048
17084
|
onChange("");
|
|
17049
17085
|
}
|
|
17050
17086
|
else {
|
|
17051
|
-
onChange(`${
|
|
17087
|
+
onChange(`${dateYear}-${formatTwoDigitValues(dateMonth)}-${formatTwoDigitValues(dateDay)}`);
|
|
17052
17088
|
}
|
|
17053
17089
|
};
|
|
17054
|
-
const monthFieldId =
|
|
17055
|
-
const fieldLabelId =
|
|
17056
|
-
const
|
|
17057
|
-
|
|
17058
|
-
React.createElement(FormattedHTMLMessage, { id: "errorId.invalidBirthDate", defaultMessage: "Invalid birth date" })));
|
|
17059
|
-
const birthDateDayRef = useRef(null);
|
|
17060
|
-
const birthDateYearRef = useRef(null);
|
|
17061
|
-
// NOTE: Dependency array omitted to account for use of resetRef(), as useEffect with dep arr
|
|
17062
|
-
// will only trigger on initial render leaving the refs empty, this replicates prior version
|
|
17063
|
-
// where ref callback would trigger with each re-render
|
|
17064
|
-
useEffect(() => {
|
|
17065
|
-
setRef("birthDateDay", birthDateDayRef.current);
|
|
17066
|
-
setRef("birthDateYear", birthDateYearRef.current);
|
|
17067
|
-
});
|
|
17068
|
-
return (React.createElement("div", { className: "sid-field sid-birthdate" },
|
|
17090
|
+
const monthFieldId = `${cssId}__month`;
|
|
17091
|
+
const fieldLabelId = `${cssId}-label`;
|
|
17092
|
+
const wrappedErrMsg = React.createElement("div", { className: "sid-field-error" }, errorMsg);
|
|
17093
|
+
return (React.createElement("div", { className: `sid-field ${cssId}` },
|
|
17069
17094
|
React.createElement("div", { className: "sid-l-space-top-md" }),
|
|
17070
|
-
React.createElement(FieldLabel, { text:
|
|
17095
|
+
React.createElement(FieldLabel, { text: label, htmlForLabel: monthFieldId, id: fieldLabelId, displayClasses: "sid-field__label-with-explanation", isRequired: isRequired },
|
|
17071
17096
|
React.createElement(FormattedHTMLMessage, { id: "verificationPurposesOnly", defaultMessage: "Used for verification purposes only" })),
|
|
17072
|
-
React.createElement("div", { className:
|
|
17073
|
-
React.createElement(InputSelectComponent, { className:
|
|
17097
|
+
React.createElement("div", { className: `${cssId}__inputs sid-date__inputs` },
|
|
17098
|
+
React.createElement(InputSelectComponent, { className: `${cssId}__month sid-date__month`, fieldId: fieldName, inputId: monthFieldId, fieldLabelId: fieldLabelId, isErrored: isErrored, options: months, onChange: (choice) => {
|
|
17074
17099
|
if (choice) {
|
|
17075
|
-
|
|
17100
|
+
updateMonth(choice.value);
|
|
17076
17101
|
}
|
|
17077
17102
|
else {
|
|
17078
17103
|
// clear the birth month
|
|
17079
|
-
|
|
17104
|
+
updateMonth(null);
|
|
17080
17105
|
}
|
|
17081
|
-
}, placeholder: intl.formatHTMLMessage({ id: "dateTime.month", defaultMessage: "Month" }), suppressPlaceholder: false, value:
|
|
17082
|
-
React.createElement(
|
|
17083
|
-
React.createElement(
|
|
17084
|
-
isErrored ?
|
|
17085
|
-
};
|
|
17086
|
-
BirthDate.defaultProps = {
|
|
17087
|
-
value: "2000-01-01",
|
|
17106
|
+
}, placeholder: intl.formatHTMLMessage({ id: "dateTime.month", defaultMessage: "Month" }), suppressPlaceholder: false, value: dateMonth ? months[dateMonth - 1] : undefined, isRequired: isRequired, buttonRef: "inputSelectButtonBirthDate" }),
|
|
17107
|
+
mode === "date" && (React.createElement(InputTextComponent, { className: `${cssId}__day sid-date__day sid-text-input sid-text-input--required ${isErrored ? "sid-text-input--error" : ""}`, id: `${fieldId}-day`, isErrored: isErrored, min: 1, max: 31, name: `${cssId}-day`, onChange: (e) => updateDay(e.target.value), onBlur: getDate, pattern: "\\d*", placeholder: intl.formatHTMLMessage({ id: "dateTime.day", defaultMessage: "Day" }), "aria-label": intl.formatHTMLMessage({ id: "dateTime.day", defaultMessage: "Day" }), "aria-labelledby": cssId, "aria-required": isRequired, refId: `${fieldName}Day`, type: "text", value: dateDay || "" })),
|
|
17108
|
+
React.createElement(InputTextComponent, { className: `${cssId}__year sid-date__year sid-text-input sid-text-input--required ${isErrored ? "sid-text-input--error" : ""}`, id: `${fieldId}-year`, name: `${cssId}-year`, type: "text", isErrored: isErrored, min: minYear, max: thisYear, value: dateYear || "", pattern: "\\d*", placeholder: intl.formatHTMLMessage({ id: "dateTime.year", defaultMessage: "Year" }), "aria-label": intl.formatHTMLMessage({ id: "dateTime.year", defaultMessage: "Year" }), "aria-labelledby": cssId, "aria-required": isRequired, refId: `${fieldName}Year`, onChange: (e) => updateBirthYear(e.target.value), onBlur: getDate })),
|
|
17109
|
+
isErrored ? wrappedErrMsg : null));
|
|
17088
17110
|
};
|
|
17089
|
-
const
|
|
17111
|
+
const DateComponent = injectIntl(DateInput);
|
|
17112
|
+
|
|
17113
|
+
const BirthDateComponent = ({ onChange, isErrored, isRequired = true, errorId, value = "2000-01-01", }) => (React.createElement(DateComponent, { value: value, label: React.createElement(FormattedHTMLMessage, { id: "birthDate", defaultMessage: "Date of birth" }), onChange: onChange, fieldId: "birthdate", fieldName: "birthDate", isErrored: isErrored, isRequired: isRequired, errorMsg: errorId ? (React.createElement(FormattedHTMLMessage, { id: `errorId.${errorId}`, defaultMessage: "Invalid birth date" })) : (React.createElement(FormattedHTMLMessage, { id: "errorId.invalidBirthDate", defaultMessage: "Invalid birth date" })) }));
|
|
17090
17114
|
|
|
17091
17115
|
function replaceCustomTags(text, tagmap) {
|
|
17092
17116
|
if (typeof text !== "string")
|
|
@@ -18065,6 +18089,8 @@ const BranchOfService = ({ autoFocus, onChange, value, isErrored, organizations,
|
|
|
18065
18089
|
};
|
|
18066
18090
|
const BranchOfServiceComponent = injectIntl(BranchOfService);
|
|
18067
18091
|
|
|
18092
|
+
const ActiveDutyStartDateComponent = ({ onChange, isErrored, errorId = "invalidActiveDutyStartDate", value = "2000-01-01", }) => (React.createElement(DateComponent, { value: value, label: React.createElement(FormattedHTMLMessage, { id: "activeDutyStartDate", defaultMessage: "Active Duty Start Date" }), onChange: onChange, fieldName: "activeDutyStartDate", fieldId: "sid-active-duty-start-date", isErrored: isErrored, isRequired: true, errorMsg: React.createElement(FormattedHTMLMessage, { id: `errorId.${errorId}`, defaultMessage: "Invalid start date" }) }));
|
|
18093
|
+
|
|
18068
18094
|
/**
|
|
18069
18095
|
* TODO - preamble
|
|
18070
18096
|
*/
|
|
@@ -18142,6 +18168,10 @@ const StepActiveMilitaryPersonalInfo = ({ intl, verificationService, }) => {
|
|
|
18142
18168
|
updateActiveMilitaryViewModel("birthDate", newValue);
|
|
18143
18169
|
updateFieldValidationErrorsByFieldId("birthDate", newValue, verificationService);
|
|
18144
18170
|
}, value: viewModel.birthDate }),
|
|
18171
|
+
verificationService.programTheme.strictMilitaryValidationEnabled && (React.createElement(ActiveDutyStartDateComponent, { isErrored: !!fieldValidationErrors.activeDutyStartDate, errorId: fieldValidationErrors.activeDutyStartDate, onChange: (newValue) => {
|
|
18172
|
+
updateActiveMilitaryViewModel("activeDutyStartDate", newValue);
|
|
18173
|
+
updateFieldValidationErrorsByFieldId("activeDutyStartDate", newValue, verificationService);
|
|
18174
|
+
}, value: viewModel.activeDutyStartDate })),
|
|
18145
18175
|
React.createElement(EmailComponent, { value: viewModel.email, isErrored: !!fieldValidationErrors.email, explanation: React.createElement(FormattedHTMLMessage, { id: "emailExplanation", defaultMessage: "Personal email address is recommended" }), onChange: (newValue) => {
|
|
18146
18176
|
updateActiveMilitaryViewModel("email", newValue);
|
|
18147
18177
|
updateFieldValidationErrorsByFieldId("email", newValue, verificationService);
|
|
@@ -18170,78 +18200,7 @@ const StepActiveMilitaryPersonalInfo = ({ intl, verificationService, }) => {
|
|
|
18170
18200
|
};
|
|
18171
18201
|
const StepActiveMilitaryPersonalInfoComponent = injectIntl(StepActiveMilitaryPersonalInfo);
|
|
18172
18202
|
|
|
18173
|
-
const
|
|
18174
|
-
const dischargeDateParts = value.split("-");
|
|
18175
|
-
const dischargeDateYear = Number.parseInt(dischargeDateParts[0], 10) || undefined;
|
|
18176
|
-
const dischargeDateMonth = Number.parseInt(dischargeDateParts[1], 10) || undefined;
|
|
18177
|
-
const dischargeDateDay = 1;
|
|
18178
|
-
const minDischargeYear = 1900;
|
|
18179
|
-
const thisYear = new Date().getFullYear();
|
|
18180
|
-
const inputId = "sid-discharge-date";
|
|
18181
|
-
/* prettier-ignore */
|
|
18182
|
-
const months = [
|
|
18183
|
-
{ value: "1", label: intl.formatHTMLMessage({ id: "dateTime.january", defaultMessage: "January" }), },
|
|
18184
|
-
{ value: "2", label: intl.formatHTMLMessage({ id: "dateTime.february", defaultMessage: "February" }), },
|
|
18185
|
-
{ value: "3", label: intl.formatHTMLMessage({ id: "dateTime.march", defaultMessage: "March" }), },
|
|
18186
|
-
{ value: "4", label: intl.formatHTMLMessage({ id: "dateTime.april", defaultMessage: "April" }), },
|
|
18187
|
-
{ value: "5", label: intl.formatHTMLMessage({ id: "dateTime.may", defaultMessage: "May" }) },
|
|
18188
|
-
{ value: "6", label: intl.formatHTMLMessage({ id: "dateTime.june", defaultMessage: "June" }) },
|
|
18189
|
-
{ value: "7", label: intl.formatHTMLMessage({ id: "dateTime.july", defaultMessage: "July" }) },
|
|
18190
|
-
{ value: "8", label: intl.formatHTMLMessage({ id: "dateTime.august", defaultMessage: "August" }), },
|
|
18191
|
-
{ value: "9", label: intl.formatHTMLMessage({ id: "dateTime.september", defaultMessage: "September" }), },
|
|
18192
|
-
{ value: "10", label: intl.formatHTMLMessage({ id: "dateTime.october", defaultMessage: "October" }), },
|
|
18193
|
-
{ value: "11", label: intl.formatHTMLMessage({ id: "dateTime.november", defaultMessage: "November" }), },
|
|
18194
|
-
{ value: "12", label: intl.formatHTMLMessage({ id: "dateTime.december", defaultMessage: "December" }), },
|
|
18195
|
-
];
|
|
18196
|
-
const updateDischargeMonth = (month) => {
|
|
18197
|
-
if (month === "" || month === null) {
|
|
18198
|
-
onChange(`${dischargeDateYear}--${dischargeDateDay}`);
|
|
18199
|
-
}
|
|
18200
|
-
const newVal = Number.parseInt(month, 10);
|
|
18201
|
-
if (typeof newVal === "number" && newVal >= 1 && newVal <= 12) {
|
|
18202
|
-
onChange(`${dischargeDateYear}-${formatTwoDigitValues(month)}-${formatTwoDigitValues(dischargeDateDay)}`);
|
|
18203
|
-
}
|
|
18204
|
-
else {
|
|
18205
|
-
logger.warn(`Value '${newVal}' is an invalid discharge month`);
|
|
18206
|
-
}
|
|
18207
|
-
};
|
|
18208
|
-
const updateDischargeYear = (year) => {
|
|
18209
|
-
if (year === "") {
|
|
18210
|
-
onChange(`-${dischargeDateMonth}-${dischargeDateDay}`);
|
|
18211
|
-
}
|
|
18212
|
-
const newVal = Number.parseInt(year, 10);
|
|
18213
|
-
if (typeof newVal === "number" && newVal >= 1 && newVal <= thisYear) {
|
|
18214
|
-
onChange(`${newVal}-${formatTwoDigitValues(dischargeDateMonth)}-${formatTwoDigitValues(dischargeDateDay)}`);
|
|
18215
|
-
}
|
|
18216
|
-
else {
|
|
18217
|
-
logger.warn(`Value '${newVal}' is an invalid discharge year`);
|
|
18218
|
-
}
|
|
18219
|
-
};
|
|
18220
|
-
const getDischargeDate = () => {
|
|
18221
|
-
onChange(`${dischargeDateYear}-${formatTwoDigitValues(dischargeDateMonth)}-${formatTwoDigitValues(dischargeDateDay)}`);
|
|
18222
|
-
};
|
|
18223
|
-
return (React.createElement("div", { className: `sid-field ${inputId}` },
|
|
18224
|
-
React.createElement("div", { className: "sid-l-space-top-md" }),
|
|
18225
|
-
React.createElement(FieldLabel, { text: React.createElement(FormattedHTMLMessage, { id: "dischargeDate", defaultMessage: "Discharge date" }), htmlForLabel: `${inputId}__month`, id: `${inputId}-label`, displayClasses: "sid-field__label-with-explanation" },
|
|
18226
|
-
React.createElement(FormattedHTMLMessage, { id: "verificationPurposesOnly", defaultMessage: "Used for verification purposes only" })),
|
|
18227
|
-
React.createElement("div", { className: `${inputId}__inputs` },
|
|
18228
|
-
React.createElement(InputSelectComponent, { className: `${inputId}__month`, fieldId: "dischargeDate", inputId: `${inputId}__month`, fieldLabelId: `${inputId}-label`, isErrored: isErrored, options: months, onChange: (choice) => {
|
|
18229
|
-
if (choice) {
|
|
18230
|
-
updateDischargeMonth(choice.value);
|
|
18231
|
-
}
|
|
18232
|
-
else {
|
|
18233
|
-
// clear the discharge month
|
|
18234
|
-
updateDischargeMonth(null);
|
|
18235
|
-
}
|
|
18236
|
-
}, placeholder: intl.formatHTMLMessage({ id: "dateTime.month", defaultMessage: "Month" }), suppressPlaceholder: false, value: dischargeDateMonth ? months[dischargeDateMonth - 1] : undefined, buttonRef: "inputSelectButtonDischargeDate", isRequired: true }),
|
|
18237
|
-
React.createElement(InputTextComponent, { className: `${inputId}__year`, id: "discharge-date-year", isErrored: isErrored, max: thisYear, min: minDischargeYear, onBlur: getDischargeDate, onChange: (e) => updateDischargeYear(e.target.value), pattern: "\\d*", placeholder: intl.formatHTMLMessage({ id: "dateTime.year", defaultMessage: "Year" }), hidePlaceholder: false, refId: "dischargeDateYear", required: true, value: dischargeDateYear || "", "aria-labelledby": "sid-discharge-date-label" })),
|
|
18238
|
-
isErrored ? (React.createElement("div", { className: "sid-field-error" },
|
|
18239
|
-
React.createElement(FormattedHTMLMessage, { id: "errorId.invalidDischargeDate", defaultMessage: "Invalid discharge date" }))) : null));
|
|
18240
|
-
};
|
|
18241
|
-
DischargeDate.defaultProps = {
|
|
18242
|
-
value: "2000-01-01",
|
|
18243
|
-
};
|
|
18244
|
-
const DischargeDateComponent = injectIntl(DischargeDate);
|
|
18203
|
+
const DischargeDateComponent = ({ onChange, isErrored, value = "2000-01-01", }) => (React.createElement(DateComponent, { mode: "month", value: value, label: React.createElement(FormattedHTMLMessage, { id: "dischargeDate", defaultMessage: "Discharge date" }), onChange: onChange, fieldName: "dischargeDate", fieldId: "discharge-date", isErrored: isErrored, isRequired: true, errorMsg: React.createElement(FormattedHTMLMessage, { id: "errorId.invalidDischargeDate", defaultMessage: "Invalid discharge date" }) }));
|
|
18245
18204
|
|
|
18246
18205
|
/**
|
|
18247
18206
|
* TODO - preamble
|
|
@@ -18317,6 +18276,10 @@ const StepInactiveMilitaryPersonalInfo = ({ intl, verificationService, }) => {
|
|
|
18317
18276
|
updateInactiveMilitaryViewModel("birthDate", newValue);
|
|
18318
18277
|
updateFieldValidationErrorsByFieldId("birthDate", newValue, verificationService);
|
|
18319
18278
|
}, value: viewModel.birthDate }),
|
|
18279
|
+
verificationService.programTheme.strictMilitaryValidationEnabled && (React.createElement(ActiveDutyStartDateComponent, { isErrored: !!fieldValidationErrors.activeDutyStartDate, onChange: (newValue) => {
|
|
18280
|
+
updateInactiveMilitaryViewModel("activeDutyStartDate", newValue);
|
|
18281
|
+
updateFieldValidationErrorsByFieldId("activeDutyStartDate", newValue, verificationService);
|
|
18282
|
+
}, value: viewModel.activeDutyStartDate })),
|
|
18320
18283
|
React.createElement(DischargeDateComponent, { isErrored: !!fieldValidationErrors.dischargeDate, onChange: (newValue) => {
|
|
18321
18284
|
updateInactiveMilitaryViewModel("dischargeDate", newValue);
|
|
18322
18285
|
updateFieldValidationErrorsByFieldId("dischargeDate", newValue, verificationService);
|