@feathery/react 2.23.6 → 2.24.1

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.
Files changed (111) hide show
  1. package/cjs/Form/index.d.ts.map +1 -1
  2. package/cjs/elements/basic/TableElement/Actions.d.ts.map +1 -1
  3. package/cjs/elements/basic/TableElement/Pagination.d.ts.map +1 -1
  4. package/cjs/elements/basic/TableElement/styles.d.ts +27 -17
  5. package/cjs/elements/basic/TableElement/styles.d.ts.map +1 -1
  6. package/cjs/elements/fields/PhoneField/index.d.ts.map +1 -1
  7. package/cjs/{fthry_FormControl.BSFeGfR_.js → fthry_FormControl.BU7eBiY6.js} +1 -1
  8. package/cjs/{fthry_InlineTooltip.DdmX24ud.js → fthry_InlineTooltip.ueZUi_5a.js} +2 -2
  9. package/cjs/{fthry_Overlay.dLOs3POl.js → fthry_Overlay.LMt9KzN-.js} +1 -1
  10. package/cjs/{fthry_PaymentMethodField.B4hPg2W5.js → fthry_PaymentMethodField.CZ8TVq7i.js} +4 -4
  11. package/cjs/{fthry_Placeholder.CGG1eUWI.js → fthry_Placeholder.BN043D6l.js} +1 -1
  12. package/cjs/{fthry_ShowEyeIcon.CqkQEvU3.js → fthry_ShowEyeIcon.BHGgGTVb.js} +1 -1
  13. package/cjs/{fthry_index.CAGAOhTh.js → fthry_index.-nBOKhsO.js} +6 -6
  14. package/cjs/{fthry_index.Srl5eYm5.js → fthry_index.9ZmxFEH5.js} +1 -1
  15. package/cjs/{fthry_index.DC19EIx0.js → fthry_index.AaVrNLCT.js} +35 -15
  16. package/cjs/{fthry_index.BMCo2zda.js → fthry_index.B-q9OXEy.js} +6 -6
  17. package/cjs/{fthry_index.CWjgaGDT.js → fthry_index.B3KK7puA.js} +1 -1
  18. package/cjs/{fthry_index.DRD0iTwt.js → fthry_index.BEkekVor.js} +86 -69
  19. package/cjs/{fthry_index.Ba5C9yId.js → fthry_index.BbIkn13o.js} +6 -6
  20. package/cjs/{fthry_index.CIAaigRJ.js → fthry_index.BhlNE60I.js} +4 -4
  21. package/cjs/{fthry_index.CyaIdx9V.js → fthry_index.Bq8dNLHD.js} +4 -4
  22. package/cjs/{fthry_index.COIyjfXF.js → fthry_index.C5uvyAu5.js} +3 -3
  23. package/cjs/{fthry_index.BMhDSvsN.js → fthry_index.C9zhMsB3.js} +2 -2
  24. package/cjs/{fthry_index.BlbuXVF3.js → fthry_index.CMeJRKId.js} +1 -1
  25. package/cjs/{fthry_index.CWlKeuqz.js → fthry_index.CQO0U9To.js} +5 -5
  26. package/cjs/{fthry_index.BdTls4Lg.js → fthry_index.C_Q00nYG.js} +2 -2
  27. package/cjs/{fthry_index.BqNLbMy7.js → fthry_index.CaNFlDGz.js} +1 -1
  28. package/cjs/{fthry_index.vuYMQcab.js → fthry_index.CiYud9N5.js} +8 -8
  29. package/cjs/{fthry_index.D4Iu9UG6.js → fthry_index.CqTrVAy3.js} +4 -4
  30. package/cjs/{fthry_index.DxydBYq9.js → fthry_index.Cuiraxkm.js} +5 -5
  31. package/cjs/{fthry_index.FziiiLJL.js → fthry_index.D9U_tTQc.js} +54 -22
  32. package/cjs/{fthry_index.CLUV_Y9k.js → fthry_index.DAX6CIl6.js} +1 -1
  33. package/cjs/{fthry_index.B-tGwDjz.js → fthry_index.DdHlJNXo.js} +3 -3
  34. package/cjs/{fthry_index.H0oI-pdw.js → fthry_index.Dd_amHCw.js} +1 -1
  35. package/cjs/{fthry_index.Czm7tOJN.js → fthry_index.DlrqvoQj.js} +1 -1
  36. package/cjs/{fthry_index.DzZDhazI.js → fthry_index.Dpni8Z83.js} +1 -1
  37. package/cjs/{fthry_index.B6OWca6B.js → fthry_index.fQLeOlGR.js} +5 -5
  38. package/cjs/{fthry_input.3eZioCQX.js → fthry_input.3BaMJclT.js} +1 -1
  39. package/cjs/{fthry_script.B0ZxbIbw.js → fthry_script.Bmqmxs0p.js} +1 -1
  40. package/cjs/{fthry_styles.DDrbD7PV.js → fthry_styles.DlQ_QrZf.js} +1 -1
  41. package/cjs/{fthry_useElementSize.DnuxzPqr.js → fthry_useElementSize.EOJz4fsM.js} +1 -1
  42. package/cjs/{fthry_useSalesforceSync.uOFzu2dA.js → fthry_useSalesforceSync.DmWS-V5J.js} +1 -1
  43. package/cjs/{fthry_webfontloader.nyXgbNFp.js → fthry_webfontloader.japbiFN7.js} +1 -1
  44. package/cjs/index.d.ts +1 -6
  45. package/cjs/index.d.ts.map +1 -1
  46. package/cjs/index.js +1 -1
  47. package/cjs/utils/browser.d.ts.map +1 -1
  48. package/cjs/utils/featheryClient/index.d.ts +2 -7
  49. package/cjs/utils/featheryClient/index.d.ts.map +1 -1
  50. package/cjs/utils/formContext.d.ts +2 -7
  51. package/cjs/utils/formContext.d.ts.map +1 -1
  52. package/cjs/utils/internalState.d.ts +2 -7
  53. package/cjs/utils/internalState.d.ts.map +1 -1
  54. package/dist/Form/index.d.ts.map +1 -1
  55. package/dist/elements/basic/TableElement/Actions.d.ts.map +1 -1
  56. package/dist/elements/basic/TableElement/Pagination.d.ts.map +1 -1
  57. package/dist/elements/basic/TableElement/styles.d.ts +27 -17
  58. package/dist/elements/basic/TableElement/styles.d.ts.map +1 -1
  59. package/dist/elements/fields/PhoneField/index.d.ts.map +1 -1
  60. package/dist/{fthry_FormControl.BWQA5b0y.js → fthry_FormControl.CtIUnA-J.js} +1 -1
  61. package/dist/{fthry_InlineTooltip.BZLGojXl.js → fthry_InlineTooltip.GKo_d3mt.js} +2 -2
  62. package/dist/{fthry_Overlay.Dtxj6U3L.js → fthry_Overlay.4ZlAEXW1.js} +1 -1
  63. package/dist/{fthry_PaymentMethodField.C-mD7K2W.js → fthry_PaymentMethodField.CTbX31hm.js} +4 -4
  64. package/dist/{fthry_Placeholder.hAt5rBVS.js → fthry_Placeholder.D-0FVSlv.js} +1 -1
  65. package/dist/{fthry_ShowEyeIcon.C9RMRr7X.js → fthry_ShowEyeIcon.CWkfaHlA.js} +1 -1
  66. package/dist/{fthry_index.M__FBiFq.js → fthry_index.BSXkZiM_.js} +5 -5
  67. package/dist/{fthry_index.BXgOTSKx.js → fthry_index.BVyuhAaB.js} +54 -22
  68. package/dist/{fthry_index.BOupY-M9.js → fthry_index.Bfrw8LDY.js} +4 -4
  69. package/dist/{fthry_index.D3AC3IRu.js → fthry_index.BlVtNpHg.js} +35 -15
  70. package/dist/{fthry_index.BD_dUvCa.js → fthry_index.BpcrEQAF.js} +1 -1
  71. package/dist/{fthry_index.DsqQfUyE.js → fthry_index.Br4EpPfv.js} +1 -1
  72. package/dist/{fthry_index.C1M4obTx.js → fthry_index.BubYILPT.js} +2 -2
  73. package/dist/{fthry_index.BLC4N3MM.js → fthry_index.BwHR0X99.js} +5 -5
  74. package/dist/{fthry_index.CZG2sz8l.js → fthry_index.C7rRZJJJ.js} +3 -3
  75. package/dist/{fthry_index.oi3hyRpZ.js → fthry_index.CGIC29JZ.js} +2 -2
  76. package/dist/{fthry_index.BESTuSD0.js → fthry_index.CQm9Wgo2.js} +6 -6
  77. package/dist/{fthry_index.BHy82_xs.js → fthry_index.CY9COEXh.js} +3 -3
  78. package/dist/{fthry_index.DkySqYis.js → fthry_index.C_4oBp-_.js} +86 -69
  79. package/dist/{fthry_index.C0qPFRWZ.js → fthry_index.CaP6FDld.js} +1 -1
  80. package/dist/{fthry_index.CpjGr8XJ.js → fthry_index.DCFiQfco.js} +1 -1
  81. package/dist/{fthry_index.C0uIFVvg.js → fthry_index.DGlx2ESo.js} +4 -4
  82. package/dist/{fthry_index.Cnj3D2sE.js → fthry_index.DRNULsMX.js} +4 -4
  83. package/dist/{fthry_index.BRaDez8A.js → fthry_index.DTOP0mDS.js} +6 -6
  84. package/dist/{fthry_index.DsD0fPig.js → fthry_index.DbQeeu_6.js} +1 -1
  85. package/dist/{fthry_index.CDTlE3iz.js → fthry_index.DhOhsG51.js} +5 -5
  86. package/dist/{fthry_index.m_O5twIG.js → fthry_index.Dk-gZchc.js} +1 -1
  87. package/dist/{fthry_index.CioL9mXh.js → fthry_index.DmVOTw8U.js} +8 -8
  88. package/dist/{fthry_index.B-icxM59.js → fthry_index.DoSxA_wm.js} +1 -1
  89. package/dist/{fthry_index.UjyJiWL6.js → fthry_index.Drb37RtW.js} +1 -1
  90. package/dist/{fthry_index.BLWtc8eL.js → fthry_index.o6JLgCUj.js} +6 -6
  91. package/dist/{fthry_input.CabnFCSi.js → fthry_input.CXQBbNrL.js} +1 -1
  92. package/dist/{fthry_script.DPOcbAqz.js → fthry_script.CSrG_570.js} +1 -1
  93. package/dist/{fthry_styles.C2mCy0WK.js → fthry_styles.9258q6Oy.js} +1 -1
  94. package/dist/{fthry_useElementSize.secLYB15.js → fthry_useElementSize.Cl475xSW.js} +1 -1
  95. package/dist/{fthry_useSalesforceSync.Cpjc7KyH.js → fthry_useSalesforceSync.CzjckI_H.js} +1 -1
  96. package/dist/{fthry_webfontloader.ZS2IvgfF.js → fthry_webfontloader.e__UH2p_.js} +1 -1
  97. package/dist/index.d.ts +1 -6
  98. package/dist/index.d.ts.map +1 -1
  99. package/dist/index.js +1 -1
  100. package/dist/utils/browser.d.ts.map +1 -1
  101. package/dist/utils/featheryClient/index.d.ts +2 -7
  102. package/dist/utils/featheryClient/index.d.ts.map +1 -1
  103. package/dist/utils/formContext.d.ts +2 -7
  104. package/dist/utils/formContext.d.ts.map +1 -1
  105. package/dist/utils/internalState.d.ts +2 -7
  106. package/dist/utils/internalState.d.ts.map +1 -1
  107. package/package.json +2 -2
  108. package/umd/{PhoneField.42eae8ec161c28522777.js → PhoneField.7475243ed9d9c7374c28.js} +1 -1
  109. package/umd/TableElement.ee77e0f53a9ccac846ab.js +1 -0
  110. package/umd/index.js +1 -1
  111. package/umd/TableElement.8380efafa84627d75ce9.js +0 -1
