@feathery/react 2.51.1 → 2.53.0

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 (165) hide show
  1. package/cjs/Form/components/DevNavBar.d.ts.map +1 -1
  2. package/cjs/Form/index.d.ts.map +1 -1
  3. package/cjs/assistant/AssistantChat.d.ts.map +1 -1
  4. package/cjs/assistant/AssistantClient.d.ts +2 -1
  5. package/cjs/assistant/AssistantClient.d.ts.map +1 -1
  6. package/cjs/assistant/ToolStatus.d.ts.map +1 -1
  7. package/cjs/assistant/tools/clickElement.d.ts.map +1 -1
  8. package/cjs/assistant/tools/navigate.d.ts +16 -0
  9. package/cjs/assistant/tools/navigate.d.ts.map +1 -0
  10. package/cjs/assistant/tools/panelRuntime.d.ts +22 -5
  11. package/cjs/assistant/tools/panelRuntime.d.ts.map +1 -1
  12. package/cjs/assistant/tools/triggerTableAction.d.ts.map +1 -1
  13. package/cjs/assistant/tools/utils.d.ts +1 -0
  14. package/cjs/assistant/tools/utils.d.ts.map +1 -1
  15. package/cjs/elements/basic/ProgressBarElement/components/StepperBar.d.ts.map +1 -1
  16. package/cjs/elements/basic/ProgressBarElement/index.d.ts.map +1 -1
  17. package/cjs/{fthry_AssistantChat.B45jvKBe.js → fthry_AssistantChat.Cdt71IEA.js} +358 -100
  18. package/cjs/{fthry_FormControl.EOj0LE3M.js → fthry_FormControl.DpCsf-wk.js} +1 -1
  19. package/cjs/{fthry_InlineTooltip.BhdsWEoD.js → fthry_InlineTooltip.nKLmX5o5.js} +1 -1
  20. package/cjs/{fthry_PaymentMethodField.DYVjg4Fj.js → fthry_PaymentMethodField.BLuiD1KT.js} +3 -3
  21. package/cjs/{fthry_Placeholder.CcwNoUeW.js → fthry_Placeholder.BJA_j-7t.js} +1 -1
  22. package/cjs/{fthry_ShowEyeIcon.DuZqZCnN.js → fthry_ShowEyeIcon.DGAHQwc4.js} +1 -1
  23. package/cjs/{fthry_TabsElement.COJxjNgU.js → fthry_TabsElement.EaxR88eT.js} +1 -1
  24. package/cjs/{fthry_auto-track.B15NDwyR.js → fthry_auto-track.B2EuUyWQ.js} +2 -2
  25. package/cjs/{fthry_highlighted-body-TPN3WLV5.DVEo7HUb.js → fthry_highlighted-body-TPN3WLV5.D0_x3Hnh.js} +3 -3
  26. package/cjs/{fthry_index.j-6Dmxvi.js → fthry_index.AEIgB8XZ.js} +1 -1
  27. package/cjs/{fthry_index.B7S5dgOG.js → fthry_index.B0Z5hKAK.js} +2 -2
  28. package/cjs/{fthry_index.BU6ItWDI.js → fthry_index.B0xx5w3Y.js} +4 -4
  29. package/cjs/{fthry_index.DNDEeQCP.js → fthry_index.BDQthVrL.js} +1 -1
  30. package/cjs/{fthry_index.CyHvGApA.js → fthry_index.BdNvpld5.js} +4 -4
  31. package/cjs/{fthry_index.CJ3Hch09.js → fthry_index.BoBcyJjH.js} +1 -1
  32. package/cjs/{fthry_index.l-vIwCek.js → fthry_index.Bod-ybm6.js} +1 -1
  33. package/cjs/{fthry_index.CDnYVEIO.js → fthry_index.BwAj91oq.js} +2 -2
  34. package/cjs/{fthry_index.5X9_5jk4.js → fthry_index.C-Tcdfmc.js} +1 -1
  35. package/cjs/{fthry_index.5xuF2U9h.js → fthry_index.C0n-WuVc.js} +1 -1
  36. package/cjs/{fthry_index.DPeoLKPF.js → fthry_index.CCKdjjti.js} +1 -1
  37. package/cjs/{fthry_index.2QppVzJs.js → fthry_index.CE5CJdZu.js} +7 -7
  38. package/cjs/{fthry_index.CEqgOh3U.js → fthry_index.CF6HTGG8.js} +1 -1
  39. package/cjs/{fthry_index.RBFHmwlK.js → fthry_index.CGCWGlnp.js} +3 -3
  40. package/cjs/{fthry_index.DOmwK88R.js → fthry_index.CJEKmmXG.js} +1 -1
  41. package/cjs/{fthry_index.Cmuje9sY.js → fthry_index.CSYsApcr.js} +4 -4
  42. package/cjs/{fthry_index.HB6IRHEd.js → fthry_index.CTlWYTKv.js} +2 -2
  43. package/cjs/{fthry_index.BoejAzGy.js → fthry_index.CvGygqZP.js} +5 -5
  44. package/cjs/{fthry_index.CacFIYgr.js → fthry_index.CxBG2-BU.js} +1 -1
  45. package/cjs/{fthry_index.DzwfTsQg.js → fthry_index.CxY6K5_1.js} +10 -10
  46. package/cjs/{fthry_index.isQxfXbE.js → fthry_index.D-NTvk-Y.js} +1 -1
  47. package/cjs/{fthry_index.sb9ekedx.js → fthry_index.D0IwM5iZ.js} +2 -2
  48. package/cjs/{fthry_index.BkdG1KiI.js → fthry_index.D8NmDklI.js} +3 -3
  49. package/cjs/{fthry_index.BBp1wUpf.js → fthry_index.DEtRMtpY.js} +4 -4
  50. package/cjs/{fthry_index.B4C3wGGx.js → fthry_index.DIcj_VUJ.js} +160 -64
  51. package/cjs/{fthry_index.CvfYbjM3.js → fthry_index.DfhW9KvX.js} +2 -2
  52. package/cjs/{fthry_index.DJW8jwjF.js → fthry_index.QBRBv5zI.js} +5 -5
  53. package/cjs/{fthry_index.CqhOLSKT.js → fthry_index.a_07qAue.js} +5 -5
  54. package/cjs/{fthry_index.D0m2Paql.js → fthry_index.cy-BntXN.js} +5 -5
  55. package/cjs/{fthry_index.Z-VNWfPY.js → fthry_index.fXQdvWc6.js} +2 -2
  56. package/cjs/{fthry_index.DjKpsFXX.js → fthry_index.n5ANsMnM.js} +2 -2
  57. package/cjs/{fthry_index.DaU9mnVx.js → fthry_index.s44MPEx0.js} +3 -3
  58. package/cjs/{fthry_index.umd.BsAzT2x5.js → fthry_index.umd.C2sFE07r.js} +1 -1
  59. package/cjs/{fthry_input.BN_eHBxf.js → fthry_input.B2-tNesz.js} +1 -1
  60. package/cjs/{fthry_logging.DwsvHsLI.js → fthry_logging.Ddacrn6B.js} +1 -1
  61. package/cjs/{fthry_mermaid-O7DHMXV3.Dk3DbMjU.js → fthry_mermaid-O7DHMXV3.Dj-pTS7i.js} +3 -3
  62. package/cjs/{fthry_script.CMlEfgqJ.js → fthry_script.CvH2Hl2W.js} +1 -1
  63. package/cjs/{fthry_styles.CDAJkFkv.js → fthry_styles.DJU4cNZx.js} +1 -1
  64. package/cjs/{fthry_useElementSize.CdR9C9j1.js → fthry_useElementSize.D9gQ1cgh.js} +1 -1
  65. package/cjs/{fthry_useSalesforceSync.BbSpWhT1.js → fthry_useSalesforceSync.DJ-dQcVK.js} +1 -1
  66. package/cjs/{fthry_webfontloader.CRX0Ppbc.js → fthry_webfontloader.CpQnAbXr.js} +1 -1
  67. package/cjs/index.d.ts +1 -0
  68. package/cjs/index.d.ts.map +1 -1
  69. package/cjs/index.js +1 -1
  70. package/cjs/integrations/utils.d.ts +1 -0
  71. package/cjs/integrations/utils.d.ts.map +1 -1
  72. package/cjs/thumbnail-renderer.js +1 -1
  73. package/cjs/utils/featheryClient/integrationClient.d.ts +3 -2
  74. package/cjs/utils/featheryClient/integrationClient.d.ts.map +1 -1
  75. package/cjs/utils/formContext.d.ts +2 -1
  76. package/cjs/utils/formContext.d.ts.map +1 -1
  77. package/cjs/utils/internalState.d.ts +36 -2
  78. package/cjs/utils/internalState.d.ts.map +1 -1
  79. package/cjs/utils/stepper.d.ts +3 -0
  80. package/cjs/utils/stepper.d.ts.map +1 -0
  81. package/dist/Form/components/DevNavBar.d.ts.map +1 -1
  82. package/dist/Form/index.d.ts.map +1 -1
  83. package/dist/assistant/AssistantChat.d.ts.map +1 -1
  84. package/dist/assistant/AssistantClient.d.ts +2 -1
  85. package/dist/assistant/AssistantClient.d.ts.map +1 -1
  86. package/dist/assistant/ToolStatus.d.ts.map +1 -1
  87. package/dist/assistant/tools/clickElement.d.ts.map +1 -1
  88. package/dist/assistant/tools/navigate.d.ts +16 -0
  89. package/dist/assistant/tools/navigate.d.ts.map +1 -0
  90. package/dist/assistant/tools/panelRuntime.d.ts +22 -5
  91. package/dist/assistant/tools/panelRuntime.d.ts.map +1 -1
  92. package/dist/assistant/tools/triggerTableAction.d.ts.map +1 -1
  93. package/dist/assistant/tools/utils.d.ts +1 -0
  94. package/dist/assistant/tools/utils.d.ts.map +1 -1
  95. package/dist/elements/basic/ProgressBarElement/components/StepperBar.d.ts.map +1 -1
  96. package/dist/elements/basic/ProgressBarElement/index.d.ts.map +1 -1
  97. package/dist/{fthry_AssistantChat.DT_xLu9j.js → fthry_AssistantChat.CJAt7wH0.js} +358 -100
  98. package/dist/{fthry_FormControl.CjDYAhmh.js → fthry_FormControl.CWgZ1MrD.js} +1 -1
  99. package/dist/{fthry_InlineTooltip.BXJBh9xO.js → fthry_InlineTooltip.7XgEXbYu.js} +1 -1
  100. package/dist/{fthry_PaymentMethodField.Bmc0ADLl.js → fthry_PaymentMethodField.CgAjXVvk.js} +3 -3
  101. package/dist/{fthry_Placeholder.D2CT1bF2.js → fthry_Placeholder.ByFQNx8z.js} +1 -1
  102. package/dist/{fthry_ShowEyeIcon.2gnnZQwI.js → fthry_ShowEyeIcon.BJrSqd0f.js} +1 -1
  103. package/dist/{fthry_TabsElement.CmDA3WMs.js → fthry_TabsElement.CGC4knJ1.js} +1 -1
  104. package/dist/{fthry_auto-track.C318Fmfp.js → fthry_auto-track.CZqUYnsi.js} +2 -2
  105. package/dist/{fthry_highlighted-body-TPN3WLV5.DvjFQ-wQ.js → fthry_highlighted-body-TPN3WLV5.C3z_0DMf.js} +3 -3
  106. package/dist/{fthry_index.D0VQUqXz.js → fthry_index.3Jy6ng8E.js} +1 -1
  107. package/dist/{fthry_index.CI4tFg9l.js → fthry_index.4QNSIT1t.js} +153 -65
  108. package/dist/{fthry_index.eGwSNYvd.js → fthry_index.B2Es9K0o.js} +1 -1
  109. package/dist/{fthry_index.fOZIYWtf.js → fthry_index.B9t_y8G8.js} +10 -10
  110. package/dist/{fthry_index.DxoyRmcK.js → fthry_index.BFVMswJ1.js} +2 -2
  111. package/dist/{fthry_index.Dmsa_IWB.js → fthry_index.BfZgFvaE.js} +1 -1
  112. package/dist/{fthry_index.Dvdg0UC6.js → fthry_index.BjKBqRrG.js} +1 -1
  113. package/dist/{fthry_index.Bh5Hgqlr.js → fthry_index.Bn0j9VXL.js} +2 -2
  114. package/dist/{fthry_index.CxZihOJg.js → fthry_index.Bnm_pBFE.js} +2 -2
  115. package/dist/{fthry_index.BxsXFBiA.js → fthry_index.Btu6A06t.js} +4 -4
  116. package/dist/{fthry_index.D7coWJsd.js → fthry_index.BuFT0arS.js} +1 -1
  117. package/dist/{fthry_index.ZMPDKzng.js → fthry_index.CKVts5To.js} +2 -2
  118. package/dist/{fthry_index.BIOOaSUh.js → fthry_index.CLlR40IQ.js} +4 -4
  119. package/dist/{fthry_index.D2U9Y4Jc.js → fthry_index.CUueWzfP.js} +1 -1
  120. package/dist/{fthry_index.DlEhwT48.js → fthry_index.CX1r3NuY.js} +1 -1
  121. package/dist/{fthry_index.DGl27K_w.js → fthry_index.CsM8DPsH.js} +1 -1
  122. package/dist/{fthry_index.BiAwHsSn.js → fthry_index.CwOyWW-J.js} +4 -4
  123. package/dist/{fthry_index.CmEl9AjF.js → fthry_index.CypPLcEL.js} +1 -1
  124. package/dist/{fthry_index.BdT62ac-.js → fthry_index.D-XOSELH.js} +4 -4
  125. package/dist/{fthry_index.BAS9Rj3B.js → fthry_index.DBLwzmdF.js} +4 -4
  126. package/dist/{fthry_index.cZ4fV2Jh.js → fthry_index.DFn9knto.js} +3 -3
  127. package/dist/{fthry_index.CHcVd9z4.js → fthry_index.DT69gcWO.js} +2 -2
  128. package/dist/{fthry_index.CSdrmFzH.js → fthry_index.DgciEfKe.js} +5 -5
  129. package/dist/{fthry_index.BMLNnooL.js → fthry_index.DpVMd01B.js} +2 -2
  130. package/dist/{fthry_index.SqN7TeCH.js → fthry_index.DwGHkZCX.js} +2 -2
  131. package/dist/{fthry_index.ClcVCvSd.js → fthry_index.LTen71MA.js} +3 -3
  132. package/dist/{fthry_index.CUyyWToU.js → fthry_index.P8wEcmzz.js} +1 -1
  133. package/dist/{fthry_index.BGwZT3G8.js → fthry_index.dFtvnq3I.js} +5 -5
  134. package/dist/{fthry_index.BmPja_lN.js → fthry_index.grYyHutk.js} +7 -7
  135. package/dist/{fthry_index.Vno16k5B.js → fthry_index.jN7H-T8G.js} +3 -3
  136. package/dist/{fthry_index.BBVonB9-.js → fthry_index.lGuVWSnj.js} +1 -1
  137. package/dist/{fthry_index.umd.xldORs1x.js → fthry_index.umd.Dh0beEu5.js} +1 -1
  138. package/dist/{fthry_index.CREmWhTB.js → fthry_index.y_kfjmY0.js} +5 -5
  139. package/dist/{fthry_input.6Rwsft76.js → fthry_input.BXpeFwlq.js} +1 -1
  140. package/dist/{fthry_logging.DWvo9mx5.js → fthry_logging.DRq8nhnp.js} +1 -1
  141. package/dist/fthry_mermaid-O7DHMXV3.CIgHgZjg.js +8 -0
  142. package/dist/{fthry_script.DNhdCztr.js → fthry_script.BygC8at8.js} +1 -1
  143. package/dist/{fthry_styles.DPXDsQxq.js → fthry_styles.DKvdF1tW.js} +1 -1
  144. package/dist/{fthry_useElementSize.orrnTjTM.js → fthry_useElementSize.n7b3hTj8.js} +1 -1
  145. package/dist/{fthry_useSalesforceSync.C66IFKe6.js → fthry_useSalesforceSync.gMwYUngS.js} +1 -1
  146. package/dist/{fthry_webfontloader.BZYYUrT8.js → fthry_webfontloader.CyBgW_8H.js} +1 -1
  147. package/dist/index.d.ts +1 -0
  148. package/dist/index.d.ts.map +1 -1
  149. package/dist/index.js +2 -2
  150. package/dist/integrations/utils.d.ts +1 -0
  151. package/dist/integrations/utils.d.ts.map +1 -1
  152. package/dist/thumbnail-renderer.js +1 -1
  153. package/dist/utils/featheryClient/integrationClient.d.ts +3 -2
  154. package/dist/utils/featheryClient/integrationClient.d.ts.map +1 -1
  155. package/dist/utils/formContext.d.ts +2 -1
  156. package/dist/utils/formContext.d.ts.map +1 -1
  157. package/dist/utils/internalState.d.ts +36 -2
  158. package/dist/utils/internalState.d.ts.map +1 -1
  159. package/dist/utils/stepper.d.ts +3 -0
  160. package/dist/utils/stepper.d.ts.map +1 -0
  161. package/package.json +1 -1
  162. package/umd/AssistantChat.4e04484d6624a1473709.js +1 -0
  163. package/umd/index.js +1 -1
  164. package/dist/fthry_mermaid-O7DHMXV3.CpHtnz5w.js +0 -8
  165. package/umd/AssistantChat.f4f1a5ab9a911c339fd1.js +0 -1
