{"version":3,"sources":["../../Areas/Consumer/Static/Shared/PreRegistration.ts"],"names":[],"mappings":"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","file":"PreRegistration.min.js","sourcesContent":["import{ CoreError } from '../Core'\r\n\r\ndeclare var GLOBAL_BaseApiURL_Direct:string\r\n\r\n\r\n// TODO(arch): is there a better/standard way to initialize this? (ie: encapsulate within class)\r\nexport function initPreRegistration() {\r\n\treturn;\r\n\t\r\n\t// GARBAGE\r\n\t$('#__preRegistration #preRegisterForm').on( 'submit', async e => {\r\n\t\t// prevent form submission (NOTE: we handle in AJAX instead)\r\n\t\te.preventDefault()\r\n\t\te.stopPropagation()\r\n\t\t\r\n\t\t// validate\r\n\t\tconst emailTextField:JQuery = $('#__preRegistration #emailTextField')\r\n\t\tlet email:string|number|string[]|undefined = emailTextField.val()\r\n\t\tif( email instanceof String ){\r\n\t\t\temail = email.trim()\r\n\t\t}\r\n\t\tconst errorLabel:JQuery = $('#__preRegistration #errorLabel')\r\n\t\tif( !email ){\r\n\t\t\temailTextField.addClass( 'is-invalid' )\r\n\t\t\temailTextField.addClass( 'was-validated' )\r\n\t\t\terrorLabel.text( \"Please enter your email\" )\r\n\t\t\terrorLabel.show() // NOTE: needed because error label is not a sibling of the input control\r\n\t\t\temailTextField.trigger( 'focus' )\r\n\t\t\treturn\r\n\t\t} else {\r\n\t\t\temailTextField.removeClass( 'is-invalid' )\r\n\t\t\temailTextField.removeClass( 'was-validated' )\r\n\t\t\terrorLabel.hide()\r\n\t\t}\r\n\t\t// submit\r\n\t\tlet preRegisterButton = $('#__preRegistration #registerButton')\r\n\t\tpreRegisterButton.empty()\r\n\t\tpreRegisterButton.append('
' )\r\n\t\terrorLabel.hide()\r\n\t\tfunction showError( message?:string ){\r\n\t\t\temailTextField.addClass( 'is-invalid' )\r\n\t\t\temailTextField.trigger( 'focus' )\r\n\t\t\terrorLabel.text( message ?? \"Something went wrong. Please try again later.\" )\r\n\t\t\terrorLabel.show() // NOTE: needed because error label is not a sibling of the input control\r\n\t\t\tpreRegisterButton.empty()\r\n\t\t\tpreRegisterButton.text( 'Join' )\r\n\t\t}\r\n\t\ttry {\r\n\t\t\tconst response:Response = await fetch( `${GLOBAL_BaseApiURL_Direct}/account/subscribers`, {\r\n\t\t\t\tmethod: 'POST',\r\n\t\t\t\theaders: {\r\n\t\t\t\t\t'Content-Type': 'application/json',\r\n\t\t\t\t},\r\n\t\t\t\tbody: JSON.stringify({\r\n\t\t\t\t\tEmail: email,\r\n\t\t\t\t\tPlatform: 'Android',\r\n\t\t\t\t}),\r\n\t\t\t})\r\n\t\t\tif( !response.ok ){\r\n\t\t\t\tconst statusCode:number = response.status\r\n\t\t\t\tif( 400 <= statusCode && statusCode < 500 ){\r\n\t\t\t\t\tconst errorJSON:CoreError = await response.json()\r\n\t\t\t\t\tswitch( errorJSON.ErrorCode ){\r\n\t\t\t\t\t\tcase \"InvalidFormat\":\r\n\t\t\t\t\t\t\tconsole.log( `Could not pre-register '${email}'. Invalid email.` )\r\n\t\t\t\t\t\t\tshowError( \"Please enter a valid email\" )\r\n\t\t\t\t\t\t\tbreak\r\n\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\tconsole.log( `Could not pre-register '${email}'. Status code: ${statusCode}` )\r\n\t\t\t\t\t\t\tshowError()\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log( `Could not pre-register '${email}'. Status code: ${statusCode}` )\r\n\t\t\t\t\tshowError()\r\n\t\t\t\t}\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\r\n\t\t\tpreRegisterButton.text( 'Registered' )\r\n\t\t\t$('#__preRegistration .unregistered').hide()\r\n\t\t\t$('#__preRegistration .registered').show()\r\n\t\t\tconsole.log( `Pre-registered '${email}' successfully` )\r\n\t\t\t\r\n\t\t} catch( x ){\r\n\t\t\tconsole.log( `Could not pre-register ${email}. ERROR: ${x.message}` )\r\n\t\t\tshowError()\r\n\t\t}\r\n\t})\r\n}\r\n"]}