@@ -6210,11 +6210,15 @@ function requireApi () {
6210
6210
  let runAsync;
6211
6211
  let variantId;
6212
6212
  let meetingUrl;
6213
+ let variantPerFile;
6214
+ let variantMode;
6213
6215
  if (typeof options === 'object') {
6214
6216
  runAsync = !options.waitForCompletion;
6215
6217
  pages = options.pages;
6216
6218
  variantId = options.variantId;
6217
6219
  meetingUrl = options.meetingUrl;
6220
+ variantPerFile = options.variantPerFile;
6221
+ variantMode = options.variantMode;
6218
6222
  }
6219
6223
  else {
6220
6224
  // deprecated usage, options is runAsync
@@ -6228,6 +6232,8 @@ function requireApi () {
6228
6232
  pages,
6229
6233
  meeting_url: meetingUrl,
6230
6234
  collaborator_user: collaboratorId,
6235
+ variant_per_file: variantPerFile,
6236
+ variant_mode: variantMode,
6231
6237
  };
6232
6238
  const res = await (0, utils_1.apiFetch)(sdkKey, `${(0, utils_1.getStaticUrl)()}ai/vision/`, {
6233
6239
  headers: { 'Content-Type': 'application/json' },
@@ -6324,21 +6330,22 @@ function requireApi () {
6324
6330
  };
6325
6331
  return await (0, utils_1.apiFetch)(sdkKey, url, options, false);
6326
6332
  }
6327
- async function forwardInboxEmail(sdkKey, userId, prefix, recipients, emailGroup, extractionRunId, panelKey) {
6333
+ async function forwardInboxEmail(sdkKey, userId, options, extractionRunId, panelKey) {
6328
6334
  const url = `${(0, utils_1.getApiUrl)()}email/forward/`;
6329
- const options = {
6335
+ const data = {
6330
6336
  headers: { 'Content-Type': 'application/json' },
6331
6337
  method: 'POST',
6332
6338
  body: JSON.stringify({
6333
- prefix: prefix || '',
6334
- recipients: recipients || [],
6339
+ user_id: options.submissionId || userId,
6340
+ prefix: options.prefix || '',
6341
+ recipients: options.emails || [],
6335
6342
  extraction_run_id: extractionRunId,
6336
- user_id: userId,
6337
- email_group: emailGroup,
6343
+ email_group: options.emailGroup,
6338
6344
  panel_key: panelKey,
6345
+ combine_recipients: options.combineRecipients,
6339
6346
  }),
6340
6347
  };
6341
- await (0, utils_1.apiFetch)(sdkKey, url, options);
6348
+ await (0, utils_1.apiFetch)(sdkKey, url, data);
6342
6349
  }
6343
6350
  function runCustomRequest(sdkKey, formId, payload, userId, fieldValues, offlineHandler) {
6344
6351
  const data = {
@@ -23126,7 +23133,9 @@ var getFormContext = function (formUuid) {
23126
23133
  return [2 /*return*/, formState.runAIExtraction(extractionId, options, pages)];
23127
23134
  }); });
23128
23135
  },
23129
- forwardInboxEmail: function (options) { return formState.forwardInboxEmail(options); },
23136
+ forwardInboxEmail: function (options) {
23137
+ return formState.forwardInboxEmail(options);
23138
+ },
23130
23139
  setCalendlyUrl: function (url) { return formState.setCalendlyUrl(url); },
23131
23140
  fillQuikForms: function (params) { return formState.fillQuikForms(params); },
23132
23141
  sendDocusignEnvelope: function (params) {
@@ -39458,7 +39467,7 @@ function useTrackUserInteraction(formRef, activeStep, stepKey, formName) {
39458
39467
  }, [activeStep, stepKey, formName]);
39459
39468
  }
39460
39469
 
39461
- var AssistantChat = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "AssistantChat" */ './fthry_index.Czm7tOJN.js'); }); });
39470
+ var AssistantChat = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "AssistantChat" */ './fthry_index.DlrqvoQj.js'); }); });
39462
39471
  var getSubmissionErrorMessage = function (error) {
39463
39472
  if (error instanceof TypeError && error.message === 'Failed to fetch') {
39464
39473
  return 'Unable to upload files. Please check your connection and try again.';
@@ -45579,7 +45588,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45579
45588
  _b.sent();
45580
45589
  _a = initInfo(), userId = _a.userId, collaboratorId = _a.collaboratorId;
45581
45590
  url = "".concat(exports.API_URL, "event/");
45582
- data = exports.__assign(exports.__assign({ form_key: this.formKey }, eventData), (userId ? { fuser_key: userId } : {}));
45591
+ data = exports.__assign(exports.__assign(exports.__assign({ form_key: this.formKey }, eventData), (userId ? { fuser_key: userId } : {})), { event_id: v4$1(), timestamp: new Date().toISOString() });
45583
45592
  if (collaboratorId)
45584
45593
  data.collaborator_user = collaboratorId;
45585
45594
  if (this.version)
@@ -45610,16 +45619,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45610
45619
  return;
45611
45620
  throw error;
45612
45621
  })
