@gofranz/formshive-submit 1.0.0 → 1.0.2

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.
@@ -72,7 +72,7 @@
72
72
  });
73
73
  let data;
74
74
  const contentType = response.headers.get('content-type');
75
- if (contentType?.includes('application/json')) {
75
+ if (contentType && contentType.includes('application/json')) {
76
76
  data = await response.json();
77
77
  }
78
78
  else {
@@ -192,15 +192,15 @@
192
192
  if (error.isAxiosError) {
193
193
  const axiosError = error;
194
194
  message = axiosError.message;
195
- statusCode = axiosError.response?.status;
196
- response = axiosError.response?.data;
195
+ statusCode = axiosError.response && axiosError.response.status;
196
+ response = axiosError.response && axiosError.response.data;
197
197
  // Parse field validation errors if this is a 400 response
198
198
  if (statusCode === 400) {
199
199
  const fieldValidation = parseFieldValidationErrors(response);
200
200
  fieldErrors = fieldValidation.fieldErrors;
201
201
  validationResponse = fieldValidation.validationResponse;
202
202
  // Use more specific message from validation response
203
- if (validationResponse?.message) {
203
+ if (validationResponse && validationResponse.message) {
204
204
  message = validationResponse.message;
205
205
  }
206
206
  }
@@ -246,7 +246,7 @@
246
246
  if (error.body) {
247
247
  error.json().then(data => {
248
248
  const fieldValidation = parseFieldValidationErrors(data);
249
- if (fieldValidation.validationResponse?.message) {
249
+ if (fieldValidation.validationResponse && fieldValidation.validationResponse.message) {
250
250
  message = fieldValidation.validationResponse.message;
251
251
  }
252
252
  }).catch(() => {
@@ -297,15 +297,15 @@
297
297
  return true;
298
298
  }
299
299
  // Timeout errors are retryable
300
- if (error.message?.includes('timeout') || error.message?.includes('Timeout')) {
300
+ if (error.message && (error.message.includes('timeout') || error.message.includes('Timeout'))) {
301
301
  return true;
302
302
  }
303
303
  // Server errors (5xx) are retryable
304
- if (error.response?.status >= 500) {
304
+ if (error.response && error.response.status >= 500) {
305
305
  return true;
306
306
  }
307
307
  // Rate limiting (429) is retryable
308
- if (error.response?.status === 429) {
308
+ if (error.response && error.response.status === 429) {
309
309
  return true;
310
310
  }
311
311
  // Axios network errors are retryable
@@ -313,7 +313,7 @@
313
313
  return true;
314
314
  }
315
315
  // Client errors (4xx except 429) are not retryable
316
- if (error.response?.status >= 400 && error.response?.status < 500 && error.response?.status !== 429) {
316
+ if (error.response && error.response.status >= 400 && error.response.status < 500 && error.response.status !== 429) {
317
317
  return false;
318
318
  }
319
319
  return true;
@@ -326,7 +326,7 @@
326
326
  case ERROR_CODES.FORM_NOT_FOUND:
327
327
  return 'Form not found. Please check the form ID.';
328
328
  case ERROR_CODES.VALIDATION_ERROR:
329
- return error.response?.message || 'Form validation failed. Please check your data.';
329
+ return (error.response && error.response.message) || 'Form validation failed. Please check your data.';
330
330
  case ERROR_CODES.FILE_TOO_LARGE:
331
331
  return 'One or more files are too large. Please reduce file size and try again.';
332
332
  case ERROR_CODES.INVALID_FILE_TYPE:
@@ -380,36 +380,43 @@
380
380
  let lastError;
381
381
  for (let attempt = 1; attempt <= finalConfig.maxAttempts; attempt++) {
382
382
  try {
383
- logger?.debug(`Attempt ${attempt}/${finalConfig.maxAttempts}`);
383
+ if (logger)
384
+ logger.debug(`Attempt ${attempt}/${finalConfig.maxAttempts}`);
384
385
  const result = await operation();
385
386
  if (attempt > 1) {
386
- logger?.info(`Operation succeeded on attempt ${attempt}`);
387
+ if (logger)
388
+ logger.info(`Operation succeeded on attempt ${attempt}`);
387
389
  }
388
390
  return result;
389
391
  }
390
392
  catch (error) {
391
393
  lastError = error;
392
- logger?.warn(`Attempt ${attempt} failed:`, error.message);
394
+ if (logger)
395
+ logger.warn(`Attempt ${attempt} failed:`, error.message);
393
396
  // Check if this is the last attempt
394
397
  if (attempt === finalConfig.maxAttempts) {
395
- logger?.error(`All ${finalConfig.maxAttempts} attempts failed. Giving up.`);
398
+ if (logger)
399
+ logger.error(`All ${finalConfig.maxAttempts} attempts failed. Giving up.`);
396
400
  break;
397
401
  }
398
402
  // Check if error is retryable
399
403
  if (!isRetryableError(error)) {
400
- logger?.info('Error is not retryable. Stopping retry attempts.');
404
+ if (logger)
405
+ logger.info('Error is not retryable. Stopping retry attempts.');
401
406
  break;
402
407
  }
403
408
  // Calculate delay for next attempt
404
409
  const delay = calculateDelay(attempt, finalConfig);
405
- logger?.debug(`Waiting ${delay}ms before next attempt...`);
410
+ if (logger)
411
+ logger.debug(`Waiting ${delay}ms before next attempt...`);
406
412
  // Call retry callback if provided
407
413
  if (onRetry) {
408
414
  try {
409
415
  onRetry(attempt, finalConfig.maxAttempts, error);
410
416
  }
411
417
  catch (callbackError) {
412
- logger?.warn('Retry callback threw an error:', callbackError);
418
+ if (logger)
419
+ logger.warn('Retry callback threw an error:', callbackError);
413
420
  }
414
421
  }
415
422
  // Wait before next attempt
@@ -629,11 +636,13 @@
629
636
  function validateFiles(files, config, logger) {
630
637
  const errors = [];
631
638
  for (const fileInfo of files) {
632
- logger?.debug(`Validating file: ${fileInfo.name} (${formatFileSize(fileInfo.size)}, ${fileInfo.type})`);
639
+ if (logger)
640
+ logger.debug(`Validating file: ${fileInfo.name} (${formatFileSize(fileInfo.size)}, ${fileInfo.type})`);
633
641
  const error = validateFile(fileInfo.file, config);
634
642
  if (error) {
635
643
  errors.push(error);
636
- logger?.warn(`File validation failed: ${error}`);
644
+ if (logger)
645
+ logger.warn(`File validation failed: ${error}`);
637
646
  }
638
647
  }
639
648
  return errors;
@@ -677,14 +686,15 @@
677
686
  // Handle object data
678
687
  const files = extractFiles(inputData);
679
688
  const hasFiles = files.length > 0;
680
- logger?.debug(`Found ${files.length} files in form data`);
689
+ if (logger)
690
+ logger.debug(`Found ${files.length} files in form data`);
681
691
  // Validate files
682
692
  if (hasFiles) {
683
693
  const validationErrors = validateFiles(files, config, logger);
684
694
  if (validationErrors.length > 0) {
685
695
  const error = new Error(validationErrors.join(' '));
686
696
  error.name = 'SubmitError';
687
- error.code = validationErrors[0]?.includes('too large')
697
+ error.code = (validationErrors[0] && validationErrors[0].includes('too large'))
688
698
  ? ERROR_CODES.FILE_TOO_LARGE
689
699
  : ERROR_CODES.INVALID_FILE_TYPE;
690
700
  error.attempt = 0;
@@ -695,7 +705,8 @@
695
705
  // Convert to FormData if files are present
696
706
  let processedData;
697
707
  if (hasFiles) {
698
- logger?.debug('Converting to FormData due to file presence');
708
+ if (logger)
709
+ logger.debug('Converting to FormData due to file presence');
699
710
  processedData = new FormData();
700
711
  // Add all non-file fields
701
712
  for (const [key, value] of Object.entries(inputData)) {
@@ -731,7 +742,8 @@
731
742
  }
732
743
  else {
733
744
  // No files, keep as object (will be sent as JSON)
734
- logger?.debug('No files found, keeping as object for JSON submission');
745
+ if (logger)
746
+ logger.debug('No files found, keeping as object for JSON submission');
735
747
  processedData = { ...inputData };
736
748
  }
737
749
  return {
@@ -759,7 +771,8 @@
759
771
  * Get MIME type from file extension (fallback if browser doesn't detect)
760
772
  */
761
773
  function getMimeTypeFromExtension(filename) {
762
- const extension = filename.split('.').pop()?.toLowerCase();
774
+ const parts = filename.split('.');
775
+ const extension = parts.length > 1 ? parts.pop().toLowerCase() : '';
763
776
  const mimeTypes = {
764
777
  // Images
765
778
  jpg: 'image/jpeg',
@@ -801,7 +814,8 @@
801
814
  * Enhanced file information with additional metadata
802
815
  */
803
816
  function getEnhancedFileInfo(file) {
804
- const extension = file.name.split('.').pop()?.toLowerCase() || '';
817
+ const parts = file.name.split('.');
818
+ const extension = parts.length > 1 ? parts.pop().toLowerCase() : '';
805
819
  const detectedMimeType = getMimeTypeFromExtension(file.name);
806
820
  return {
807
821
  field: '', // Will be set by caller
@@ -874,7 +888,7 @@
874
888
  new URL(url);
875
889
  return true;
876
890
  }
877
- catch {
891
+ catch (_a) {
878
892
  return false;
879
893
  }
880
894
  }
@@ -1026,7 +1040,7 @@
1026
1040
  try {
1027
1041
  return JSON.stringify(error);
1028
1042
  }
1029
- catch {
1043
+ catch (_a) {
1030
1044
  return 'Unknown error';
1031
1045
  }
1032
1046
  }
@@ -1188,7 +1202,7 @@
1188
1202
  }
1189
1203
  }
1190
1204
  // Set up progress tracking for file uploads
1191
- if (processedData.hasFiles && httpClient.supportsProgress() && config.callbacks?.onProgress) {
1205
+ if (processedData.hasFiles && httpClient.supportsProgress() && config.callbacks && config.callbacks.onProgress) {
1192
1206
  const progressTracker = createProgressTracker(processedData.files, config.callbacks.onProgress);
1193
1207
  if (progressTracker) {
1194
1208
  requestConfig.onUploadProgress = progressTracker;
@@ -1196,7 +1210,7 @@
1196
1210
  }
1197
1211
  }
1198
1212
  // Call onStart callback
1199
- if (config.callbacks?.onStart) {
1213
+ if (config.callbacks && config.callbacks.onStart) {
1200
1214
  try {
1201
1215
  config.callbacks.onStart();
1202
1216
  }
@@ -1234,7 +1248,7 @@
1234
1248
  }, config.retry, logger, (attempt, maxAttempts, error) => {
1235
1249
  logger.warn(`Retry attempt ${attempt}/${maxAttempts}:`, error.message);
1236
1250
  // Call retry callback
1237
- if (config.callbacks?.onRetry) {
1251
+ if (config.callbacks && config.callbacks.onRetry) {
1238
1252
  try {
1239
1253
  config.callbacks.onRetry(attempt, maxAttempts, error);
1240
1254
  }
@@ -1250,7 +1264,7 @@
1250
1264
  // For now, we'll estimate based on timing or assume success on attempt 1
1251
1265
  result.attempt = 1; // This should be provided by the retry mechanism
1252
1266
  // Call success callback
1253
- if (config.callbacks?.onSuccess) {
1267
+ if (config.callbacks && config.callbacks.onSuccess) {
1254
1268
  try {
1255
1269
  config.callbacks.onSuccess(result);
1256
1270
  }
@@ -1280,7 +1294,7 @@
1280
1294
  isRetryable: submitError.isRetryable,
1281
1295
  });
1282
1296
  // Call error callback
1283
- if (config.callbacks?.onError) {
1297
+ if (config.callbacks && config.callbacks.onError) {
1284
1298
  try {
1285
1299
  config.callbacks.onError(submitError);
1286
1300
  }
@@ -1309,8 +1323,8 @@
1309
1323
  ...options,
1310
1324
  callbacks: {
1311
1325
  ...options.callbacks,
1312
- onSuccess: onSuccess || options.callbacks?.onSuccess,
1313
- onError: onError || options.callbacks?.onError,
1326
+ onSuccess: onSuccess || (options.callbacks && options.callbacks.onSuccess),
1327
+ onError: onError || (options.callbacks && options.callbacks.onError),
1314
1328
  },
1315
1329
  };
1316
1330
  return submitForm(config);
@@ -1489,7 +1503,7 @@
1489
1503
  return error.message || 'Validation error occurred';
1490
1504
  }
1491
1505
  const validationResponse = getValidationResponse(error);
1492
- if (validationResponse?.message) {
1506
+ if (validationResponse && validationResponse.message) {
1493
1507
  return validationResponse.message;
1494
1508
  }
1495
1509
  const fieldErrors = getFieldErrors(error);
@@ -1532,7 +1546,7 @@
1532
1546
  */
1533
1547
  function hasFieldErrorCode(error, fieldName, code) {
1534
1548
  const fieldError = getFieldError(error, fieldName);
1535
- return fieldError?.code === code;
1549
+ return fieldError && fieldError.code === code;
1536
1550
  }
1537
1551
  /**
1538
1552
  * Get all errors with a specific code
@@ -1564,7 +1578,7 @@
1564
1578
  if (!error)
1565
1579
  return '';
1566
1580
  const fieldError = getFieldError(error, fieldName);
1567
- return fieldError?.message || '';
1581
+ return (fieldError && fieldError.message) || '';
1568
1582
  },
1569
1583
  hasError: (fieldName) => {
1570
1584
  if (!error)
@@ -1596,11 +1610,11 @@
1596
1610
  return error.fieldErrors;
1597
1611
  }
1598
1612
  // If it has a validationResponse
1599
- if (error.validationResponse?.errors && Array.isArray(error.validationResponse.errors)) {
1613
+ if (error.validationResponse && error.validationResponse.errors && Array.isArray(error.validationResponse.errors)) {
1600
1614
  return error.validationResponse.errors;
1601
1615
  }
1602
1616
  // Try to extract from response data
1603
- if (error.response?.errors && Array.isArray(error.response.errors)) {
1617
+ if (error.response && error.response.errors && Array.isArray(error.response.errors)) {
1604
1618
  return error.response.errors;
1605
1619
  }
1606
1620
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"formshive-submit.js","sources":["../src/types.ts","../src/client.ts","../src/retry.ts","../src/file-handler.ts","../src/utils.ts","../src/submit.ts","../src/field-errors.ts","../src/main.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formshive-submit.js","sources":["../src/types.ts","../src/client.ts","../src/retry.ts","../src/file-handler.ts","../src/utils.ts","../src/submit.ts","../src/field-errors.ts","../src/main.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).FormshiveSubmit={})}(this,function(e){"use strict";const t={maxAttempts:3,baseDelay:1e3,maxDelay:3e4,enableJitter:!0,backoffMultiplier:2},r={maxFileSize:10485760,allowedTypes:[],trackProgress:!0},n={endpoint:"https://api.formshive.com/v1",httpClient:"fetch",timeout:3e4,debug:!1,retry:t,files:r},o={NETWORK_ERROR:"NETWORK_ERROR",TIMEOUT_ERROR:"TIMEOUT_ERROR",VALIDATION_ERROR:"VALIDATION_ERROR",FILE_TOO_LARGE:"FILE_TOO_LARGE",INVALID_FILE_TYPE:"INVALID_FILE_TYPE",FORM_NOT_FOUND:"FORM_NOT_FOUND",SERVER_ERROR:"SERVER_ERROR",RATE_LIMITED:"RATE_LIMITED",UNKNOWN_ERROR:"UNKNOWN_ERROR"};class s{async request(e){const t=new AbortController;let r=null;e.timeout&&(r=setTimeout(()=>t.abort(),e.timeout));try{const n=await fetch(e.url,{method:e.method,headers:{...e.headers},body:e.data,signal:t.signal});r&&clearTimeout(r);const o={};let s;n.headers.forEach((e,t)=>{o[t]=e});const i=n.headers.get("content-type");return s=i?.includes("application/json")?await n.json():await n.text(),{data:s,status:n.status,statusText:n.statusText,headers:o}}catch(e){if(r&&clearTimeout(r),e instanceof Error&&"AbortError"===e.name)throw new Error("Request timeout");throw e}}supportsProgress(){return!1}}class i{constructor(e){this.axiosInstance=e}async request(e){try{const t=await this.axiosInstance.request({url:e.url,method:e.method,data:e.data,headers:e.headers,timeout:e.timeout,onUploadProgress:e.onUploadProgress});return{data:t.data,status:t.status,statusText:t.statusText,headers:t.headers}}catch(e){throw e}}supportsProgress(){return!0}}function a(e){if("string"!=typeof e)return new i(e);switch(e){case"fetch":return new s;case"axios":try{const e=require("axios");return new i(e.create())}catch(e){throw new Error("Axios is not available. Please install axios or use fetch client.")}default:throw new Error(`Unsupported HTTP client: ${e}`)}}function c(e){if(!e||"object"!=typeof e)return{};if("validation_error"===e.error&&Array.isArray(e.errors)){const t=e;return{fieldErrors:t.errors,validationResponse:t}}return{}}function l(e,t,r="UNKNOWN_ERROR"){let n,s,i,a,l="Unknown error",u=!0;if(e.isAxiosError){const t=e;if(l=t.message,n=t.response?.status,s=t.response?.data,400===n){const e=c(s);i=e.fieldErrors,a=e.validationResponse,a?.message&&(l=a.message)}n&&(n>=400&&n<500&&429!==n&&(u=!1),404===n?r="FORM_NOT_FOUND":429===n?r="RATE_LIMITED":n>=400&&n<500?r="VALIDATION_ERROR":n>=500&&(r="SERVER_ERROR"))}else if(e instanceof Error)l=e.message,e.message.includes("timeout")||e.message.includes("Timeout")?r="TIMEOUT_ERROR":(e.message.includes("network")||e.message.includes("fetch"))&&(r="NETWORK_ERROR");else if(e instanceof Response){if(n=e.status,l=`HTTP ${e.status}: ${e.statusText}`,400===n)try{e.body&&e.json().then(e=>{const t=c(e);t.validationResponse?.message&&(l=t.validationResponse.message)}).catch(()=>{})}catch(e){}n>=400&&n<500&&429!==n&&(u=!1),404===n?r="FORM_NOT_FOUND":429===n?r="RATE_LIMITED":n>=400&&n<500?r="VALIDATION_ERROR":n>=500&&(r="SERVER_ERROR")}const d=new Error(l);return d.name="SubmitError",d.code=o[r],d.statusCode=n||void 0,d.response=s,d.attempt=t,d.isRetryable=u,d.originalError=e,d.fieldErrors=i,d.validationResponse=a,d}function u(e){return!!(e instanceof TypeError&&e.message.includes("fetch"))||(!(!e.message?.includes("timeout")&&!e.message?.includes("Timeout"))||(e.response?.status>=500||(429===e.response?.status||(!(!e.isAxiosError||e.response)||!(e.response?.status>=400&&e.response?.status<500&&429!==e.response?.status)))))}function d(e){return new Promise(t=>setTimeout(t,e))}function f(e,t){const r=t.baseDelay*Math.pow(t.backoffMultiplier,e-1),n=Math.min(r,t.maxDelay);if(t.enableJitter){const e=.25*n,t=Math.random()*e;return Math.floor(n+t)}return n}async function p(e,r={},n,o){const s={...t,...r};let i;for(let t=1;t<=s.maxAttempts;t++)try{n?.debug(`Attempt ${t}/${s.maxAttempts}`);const r=await e();return t>1&&n?.info(`Operation succeeded on attempt ${t}`),r}catch(e){if(i=e,n?.warn(`Attempt ${t} failed:`,e.message),t===s.maxAttempts){n?.error(`All ${s.maxAttempts} attempts failed. Giving up.`);break}if(!u(e)){n?.info("Error is not retryable. Stopping retry attempts.");break}const r=f(t,s);if(n?.debug(`Waiting ${r}ms before next attempt...`),o)try{o(t,s.maxAttempts,e)}catch(e){n?.warn("Retry callback threw an error:",e)}await d(r)}throw i}const m={quick:()=>({maxAttempts:2,baseDelay:500,maxDelay:2e3,enableJitter:!0,backoffMultiplier:2}),standard:()=>({...t}),patient:()=>({maxAttempts:5,baseDelay:2e3,maxDelay:6e4,enableJitter:!0,backoffMultiplier:1.5}),aggressive:()=>({maxAttempts:10,baseDelay:100,maxDelay:3e4,enableJitter:!0,backoffMultiplier:1.8}),custom:e=>({...t,...e})};function g(e,t){if(e.size>t.maxFileSize)return`File "${e.name}" is too large. Maximum size is ${h(t.maxFileSize)}, but file is ${h(e.size)}.`;if(t.allowedTypes.length>0){if(!t.allowedTypes.some(t=>{if(t.includes("*")){const r=t.split("/")[0];return e.type.startsWith(r+"/")}return e.type===t}))return`File "${e.name}" has unsupported type "${e.type}". Allowed types: ${t.allowedTypes.join(", ")}.`}return null}function h(e){if(0===e)return"0 Bytes";const t=Math.floor(Math.log(e)/Math.log(1024));return parseFloat((e/Math.pow(1024,t)).toFixed(2))+" "+["Bytes","KB","MB","GB"][t]}function y(e){const t=[];function r(e,r){if(r instanceof File)t.push({field:e,file:r,name:r.name,size:r.size,type:r.type});else if(r instanceof FileList)for(let n=0;n<r.length;n++){const o=r.item(n);o&&t.push({field:`${e}[${n}]`,file:o,name:o.name,size:o.size,type:o.type})}else Array.isArray(r)&&r.forEach((r,n)=>{r instanceof File&&t.push({field:`${e}[${n}]`,file:r,name:r.name,size:r.size,type:r.type})})}for(const[t,n]of Object.entries(e))r(t,n);return t}function E(e,t,r){const n=[];for(const o of e){r?.debug(`Validating file: ${o.name} (${h(o.size)}, ${o.type})`);const e=g(o.file,t);e&&(n.push(e),r?.warn(`File validation failed: ${e}`))}return n}function R(e,t={},n){const s={...r,...t};if(e instanceof FormData){const t=[];for(const[r,n]of e.entries())n instanceof File&&t.push({field:r,file:n,name:n.name,size:n.size,type:n.type});const r=E(t,s,n);if(r.length>0){const e=new Error(r.join(" "));throw e.name="SubmitError",e.code=o.FILE_TOO_LARGE,e.attempt=0,e.isRetryable=!1,e}return{data:e,hasFiles:t.length>0,files:t}}const i=y(e),a=i.length>0;if(n?.debug(`Found ${i.length} files in form data`),a){const e=E(i,s,n);if(e.length>0){const t=new Error(e.join(" "));throw t.name="SubmitError",t.code=e[0]?.includes("too large")?o.FILE_TOO_LARGE:o.INVALID_FILE_TYPE,t.attempt=0,t.isRetryable=!1,t}}let c;if(a){n?.debug("Converting to FormData due to file presence"),c=new FormData;for(const[t,r]of Object.entries(e))if(r instanceof File||r instanceof FileList||Array.isArray(r)){if(Array.isArray(r))r.forEach((e,r)=>{e instanceof File?c.append(`${t}[${r}]`,e):null!=e&&c.append(`${t}[${r}]`,String(e))});else if(r instanceof File)c.append(t,r);else if(r instanceof FileList)for(let e=0;e<r.length;e++){const n=r.item(e);n&&c.append(`${t}[${e}]`,n)}}else null!=r&&c.append(t,String(r))}else n?.debug("No files found, keeping as object for JSON submission"),c={...e};return{data:c,hasFiles:a,files:i}}function b(e,t){const r=e.reduce((e,t)=>e+t.size,0);if(t&&0!==r)return e=>{if(e.lengthComputable){const r=Math.round(e.loaded/e.total*100);t(r,e.loaded,e.total)}}}function F(e){const t=e.split(".").pop()?.toLowerCase();return t&&{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",pdf:"application/pdf",doc:"application/msword",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",xls:"application/vnd.ms-excel",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",ppt:"application/vnd.ms-powerpoint",pptx:"application/vnd.openxmlformats-officedocument.presentationml.presentation",txt:"text/plain",csv:"text/csv",json:"application/json",xml:"application/xml",zip:"application/zip",rar:"application/x-rar-compressed","7z":"application/x-7z-compressed",mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",mp4:"video/mp4",avi:"video/x-msvideo",mov:"video/quicktime",wmv:"video/x-ms-wmv"}[t]||null}class w{constructor(e=!1){this.enabled=e}debug(e,...t){this.enabled&&console.debug("[FormshiveSubmit DEBUG]",e,...t)}info(e,...t){this.enabled&&console.info("[FormshiveSubmit INFO]",e,...t)}warn(e,...t){this.enabled&&console.warn("[FormshiveSubmit WARN]",e,...t)}error(e,...t){this.enabled&&console.error("[FormshiveSubmit ERROR]",e,...t)}setEnabled(e){this.enabled=e}}class O{debug(){}info(){}warn(){}error(){}}function T(e=!1){return e?new w(!0):new O}function A(e){try{return new URL(e),!0}catch{return!1}}function _(e){return e.startsWith("http://")||e.startsWith("https://")?e:`https://${e}`}function x(e,t){return`${_(e).replace(/\/$/,"")}/digest/${encodeURIComponent(t)}`}function I(){return`req_${Date.now()}_${Math.random().toString(36).substr(2,9)}`}function v(e){if(e<1e3)return`${e}ms`;if(e<6e4)return`${(e/1e3).toFixed(1)}s`;return`${Math.floor(e/6e4)}m ${(e%6e4/1e3).toFixed(0)}s`}function D(){return"undefined"!=typeof window&&"undefined"!=typeof document}function S(){return"undefined"!=typeof fetch}function $(){return"undefined"!=typeof FormData}function k(){const e=D()?navigator.userAgent:void 0;return{browser:D(),fetch:S(),formData:$(),userAgent:e}}function L(e){return new Promise((t,r)=>{setTimeout(()=>{r(new Error(`Operation timed out after ${e}ms`))},e)})}async function N(e){if(!e.formId)throw new Error("formId is required");if(!e.data)throw new Error("data is required");const t={...n,...e},r=T(t.debug),s=I(),i=Date.now();if(r.info(`Starting form submission (${s})`,{formId:t.formId,endpoint:t.endpoint,hasFiles:t.data instanceof FormData,environment:k()}),!A(t.endpoint)){const e=new Error(`Invalid endpoint URL: ${t.endpoint}`);throw e.name="SubmitError",e.code=o.VALIDATION_ERROR,e.attempt=0,e.isRetryable=!1,e}try{const e=a(t.httpClient);r.debug("HTTP client created",{type:"string"==typeof t.httpClient?t.httpClient:"custom",supportsProgress:e.supportsProgress()});const n=R(t.data,t.files,r);r.debug("Form data processed",{hasFiles:n.hasFiles,fileCount:n.files.length,totalFileSize:n.files.reduce((e,t)=>e+t.size,0)});const o=x(t.endpoint,t.formId);r.debug(`Submission URL: ${o}`);const c={url:o,method:"POST",data:n.data,headers:{...t.headers},timeout:t.timeout||3e4};if(c.headers["Content-Type"]||n.hasFiles||(c.headers["Content-Type"]="application/json",n.data instanceof FormData||(c.data=JSON.stringify(n.data))),n.hasFiles&&e.supportsProgress()&&t.callbacks?.onProgress){const e=b(n.files,t.callbacks.onProgress);e&&(c.onUploadProgress=e,r.debug("Progress tracking enabled for file upload"))}if(t.callbacks?.onStart)try{t.callbacks.onStart()}catch(e){r.warn("onStart callback error:",e)}const l=async()=>p(async()=>{r.debug("Making HTTP request...");const t=await e.request(c),n=Date.now()-i;r.info(`Form submission successful (${s})`,{statusCode:t.status,duration:v(n)});const o={success:!0,data:t.data,statusCode:t.status,headers:t.headers,attempt:1,duration:n};return t.headers.location?o.redirectUrl=t.headers.location:t.data&&"object"==typeof t.data&&t.data.redirect_url&&(o.redirectUrl=t.data.redirect_url),o},t.retry,r,(e,n,o)=>{if(r.warn(`Retry attempt ${e}/${n}:`,o.message),t.callbacks?.onRetry)try{t.callbacks.onRetry(e,n,o)}catch(e){r.warn("onRetry callback error:",e)}}),u=await l();if(u.attempt=1,t.callbacks?.onSuccess)try{t.callbacks.onSuccess(u)}catch(e){r.warn("onSuccess callback error:",e)}return u}catch(e){const n=Date.now()-i;let o;if(o="SubmitError"===e.name?e:l(e,1),o.message=`${o.message} (${s}, ${v(n)})`,r.error(`Form submission failed (${s})`,{error:o.code,message:o.message,statusCode:o.statusCode,duration:v(n),isRetryable:o.isRetryable}),t.callbacks?.onError)try{t.callbacks.onError(o)}catch(e){r.warn("onError callback error:",e)}throw o}}async function P(e,t,r={}){return N({formId:e,data:t,...r})}class M{constructor(e={}){this.defaultOptions=e,this.logger=T(e.debug)}async submit(e,t,r={}){const n={formId:e,data:t};return N({...this.defaultOptions,...n,...r})}updateDefaults(e){this.defaultOptions={...this.defaultOptions,...e},this.logger=T(this.defaultOptions.debug||!1)}getDefaults(){return{...this.defaultOptions}}async testConnection(e){const t=e||this.defaultOptions.endpoint||n.endpoint;try{const e=a(this.defaultOptions.httpClient||"fetch");return await e.request({url:t,method:"GET",timeout:5e3}),!0}catch(e){return this.logger.debug("Connection test failed:",e),!1}}}function C(e){const t=[],r=[];if(!e)return t.push("Form data is required"),{isValid:!1,errors:t,warnings:r};if(e instanceof FormData){let n=!1;for(const[t,o]of e.entries())n=!0,"string"==typeof o&&""===o.trim()&&r.push(`Field '${t}' is empty`);n||t.push("FormData contains no fields")}else{const n=Object.keys(e);0===n.length&&t.push("Form data object is empty"),n.forEach(t=>{const n=e[t];null==n?r.push(`Field '${t}' is null or undefined`):"string"==typeof n&&""===n.trim()?r.push(`Field '${t}' is empty`):"object"!=typeof n||n instanceof File||n instanceof FileList||r.push(`Field '${t}' contains complex object - may not be serialized correctly`)})}return{isValid:0===t.length,errors:t,warnings:r}}function j(e){return!!(e.fieldErrors&&e.fieldErrors.length>0)}function z(e){return e.fieldErrors||[]}function U(e,t){return z(e).find(e=>e.field===t)||null}function V(e,t){return null!==U(e,t)}function q(e){return e.validationResponse||null}function W(e,t="error"){return{getMessage:t=>{if(!e)return"";const r=U(e,t);return r?.message||""},hasError:t=>!!e&&V(e,t),getFieldClass:(r,n)=>{if(!e)return"";return V(e,r)?n||t:""},getError:t=>e?U(e,t):null}}"undefined"!=typeof window&&(window.FormshiveSubmit={submitForm:N,submitFormSimple:P,FormSubmitter:M,validateFormData:C,RetryPresets:m,ERROR_CODES:o,formatFileSize:h,createLogger:T,isFieldValidationError:j,getFieldErrors:z,createFieldErrorHelpers:W});var G={submitForm:N,submitFormSimple:P,FormSubmitter:M,validateFormData:C,RetryPresets:m,ERROR_CODES:o,formatFileSize:h,createLogger:T,isFieldValidationError:j,getFieldErrors:z,createFieldErrorHelpers:W};e.ConsoleLogger=w,e.DEFAULT_FILE_CONFIG=r,e.DEFAULT_OPTIONS=n,e.DEFAULT_RETRY_CONFIG=t,e.ERROR_CODES=o,e.FormSubmitter=M,e.NoOpLogger=O,e.RetryManager=class{constructor(e={},r){this.config={...t,...e},this.logger=r}async execute(e,t){return p(e,this.config,this.logger,t)}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}shouldRetry(e,t){return!(e>=this.config.maxAttempts)&&u(t)}getDelay(e){return f(e,this.config)}},e.RetryPresets=m,e.buildSubmissionUrl=x,e.createFieldErrorHelpers=W,e.createFieldErrorMap=function(e){const t=z(e),r=new Map;return t.forEach(e=>{r.set(e.field,e.message)}),r},e.createHttpClient=a,e.createLogger=T,e.createProgressTracker=b,e.createRetryableFunction=function(e,t={},r){return async(...n)=>p(()=>e(...n),t,r)},e.createSubmitError=l,e.createTimeoutPromise=L,e.debounce=function(e,t){let r=null;return(...n)=>{r&&clearTimeout(r),r=setTimeout(()=>e(...n),t)}},e.deepClone=function e(t){if(null===t||"object"!=typeof t)return t;if(t instanceof Date)return new Date(t.getTime());if(t instanceof Array)return t.map(t=>e(t));if("object"==typeof t){const r={};for(const n in t)t.hasOwnProperty(n)&&(r[n]=e(t[n]));return r}return t},e.default=G,e.ensureProtocol=_,e.extractFieldErrors=function(e){return e?e.fieldErrors&&Array.isArray(e.fieldErrors)?e.fieldErrors:e.validationResponse?.errors&&Array.isArray(e.validationResponse.errors)?e.validationResponse.errors:e.response?.errors&&Array.isArray(e.response.errors)?e.response.errors:[]:[]},e.extractFiles=y,e.formatDuration=v,e.formatFieldErrors=function(e){const t=z(e),r={};return t.forEach(e=>{r[e.field]=e.message}),r},e.formatFieldErrorsWithCodes=function(e){const t=z(e),r={};return t.forEach(e=>{r[e.field]=e}),r},e.formatFileSize=h,e.generateRequestId=I,e.getEnhancedFileInfo=function(e){const t=e.name.split(".").pop()?.toLowerCase()||"",r=F(e.name);return{field:"",file:e,name:e.name,size:e.size,type:e.type,extension:t,detectedMimeType:r,isImage:e.type.startsWith("image/"),isDocument:e.type.includes("pdf")||e.type.includes("document")||e.type.includes("word")||e.type.includes("excel")||e.type.includes("powerpoint"),isArchive:e.type.includes("zip")||e.type.includes("rar")||e.type.includes("7z")}},e.getEnvironmentInfo=k,e.getErrorFieldNames=function(e){return z(e).map(e=>e.field)},e.getErrorMessage=function(e){switch(e.code){case o.FORM_NOT_FOUND:return"Form not found. Please check the form ID.";case o.VALIDATION_ERROR:return e.response?.message||"Form validation failed. Please check your data.";case o.FILE_TOO_LARGE:return"One or more files are too large. Please reduce file size and try again.";case o.INVALID_FILE_TYPE:return"Invalid file type. Please check allowed file types.";case o.RATE_LIMITED:return"Too many requests. Please wait a moment and try again.";case o.TIMEOUT_ERROR:return"Request timed out. Please check your connection and try again.";case o.NETWORK_ERROR:return"Network error. Please check your internet connection.";case o.SERVER_ERROR:return"Server error. Please try again in a few minutes.";default:return e.message||"An unexpected error occurred."}},e.getErrorsByCode=function(e,t){return z(e).filter(e=>e.code===t)},e.getFieldError=U,e.getFieldErrors=z,e.getFirstFieldError=function(e){const t=z(e);return t.length>0?t[0]:null},e.getMimeTypeFromExtension=F,e.getNestedProperty=function(e,t){return t.split(".").reduce((e,t)=>e&&void 0!==e[t]?e[t]:void 0,e)},e.getRetryDelayInfo=function(e,r={}){const n={...t,...r};let o=0;for(let t=1;t<e;t++)o+=f(t,n);return{delay:f(e,n),totalElapsed:o}},e.getValidationErrorSummary=function(e){if(!j(e))return e.message||"Validation error occurred";const t=q(e);if(t?.message)return t.message;const r=z(e);if(1===r.length)return`${r[0].field}: ${r[0].message}`;if(r.length>1){return`Validation failed for fields: ${r.map(e=>e.field).join(", ")}`}return"Form validation failed"},e.getValidationResponse=q,e.groupErrorsByCode=function(e){const t=z(e),r={};return t.forEach(e=>{r[e.code]||(r[e.code]=[]),r[e.code].push(e)}),r},e.hasErrorCode=function(e,t){return z(e).some(e=>e.code===t)},e.hasFieldError=V,e.hasFieldErrorCode=function(e,t,r){const n=U(e,t);return n?.code===r},e.isBrowser=D,e.isFetchAvailable=S,e.isFieldValidationError=j,e.isFormDataAvailable=$,e.isRetryableError=u,e.isValidUrl=A,e.mergeObjects=function e(t,...r){if(!r.length)return t;const n=r.shift();if(n)for(const r in n)n[r]&&"object"==typeof n[r]&&!Array.isArray(n[r])?(t[r]||Object.assign(t,{[r]:{}}),e(t[r],n[r])):Object.assign(t,{[r]:n[r]});return e(t,...r)},e.objectToQueryString=function(e){const t=new URLSearchParams;for(const[r,n]of Object.entries(e))null!=n&&t.append(r,String(n));return t.toString()},e.parseErrorMessage=function(e){if("string"==typeof e)return e;if(e&&"object"==typeof e){if(e.message)return String(e.message);if(e.error)return String(e.error);if(e.statusText)return String(e.statusText);try{return JSON.stringify(e)}catch{return"Unknown error"}}return"Unknown error"},e.processFormData=R,e.sanitizeForLogging=function(e){return e.replace(/password[^&\s]*=[^&\s]*/gi,"password=***").replace(/token[^&\s]*=[^&\s]*/gi,"token=***").replace(/key[^&\s]*=[^&\s]*/gi,"key=***").replace(/secret[^&\s]*=[^&\s]*/gi,"secret=***").replace(/authorization:\s*[^\s]+/gi,"authorization: ***")},e.simpleRetry=async function(e,t=3,r=1e3){let n;for(let o=0;o<=t;o++)try{return await e()}catch(e){n=e,o<t&&await new Promise(e=>setTimeout(e,r*(o+1)))}throw n},e.submitForm=N,e.submitFormSimple=P,e.submitFormWithCallbacks=function(e,t,r){return N({...e,callbacks:{...e.callbacks,onSuccess:t||e.callbacks?.onSuccess,onError:r||e.callbacks?.onError}})},e.throttle=function(e,t){let r=!1;return(...n)=>{r||(e(...n),r=!0,setTimeout(()=>r=!1,t))}},e.validateFile=g,e.validateFiles=E,e.validateFormData=C,e.withRetry=p,e.withTimeout=function(e,t){return Promise.race([e,L(t)])},Object.defineProperty(e,"__esModule",{value:!0})});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).FormshiveSubmit={})}(this,function(e){"use strict";const t={maxAttempts:3,baseDelay:1e3,maxDelay:3e4,enableJitter:!0,backoffMultiplier:2},r={maxFileSize:10485760,allowedTypes:[],trackProgress:!0},n={endpoint:"https://api.formshive.com/v1",httpClient:"fetch",timeout:3e4,debug:!1,retry:t,files:r},s={NETWORK_ERROR:"NETWORK_ERROR",TIMEOUT_ERROR:"TIMEOUT_ERROR",VALIDATION_ERROR:"VALIDATION_ERROR",FILE_TOO_LARGE:"FILE_TOO_LARGE",INVALID_FILE_TYPE:"INVALID_FILE_TYPE",FORM_NOT_FOUND:"FORM_NOT_FOUND",SERVER_ERROR:"SERVER_ERROR",RATE_LIMITED:"RATE_LIMITED",UNKNOWN_ERROR:"UNKNOWN_ERROR"};class o{async request(e){const t=new AbortController;let r=null;e.timeout&&(r=setTimeout(()=>t.abort(),e.timeout));try{const n=await fetch(e.url,{method:e.method,headers:{...e.headers},body:e.data,signal:t.signal});r&&clearTimeout(r);const s={};let o;n.headers.forEach((e,t)=>{s[t]=e});const i=n.headers.get("content-type");return o=i&&i.includes("application/json")?await n.json():await n.text(),{data:o,status:n.status,statusText:n.statusText,headers:s}}catch(e){if(r&&clearTimeout(r),e instanceof Error&&"AbortError"===e.name)throw new Error("Request timeout");throw e}}supportsProgress(){return!1}}class i{constructor(e){this.axiosInstance=e}async request(e){try{const t=await this.axiosInstance.request({url:e.url,method:e.method,data:e.data,headers:e.headers,timeout:e.timeout,onUploadProgress:e.onUploadProgress});return{data:t.data,status:t.status,statusText:t.statusText,headers:t.headers}}catch(e){throw e}}supportsProgress(){return!0}}function a(e){if("string"!=typeof e)return new i(e);switch(e){case"fetch":return new o;case"axios":try{const e=require("axios");return new i(e.create())}catch(e){throw new Error("Axios is not available. Please install axios or use fetch client.")}default:throw new Error(`Unsupported HTTP client: ${e}`)}}function l(e){if(!e||"object"!=typeof e)return{};if("validation_error"===e.error&&Array.isArray(e.errors)){const t=e;return{fieldErrors:t.errors,validationResponse:t}}return{}}function c(e,t,r="UNKNOWN_ERROR"){let n,o,i,a,c="Unknown error",u=!0;if(e.isAxiosError){const t=e;if(c=t.message,n=t.response&&t.response.status,o=t.response&&t.response.data,400===n){const e=l(o);i=e.fieldErrors,a=e.validationResponse,a&&a.message&&(c=a.message)}n&&(n>=400&&n<500&&429!==n&&(u=!1),404===n?r="FORM_NOT_FOUND":429===n?r="RATE_LIMITED":n>=400&&n<500?r="VALIDATION_ERROR":n>=500&&(r="SERVER_ERROR"))}else if(e instanceof Error)c=e.message,e.message.includes("timeout")||e.message.includes("Timeout")?r="TIMEOUT_ERROR":(e.message.includes("network")||e.message.includes("fetch"))&&(r="NETWORK_ERROR");else if(e instanceof Response){if(n=e.status,c=`HTTP ${e.status}: ${e.statusText}`,400===n)try{e.body&&e.json().then(e=>{const t=l(e);t.validationResponse&&t.validationResponse.message&&(c=t.validationResponse.message)}).catch(()=>{})}catch(e){}n>=400&&n<500&&429!==n&&(u=!1),404===n?r="FORM_NOT_FOUND":429===n?r="RATE_LIMITED":n>=400&&n<500?r="VALIDATION_ERROR":n>=500&&(r="SERVER_ERROR")}const d=new Error(c);return d.name="SubmitError",d.code=s[r],d.statusCode=n||void 0,d.response=o,d.attempt=t,d.isRetryable=u,d.originalError=e,d.fieldErrors=i,d.validationResponse=a,d}function u(e){return!!(e instanceof TypeError&&e.message.includes("fetch"))||(!(!e.message||!e.message.includes("timeout")&&!e.message.includes("Timeout"))||(!!(e.response&&e.response.status>=500)||(!(!e.response||429!==e.response.status)||(!(!e.isAxiosError||e.response)||!(e.response&&e.response.status>=400&&e.response.status<500&&429!==e.response.status)))))}function d(e){return new Promise(t=>setTimeout(t,e))}function f(e,t){const r=t.baseDelay*Math.pow(t.backoffMultiplier,e-1),n=Math.min(r,t.maxDelay);if(t.enableJitter){const e=.25*n,t=Math.random()*e;return Math.floor(n+t)}return n}async function p(e,r={},n,s){const o={...t,...r};let i;for(let t=1;t<=o.maxAttempts;t++)try{n&&n.debug(`Attempt ${t}/${o.maxAttempts}`);const r=await e();return t>1&&n&&n.info(`Operation succeeded on attempt ${t}`),r}catch(e){if(i=e,n&&n.warn(`Attempt ${t} failed:`,e.message),t===o.maxAttempts){n&&n.error(`All ${o.maxAttempts} attempts failed. Giving up.`);break}if(!u(e)){n&&n.info("Error is not retryable. Stopping retry attempts.");break}const r=f(t,o);if(n&&n.debug(`Waiting ${r}ms before next attempt...`),s)try{s(t,o.maxAttempts,e)}catch(e){n&&n.warn("Retry callback threw an error:",e)}await d(r)}throw i}const m={quick:()=>({maxAttempts:2,baseDelay:500,maxDelay:2e3,enableJitter:!0,backoffMultiplier:2}),standard:()=>({...t}),patient:()=>({maxAttempts:5,baseDelay:2e3,maxDelay:6e4,enableJitter:!0,backoffMultiplier:1.5}),aggressive:()=>({maxAttempts:10,baseDelay:100,maxDelay:3e4,enableJitter:!0,backoffMultiplier:1.8}),custom:e=>({...t,...e})};function g(e,t){if(e.size>t.maxFileSize)return`File "${e.name}" is too large. Maximum size is ${h(t.maxFileSize)}, but file is ${h(e.size)}.`;if(t.allowedTypes.length>0){if(!t.allowedTypes.some(t=>{if(t.includes("*")){const r=t.split("/")[0];return e.type.startsWith(r+"/")}return e.type===t}))return`File "${e.name}" has unsupported type "${e.type}". Allowed types: ${t.allowedTypes.join(", ")}.`}return null}function h(e){if(0===e)return"0 Bytes";const t=Math.floor(Math.log(e)/Math.log(1024));return parseFloat((e/Math.pow(1024,t)).toFixed(2))+" "+["Bytes","KB","MB","GB"][t]}function y(e){const t=[];function r(e,r){if(r instanceof File)t.push({field:e,file:r,name:r.name,size:r.size,type:r.type});else if(r instanceof FileList)for(let n=0;n<r.length;n++){const s=r.item(n);s&&t.push({field:`${e}[${n}]`,file:s,name:s.name,size:s.size,type:s.type})}else Array.isArray(r)&&r.forEach((r,n)=>{r instanceof File&&t.push({field:`${e}[${n}]`,file:r,name:r.name,size:r.size,type:r.type})})}for(const[t,n]of Object.entries(e))r(t,n);return t}function E(e,t,r){const n=[];for(const s of e){r&&r.debug(`Validating file: ${s.name} (${h(s.size)}, ${s.type})`);const e=g(s.file,t);e&&(n.push(e),r&&r.warn(`File validation failed: ${e}`))}return n}function R(e,t={},n){const o={...r,...t};if(e instanceof FormData){const t=[];for(const[r,n]of e.entries())n instanceof File&&t.push({field:r,file:n,name:n.name,size:n.size,type:n.type});const r=E(t,o,n);if(r.length>0){const e=new Error(r.join(" "));throw e.name="SubmitError",e.code=s.FILE_TOO_LARGE,e.attempt=0,e.isRetryable=!1,e}return{data:e,hasFiles:t.length>0,files:t}}const i=y(e),a=i.length>0;if(n&&n.debug(`Found ${i.length} files in form data`),a){const e=E(i,o,n);if(e.length>0){const t=new Error(e.join(" "));throw t.name="SubmitError",t.code=e[0]&&e[0].includes("too large")?s.FILE_TOO_LARGE:s.INVALID_FILE_TYPE,t.attempt=0,t.isRetryable=!1,t}}let l;if(a){n&&n.debug("Converting to FormData due to file presence"),l=new FormData;for(const[t,r]of Object.entries(e))if(r instanceof File||r instanceof FileList||Array.isArray(r)){if(Array.isArray(r))r.forEach((e,r)=>{e instanceof File?l.append(`${t}[${r}]`,e):null!=e&&l.append(`${t}[${r}]`,String(e))});else if(r instanceof File)l.append(t,r);else if(r instanceof FileList)for(let e=0;e<r.length;e++){const n=r.item(e);n&&l.append(`${t}[${e}]`,n)}}else null!=r&&l.append(t,String(r))}else n&&n.debug("No files found, keeping as object for JSON submission"),l={...e};return{data:l,hasFiles:a,files:i}}function b(e,t){const r=e.reduce((e,t)=>e+t.size,0);if(t&&0!==r)return e=>{if(e.lengthComputable){const r=Math.round(e.loaded/e.total*100);t(r,e.loaded,e.total)}}}function F(e){const t=e.split("."),r=t.length>1?t.pop().toLowerCase():"";return r&&{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",pdf:"application/pdf",doc:"application/msword",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",xls:"application/vnd.ms-excel",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",ppt:"application/vnd.ms-powerpoint",pptx:"application/vnd.openxmlformats-officedocument.presentationml.presentation",txt:"text/plain",csv:"text/csv",json:"application/json",xml:"application/xml",zip:"application/zip",rar:"application/x-rar-compressed","7z":"application/x-7z-compressed",mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",mp4:"video/mp4",avi:"video/x-msvideo",mov:"video/quicktime",wmv:"video/x-ms-wmv"}[r]||null}class w{constructor(e=!1){this.enabled=e}debug(e,...t){this.enabled&&console.debug("[FormshiveSubmit DEBUG]",e,...t)}info(e,...t){this.enabled&&console.info("[FormshiveSubmit INFO]",e,...t)}warn(e,...t){this.enabled&&console.warn("[FormshiveSubmit WARN]",e,...t)}error(e,...t){this.enabled&&console.error("[FormshiveSubmit ERROR]",e,...t)}setEnabled(e){this.enabled=e}}class O{debug(){}info(){}warn(){}error(){}}function T(e=!1){return e?new w(!0):new O}function A(e){try{return new URL(e),!0}catch(e){return!1}}function _(e){return e.startsWith("http://")||e.startsWith("https://")?e:`https://${e}`}function x(e,t){return`${_(e).replace(/\/$/,"")}/digest/${encodeURIComponent(t)}`}function v(){return`req_${Date.now()}_${Math.random().toString(36).substr(2,9)}`}function I(e){if(e<1e3)return`${e}ms`;if(e<6e4)return`${(e/1e3).toFixed(1)}s`;return`${Math.floor(e/6e4)}m ${(e%6e4/1e3).toFixed(0)}s`}function D(){return"undefined"!=typeof window&&"undefined"!=typeof document}function S(){return"undefined"!=typeof fetch}function $(){return"undefined"!=typeof FormData}function k(){const e=D()?navigator.userAgent:void 0;return{browser:D(),fetch:S(),formData:$(),userAgent:e}}function L(e){return new Promise((t,r)=>{setTimeout(()=>{r(new Error(`Operation timed out after ${e}ms`))},e)})}async function N(e){if(!e.formId)throw new Error("formId is required");if(!e.data)throw new Error("data is required");const t={...n,...e},r=T(t.debug),o=v(),i=Date.now();if(r.info(`Starting form submission (${o})`,{formId:t.formId,endpoint:t.endpoint,hasFiles:t.data instanceof FormData,environment:k()}),!A(t.endpoint)){const e=new Error(`Invalid endpoint URL: ${t.endpoint}`);throw e.name="SubmitError",e.code=s.VALIDATION_ERROR,e.attempt=0,e.isRetryable=!1,e}try{const e=a(t.httpClient);r.debug("HTTP client created",{type:"string"==typeof t.httpClient?t.httpClient:"custom",supportsProgress:e.supportsProgress()});const n=R(t.data,t.files,r);r.debug("Form data processed",{hasFiles:n.hasFiles,fileCount:n.files.length,totalFileSize:n.files.reduce((e,t)=>e+t.size,0)});const s=x(t.endpoint,t.formId);r.debug(`Submission URL: ${s}`);const l={url:s,method:"POST",data:n.data,headers:{...t.headers},timeout:t.timeout||3e4};if(l.headers["Content-Type"]||n.hasFiles||(l.headers["Content-Type"]="application/json",n.data instanceof FormData||(l.data=JSON.stringify(n.data))),n.hasFiles&&e.supportsProgress()&&t.callbacks&&t.callbacks.onProgress){const e=b(n.files,t.callbacks.onProgress);e&&(l.onUploadProgress=e,r.debug("Progress tracking enabled for file upload"))}if(t.callbacks&&t.callbacks.onStart)try{t.callbacks.onStart()}catch(e){r.warn("onStart callback error:",e)}const c=async()=>p(async()=>{r.debug("Making HTTP request...");const t=await e.request(l),n=Date.now()-i;r.info(`Form submission successful (${o})`,{statusCode:t.status,duration:I(n)});const s={success:!0,data:t.data,statusCode:t.status,headers:t.headers,attempt:1,duration:n};return t.headers.location?s.redirectUrl=t.headers.location:t.data&&"object"==typeof t.data&&t.data.redirect_url&&(s.redirectUrl=t.data.redirect_url),s},t.retry,r,(e,n,s)=>{if(r.warn(`Retry attempt ${e}/${n}:`,s.message),t.callbacks&&t.callbacks.onRetry)try{t.callbacks.onRetry(e,n,s)}catch(e){r.warn("onRetry callback error:",e)}}),u=await c();if(u.attempt=1,t.callbacks&&t.callbacks.onSuccess)try{t.callbacks.onSuccess(u)}catch(e){r.warn("onSuccess callback error:",e)}return u}catch(e){const n=Date.now()-i;let s;if(s="SubmitError"===e.name?e:c(e,1),s.message=`${s.message} (${o}, ${I(n)})`,r.error(`Form submission failed (${o})`,{error:s.code,message:s.message,statusCode:s.statusCode,duration:I(n),isRetryable:s.isRetryable}),t.callbacks&&t.callbacks.onError)try{t.callbacks.onError(s)}catch(e){r.warn("onError callback error:",e)}throw s}}async function P(e,t,r={}){return N({formId:e,data:t,...r})}class M{constructor(e={}){this.defaultOptions=e,this.logger=T(e.debug)}async submit(e,t,r={}){const n={formId:e,data:t};return N({...this.defaultOptions,...n,...r})}updateDefaults(e){this.defaultOptions={...this.defaultOptions,...e},this.logger=T(this.defaultOptions.debug||!1)}getDefaults(){return{...this.defaultOptions}}async testConnection(e){const t=e||this.defaultOptions.endpoint||n.endpoint;try{const e=a(this.defaultOptions.httpClient||"fetch");return await e.request({url:t,method:"GET",timeout:5e3}),!0}catch(e){return this.logger.debug("Connection test failed:",e),!1}}}function C(e){const t=[],r=[];if(!e)return t.push("Form data is required"),{isValid:!1,errors:t,warnings:r};if(e instanceof FormData){let n=!1;for(const[t,s]of e.entries())n=!0,"string"==typeof s&&""===s.trim()&&r.push(`Field '${t}' is empty`);n||t.push("FormData contains no fields")}else{const n=Object.keys(e);0===n.length&&t.push("Form data object is empty"),n.forEach(t=>{const n=e[t];null==n?r.push(`Field '${t}' is null or undefined`):"string"==typeof n&&""===n.trim()?r.push(`Field '${t}' is empty`):"object"!=typeof n||n instanceof File||n instanceof FileList||r.push(`Field '${t}' contains complex object - may not be serialized correctly`)})}return{isValid:0===t.length,errors:t,warnings:r}}function j(e){return!!(e.fieldErrors&&e.fieldErrors.length>0)}function z(e){return e.fieldErrors||[]}function U(e,t){return z(e).find(e=>e.field===t)||null}function V(e,t){return null!==U(e,t)}function q(e){return e.validationResponse||null}function W(e,t="error"){return{getMessage:t=>{if(!e)return"";const r=U(e,t);return r&&r.message||""},hasError:t=>!!e&&V(e,t),getFieldClass:(r,n)=>{if(!e)return"";return V(e,r)?n||t:""},getError:t=>e?U(e,t):null}}"undefined"!=typeof window&&(window.FormshiveSubmit={submitForm:N,submitFormSimple:P,FormSubmitter:M,validateFormData:C,RetryPresets:m,ERROR_CODES:s,formatFileSize:h,createLogger:T,isFieldValidationError:j,getFieldErrors:z,createFieldErrorHelpers:W});var G={submitForm:N,submitFormSimple:P,FormSubmitter:M,validateFormData:C,RetryPresets:m,ERROR_CODES:s,formatFileSize:h,createLogger:T,isFieldValidationError:j,getFieldErrors:z,createFieldErrorHelpers:W};e.ConsoleLogger=w,e.DEFAULT_FILE_CONFIG=r,e.DEFAULT_OPTIONS=n,e.DEFAULT_RETRY_CONFIG=t,e.ERROR_CODES=s,e.FormSubmitter=M,e.NoOpLogger=O,e.RetryManager=class{constructor(e={},r){this.config={...t,...e},this.logger=r}async execute(e,t){return p(e,this.config,this.logger,t)}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}shouldRetry(e,t){return!(e>=this.config.maxAttempts)&&u(t)}getDelay(e){return f(e,this.config)}},e.RetryPresets=m,e.buildSubmissionUrl=x,e.createFieldErrorHelpers=W,e.createFieldErrorMap=function(e){const t=z(e),r=new Map;return t.forEach(e=>{r.set(e.field,e.message)}),r},e.createHttpClient=a,e.createLogger=T,e.createProgressTracker=b,e.createRetryableFunction=function(e,t={},r){return async(...n)=>p(()=>e(...n),t,r)},e.createSubmitError=c,e.createTimeoutPromise=L,e.debounce=function(e,t){let r=null;return(...n)=>{r&&clearTimeout(r),r=setTimeout(()=>e(...n),t)}},e.deepClone=function e(t){if(null===t||"object"!=typeof t)return t;if(t instanceof Date)return new Date(t.getTime());if(t instanceof Array)return t.map(t=>e(t));if("object"==typeof t){const r={};for(const n in t)t.hasOwnProperty(n)&&(r[n]=e(t[n]));return r}return t},e.default=G,e.ensureProtocol=_,e.extractFieldErrors=function(e){return e?e.fieldErrors&&Array.isArray(e.fieldErrors)?e.fieldErrors:e.validationResponse&&e.validationResponse.errors&&Array.isArray(e.validationResponse.errors)?e.validationResponse.errors:e.response&&e.response.errors&&Array.isArray(e.response.errors)?e.response.errors:[]:[]},e.extractFiles=y,e.formatDuration=I,e.formatFieldErrors=function(e){const t=z(e),r={};return t.forEach(e=>{r[e.field]=e.message}),r},e.formatFieldErrorsWithCodes=function(e){const t=z(e),r={};return t.forEach(e=>{r[e.field]=e}),r},e.formatFileSize=h,e.generateRequestId=v,e.getEnhancedFileInfo=function(e){const t=e.name.split("."),r=t.length>1?t.pop().toLowerCase():"",n=F(e.name);return{field:"",file:e,name:e.name,size:e.size,type:e.type,extension:r,detectedMimeType:n,isImage:e.type.startsWith("image/"),isDocument:e.type.includes("pdf")||e.type.includes("document")||e.type.includes("word")||e.type.includes("excel")||e.type.includes("powerpoint"),isArchive:e.type.includes("zip")||e.type.includes("rar")||e.type.includes("7z")}},e.getEnvironmentInfo=k,e.getErrorFieldNames=function(e){return z(e).map(e=>e.field)},e.getErrorMessage=function(e){switch(e.code){case s.FORM_NOT_FOUND:return"Form not found. Please check the form ID.";case s.VALIDATION_ERROR:return e.response&&e.response.message||"Form validation failed. Please check your data.";case s.FILE_TOO_LARGE:return"One or more files are too large. Please reduce file size and try again.";case s.INVALID_FILE_TYPE:return"Invalid file type. Please check allowed file types.";case s.RATE_LIMITED:return"Too many requests. Please wait a moment and try again.";case s.TIMEOUT_ERROR:return"Request timed out. Please check your connection and try again.";case s.NETWORK_ERROR:return"Network error. Please check your internet connection.";case s.SERVER_ERROR:return"Server error. Please try again in a few minutes.";default:return e.message||"An unexpected error occurred."}},e.getErrorsByCode=function(e,t){return z(e).filter(e=>e.code===t)},e.getFieldError=U,e.getFieldErrors=z,e.getFirstFieldError=function(e){const t=z(e);return t.length>0?t[0]:null},e.getMimeTypeFromExtension=F,e.getNestedProperty=function(e,t){return t.split(".").reduce((e,t)=>e&&void 0!==e[t]?e[t]:void 0,e)},e.getRetryDelayInfo=function(e,r={}){const n={...t,...r};let s=0;for(let t=1;t<e;t++)s+=f(t,n);return{delay:f(e,n),totalElapsed:s}},e.getValidationErrorSummary=function(e){if(!j(e))return e.message||"Validation error occurred";const t=q(e);if(t&&t.message)return t.message;const r=z(e);if(1===r.length)return`${r[0].field}: ${r[0].message}`;if(r.length>1){return`Validation failed for fields: ${r.map(e=>e.field).join(", ")}`}return"Form validation failed"},e.getValidationResponse=q,e.groupErrorsByCode=function(e){const t=z(e),r={};return t.forEach(e=>{r[e.code]||(r[e.code]=[]),r[e.code].push(e)}),r},e.hasErrorCode=function(e,t){return z(e).some(e=>e.code===t)},e.hasFieldError=V,e.hasFieldErrorCode=function(e,t,r){const n=U(e,t);return n&&n.code===r},e.isBrowser=D,e.isFetchAvailable=S,e.isFieldValidationError=j,e.isFormDataAvailable=$,e.isRetryableError=u,e.isValidUrl=A,e.mergeObjects=function e(t,...r){if(!r.length)return t;const n=r.shift();if(n)for(const r in n)n[r]&&"object"==typeof n[r]&&!Array.isArray(n[r])?(t[r]||Object.assign(t,{[r]:{}}),e(t[r],n[r])):Object.assign(t,{[r]:n[r]});return e(t,...r)},e.objectToQueryString=function(e){const t=new URLSearchParams;for(const[r,n]of Object.entries(e))null!=n&&t.append(r,String(n));return t.toString()},e.parseErrorMessage=function(e){if("string"==typeof e)return e;if(e&&"object"==typeof e){if(e.message)return String(e.message);if(e.error)return String(e.error);if(e.statusText)return String(e.statusText);try{return JSON.stringify(e)}catch(e){return"Unknown error"}}return"Unknown error"},e.processFormData=R,e.sanitizeForLogging=function(e){return e.replace(/password[^&\s]*=[^&\s]*/gi,"password=***").replace(/token[^&\s]*=[^&\s]*/gi,"token=***").replace(/key[^&\s]*=[^&\s]*/gi,"key=***").replace(/secret[^&\s]*=[^&\s]*/gi,"secret=***").replace(/authorization:\s*[^\s]+/gi,"authorization: ***")},e.simpleRetry=async function(e,t=3,r=1e3){let n;for(let s=0;s<=t;s++)try{return await e()}catch(e){n=e,s<t&&await new Promise(e=>setTimeout(e,r*(s+1)))}throw n},e.submitForm=N,e.submitFormSimple=P,e.submitFormWithCallbacks=function(e,t,r){return N({...e,callbacks:{...e.callbacks,onSuccess:t||e.callbacks&&e.callbacks.onSuccess,onError:r||e.callbacks&&e.callbacks.onError}})},e.throttle=function(e,t){let r=!1;return(...n)=>{r||(e(...n),r=!0,setTimeout(()=>r=!1,t))}},e.validateFile=g,e.validateFiles=E,e.validateFormData=C,e.withRetry=p,e.withTimeout=function(e,t){return Promise.race([e,L(t)])},Object.defineProperty(e,"__esModule",{value:!0})});
2
2
  //# sourceMappingURL=formshive-submit.min.js.map