@@ -1,4 +1,4 @@
1
- import { q as __rest, j as jsx, _ as __assign } from './fthry_index.CI4tFg9l.js';
1
+ import { q as __rest, j as jsx, _ as __assign } from './fthry_index.4QNSIT1t.js';
2
2
 
3
3
  // Simple input used for the 'other' option in checkbox and radio groups
4
4
  function FormControl(_a) {
@@ -1,4 +1,4 @@
1
- import { j as jsx, _ as __assign, e as __read, N as replaceTextVariables, z as isMobile, b as jsxs, y as Fragment, p as FORM_Z_INDEX, H as HoverTooltip } from './fthry_index.CI4tFg9l.js';
1
+ import { j as jsx, _ as __assign, e as __read, N as replaceTextVariables, z as isMobile, b as jsxs, y as Fragment, p as FORM_Z_INDEX, H as HoverTooltip } from './fthry_index.4QNSIT1t.js';
2
2
  import { useState, useRef } from 'react';
3
3
 
4
4
  function HelpIcon(_a) {
@@ -1,7 +1,7 @@
1
- import { q as __rest, A as featheryDoc, b as jsxs, _ as __assign, B as getStripe, j as jsx, e as __read, u as useBorder, C as filterKeys, I as ERROR_COLOR } from './fthry_index.CI4tFg9l.js';
1
+ import { q as __rest, A as featheryDoc, b as jsxs, _ as __assign, B as getStripe, j as jsx, e as __read, u as useBorder, C as filterKeys, I as ERROR_COLOR } from './fthry_index.4QNSIT1t.js';
2
2
  import React__default, { memo, useEffect, useState, useRef } from 'react';
3
- import { P as PropTypes } from './fthry_index.Dvdg0UC6.js';
4
- import { I as InlineTooltip } from './fthry_InlineTooltip.BXJBh9xO.js';
3
+ import { P as PropTypes } from './fthry_index.BjKBqRrG.js';
4
+ import { I as InlineTooltip } from './fthry_InlineTooltip.7XgEXbYu.js';
5
5
  import 'react/jsx-runtime';
6
6
  import 'jszip';
7
7
  import 'react-dom';
@@ -1,4 +1,4 @@
1
- import { _ as __assign, j as jsx } from './fthry_index.CI4tFg9l.js';
1
+ import { _ as __assign, j as jsx } from './fthry_index.4QNSIT1t.js';
2
2
 
3
3
  function Placeholder(_a) {
4
4
  var _b;
@@ -1,4 +1,4 @@
1
- import { q as __rest, j as jsx, _ as __assign } from './fthry_index.CI4tFg9l.js';
1
+ import { q as __rest, j as jsx, _ as __assign } from './fthry_index.4QNSIT1t.js';
2
2
 
3
3
  function ShowEyeIcon$1(_a) {
4
4
  var _b = _a.width, width = _b === void 0 ? 30 : _b, _c = _a.height, height = _c === void 0 ? 30 : _c, props = __rest(_a, ["width", "height"]);
@@ -1,4 +1,4 @@
1
- import { h as hoverStylesGuard, b as jsxs, _ as __assign, j as jsx } from './fthry_index.CI4tFg9l.js';
1
+ import { h as hoverStylesGuard, b as jsxs, _ as __assign, j as jsx } from './fthry_index.4QNSIT1t.js';
2
2
  import { useMemo } from 'react';
3
3
  import 'react/jsx-runtime';
4
4
  import 'jszip';
@@ -1,5 +1,5 @@
1
- import { p as pTimeout } from './fthry_index.fOZIYWtf.js';
2
- import './fthry_index.CI4tFg9l.js';
1
+ import { p as pTimeout } from './fthry_index.B9t_y8G8.js';
2
+ import './fthry_index.4QNSIT1t.js';
3
3
  import 'react/jsx-runtime';
4
4
  import 'react';
5
5
  import 'jszip';
@@ -1,11 +1,11 @@
1
- import { R as R$1, M as Mi, B as Bt } from './fthry_AssistantChat.DT_xLu9j.js';
1
+ import { R as R$1, M as Mi, B as Bt } from './fthry_AssistantChat.CJAt7wH0.js';
2
2
  import { useContext, useState, useEffect } from 'react';
3
3
  import { jsx } from 'react/jsx-runtime';
4
- import './fthry_index.CI4tFg9l.js';
4
+ import './fthry_index.4QNSIT1t.js';
5
5
  import 'jszip';
6
6
  import 'react-dom';
7
7
  import './fthry_clsx.ChV9xqsO.js';
8
- import './fthry_index.CUyyWToU.js';
8
+ import './fthry_index.P8wEcmzz.js';
9
9
 
10
10
  var R=({code:s,language:t,raw:e,className:h,startLine:d,...m})=>{let{shikiTheme:l}=useContext(R$1),o=Mi(),[p,i]=useState(e);return useEffect(()=>{if(!o){i(e);return}let r=o.highlight({code:s,language:t,themes:l},c=>{i(c);});r&&i(r);},[s,t,l,o,e]),jsx(Bt,{className:h,language:t,result:p,startLine:d,...m})};
11
11
 
@@ -1,4 +1,4 @@
1
- import { b as jsxs, _ as __assign, j as jsx, e as __read, Q as isEmptyArray, R as toList, S as useThumbnailData, T as __spreadArray, i as imgMaxSizeStyles, s as __awaiter, t as __generator, U as downloadFile, V as CloseIcon, d as iosScrollOnFocus, p as FORM_Z_INDEX, W as justRemove } from './fthry_index.CI4tFg9l.js';
1
+ import { b as jsxs, _ as __assign, j as jsx, e as __read, Q as isEmptyArray, R as toList, S as useThumbnailData, T as __spreadArray, i as imgMaxSizeStyles, s as __awaiter, t as __generator, U as downloadFile, V as CloseIcon, d as iosScrollOnFocus, p as FORM_Z_INDEX, W as justRemove } from './fthry_index.4QNSIT1t.js';
2
2
  import { useRef, useState, useEffect } from 'react';
3
3
  import 'react/jsx-runtime';
4
4
  import 'jszip';
@@ -9223,7 +9223,7 @@ var IntegrationClient = /** @class */ (function () {
9223
9223
  };
9224
9224
  IntegrationClient.prototype.sendDocusignEnvelope = function (_a) {
9225
9225
  var _this = this;
9226
- var documents = _a.documents, libraryDocuments = _a.libraryDocuments, fillData = _a.fillData, emailSubject = _a.emailSubject, emailBlurb = _a.emailBlurb, signers = _a.signers, existingEnvelopeId = _a.existingEnvelopeId, draft = _a.draft;
9226
+ var documents = _a.documents, libraryDocuments = _a.libraryDocuments, fillData = _a.fillData, emailSubject = _a.emailSubject, emailBlurb = _a.emailBlurb, signers = _a.signers, existingEnvelopeId = _a.existingEnvelopeId, draft = _a.draft, wetSign = _a.wetSign, useDisclosure = _a.useDisclosure, notification = _a.notification, brandId = _a.brandId, enforceSignerVisibility = _a.enforceSignerVisibility;
9227
9227
  var userId = initInfo().userId;
9228
9228
  var url = "".concat(API_URL, "docusign/envelope/");
9229
9229
  var options = {
@@ -9232,14 +9232,36 @@ var IntegrationClient = /** @class */ (function () {
9232
9232
  body: JSON.stringify({
9233
9233
  fuser_key: userId,
9234
9234
  form_key: this.formKey,
9235
- documents: documents,
9235
+ // Polymorphic: plain UUID strings pass through; object entries are
9236
+ // sent with snake_case keys for multi-instance envelopes.
9237
+ documents: documents === null || documents === void 0 ? void 0 : documents.map(function (doc) {
9238
+ return typeof doc === 'string'
9239
+ ? doc
9240
+ : {
9241
+ document_id: doc.documentId,
9242
+ envelope_id: doc.envelopeId,
9243
+ fill_data: doc.fillData,
9244
+ signer_map: doc.signerMap
9245
+ };
9246
+ }),
9236
9247
  library_documents: libraryDocuments,
9237
9248
  fill_data: fillData,
9238
9249
  email_subject: emailSubject,
9239
9250
  email_blurb: emailBlurb,
9240
- signers: signers,
9251
+ signers: signers === null || signers === void 0 ? void 0 : signers.map(function (signer) { return ({
9252
+ email: signer.email,
9253
+ name: signer.name,
9254
+ sign_method: signer.signMethod,
9255
+ routing_order: signer.routingOrder,
9256
+ excluded_documents: signer.excludedDocuments
9257
+ }); }),
9241
9258
  docusign_envelope_id: existingEnvelopeId,
9242
- draft: draft
9259
+ draft: draft,
9260
+ wet_sign: wetSign,
9261
+ use_disclosure: useDisclosure,
9262
+ notification: notification,
9263
+ brand_id: brandId,
9264
+ enforce_signer_visibility: enforceSignerVisibility
9243
9265
  })
9244
9266
  };
9245
9267
  return this._fetch(url, options, false).then(function (response) { return __awaiter$2(_this, void 0, void 0, function () {
@@ -9290,6 +9312,41 @@ var IntegrationClient = /** @class */ (function () {
9290
9312
  });
9291
9313
  }); });
9292
9314
  };
9315
+ IntegrationClient.prototype.updateDocusignEnvelope = function (_a) {
9316
+ var _this = this;
9317
+ var envelopeId = _a.envelopeId, status = _a.status, voidedReason = _a.voidedReason;
9318
+ var userId = initInfo().userId;
9319
+ var url = "".concat(API_URL, "docusign/envelope/");
9320
+ var options = {
9321
+ headers: { 'Content-Type': 'application/json' },
9322
+ method: 'PATCH',
9323
+ body: JSON.stringify({
9324
+ fuser_key: userId,
9325
+ form_key: this.formKey,
9326
+ docusign_envelope_id: envelopeId,
9327
+ status: status,
9328
+ voided_reason: voidedReason
9329
+ })
9330
+ };
9331
+ return this._fetch(url, options, false).then(function (response) { return __awaiter$2(_this, void 0, void 0, function () {
9332
+ var _a, _b;
9333
+ return __generator(this, function (_c) {
9334
+ switch (_c.label) {
9335
+ case 0:
9336
+ if (!response) return [3 /*break*/, 4];
9337
+ if (!response.ok) return [3 /*break*/, 2];
9338
+ return [4 /*yield*/, response.json()];
9339
+ case 1: return [2 /*return*/, _c.sent()];
9340
+ case 2:
9341
+ _a = Error;
9342
+ _b = distExports$2.parseAPIError;
9343
+ return [4 /*yield*/, response.json()];
9344
+ case 3: throw _a.apply(void 0, [_b.apply(void 0, [_c.sent()])]);
9345
+ case 4: return [2 /*return*/];
9346
+ }
9347
+ });
9348
+ }); });
9349
+ };
9293
9350
  IntegrationClient.prototype.generateQuikEnvelopes = function (action) {
9294
9351
  return __awaiter$2(this, void 0, void 0, function () {
9295
9352
  var _a, userId, sdkKey, tags, fieldVal, resolvedAction;
@@ -21825,7 +21882,7 @@ function DevNavBar(_a) {
21825
21882
  return null;
21826
21883
  var isForward = activeNav === 'forward';
21827
21884
  var stepKeys = isForward ? nextStepKeys : prevStepKeys;
21828
- return (jsx$1("div", __assign({ css: __assign({ position: 'absolute', bottom: '-10px', maxHeight: '300px', width: '200px', backgroundColor: 'white', boxShadow: '0 4px 14px #00000040', borderRadius: '6px', overflowY: 'scroll' }, (isForward ? { left: '300px' } : { right: '300px' })) }, { children: stepKeys.map(function (key) { return (jsx$1("div", __assign({ css: {
21885
+ return (jsx$1("div", __assign({ css: __assign({ position: 'absolute', bottom: '-10px', maxHeight: '300px', width: '200px', backgroundColor: 'white', color: 'black', boxShadow: '0 4px 14px #00000040', borderRadius: '6px', overflowY: 'scroll' }, (isForward ? { left: '300px' } : { right: '300px' })) }, { children: stepKeys.map(function (key) { return (jsx$1("div", __assign({ css: {
21829
21886
  minHeight: '38px',
21830
21887
  borderBottom: "1px solid ".concat(lightGrey),
21831
21888
  display: 'flex',
@@ -24823,7 +24880,9 @@ var getFormContext = function (formUuid) {
24823
24880
  updateTheme: updateTheme,
24824
24881
  goToStep: function (stepKey) {
24825
24882
  var currentStep = formState.currentStep, navigate = formState.navigate, steps = formState.steps, setStepKey = formState.setStepKey, client = formState.client, trackHashes = formState.trackHashes;
24826
- changeStep(stepKey, currentStep.key, steps, setStepKey, navigate, client, trackHashes);
24883
+ var changed = changeStep(stepKey, currentStep.key, steps, setStepKey, navigate, client, trackHashes);
24884
+ if (changed)
24885
+ formState.latestStepName = stepKey;
24827
24886
  },
24828
24887
  isTestForm: function () { return initState.isTestEnv; },
24829
24888
  isLastStep: function () {
@@ -24947,6 +25006,9 @@ var getFormContext = function (formUuid) {
24947
25006
  getDocusignEnvelope: function (params) {
24948
25007
  return formState.getDocusignEnvelope(params);
24949
25008
  },
25009
+ updateDocusignEnvelope: function (params) {
25010
+ return formState.updateDocusignEnvelope(params);
25011
+ },
24950
25012
  applyAlloyJourney: function (journeyToken, entities) {
24951
25013
  return formState.client.alloyJourneyApplication(journeyToken, entities);
24952
25014
  },
@@ -41348,7 +41410,7 @@ function useTrackUserInteraction(formRef, activeStep, stepKey, formName) {
41348
41410
  }, [activeStep, stepKey, formName]);
41349
41411
  }
41350
41412
 
41351
- var LazyAssistantChat = lazy(function () { return import(/* webpackChunkName: "AssistantChat" */ './fthry_AssistantChat.DT_xLu9j.js').then(function (n) { return n.A; }); });
41413
+ var LazyAssistantChat = lazy(function () { return import(/* webpackChunkName: "AssistantChat" */ './fthry_AssistantChat.CJAt7wH0.js').then(function (n) { return n.A; }); });
41352
41414
  var AssistantChat = function (props) { return (jsx$1(Suspense, __assign({ fallback: null }, { children: jsx$1(LazyAssistantChat, __assign({}, props)) }))); };
41353
41415
 
41354
41416
  var AssistantClient = /** @class */ (function () {
@@ -41955,11 +42017,11 @@ function Form(_a) {
41955
42017
  data = __assign({}, fieldValues);
41956
42018
  fieldData = {};
41957
42019
  if ((_d = integrations === null || integrations === void 0 ? void 0 : integrations.segment) === null || _d === void 0 ? void 0 : _d.metadata.track_fields)
41958
- fieldData.segment = data;
42020
+ fieldData.segment = filterTrackedFields(data, integrations.segment.metadata.track_field_keys);
41959
42021
  if ((_e = integrations === null || integrations === void 0 ? void 0 : integrations.amplitude) === null || _e === void 0 ? void 0 : _e.metadata.track_fields)
41960
- fieldData.amplitude = data;
42022
+ fieldData.amplitude = filterTrackedFields(data, integrations.amplitude.metadata.track_field_keys);
41961
42023
  if ((_f = integrations === null || integrations === void 0 ? void 0 : integrations['google-tag-manager']) === null || _f === void 0 ? void 0 : _f.metadata.track_fields)
41962
- fieldData['google-tag-manager'] = data;
42024
+ fieldData['google-tag-manager'] = filterTrackedFields(data, integrations['google-tag-manager'].metadata.track_field_keys);
41963
42025
  trackEvent(integrations, 'FeatheryFormComplete', '', formName, fieldData);
41964
42026
  return [4 /*yield*/, runUserLogic('form_complete')];
41965
42027
  case 1:
@@ -42070,6 +42132,8 @@ function Form(_a) {
42070
42132
  var _a;
42071
42133
  var changed = changeStep(newKey, oldKey, steps, setStepKey, navigate, client, trackHashes.current);
42072
42134
  if (changed) {
42135
+ if (internalState[_internalId])
42136
+ internalState[_internalId].latestStepName = newKey;
42073
42137
  var backKey = load ? backNavMap[oldKey] : oldKey;
42074
42138
  updateBackNavMap((_a = {}, _a[newKey] = backKey, _a));
42075
42139
  }
@@ -42108,7 +42172,9 @@ function Form(_a) {
42108
42172
  setFormInternalState(_internalId, {
42109
42173
  language: language !== null && language !== void 0 ? language : initState.language,
42110
42174
  currentStep: newStep,
42175
+ latestStepName: newStep.key,
42111
42176
  previousStepName: (_c = activeStep === null || activeStep === void 0 ? void 0 : activeStep.key) !== null && _c !== void 0 ? _c : '',
42177
+ backNavMap: backNavMap,
42112
42178
  visiblePositions: newVisiblePositions,
42113
42179
  client: client,
42114
42180
  fields: fields,
@@ -42197,6 +42263,9 @@ function Form(_a) {
42197
42263
  getDocusignEnvelope: function (params) {
42198
42264
  return client.getDocusignEnvelope(params);
42199
42265
  },
42266
+ updateDocusignEnvelope: function (params) {
42267
+ return client.updateDocusignEnvelope(params);
42268
+ },
42200
42269
  fillQuikForms: function (_a) {
42201
42270
  var fillType = _a.fillType, docusignConnectionId = _a.docusignConnectionId, docusignCustomId = _a.docusignCustomId, enableWetSign = _a.enableWetSign, documentTemplates = _a.documentTemplates, envelopes = _a.envelopes, attachments = _a.attachments;
42202
42271
  return __awaiter$2(_this, void 0, void 0, function () {
@@ -42613,7 +42682,7 @@ function Form(_a) {
42613
42682
  return nextStepKey(activeStep.next_conditions, metadata);
42614
42683
  };
42615
42684
  var submitStep = function (metadata, repeat, hasNext) { return __awaiter$2(_this, void 0, void 0, function () {
42616
- var formattedFields, trigger, newInlineErrors, errors, errorMessage, errorField, customSubmitCode, invalid, featheryFields, stepPromise, fieldData, hasSubmitAfter;
42685
+ var formattedFields, trigger, newInlineErrors, errors, errorMessage, errorField, customSubmitCode, invalid, featheryFields, stepPromise, fieldData, gtmFields, hasSubmitAfter;
42617
42686
  var _this = this;
42618
42687
  var _a, _b, _c;
42619
42688
  return __generator(this, function (_d) {
@@ -42694,15 +42763,17 @@ function Form(_a) {
42694
42763
  stepPromise = client.submitStep(featheryFields, activeStep, hasNext);
42695
42764
  fieldData = {};
42696
42765
  if ((_a = integrations === null || integrations === void 0 ? void 0 : integrations.segment) === null || _a === void 0 ? void 0 : _a.metadata.track_fields)
42697
- fieldData.segment = formattedFields;
42766
+ fieldData.segment = filterTrackedFields(formattedFields, integrations.segment.metadata.track_field_keys);
42698
42767
  if ((_b = integrations === null || integrations === void 0 ? void 0 : integrations.amplitude) === null || _b === void 0 ? void 0 : _b.metadata.track_fields)
42699
- fieldData.amplitude = formattedFields;
42700
- if ((_c = integrations === null || integrations === void 0 ? void 0 : integrations['google-tag-manager']) === null || _c === void 0 ? void 0 : _c.metadata.track_fields)
42701
- fieldData['google-tag-manager'] = Object.entries(formattedFields).reduce(function (obj, _a) {
42768
+ fieldData.amplitude = filterTrackedFields(formattedFields, integrations.amplitude.metadata.track_field_keys);
42769
+ if ((_c = integrations === null || integrations === void 0 ? void 0 : integrations['google-tag-manager']) === null || _c === void 0 ? void 0 : _c.metadata.track_fields) {
42770
+ gtmFields = filterTrackedFields(formattedFields, integrations['google-tag-manager'].metadata.track_field_keys);
42771
+ fieldData['google-tag-manager'] = Object.entries(gtmFields).reduce(function (obj, _a) {
42702
42772
  var _b = __read(_a, 2), key = _b[0], val = _b[1];
42703
42773
  obj[key] = val.value;
42704
42774
  return obj;
42705
42775
  }, {});
42776
+ }
42706
42777
  trackEvent(integrations, 'FeatheryStepSubmit', activeStep.key, formName, fieldData);
42707
42778
  hasSubmitAfter = logicRules === null || logicRules === void 0 ? void 0 : logicRules.some(function (logicRule) {
42708
42779
  var _a;
@@ -42938,6 +43009,8 @@ function Form(_a) {
42938
43009
  clearCompletionLoader();
42939
43010
  return [7 /*endfinally*/];
42940
43011
  case 22:
43012
+ if (internalState[_internalId])
43013
+ internalState[_internalId].latestStepName = redirectKey;
42941
43014
  updateBackNavMap((_c = {}, _c[redirectKey] = activeStep.key, _c));
42942
43015
  pendingScrollRef.current = explicitNav;
42943
43016
  if (trackHashes.current) {
@@ -42967,6 +43040,8 @@ function Form(_a) {
42967
43040
  _a.sent();
42968
43041
  prevStepKey = getPrevStepKey(activeStep, backNavMap);
42969
43042
  if (prevStepKey) {
43043
+ if (internalState[_internalId])
43044
+ internalState[_internalId].latestStepName = prevStepKey;
42970
43045
  pendingScrollRef.current = false;
42971
43046
  if (trackHashes.current)
42972
43047
  navigate(getNewStepUrl(prevStepKey));
@@ -45390,7 +45465,7 @@ function loadSegment(segmentConfig, queue) {
45390
45465
  case 0:
45391
45466
  _a.trys.push([0, 2, , 3]);
45392
45467
  return [4 /*yield*/, import(
45393
- /* webpackChunkName: "segment" */ './fthry_index.fOZIYWtf.js').then(function (n) { return n.q; })];
45468
+ /* webpackChunkName: "segment" */ './fthry_index.B9t_y8G8.js').then(function (n) { return n.q; })];
45394
45469
  case 1:
45395
45470
  (AnalyticsBrowserClass = (_a.sent()).AnalyticsBrowser);
45396
45471
  return [3 /*break*/, 3];
@@ -46614,6 +46689,17 @@ function initializeIntegrations(integs, featheryClient) {
46614
46689
  });
46615
46690
  });
46616
46691
  }
46692
+ // Restrict a field-data payload to a configured subset of field keys.
46693
+ // An empty or absent selection means "send all fields" (the default behavior).
46694
+ var filterTrackedFields = function (fields, selectedKeys) {
46695
+ if (!(selectedKeys === null || selectedKeys === void 0 ? void 0 : selectedKeys.length))
46696
+ return fields;
46697
+ return selectedKeys.reduce(function (acc, key) {
46698
+ if (key in fields)
46699
+ acc[key] = fields[key];
46700
+ return acc;
46701
+ }, {});
46702
+ };
46617
46703
  function trackEvent(integrations, title, stepId, formName, fieldData) {
46618
46704
  var _a, _b, _c;
46619
46705
  var metadata = {
@@ -48043,9 +48129,9 @@ function init(sdkKey, options) {
48043
48129
  if (runningInClient()) {
48044
48130
  // Dynamically load libraries that must be client side
48045
48131
  global.scriptjsLoadPromise = import(
48046
- /* webpackChunkName: "scriptjs" */ './fthry_script.DNhdCztr.js').then(function (n) { return n.s; });
48132
+ /* webpackChunkName: "scriptjs" */ './fthry_script.BygC8at8.js').then(function (n) { return n.s; });
48047
48133
  global.webfontloaderPromise = import(
48048
- /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.BZYYUrT8.js').then(function (n) { return n.w; });
48134
+ /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.CyBgW_8H.js').then(function (n) { return n.w; });
48049
48135
  // Client-side tracking logic
48050
48136
  if (initState.userTracking === 'cookie') {
48051
48137
  var cookieKey = "feathery-user-id-".concat(sdkKey);
@@ -48232,7 +48318,7 @@ function loadCompletedSteps(client) {
48232
48318
  });
48233
48319
  }
48234
48320
  function logFeatheryBadge() {
48235
- console.log('%c Feathery %c v' + "2.51.1" + ' ', // replaced with real version during build
48321
+ console.log('%c Feathery %c v' + "2.53.0" + ' ', // replaced with real version during build
48236
48322
  '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;');
48237
48323
  }
48238
48324
 
@@ -49829,64 +49915,64 @@ function resolveLabelStyle(style, opts) {
49829
49915
 
49830
49916
  var fieldLoaders = {
49831
49917
  AddressLine1: function () {
49832
- return import(/* webpackChunkName: "AddressField" */ './fthry_index.BxsXFBiA.js');
49918
+ return import(/* webpackChunkName: "AddressField" */ './fthry_index.Btu6A06t.js');
49833
49919
  },
49834
49920
  ButtonGroupField: function () {
49835
- return import(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.ClcVCvSd.js');
49921
+ return import(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.LTen71MA.js');
49836
49922
  },
49837
49923
  CheckboxField: function () {
49838
- return import(/* webpackChunkName: "CheckboxField" */ './fthry_index.eGwSNYvd.js');
49924
+ return import(/* webpackChunkName: "CheckboxField" */ './fthry_index.B2Es9K0o.js');
49839
49925
  },
49840
49926
  CheckboxGroupField: function () {
49841
- return import(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.BGwZT3G8.js');
49927
+ return import(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.dFtvnq3I.js');
49842
49928
  },
49843
49929
  ColorPickerField: function () {
49844
- return import(/* webpackChunkName: "ColorPickerField" */ './fthry_index.BBVonB9-.js');
49930
+ return import(/* webpackChunkName: "ColorPickerField" */ './fthry_index.lGuVWSnj.js');
49845
49931
  },
49846
49932
  CustomField: function () {
49847
- return import(/* webpackChunkName: "CustomField" */ './fthry_index.Dmsa_IWB.js');
49933
+ return import(/* webpackChunkName: "CustomField" */ './fthry_index.BfZgFvaE.js');
49848
49934
  },
49849
49935
  DateSelectorField: function () {
49850
- return import(/* webpackChunkName: "DateSelectorField" */ './fthry_index.CSdrmFzH.js');
49936
+ return import(/* webpackChunkName: "DateSelectorField" */ './fthry_index.DgciEfKe.js');
49851
49937
  },
49852
49938
  DropdownField: function () {
49853
- return import(/* webpackChunkName: "DropdownField" */ './fthry_index.BIOOaSUh.js');
49939
+ return import(/* webpackChunkName: "DropdownField" */ './fthry_index.CLlR40IQ.js');
49854
49940
  },
49855
49941
  DropdownMultiField: function () {
49856
- return import(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.BdT62ac-.js');
49942
+ return import(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.D-XOSELH.js');
49857
49943
  },
49858
49944
  FileUploadField: function () {
49859
- return import(/* webpackChunkName: "FileUploadField" */ './fthry_index.D0VQUqXz.js');
49945
+ return import(/* webpackChunkName: "FileUploadField" */ './fthry_index.3Jy6ng8E.js');
49860
49946
  },
49861
49947
  MatrixField: function () {
49862
- return import(/* webpackChunkName: "MatrixField" */ './fthry_index.Bh5Hgqlr.js');
49948
+ return import(/* webpackChunkName: "MatrixField" */ './fthry_index.Bn0j9VXL.js');
49863
49949
  },
49864
49950
  PasswordField: function () {
49865
- return import(/* webpackChunkName: "PasswordField" */ './fthry_index.BAS9Rj3B.js');
49951
+ return import(/* webpackChunkName: "PasswordField" */ './fthry_index.DBLwzmdF.js');
49866
49952
  },
49867
49953
  PaymentMethodField: function () {
49868
- return import(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.Bmc0ADLl.js');
49954
+ return import(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.CgAjXVvk.js');
49869
49955
  },
49870
- PhoneField: function () { return import(/* webpackChunkName: "PhoneField" */ './fthry_index.BiAwHsSn.js'); },
49956
+ PhoneField: function () { return import(/* webpackChunkName: "PhoneField" */ './fthry_index.CwOyWW-J.js'); },
49871
49957
  PinInputField: function () {
49872
- return import(/* webpackChunkName: "PinInputField" */ './fthry_index.CmEl9AjF.js');
49958
+ return import(/* webpackChunkName: "PinInputField" */ './fthry_index.CypPLcEL.js');
49873
49959
  },
49874
- QRScanner: function () { return import(/* webpackChunkName: "QRScanner" */ './fthry_index.DxoyRmcK.js'); },
49960
+ QRScanner: function () { return import(/* webpackChunkName: "QRScanner" */ './fthry_index.BFVMswJ1.js'); },
49875
49961
  RadioButtonGroupField: function () {
49876
49962
  return import(
49877
- /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.CREmWhTB.js');
49963
+ /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.y_kfjmY0.js');
49878
49964
  },
49879
49965
  RatingField: function () {
49880
- return import(/* webpackChunkName: "RatingField" */ './fthry_index.D2U9Y4Jc.js');
49966
+ return import(/* webpackChunkName: "RatingField" */ './fthry_index.CUueWzfP.js');
49881
49967
  },
49882
49968
  SignatureField: function () {
49883
- return import(/* webpackChunkName: "SignatureField" */ './fthry_index.Vno16k5B.js');
49969
+ return import(/* webpackChunkName: "SignatureField" */ './fthry_index.jN7H-T8G.js');
49884
49970
  },
49885
49971
  SliderField: function () {
49886
- return import(/* webpackChunkName: "SliderField" */ './fthry_index.CxZihOJg.js');
49972
+ return import(/* webpackChunkName: "SliderField" */ './fthry_index.Bnm_pBFE.js');
49887
49973
  },
49888
- TextField: function () { return import(/* webpackChunkName: "TextField" */ './fthry_index.BmPja_lN.js'); },
49889
- TextArea: function () { return import(/* webpackChunkName: "TextArea" */ './fthry_index.cZ4fV2Jh.js'); }
49974
+ TextField: function () { return import(/* webpackChunkName: "TextField" */ './fthry_index.grYyHutk.js'); },
49975
+ TextArea: function () { return import(/* webpackChunkName: "TextArea" */ './fthry_index.DFn9knto.js'); }
49890
49976
  };
49891
49977
  var getPositionKey = function (element) { var _a; return ((_a = element.position) === null || _a === void 0 ? void 0 : _a.join(',')) || 'root'; };
49892
49978
  // Share the resolved component between preload and render. A separate
@@ -50802,28 +50888,33 @@ function SegmentBar(_a) {
50802
50888
  _c) }, { children: filledSegments })));
50803
50889
  }
50804
50890
 
50805
- var CIRCLE_SIZE = 28;
50806
- var CONNECTOR_GAP = 4;
50807
- function isFieldTruthy(fieldKey) {
50891
+ function isStepperFieldTruthy(fieldKey) {
50808
50892
  var val = getFieldValues()[fieldKey];
50809
50893
  if (Array.isArray(val))
50810
50894
  return val.length > 0;
50811
50895
  return !!val;
50812
50896
  }
50813
- function isStepVisible(step) {
50814
- var cond = step.visibility_condition;
50815
- if (!cond || !step.visibility_field_key)
50897
+ function isStepperStepVisible(stepConfig) {
50898
+ var cond = stepConfig === null || stepConfig === void 0 ? void 0 : stepConfig.visibility_condition;
50899
+ if (!cond || !(stepConfig === null || stepConfig === void 0 ? void 0 : stepConfig.visibility_field_key))
50816
50900
  return true;
50817
- var truthy = isFieldTruthy(step.visibility_field_key);
50901
+ var truthy = isStepperFieldTruthy(stepConfig.visibility_field_key);
50818
50902
  return cond === 'show' ? truthy : !truthy;
50819
50903
  }
50904
+ // A stepper step is reachable when it isn't the current step and either all-step navigation is on or it was already completed
50905
+ function isStepperStepReachable(isActive, allowAllNavigation, isCompleted) {
50906
+ return !isActive && (allowAllNavigation || isCompleted);
50907
+ }
50908
+
50909
+ var CIRCLE_SIZE = 28;
50910
+ var CONNECTOR_GAP = 4;
50820
50911
  function StepperBar(_a) {
50821
50912
  var _b, _c;
50822
50913
  var _d;
50823
50914
  var styles = _a.styles, stepConfigs = _a.stepConfigs, stepKey = _a.stepKey, _e = _a.textPlacement, textPlacement = _e === void 0 ? 'bottom' : _e, onStepClick = _a.onStepClick, _f = _a.allowAllNavigation, allowAllNavigation = _f === void 0 ? false : _f, _g = _a.vertical, vertical = _g === void 0 ? false : _g, style = _a.style;
50824
50915
  var barStyles = styles.getTarget('bar');
50825
50916
  var showLabels = textPlacement !== 'none';
50826
- var visibleStepConfigs = stepConfigs.filter(isStepVisible);
50917
+ var visibleStepConfigs = stepConfigs.filter(isStepperStepVisible);
50827
50918
  var steps = visibleStepConfigs.map(function (s) { return s.label; });
50828
50919
  var activeStep = stepKey
50829
50920
  ? Math.max(0, visibleStepConfigs.findIndex(function (s) { return s.step_key === stepKey; }))
@@ -50858,8 +50949,7 @@ function StepperBar(_a) {
50858
50949
  // clickable; otherwise only completed (already-visited) steps are.
50859
50950
  var isClickable = !!onStepClick &&
50860
50951
  !!sKey &&
50861
- !isActive &&
50862
- (allowAllNavigation || isCompleted);
50952
+ isStepperStepReachable(isActive, allowAllNavigation, isCompleted);
50863
50953
  var connectorStyle = vertical
50864
50954
  ? {
50865
50955
  width: '2px',
@@ -50930,10 +51020,10 @@ function applyProgressBarStyles(responsiveStyles) {
50930
51020
  return responsiveStyles;
50931
51021
  }
50932
51022
  function ProgressBarElement(_a) {
50933
- var _b, _c, _d, _e, _f, _g, _h, _j;
50934
- var element = _a.element, responsiveStyles = _a.responsiveStyles, progress = _a.progress, _k = _a.curDepth, curDepth = _k === void 0 ? 1 : _k, _l = _a.maxDepth, maxDepth = _l === void 0 ? 1 : _l, stepKey = _a.stepKey, runElementActions = _a.runElementActions, client = _a.client, _m = _a.elementProps, elementProps = _m === void 0 ? {} : _m, children = _a.children;
51023
+ var _b, _c, _d, _e, _f, _g;
51024
+ var element = _a.element, responsiveStyles = _a.responsiveStyles, progress = _a.progress, _h = _a.curDepth, curDepth = _h === void 0 ? 1 : _h, _j = _a.maxDepth, maxDepth = _j === void 0 ? 1 : _j, stepKey = _a.stepKey, runElementActions = _a.runElementActions, client = _a.client, _k = _a.elementProps, elementProps = _k === void 0 ? {} : _k, children = _a.children;
50935
51025
  var styles = useMemo(function () { return applyProgressBarStyles(responsiveStyles); }, [responsiveStyles]);
50936
- var _o = __read(useReducer(function (x) { return x + 1; }, 0), 2), rerender = _o[1];
51026
+ var _l = __read(useReducer(function (x) { return x + 1; }, 0), 2), rerender = _l[1];
50937
51027
  var isStepper = !!((_b = element.properties) === null || _b === void 0 ? void 0 : _b.stepper);
50938
51028
  // Fetch prior step completion the first time a stepper renders (deduped per
50939
51029
  // form inside loadCompletedSteps), then re-render this stepper to show it
@@ -50944,9 +51034,9 @@ function ProgressBarElement(_a) {
50944
51034
  var vertical = element.styles.bar_direction === 'vertical';
50945
51035
  var containerProps = __assign({ css: __assign(__assign({ display: 'flex', flexDirection: 'column', position: 'relative', width: '100%' }, (vertical && { height: '100%' })), styles.getTarget('barContainer')) }, elementProps);
50946
51036
  if (isStepper) {
50947
- // Clicking a step navigates to it via a NEXT action. When navigation to all
50948
- // steps is enabled, the current step is validated & submitted first;
50949
- // otherwise only already-visited steps are clickable
51037
+ // Clicking a step navigates to it via a NEXT action without submitting.
51038
+ // Navigation to all steps makes any step clickable, otherwise only
51039
+ // already-visited steps are
50950
51040
  var allowAllNavigation = !!((_c = element.properties) === null || _c === void 0 ? void 0 : _c.navigate_to_all_steps);
50951
51041
  var onStepClick = function (targetStepKey) {
50952
51042
  return runElementActions({
@@ -50955,9 +51045,7 @@ function ProgressBarElement(_a) {
50955
51045
  actions: [{ type: ACTION_NEXT, next_step_key: targetStepKey }]
50956
51046
  });
50957
51047
  };
50958
- return (jsxs("div", __assign({}, containerProps, { children: [children, jsx$1(StepperBar, { styles: styles,
50959
- // TODO: remove stepper_steps after BE migration
50960
- stepConfigs: (_g = (_e = (_d = element.properties) === null || _d === void 0 ? void 0 : _d.entries) !== null && _e !== void 0 ? _e : (_f = element.properties) === null || _f === void 0 ? void 0 : _f.stepper_steps) !== null && _g !== void 0 ? _g : [], stepKey: stepKey, textPlacement: element.styles.percent_text_layout, onStepClick: onStepClick, allowAllNavigation: allowAllNavigation, vertical: vertical, style: vertical ? { flex: 1 } : undefined })] })));
51048
+ return (jsxs("div", __assign({}, containerProps, { children: [children, jsx$1(StepperBar, { styles: styles, stepConfigs: (_e = (_d = element.properties) === null || _d === void 0 ? void 0 : _d.entries) !== null && _e !== void 0 ? _e : [], stepKey: stepKey, textPlacement: element.styles.percent_text_layout, onStepClick: onStepClick, allowAllNavigation: allowAllNavigation, vertical: vertical, style: vertical ? { flex: 1 } : undefined })] })));
50961
51049
  }
50962
51050
  var userProgress, userSegments;
50963
51051
  if (![null, undefined].includes(progress)) {
@@ -50966,10 +51054,10 @@ function ProgressBarElement(_a) {
50966
51054
  }
50967
51055
  else {
50968
51056
  userProgress = progress.progress;
50969
- userSegments = (_h = progress.segments) !== null && _h !== void 0 ? _h : element.properties.num_segments;
51057
+ userSegments = (_f = progress.segments) !== null && _f !== void 0 ? _f : element.properties.num_segments;
50970
51058
  }
50971
51059
  }
50972
- userProgress = userProgress !== null && userProgress !== void 0 ? userProgress : (_j = element.properties) === null || _j === void 0 ? void 0 : _j.progress;
51060
+ userProgress = userProgress !== null && userProgress !== void 0 ? userProgress : (_g = element.properties) === null || _g === void 0 ? void 0 : _g.progress;
50973
51061
  var percent = isNum(userProgress)
50974
51062
  ? userProgress
50975
51063
  : Math.round((100 * (curDepth + 1)) / ((maxDepth || 1) + 1));
@@ -51140,8 +51228,8 @@ function ElementSkeleton(_a) {
51140
51228
  }
51141
51229
  var templateObject_1;
51142
51230
 
51143
- var TableElement = lazy(function () { return import(/* webpackChunkName: "TableElement" */ './fthry_index.DlEhwT48.js'); });
51144
- var TabsElement = lazy(function () { return import(/* webpackChunkName: "TabsElement" */ './fthry_TabsElement.CmDA3WMs.js'); });
51231
+ var TableElement = lazy(function () { return import(/* webpackChunkName: "TableElement" */ './fthry_index.CX1r3NuY.js'); });
51232
+ var TabsElement = lazy(function () { return import(/* webpackChunkName: "TabsElement" */ './fthry_TabsElement.CGC4knJ1.js'); });
51145
51233
  var Basic = {
51146
51234
  ImageElement: ImageElement,
51147
51235
  VideoElement: VideoElement,
@@ -51171,4 +51259,4 @@ Object.entries(Elements).map(function (_a) {
51171
51259
  });
51172
51260
  });
51173
51261
 
51174
- export { firebaseSMSCountries as $, featheryDoc as A, getStripe as B, filterKeys as C, DEFAULT_MOBILE_BREAKPOINT as D, ErrorInput as E, FeatheryCacheProvider as F, Grid as G, HoverTooltip as H, ERROR_COLOR as I, DROPDOWN_Z_INDEX as J, getFieldValue$1 as K, stringifyWithNull as L, emailPatternStr as M, replaceTextVariables as N, Overlay as O, debounce as P, isEmptyArray as Q, toList as R, useThumbnailData as S, __spreadArray as T, downloadFile as U, CloseIcon as V, justRemove as W, isNum as X, phoneLib as Y, authState as Z, __assign as _, calculateGlobalCSS as a, loadPhoneValidator as a$, phoneLibPromise as a0, __values as a1, loadQRScanner as a2, throttle as a3, qrPromise as a4, AuthContext as a5, getFieldValues as a6, setFieldValues as a7, updateTheme as a8, updateUserId as a9, MS as aA, KEYFRAMES as aB, DECLARATION as aC, dealloc as aD, alloc as aE, hash as aF, charat as aG, strlen as aH, indexof as aI, next as aJ, token as aK, from as aL, peek as aM, delimit as aN, slice as aO, position as aP, compile as aQ, Tooltip as aR, __extends as aS, formatDateString as aT, internalState as aU, getPositionKey$1 as aV, initState as aW, getRepeatedContainers as aX, getRepeatedContainer as aY, getDefaultFieldValue as aZ, isButtonDisabled as a_, init as aa, Elements as ab, ReactForm as ac, v4$1 as ad, LoginForm as ae, JSForm as af, getFormContext as ag, resolveLabelStyle as ah, AssistantChat as ai, StyledContainer as aj, devicePixelRatio as ak, toBase64 as al, MODAL_Z_INDEX as am, dataURLToFile as an, stringify$2 as ao, rulesheet as ap, COMMENT as aq, middleware as ar, RULESET as as, combine as at, match as au, serialize as av, copy as aw, replace as ax, WEBKIT as ay, MOZ as az, jsxs as b, initInfo as b0, getCookie as b1, calculateStepCSS as c, iosScrollOnFocus as d, __read as e, fieldValues as f, getVisiblePositions as g, hoverStylesGuard as h, imgMaxSizeStyles as i, jsx$1 as j, countryData as k, css as l, __makeTemplateObject as m, noTextSelectStyles as n, Global as o, FORM_Z_INDEX as p, __rest$1 as q, resetStyles as r, __awaiter$2 as s, __generator as t, useBorder as u, FeatheryClient as v, featheryWindow as w, getDefaultExportFromCjs as x, Fragment as y, isMobile as z };
51262
+ export { firebaseSMSCountries as $, featheryDoc as A, getStripe as B, filterKeys as C, DEFAULT_MOBILE_BREAKPOINT as D, ErrorInput as E, FeatheryCacheProvider as F, Grid as G, HoverTooltip as H, ERROR_COLOR as I, DROPDOWN_Z_INDEX as J, getFieldValue$1 as K, stringifyWithNull as L, emailPatternStr as M, replaceTextVariables as N, Overlay as O, debounce as P, isEmptyArray as Q, toList as R, useThumbnailData as S, __spreadArray as T, downloadFile as U, CloseIcon as V, justRemove as W, isNum as X, phoneLib as Y, authState as Z, __assign as _, calculateGlobalCSS as a, ACTION_BACK as a$, phoneLibPromise as a0, __values as a1, loadQRScanner as a2, throttle as a3, qrPromise as a4, AuthContext as a5, getFieldValues as a6, setFieldValues as a7, updateTheme as a8, updateUserId as a9, MS as aA, KEYFRAMES as aB, DECLARATION as aC, dealloc as aD, alloc as aE, hash as aF, charat as aG, strlen as aH, indexof as aI, next as aJ, token as aK, from as aL, peek as aM, delimit as aN, slice as aO, position as aP, compile as aQ, Tooltip as aR, __extends as aS, formatDateString as aT, internalState as aU, getPositionKey$1 as aV, loadCompletedSteps as aW, initState as aX, getRepeatedContainers as aY, getRepeatedContainer as aZ, getDefaultFieldValue as a_, init as aa, Elements as ab, ReactForm as ac, v4$1 as ad, LoginForm as ae, JSForm as af, getFormContext as ag, resolveLabelStyle as ah, AssistantChat as ai, StyledContainer as aj, devicePixelRatio as ak, toBase64 as al, MODAL_Z_INDEX as am, dataURLToFile as an, stringify$2 as ao, rulesheet as ap, COMMENT as aq, middleware as ar, RULESET as as, combine as at, match as au, serialize as av, copy as aw, replace as ax, WEBKIT as ay, MOZ as az, jsxs as b, getPrevStepKey as b0, ACTION_NEXT as b1, nextStepKey as b2, isButtonDisabled as b3, getCompletedStepKeys as b4, isStepperStepVisible as b5, isStepperStepReachable as b6, loadPhoneValidator as b7, initInfo as b8, getCookie as b9, calculateStepCSS as c, iosScrollOnFocus as d, __read as e, fieldValues as f, getVisiblePositions as g, hoverStylesGuard as h, imgMaxSizeStyles as i, jsx$1 as j, countryData as k, css as l, __makeTemplateObject as m, noTextSelectStyles as n, Global as o, FORM_Z_INDEX as p, __rest$1 as q, resetStyles as r, __awaiter$2 as s, __generator as t, useBorder as u, FeatheryClient as v, featheryWindow as w, getDefaultExportFromCjs as x, Fragment as y, isMobile as z };
@@ -1,4 +1,4 @@
1
- import { _ as __assign, h as hoverStylesGuard, b as jsxs, j as jsx, d as iosScrollOnFocus } from './fthry_index.CI4tFg9l.js';
1
+ import { _ as __assign, h as hoverStylesGuard, b as jsxs, j as jsx, d as iosScrollOnFocus } from './fthry_index.4QNSIT1t.js';
2
2
  import { useMemo } from 'react';
3
3
  import 'react/jsx-runtime';
4
4
  import 'jszip';