45613
- .then(function () {
45614
- return _this._fetch(url, options, true, true).catch(function (e) {
45615
- if (e instanceof TypeError && navigator.onLine)
45616
- // Wait 5 seconds since event may have actually been registered
45617
- // and just needs to be processed. If online, means it's not an
45618
- // offline error.
45619
- return new Promise(function (resolve) { return setTimeout(resolve, 5000); });
45620
- throw e;
45621
- });
45622
- });
45622
+ .then(function () { return _this._fetch(url, options, true, true); });
45623
45623
  }, url, options, 'registerEvent', stepKey);
45624
45624
  };
45625
45625
  if (eventData.completed && prom)
@@ -45679,7 +45679,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45679
45679
  if (!forwardUserId) {
45680
45680
  throw new Error('No submission ID or user ID available for forwarding');
45681
45681
  }
45682
- return [4 /*yield*/, distExports$2.forwardInboxEmail(sdkKey, forwardUserId, options.prefix || '', options.emails || [], options.emailGroup || '', undefined, this.formKey)];
45682
+ return [4 /*yield*/, distExports$2.forwardInboxEmail(sdkKey, forwardUserId, options, undefined, this.formKey)];
45683
45683
  case 1:
45684
45684
  _c.sent();
45685
45685
  return [2 /*return*/];
