@casual-simulation/aux-common
Version:
Common library for AUX projects
56 lines • 1.93 kB
JavaScript
export const EMAIL_FIELD = 'email';
export const PARENT_EMAIL_FIELD = 'parentEmail';
export const NAME_FIELD = 'name';
export const DATE_OF_BIRTH_FIELD = 'dateOfBirth';
export const DISPLAY_NAME_FIELD = 'displayName';
export const TERMS_OF_SERVICE_FIELD = 'termsOfService';
export const ADDRESS_FIELD = 'address';
export const CODE_FIELD = 'code';
export const REPORT_REASON_FIELD = 'reportReason';
export const REPORT_REASON_TEXT_FIELD = 'reportReasonText';
export const COM_ID_FIELD = 'comId';
const fieldMap = new Map([
['email_already_exists', EMAIL_FIELD],
['child_email_already_exists', EMAIL_FIELD],
['parent_email_already_exists', PARENT_EMAIL_FIELD],
['parent_email_required', PARENT_EMAIL_FIELD],
['unacceptable_address', ADDRESS_FIELD],
['address_type_not_supported', ADDRESS_FIELD],
['unacceptable_address_type', ADDRESS_FIELD],
['invalid_code', CODE_FIELD],
['invalid_username', DISPLAY_NAME_FIELD],
['unacceptable_code', CODE_FIELD],
['invalid_display_name', DISPLAY_NAME_FIELD],
['user_is_banned', null],
['comId_already_taken', COM_ID_FIELD],
]);
/**
* Gets the list of form errors that are applicable for the given response.
* @param response
*/
export function getFormErrors(response) {
var _a;
if (response.success) {
return [];
}
const errors = [];
if (response.issues) {
for (let issue of response.issues) {
errors.push({
for: issue.path.join('.'),
errorCode: issue.code,
errorMessage: issue.message,
});
}
}
else {
const field = (_a = fieldMap.get(response.errorCode)) !== null && _a !== void 0 ? _a : null;
errors.push({
for: field,
errorCode: response.errorCode,
errorMessage: response.errorMessage,
});
}
return errors;
}
//# sourceMappingURL=FormError.js.map