1. function compactFormSubmission(formData) {
  2. // Sanity checks
  3. if (!formData || typeof formData !== 'object') {
  4. console.error("Invalid form data: Must be an object.");
  5. return null;
  6. }
  7. if (Object.keys(formData).length === 0) {
  8. console.warn("Form data is empty.");
  9. return null;
  10. }
  11. // Basic data type validation (can be expanded)
  12. for (const key in formData) {
  13. if (formData.hasOwnProperty(key)) {
  14. const value = formData[key];
  15. if (typeof value === 'string' && value.length > 2000) {
  16. console.warn(`Field '${key}' exceeds 2000 characters. Truncating.`);
  17. formData[key] = value.substring(0, 2000);
  18. }
  19. }
  20. }
  21. // Compact the data (JSON stringify with pretty printing and remove whitespace)
  22. try {
  23. const compactedData = JSON.stringify(formData, null, 2).replace(/\s+/g, ' '); //Remove whitespace
  24. return compactedData;
  25. } catch (error) {
  26. console.error("Error compacting data:", error);
  27. return null;
  28. }
  29. }

Add your comment