@@ -46002,9 +46002,9 @@ function init(sdkKey, options) {
46002
46002
  if (runningInClient()) {
46003
46003
  // Dynamically load libraries that must be client side
46004
46004
  global.scriptjsLoadPromise = Promise.resolve().then(function () { return require(
46005
- /* webpackChunkName: "scriptjs" */ './fthry_script.B0ZxbIbw.js'); }).then(function (n) { return n.script; });
46005
+ /* webpackChunkName: "scriptjs" */ './fthry_script.Bmqmxs0p.js'); }).then(function (n) { return n.script; });
46006
46006
  global.webfontloaderPromise = Promise.resolve().then(function () { return require(
46007
- /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.nyXgbNFp.js'); }).then(function (n) { return n.webfontloader; });
46007
+ /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.japbiFN7.js'); }).then(function (n) { return n.webfontloader; });
46008
46008
  // Client-side tracking logic
46009
46009
  if (initState.userTracking === 'cookie') {
46010
46010
  var cookieKey = "feathery-user-id-".concat(sdkKey);
@@ -46150,7 +46150,7 @@ function getFieldValues() {
46150
46150
  return exports.__assign({}, exports.fieldValues);
46151
46151
  }
46152
46152
  function logFeatheryBadge() {
46153
- console.log('%c Feathery %c v' + "2.23.6" + ' ', // replaced with real version during build
46153
+ console.log('%c Feathery %c v' + "2.24.1" + ' ', // replaced with real version during build
46154
46154
  'background: #e2626e; color: white; padding: 2px 6px; border-radius: 3px 0 0 3px; font-weight: bold;', 'background: #fce7e9; color: #c5495a; padding: 2px 6px; border-radius: 0 3px 3px 0;');
46155
46155
  }
46156
46156
 
@@ -46602,41 +46602,58 @@ function getFileData(url) {
46602
46602
  }
46603
46603
  function downloadAllFileUrls(urls) {
46604
46604
  return __awaiter$2(this, void 0, void 0, function () {
46605
- var file, zip_1, zipBlob, _a, fileName, blob;
46606
- var _this = this;
46607
- return __generator(this, function (_b) {
46608
- switch (_b.label) {
46605
+ var file, zip, files, nameCount, files_1, files_1_1, _a, fileName, blob, uniqueName, dotIndex, zipBlob, _b, fileName, blob;
46606
+ var e_1, _c;
46607
+ return __generator(this, function (_d) {
46608
+ switch (_d.label) {
46609
46609
  case 0:
46610
46610
  if (urls.length === 0)
46611
46611
  return [2 /*return*/];
46612
46612
  if (!(urls.length > 1)) return [3 /*break*/, 3];
46613
- zip_1 = new JSZip();
46614
- return [4 /*yield*/, Promise.all(urls.map(function (url) { return __awaiter$2(_this, void 0, void 0, function () {
46615
- var _a, fileName, blob;
46616
- return __generator(this, function (_b) {
46617
- switch (_b.label) {
46618
- case 0: return [4 /*yield*/, getFileData(url)];
46619
- case 1:
46620
- _a = _b.sent(), fileName = _a.fileName, blob = _a.blob;
46621
- zip_1.file(fileName, blob);
46622
- return [2 /*return*/];
46623
- }
46624
- });
46625
- }); }))];
46613
+ zip = new JSZip();
46614
+ return [4 /*yield*/, Promise.all(urls.map(function (url) { return getFileData(url); }))];
46626
46615
  case 1:
46627
- _b.sent();
46628
- return [4 /*yield*/, zip_1.generateAsync({ type: 'blob' })];
46616
+ files = _d.sent();
46617
+ nameCount = {};
46618
+ try {
46619
+ for (files_1 = __values(files), files_1_1 = files_1.next(); !files_1_1.done; files_1_1 = files_1.next()) {
46620
+ _a = files_1_1.value, fileName = _a.fileName, blob = _a.blob;
46621
+ uniqueName = fileName;
46622
+ if (nameCount[fileName] != null) {
46623
+ nameCount[fileName]++;
46624
+ dotIndex = fileName.lastIndexOf('.');
46625
+ if (dotIndex !== -1) {
46626
+ uniqueName = "".concat(fileName.slice(0, dotIndex), " (").concat(nameCount[fileName], ")").concat(fileName.slice(dotIndex));
46627
+ }
46628
+ else {
46629
+ uniqueName = "".concat(fileName, " (").concat(nameCount[fileName], ")");
46630
+ }
46631
+ }
46632
+ else {
46633
+ nameCount[fileName] = 0;
46634
+ }
46635
+ zip.file(uniqueName, blob);
46636
+ }
46637
+ }
46638
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
46639
+ finally {
46640
+ try {
46641
+ if (files_1_1 && !files_1_1.done && (_c = files_1.return)) _c.call(files_1);
46642
+ }
46643
+ finally { if (e_1) throw e_1.error; }
46644
+ }
46645
+ return [4 /*yield*/, zip.generateAsync({ type: 'blob' })];
46629
46646
  case 2:
46630
- zipBlob = _b.sent();
46647
+ zipBlob = _d.sent();
46631
46648
  file = new File([zipBlob], 'Feathery_Download.zip', {
46632
46649
  type: 'application/zip'
46633
46650
  });
46634
46651
  return [3 /*break*/, 5];
46635
46652
  case 3: return [4 /*yield*/, getFileData(urls[0])];
46636
46653
  case 4:
46637
- _a = _b.sent(), fileName = _a.fileName, blob = _a.blob;
46654
+ _b = _d.sent(), fileName = _b.fileName, blob = _b.blob;
46638
46655
  file = new File([blob], fileName, { type: blob.type });
46639
- _b.label = 5;
46656
+ _d.label = 5;
46640
46657
  case 5:
46641
46658
  downloadFile(file);
46642
46659
  return [2 /*return*/];
@@ -47583,39 +47600,39 @@ breakpoint) {
47583
47600
  return styles.getTarget('inner-container', undefined, viewport === 'mobile');
47584
47601
  };
47585
47602
 
47586
- var AddressLine1 = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "AddressField" */ './fthry_index.B6OWca6B.js'); }); });
47587
- var ButtonGroupField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.D4Iu9UG6.js'); }); });
47588
- var CheckboxField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxField" */ './fthry_index.Srl5eYm5.js'); }); });
47603
+ var AddressLine1 = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "AddressField" */ './fthry_index.fQLeOlGR.js'); }); });
47604
+ var ButtonGroupField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.CqTrVAy3.js'); }); });
47605
+ var CheckboxField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxField" */ './fthry_index.9ZmxFEH5.js'); }); });
47589
47606
  var CheckboxGroupField = React.lazy(function () {
47590
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.BMCo2zda.js'); });
47607
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.B-q9OXEy.js'); });
47591
47608
  });
47592
- var ColorPickerField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ColorPickerField" */ './fthry_index.CLUV_Y9k.js'); }); });
47593
- var CustomField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CustomField" */ './fthry_index.DzZDhazI.js'); }); });
47609
+ var ColorPickerField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ColorPickerField" */ './fthry_index.DAX6CIl6.js'); }); });
47610
+ var CustomField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CustomField" */ './fthry_index.Dpni8Z83.js'); }); });
47594
47611
  var DateSelectorField = React.lazy(function () {
47595
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "DateSelectorField" */ './fthry_index.CAGAOhTh.js'); });
47612
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "DateSelectorField" */ './fthry_index.-nBOKhsO.js'); });
47596
47613
  });
47597
- var DropdownField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownField" */ './fthry_index.CIAaigRJ.js'); }); });
47614
+ var DropdownField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownField" */ './fthry_index.BhlNE60I.js'); }); });
47598
47615
  var DropdownMultiField = React.lazy(function () {
47599
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.DxydBYq9.js'); });
47616
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.Cuiraxkm.js'); });
47600
47617
  });
47601
- var FileUploadField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "FileUploadField" */ './fthry_index.BlbuXVF3.js'); }); });
47602
- var MatrixField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "MatrixField" */ './fthry_index.COIyjfXF.js'); }); });
47603
- var PasswordField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PasswordField" */ './fthry_index.CWlKeuqz.js'); }); });
47618
+ var FileUploadField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "FileUploadField" */ './fthry_index.CMeJRKId.js'); }); });
47619
+ var MatrixField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "MatrixField" */ './fthry_index.C5uvyAu5.js'); }); });
47620
+ var PasswordField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PasswordField" */ './fthry_index.CQO0U9To.js'); }); });
47604
47621
  var PaymentMethodField = React.lazy(function () {
47605
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.B4hPg2W5.js'); });
47622
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.CZ8TVq7i.js'); });
47606
47623
  });
47607
- var PhoneField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PhoneField" */ './fthry_index.DC19EIx0.js'); }); });
47608
- var PinInputField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PinInputField" */ './fthry_index.CWjgaGDT.js'); }); });
47609
- var QRScanner = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "QRScanner" */ './fthry_index.BMhDSvsN.js'); }); });
47624
+ var PhoneField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PhoneField" */ './fthry_index.AaVrNLCT.js'); }); });
47625
+ var PinInputField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PinInputField" */ './fthry_index.B3KK7puA.js'); }); });
47626
+ var QRScanner = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "QRScanner" */ './fthry_index.C9zhMsB3.js'); }); });
47610
47627
  var RadioButtonGroupField = React.lazy(function () {
47611
47628
  return Promise.resolve().then(function () { return require(
47612
- /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.Ba5C9yId.js'); });
47629
+ /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.BbIkn13o.js'); });
47613
47630
  });
47614
- var RatingField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "RatingField" */ './fthry_index.BqNLbMy7.js'); }); });
47615
- var SignatureField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SignatureField" */ './fthry_index.B-tGwDjz.js'); }); });
47616
- var SliderField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SliderField" */ './fthry_index.BdTls4Lg.js'); }); });
47617
- var TextField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextField" */ './fthry_index.vuYMQcab.js'); }); });
47618
- var TextArea = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextArea" */ './fthry_index.CyaIdx9V.js'); }); });
47631
+ var RatingField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "RatingField" */ './fthry_index.CaNFlDGz.js'); }); });
47632
+ var SignatureField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SignatureField" */ './fthry_index.DdHlJNXo.js'); }); });
47633
+ var SliderField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SliderField" */ './fthry_index.C_Q00nYG.js'); }); });
47634
+ var TextField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextField" */ './fthry_index.CiYud9N5.js'); }); });
47635
+ var TextArea = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextArea" */ './fthry_index.Bq8dNLHD.js'); }); });
47619
47636
  var Fields = {
47620
47637
  AddressLine1: AddressLine1,
47621
47638
  ButtonGroupField: ButtonGroupField,
@@ -48565,7 +48582,7 @@ function ElementSkeleton(_a) {
48565
48582
  }
48566
48583
  var templateObject_1;
48567
48584
 
48568
- var TableElement = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TableElement" */ './fthry_index.FziiiLJL.js'); }); });
48585
+ var TableElement = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TableElement" */ './fthry_index.D9U_tTQc.js'); }); });
48569
48586
  var Basic = {
48570
48587
  ImageElement: ImageElement,
48571
48588
  VideoElement: VideoElement,
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.DRD0iTwt.js');
3
+ var index = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var FormControl = require('./fthry_FormControl.BSFeGfR_.js');
6
- var index$1 = require('./fthry_index.Srl5eYm5.js');
7
- var InlineTooltip = require('./fthry_InlineTooltip.DdmX24ud.js');
8
- var useSalesforceSync = require('./fthry_useSalesforceSync.uOFzu2dA.js');
5
+ var FormControl = require('./fthry_FormControl.BU7eBiY6.js');
6
+ var index$1 = require('./fthry_index.9ZmxFEH5.js');
7
+ var InlineTooltip = require('./fthry_InlineTooltip.ueZUi_5a.js');
8
+ var useSalesforceSync = require('./fthry_useSalesforceSync.DmWS-V5J.js');
9
9
  require('react/jsx-runtime');
10
10
  require('react-dom/client');
11
11
  require('jszip');
12
12
  require('react-dom');
13
- require('./fthry_Overlay.dLOs3POl.js');
13
+ require('./fthry_Overlay.LMt9KzN-.js');
14
14
 
15
15
  var applyRadioGroupStyles = function (element, responsiveStyles) {
16
16
  responsiveStyles.addTargets('radioGroup');
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.DRD0iTwt.js');
3
+ var index = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var InlineTooltip = require('./fthry_InlineTooltip.DdmX24ud.js');
6
- var useSalesforceSync = require('./fthry_useSalesforceSync.uOFzu2dA.js');
5
+ var InlineTooltip = require('./fthry_InlineTooltip.ueZUi_5a.js');
6
+ var useSalesforceSync = require('./fthry_useSalesforceSync.DmWS-V5J.js');
7
7
  require('react/jsx-runtime');
8
8
  require('react-dom/client');
9
9
  require('jszip');
10
10
  require('react-dom');
11
- require('./fthry_Overlay.dLOs3POl.js');
11
+ require('./fthry_Overlay.LMt9KzN-.js');
12
12
 
13
13
  var ae = [
14
14
  { name: 'Abu Dhabi', code: 'AZ' },
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var index$1 = require('./fthry_index.DRD0iTwt.js');
3
+ var index$1 = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var Placeholder = require('./fthry_Placeholder.CGG1eUWI.js');
6
- var InlineTooltip = require('./fthry_InlineTooltip.DdmX24ud.js');
5
+ var Placeholder = require('./fthry_Placeholder.BN043D6l.js');
6
+ var InlineTooltip = require('./fthry_InlineTooltip.ueZUi_5a.js');
7
7
  require('react/jsx-runtime');
8
8
  require('react-dom/client');
9
9
  require('jszip');
10
10
  require('react-dom');
11
- require('./fthry_Overlay.dLOs3POl.js');
11
+ require('./fthry_Overlay.LMt9KzN-.js');
12
12
 
13
13
  function TextArea(_a) {
14
14
  var element = _a.element, responsiveStyles = _a.responsiveStyles, fieldLabel = _a.fieldLabel, _b = _a.elementProps, elementProps = _b === void 0 ? {} : _b, _c = _a.required, required = _c === void 0 ? false : _c, _d = _a.disabled, disabled = _d === void 0 ? false : _d, editMode = _a.editMode, _e = _a.onChange, onChange = _e === void 0 ? function () { } : _e, _f = _a.setRef, setRef = _f === void 0 ? function () { } : _f, _g = _a.rawValue, rawValue = _g === void 0 ? '' : _g, inlineError = _a.inlineError, _h = _a.repeatIndex, repeatIndex = _h === void 0 ? null : _h, children = _a.children;
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.DRD0iTwt.js');
3
+ var index = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var Overlay = require('./fthry_Overlay.dLOs3POl.js');
6
- var index$1 = require('./fthry_index.Srl5eYm5.js');
5
+ var Overlay = require('./fthry_Overlay.LMt9KzN-.js');
6
+ var index$1 = require('./fthry_index.9ZmxFEH5.js');
7
7
  require('react/jsx-runtime');
8
8
  require('react-dom/client');
9
9
  require('jszip');
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.DRD0iTwt.js');
3
+ var index = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var styles = require('./fthry_styles.DDrbD7PV.js');
5
+ var styles = require('./fthry_styles.DlQ_QrZf.js');
6
6
  require('react/jsx-runtime');
7
7
  require('react-dom/client');
8
8
  require('jszip');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.DRD0iTwt.js');
3
+ var index = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
5
  require('react/jsx-runtime');
6
6
  require('react-dom/client');
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
- var index$1 = require('./fthry_index.DRD0iTwt.js');
3
+ var index$1 = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var Placeholder = require('./fthry_Placeholder.CGG1eUWI.js');
6
- var InlineTooltip = require('./fthry_InlineTooltip.DdmX24ud.js');
7
- var ShowEyeIcon = require('./fthry_ShowEyeIcon.CqkQEvU3.js');
5
+ var Placeholder = require('./fthry_Placeholder.BN043D6l.js');
6
+ var InlineTooltip = require('./fthry_InlineTooltip.ueZUi_5a.js');
7
+ var ShowEyeIcon = require('./fthry_ShowEyeIcon.BHGgGTVb.js');
8
8
  require('react/jsx-runtime');
9
9
  require('react-dom/client');
10
10
  require('jszip');
11
11
  require('react-dom');
12
- require('./fthry_Overlay.dLOs3POl.js');
12
+ require('./fthry_Overlay.LMt9KzN-.js');
13
13
 
14
14
  function PasswordField(_a) {
15
15
  var _b;
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.DRD0iTwt.js');
3
+ var index = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var styles = require('./fthry_styles.DDrbD7PV.js');
5
+ var styles = require('./fthry_styles.DlQ_QrZf.js');
6
6
  require('react/jsx-runtime');
7
7
  require('react-dom/client');
8
8
  require('jszip');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.DRD0iTwt.js');
3
+ var index = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
5
  require('react/jsx-runtime');
6
6
  require('react-dom/client');
@@ -1,18 +1,18 @@
1
1
  'use strict';
2
2
 
3
- var index$1 = require('./fthry_index.DRD0iTwt.js');
3
+ var index$1 = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var Placeholder = require('./fthry_Placeholder.CGG1eUWI.js');
6
- var InlineTooltip = require('./fthry_InlineTooltip.DdmX24ud.js');
7
- var Overlay = require('./fthry_Overlay.dLOs3POl.js');
8
- var useElementSize = require('./fthry_useElementSize.DnuxzPqr.js');
9
- var ShowEyeIcon = require('./fthry_ShowEyeIcon.CqkQEvU3.js');
10
- var input = require('./fthry_input.3eZioCQX.js');
5
+ var Placeholder = require('./fthry_Placeholder.BN043D6l.js');
6
+ var InlineTooltip = require('./fthry_InlineTooltip.ueZUi_5a.js');
7
+ var Overlay = require('./fthry_Overlay.LMt9KzN-.js');
8
+ var useElementSize = require('./fthry_useElementSize.EOJz4fsM.js');
9
+ var ShowEyeIcon = require('./fthry_ShowEyeIcon.BHGgGTVb.js');
10
+ var input = require('./fthry_input.3BaMJclT.js');
11
11
  require('react/jsx-runtime');
12
12
  require('react-dom/client');
13
13
  require('jszip');
14
14
  require('react-dom');
15
- require('./fthry_index.H0oI-pdw.js');
15
+ require('./fthry_index.Dd_amHCw.js');
16
16
 
17
17
  function TextAutocomplete$1(_a) {
18
18
  var _b = _a.allOptions, allOptions = _b === void 0 ? [] : _b, showOptions = _a.showOptions, _c = _a.onSelect, onSelect = _c === void 0 ? function () { } : _c, _d = _a.onHide, onHide = _d === void 0 ? function () { } : _d, _e = _a.onInputFocus, onInputFocus = _e === void 0 ? function () { } : _e, _f = _a.value, value = _f === void 0 ? '' : _f, containerRef = _a.containerRef, responsiveStyles = _a.responsiveStyles, listItemRef = _a.listItemRef, children = _a.children;
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.DRD0iTwt.js');
3
+ var index = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var InlineTooltip = require('./fthry_InlineTooltip.DdmX24ud.js');
6
- var useSalesforceSync = require('./fthry_useSalesforceSync.uOFzu2dA.js');
5
+ var InlineTooltip = require('./fthry_InlineTooltip.ueZUi_5a.js');
6
+ var useSalesforceSync = require('./fthry_useSalesforceSync.DmWS-V5J.js');
7
7
  require('react/jsx-runtime');
8
8
  require('react-dom/client');
9
9
  require('jszip');
10
10
  require('react-dom');
11
- require('./fthry_Overlay.dLOs3POl.js');
11
+ require('./fthry_Overlay.LMt9KzN-.js');
12
12
 
13
13
  function ButtonGroupField(_a) {
14
14
  var element = _a.element, responsiveStyles = _a.responsiveStyles, fieldLabel = _a.fieldLabel, inlineError = _a.inlineError, _b = _a.fieldVal, fieldVal = _b === void 0 ? null : _b, _c = _a.repeatIndex, repeatIndex = _c === void 0 ? null : _c, editMode = _a.editMode, _d = _a.onClick, onClick = _d === void 0 ? function () { } : _d, _e = _a.elementProps, elementProps = _e === void 0 ? {} : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f, children = _a.children;
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var index$1 = require('./fthry_index.DRD0iTwt.js');
3
+ var index$1 = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
- var InlineTooltip = require('./fthry_InlineTooltip.DdmX24ud.js');
6
- var Placeholder$2 = require('./fthry_Placeholder.CGG1eUWI.js');
7
- var useSalesforceSync = require('./fthry_useSalesforceSync.uOFzu2dA.js');
8
- var Overlay = require('./fthry_Overlay.dLOs3POl.js');
5
+ var InlineTooltip = require('./fthry_InlineTooltip.ueZUi_5a.js');
6
+ var Placeholder$2 = require('./fthry_Placeholder.BN043D6l.js');
7
+ var useSalesforceSync = require('./fthry_useSalesforceSync.DmWS-V5J.js');
8
+ var Overlay = require('./fthry_Overlay.LMt9KzN-.js');
9
9
  var ReactDOM = require('react-dom');
10
10
  require('react/jsx-runtime');
11
11
  require('react-dom/client');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.DRD0iTwt.js');
3
+ var index = require('./fthry_index.BEkekVor.js');
4
4
  var React = require('react');
5
5
  var ReactDOM = require('react-dom');
6
6
  require('react/jsx-runtime');
@@ -191,7 +191,7 @@ var buttonStyle = {
191
191
  cursor: 'auto'
192
192
  }
193
193
  };
194
- var actionButtonStyle = index.__assign(index.__assign({}, buttonStyle), { borderRadius: '4px', paddingInline: '8px', width: 'auto', height: '28px', position: 'relative' });
194
+ var actionButtonStyle = index.__assign(index.__assign({}, buttonStyle), { borderRadius: '4px', paddingInline: '8px', paddingBlock: '4px', width: 'auto', height: 'auto', minHeight: '28px', position: 'relative' });
195
195
  var menuIconStyle = {
196
196
  width: '16px',
197
197
  height: '16px',
@@ -247,9 +247,6 @@ var pageButtonStyle = index.__assign(index.__assign({}, buttonStyle), { width: '
247
247
  var pageButtonPrevStyle = index.__assign(index.__assign({}, pageButtonStyle), { borderTopLeftRadius: '8px', borderBottomLeftRadius: '8px', paddingLeft: '12px', paddingRight: '12px', width: 'auto' });
248
248
  var pageButtonNextStyle = index.__assign(index.__assign({}, pageButtonStyle), { borderTopRightRadius: '8px', borderBottomRightRadius: '8px', paddingLeft: '12px', paddingRight: '12px', width: 'auto', borderRightWidth: 1 });
249
249
  var pageButtonActiveStyle = index.__assign(index.__assign({}, pageButtonStyle), { color: colors.blue700, backgroundColor: colors.blue50, border: "1px solid ".concat(colors.gray200) });
250
- var pageButtonEllipsisStyle = index.__assign(index.__assign({}, pageButtonStyle), { cursor: 'default', '&:focus': {
251
- outline: 'none'
252
- } });
253
250
  var pageButtonDisabledStyle = {
254
251
  opacity: 0.8,
255
252
  cursor: 'default',
@@ -258,7 +255,13 @@ var pageButtonDisabledStyle = {
258
255
  backgroundColor: colors.gray50,
259
256
  color: colors.gray400
260
257
  }
261
- };
258
+ };
259
+ var overflowSelectStyle = index.__assign(index.__assign({}, pageButtonStyle), { appearance: 'none', WebkitAppearance: 'none', cursor: 'pointer', paddingLeft: '8px', paddingRight: '8px', width: '36px', textAlign: 'center', outline: 'none', '&:hover': {
260
+ backgroundColor: colors.gray100,
261
+ color: colors.gray900
262
+ }, '&:focus': {
263
+ outline: 'none'
264
+ } });
262
265
 
263
266
  function SearchIcon() {
264
267
  return (index.jsx("svg", index.__assign({ css: searchIconStyle, fill: 'none', viewBox: '0 0 24 24', stroke: 'currentColor', strokeWidth: 2 }, { children: index.jsx("path", { strokeLinecap: 'round', d: 'M21 21l-3.5-3.5M17 10a7 7 0 1 1-14 0 7 7 0 0 1 14 0Z' }) })));
@@ -300,22 +303,45 @@ function NextButton(_a) {
300
303
  var disabled = _a.disabled, onClick = _a.onClick;
301
304
  return (index.jsx("button", index.__assign({ type: 'button', onClick: onClick, disabled: disabled, css: index.__assign(index.__assign({}, pageButtonNextStyle), (disabled ? pageButtonDisabledStyle : {})) }, { children: "Next" })));
302
305
  }
306
+ function OverflowSelect(_a) {
307
+ var pages = _a.pages, onPageChange = _a.onPageChange;
308
+ return (index.jsxs("select", index.__assign({ value: '', onChange: function (e) {
309
+ onPageChange(Number(e.target.value));
310
+ }, "aria-label": 'Go to page', css: overflowSelectStyle }, { children: [index.jsx("option", index.__assign({ value: '', disabled: true, hidden: true }, { children: "..." })), pages.map(function (page) { return (index.jsx("option", index.__assign({ value: page }, { children: page + 1 }), page)); })] })));
311
+ }
303
312
  function PageNumbers(_a) {
304
313
  var currentPage = _a.currentPage, totalPages = _a.totalPages, onPageChange = _a.onPageChange;
305
- return (index.jsx(index.Fragment, { children: Array.from({ length: totalPages }, function (_, i) {
306
- // Show first page, last page, current page, and pages around current
307
- var showPage = i === 0 || i === totalPages - 1 || Math.abs(i - currentPage) <= 1;
308
- var showEllipsis = (i === 1 && currentPage > 2) ||
309
- (i === totalPages - 2 && currentPage < totalPages - 3);
310
- if (showEllipsis) {
311
- return (index.jsx("li", { children: index.jsx("button", index.__assign({ type: 'button', disabled: true, css: pageButtonEllipsisStyle }, { children: "..." })) }, i));
314
+ var visiblePages = new Set();
315
+ visiblePages.add(0);
316
+ visiblePages.add(totalPages - 1);
317
+ for (var i = Math.max(0, currentPage - 1); i <= Math.min(totalPages - 1, currentPage + 1); i++) {
318
+ visiblePages.add(i);
319
+ }
320
+ var items = [];
321
+ var sortedVisible = Array.from(visiblePages).sort(function (a, b) { return a - b; });
322
+ for (var i = 0; i < sortedVisible.length; i++) {
323
+ var page = sortedVisible[i];
324
+ var prevPage = i > 0 ? sortedVisible[i - 1] : -1;
325
+ if (page - prevPage > 1) {
326
+ var hiddenPages = [];
327
+ for (var j = prevPage + 1; j < page; j++) {
328
+ hiddenPages.push(j);
312
329
  }
313
- if (!showPage)
314
- return null;
315
- var isActive = i === currentPage;
316
- return (index.jsx("li", { children: index.jsx("button", index.__assign({ type: 'button', onClick: function () { return onPageChange(i); }, "aria-current": isActive ? 'page' : undefined, css: isActive
330
+ items.push({ type: 'overflow', pages: hiddenPages });
331
+ }
332
+ items.push({ type: 'page', page: page });
333
+ }
334
+ return (index.jsx(index.Fragment, { children: items.map(function (item, idx) {
335
+ if (item.type === 'overflow') {
336
+ if (item.pages.length === 1) {
337
+ return (index.jsx("li", { children: index.jsx("button", index.__assign({ type: 'button', onClick: function () { return onPageChange(item.pages[0]); }, css: pageButtonStyle }, { children: item.pages[0] + 1 })) }, "overflow-".concat(idx)));
338
+ }
339
+ return (index.jsx("li", { children: index.jsx(OverflowSelect, { pages: item.pages, onPageChange: onPageChange }) }, "overflow-".concat(idx)));
340
+ }
341
+ var isActive = item.page === currentPage;
342
+ return (index.jsx("li", { children: index.jsx("button", index.__assign({ type: 'button', onClick: function () { return onPageChange(item.page); }, "aria-current": isActive ? 'page' : undefined, css: isActive
317
343
  ? pageButtonActiveStyle
318
- : pageButtonStyle }, { children: i + 1 })) }, i));
344
+ : pageButtonStyle }, { children: item.page + 1 })) }, item.page));
319
345
  }) }));
320
346
  }
321
347
  function Pagination(_a) {
@@ -342,6 +368,8 @@ function ActionButtons(_a) {
342
368
  var menuButtonRef = React.useRef(null);
343
369
  var useOverflow = !forceInlineButtons && actions.length > 1;
344
370
  React.useEffect(function () {
371
+ if (!isMenuOpen)
372
+ return;
345
373
  var handleClickOutside = function (event) {
346
374
  if (menuRef.current &&
347
375
  !menuRef.current.contains(event.target) &&
@@ -350,11 +378,15 @@ function ActionButtons(_a) {
350
378
  setIsMenuOpen(false);
351
379
  }
352
380
  };
353
- if (isMenuOpen) {
354
- index.featheryDoc().addEventListener('mousedown', handleClickOutside);
355
- }
381
+ var handleScroll = function () {
382
+ setIsMenuOpen(false);
383
+ };
384
+ var doc = index.featheryDoc();
385
+ doc.addEventListener('mousedown', handleClickOutside);
386
+ doc.addEventListener('scroll', handleScroll, true);
356
387
  return function () {
357
- index.featheryDoc().removeEventListener('mousedown', handleClickOutside);
388
+ doc.removeEventListener('mousedown', handleClickOutside);
389
+ doc.removeEventListener('scroll', handleScroll, true);
358
390
  };
359
391
  }, [isMenuOpen]);
360
392
  var handleActionClick = function (action) {