@feathery/react 2.48.1 → 2.50.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 (193) hide show
  1. package/cjs/Form/grid/Container/index.d.ts.map +1 -1
  2. package/cjs/Form/grid/StyledContainer/utils.d.ts.map +1 -1
  3. package/cjs/elements/basic/ButtonElement.d.ts.map +1 -1
  4. package/cjs/elements/basic/TableElement/EditableCell.d.ts +5 -2
  5. package/cjs/elements/basic/TableElement/EditableCell.d.ts.map +1 -1
  6. package/cjs/elements/basic/TableElement/index.d.ts.map +1 -1
  7. package/cjs/elements/basic/TableElement/styles.d.ts +0 -23
  8. package/cjs/elements/basic/TableElement/styles.d.ts.map +1 -1
  9. package/cjs/elements/basic/TableElement/types.d.ts +4 -0
  10. package/cjs/elements/basic/TableElement/types.d.ts.map +1 -1
  11. package/cjs/elements/basic/TableElement/useTableMutations.d.ts +0 -1
  12. package/cjs/elements/basic/TableElement/useTableMutations.d.ts.map +1 -1
  13. package/cjs/elements/basic/TableElement/utils.d.ts +14 -0
  14. package/cjs/elements/basic/TableElement/utils.d.ts.map +1 -1
  15. package/cjs/elements/components/HoverTooltip.d.ts +24 -0
  16. package/cjs/elements/components/HoverTooltip.d.ts.map +1 -0
  17. package/cjs/elements/components/InlineTooltip.d.ts.map +1 -1
  18. package/cjs/elements/components/Overlay.d.ts +1 -1
  19. package/cjs/elements/components/Overlay.d.ts.map +1 -1
  20. package/cjs/elements/components/QuikFormViewer.d.ts.map +1 -1
  21. package/cjs/elements/components/TextHoverTooltip.d.ts.map +1 -1
  22. package/cjs/elements/components/Tooltip.d.ts +2 -1
  23. package/cjs/elements/components/Tooltip.d.ts.map +1 -1
  24. package/cjs/{fthry_AssistantChat.BjyKdtNo.js → fthry_AssistantChat.BT32wDG3.js} +4 -4
  25. package/cjs/{fthry_FormControl.Bjj4gcfs.js → fthry_FormControl.D4ekieUI.js} +1 -1
  26. package/cjs/{fthry_InlineTooltip.D5tgdB4g.js → fthry_InlineTooltip.D5NfxKVo.js} +2 -16
  27. package/cjs/{fthry_PaymentMethodField.Cx5IV_Aw.js → fthry_PaymentMethodField.vpxb_M9_.js} +3 -4
  28. package/cjs/{fthry_Placeholder.BeZ9F1hP.js → fthry_Placeholder.hq6Cgqjd.js} +1 -1
  29. package/cjs/{fthry_ShowEyeIcon.DO1SzK0H.js → fthry_ShowEyeIcon.C-wsnI6q.js} +1 -1
  30. package/cjs/{fthry_TabsElement.C1KUbyBb.js → fthry_TabsElement.BHVCgyd9.js} +1 -1
  31. package/cjs/{fthry_auto-track.CJBR_dw-.js → fthry_auto-track.g9k-T7sJ.js} +2 -2
  32. package/cjs/{fthry_highlighted-body-TPN3WLV5.BdAGVyam.js → fthry_highlighted-body-TPN3WLV5.CaePR3vZ.js} +3 -3
  33. package/cjs/{fthry_index.C0KW8hya.js → fthry_index.B5pgafIl.js} +2 -2
  34. package/cjs/{fthry_index.BpZi8dM4.js → fthry_index.BDV7qf2C.js} +5 -6
  35. package/cjs/{fthry_index.BhoKqCQO.js → fthry_index.BLKRQSHw.js} +2 -2
  36. package/cjs/{fthry_index.BWAq_scB.js → fthry_index.BcQE05aQ.js} +2 -2
  37. package/cjs/{fthry_index.C78x3b5O.js → fthry_index.BdAvU9aA.js} +5 -6
  38. package/cjs/{fthry_index.6SblfScs.js → fthry_index.BdOfkVzz.js} +2 -2
  39. package/cjs/{fthry_index.CjM_QMbB.js → fthry_index.BfD3esIa.js} +2 -2
  40. package/cjs/{fthry_index.BvriCG1q.js → fthry_index.BiCUy3Q2.js} +1 -1
  41. package/cjs/{fthry_index.CwpWkape.js → fthry_index.BldM4IKR.js} +343 -52
  42. package/cjs/{fthry_index.DRA1vbTd.js → fthry_index.ByQJ8Db5.js} +10 -10
  43. package/cjs/{fthry_index.97eysi95.js → fthry_index.C6YeHjI_.js} +5 -6
  44. package/cjs/{fthry_index.CqC7Lj7F.js → fthry_index.CNXv_44w.js} +5 -6
  45. package/cjs/{fthry_index.BOexWQ2G.js → fthry_index.COg3w9c8.js} +1 -1
  46. package/cjs/{fthry_index.CU2qYyyW.js → fthry_index.CSq9ML1V.js} +2 -2
  47. package/cjs/{fthry_index.B1e00tAu.js → fthry_index.CW8fXwgP.js} +6 -7
  48. package/cjs/{fthry_index.CeWHxiu2.js → fthry_index.CX5Tx1di.js} +3 -4
  49. package/cjs/{fthry_index.CGzU2RS3.js → fthry_index.Cb-o7T3I.js} +1 -1
  50. package/cjs/{fthry_index.DghgxDID.js → fthry_index.ClbpUjqu.js} +8 -9
  51. package/cjs/{fthry_index.DyPl9RTy.js → fthry_index.Cn-052XC.js} +1 -1
  52. package/cjs/{fthry_index.Bkg_JW4Z.js → fthry_index.D3svtoqj.js} +4 -5
  53. package/cjs/{fthry_index.BbZu0dS9.js → fthry_index.D42pyZzz.js} +3 -4
  54. package/cjs/{fthry_index.WdgJ-r5S.js → fthry_index.DAY5VW01.js} +5 -6
  55. package/cjs/{fthry_index.SMUP75Ic.js → fthry_index.DgVU5DPg.js} +3 -3
  56. package/cjs/{fthry_index.O5z58cdJ.js → fthry_index.DjKuHZML.js} +4 -5
  57. package/cjs/{fthry_index.duLdHjUv.js → fthry_index.DpQfBE8n.js} +151 -141
  58. package/cjs/{fthry_index.B3VA122M.js → fthry_index.DqCigvUs.js} +1 -1
  59. package/cjs/{fthry_index.foJzYyYX.js → fthry_index.QAttsABq.js} +1 -1
  60. package/cjs/{fthry_index.CeKZIDEV.js → fthry_index.QRzfI0b4.js} +3 -18
  61. package/cjs/{fthry_index.ycfNh9WZ.js → fthry_index.m_XKSVM8.js} +1 -1
  62. package/cjs/{fthry_index.Dhp1zjHK.js → fthry_index.s2Ah9v4O.js} +1 -1
  63. package/cjs/{fthry_index.CRXRQpkJ.js → fthry_index.u0sKUa7-.js} +1 -1
  64. package/cjs/{fthry_index.umd.B7oz9tEv.js → fthry_index.umd.Cl6yVNEY.js} +1 -1
  65. package/cjs/{fthry_input.BFEJqFg2.js → fthry_input.CzTMRvUa.js} +1 -1
  66. package/cjs/{fthry_mermaid-O7DHMXV3.-sm2XLZv.js → fthry_mermaid-O7DHMXV3.1Tp00mbG.js} +3 -3
  67. package/cjs/{fthry_script.CrJCYCaD.js → fthry_script.B2r1qN9_.js} +1 -1
  68. package/cjs/{fthry_styles.CBI9OfcR.js → fthry_styles.BcMEcBUF.js} +1 -1
  69. package/cjs/{fthry_useElementSize.Dq3fkD_k.js → fthry_useElementSize.91AcUxkY.js} +1 -1
  70. package/cjs/{fthry_useSalesforceSync.DkO47B4_.js → fthry_useSalesforceSync.BQORLqHu.js} +1 -1
  71. package/cjs/{fthry_webfontloader.BbP2ET0j.js → fthry_webfontloader.DbJc3-T2.js} +1 -1
  72. package/cjs/index.js +1 -1
  73. package/cjs/thumbnail-renderer.js +1 -1
  74. package/cjs/types/Form.d.ts +3 -0
  75. package/cjs/types/Form.d.ts.map +1 -1
  76. package/cjs/utils/featheryClient/index.d.ts.map +1 -1
  77. package/dist/Form/grid/Container/index.d.ts.map +1 -1
  78. package/dist/Form/grid/StyledContainer/utils.d.ts.map +1 -1
  79. package/dist/elements/basic/ButtonElement.d.ts.map +1 -1
  80. package/dist/elements/basic/TableElement/EditableCell.d.ts +5 -2
  81. package/dist/elements/basic/TableElement/EditableCell.d.ts.map +1 -1
  82. package/dist/elements/basic/TableElement/index.d.ts.map +1 -1
  83. package/dist/elements/basic/TableElement/styles.d.ts +0 -23
  84. package/dist/elements/basic/TableElement/styles.d.ts.map +1 -1
  85. package/dist/elements/basic/TableElement/tests/EditableCell.spec.d.ts +2 -0
  86. package/dist/elements/basic/TableElement/tests/EditableCell.spec.d.ts.map +1 -0
  87. package/dist/elements/basic/TableElement/tests/TableElement.spec.d.ts +2 -0
  88. package/dist/elements/basic/TableElement/tests/TableElement.spec.d.ts.map +1 -0
  89. package/dist/elements/basic/TableElement/tests/tabNavigation.spec.d.ts +2 -0
  90. package/dist/elements/basic/TableElement/tests/tabNavigation.spec.d.ts.map +1 -0
  91. package/dist/elements/basic/TableElement/types.d.ts +4 -0
  92. package/dist/elements/basic/TableElement/types.d.ts.map +1 -1
  93. package/dist/elements/basic/TableElement/useTableMutations.d.ts +0 -1
  94. package/dist/elements/basic/TableElement/useTableMutations.d.ts.map +1 -1
  95. package/dist/elements/basic/TableElement/utils.d.ts +14 -0
  96. package/dist/elements/basic/TableElement/utils.d.ts.map +1 -1
  97. package/dist/elements/components/HoverTooltip.d.ts +24 -0
  98. package/dist/elements/components/HoverTooltip.d.ts.map +1 -0
  99. package/dist/elements/components/InlineTooltip.d.ts.map +1 -1
  100. package/dist/elements/components/Overlay.d.ts +1 -1
  101. package/dist/elements/components/Overlay.d.ts.map +1 -1
  102. package/dist/elements/components/QuikFormViewer.d.ts.map +1 -1
  103. package/dist/elements/components/TextHoverTooltip.d.ts.map +1 -1
  104. package/dist/elements/components/Tooltip.d.ts +2 -1
  105. package/dist/elements/components/Tooltip.d.ts.map +1 -1
  106. package/dist/{fthry_AssistantChat.h6NTcnjr.js → fthry_AssistantChat.BxCe9PjE.js} +4 -4
  107. package/dist/{fthry_FormControl.DQP6LlCL.js → fthry_FormControl.BpMXWUv6.js} +1 -1
  108. package/dist/{fthry_InlineTooltip.DUtqoLti.js → fthry_InlineTooltip.Brp4oi0p.js} +2 -16
  109. package/dist/{fthry_PaymentMethodField.DoX9prJ2.js → fthry_PaymentMethodField.0oIU1B6N.js} +3 -4
  110. package/dist/{fthry_Placeholder.DIKXUrCe.js → fthry_Placeholder.CEPxPTLL.js} +1 -1
  111. package/dist/{fthry_ShowEyeIcon.BsDiRWJb.js → fthry_ShowEyeIcon.BWU3OOxh.js} +1 -1
  112. package/dist/{fthry_TabsElement.JCYNaBSd.js → fthry_TabsElement.DFuHUYUv.js} +1 -1
  113. package/dist/{fthry_auto-track.CZcLqilZ.js → fthry_auto-track.CizHo0k5.js} +2 -2
  114. package/dist/{fthry_highlighted-body-TPN3WLV5.DwNcoR0j.js → fthry_highlighted-body-TPN3WLV5.DDCKzqBt.js} +3 -3
  115. package/dist/{fthry_index.BD5OtLZc.js → fthry_index.-GpsDCwK.js} +3 -4
  116. package/dist/{fthry_index.mEvi-eyb.js → fthry_index.6wMTFMTj.js} +152 -142
  117. package/dist/{fthry_index.BKjEGHR_.js → fthry_index.BDSy9TBV.js} +4 -5
  118. package/dist/{fthry_index.BXqHrLYx.js → fthry_index.BeEYTrUw.js} +2 -2
  119. package/dist/{fthry_index.D48zqV-m.js → fthry_index.Bmr2qAQ9.js} +1 -1
  120. package/dist/{fthry_index.INdwJAsd.js → fthry_index.Bn_DZ8s-.js} +2 -2
  121. package/dist/{fthry_index.k3Hq7wKG.js → fthry_index.Bs0b7fF8.js} +1 -1
  122. package/dist/{fthry_index.C9bj3Amt.js → fthry_index.ByfmNWHm.js} +2 -2
  123. package/dist/{fthry_index.BFPFVaWv.js → fthry_index.C-3BwV3D.js} +1 -1
  124. package/dist/{fthry_index.dmme1I7g.js → fthry_index.CEFYX7Cb.js} +1 -1
  125. package/dist/{fthry_index.D9kooW59.js → fthry_index.CKyEKNhB.js} +3 -4
  126. package/dist/{fthry_index.BkzGvVg2.js → fthry_index.CV6KaQP2.js} +3 -18
  127. package/dist/{fthry_index.KFRNwcZ_.js → fthry_index.CXvBwACd.js} +1 -1
  128. package/dist/{fthry_index.CHb07pX6.js → fthry_index.CgeOgf6v.js} +7 -8
  129. package/dist/{fthry_index.C2QdbMzv.js → fthry_index.Cl0vinm2.js} +2 -2
  130. package/dist/{fthry_index.BgCJlRTN.js → fthry_index.DD4JAsd0.js} +3 -3
  131. package/dist/{fthry_index.DHIhJeBb.js → fthry_index.DF33pFg0.js} +2 -2
  132. package/dist/{fthry_index.CPrLJ4J-.js → fthry_index.DZYRCGrF.js} +5 -6
  133. package/dist/{fthry_index.CuFf_oA3.js → fthry_index.DjeCrTPA.js} +1 -1
  134. package/dist/{fthry_index.Bl_YFFMi.js → fthry_index.DkB3n_gE.js} +4 -5
  135. package/dist/{fthry_index.Bfo0vjcQ.js → fthry_index.DtEJ8UnC.js} +4 -5
  136. package/dist/{fthry_index.DW4ZEycb.js → fthry_index.DuFXqlIh.js} +4 -5
  137. package/dist/{fthry_index.CCyrVDsN.js → fthry_index.Gk4XHc2v.js} +4 -5
  138. package/dist/{fthry_index.DNmwwxoZ.js → fthry_index.HfY_xMXi.js} +10 -10
  139. package/dist/{fthry_index.DZPtLmTA.js → fthry_index.Tz4wWr5G.js} +5 -6
  140. package/dist/{fthry_index.B21PnTei.js → fthry_index.UaQC1EFo.js} +341 -53
  141. package/dist/{fthry_index.B4uTV15J.js → fthry_index.UqBNOqYF.js} +1 -1
  142. package/dist/{fthry_index.C75qxU8Z.js → fthry_index.X-5RnKbv.js} +1 -1
  143. package/dist/{fthry_index.By9XI2Se.js → fthry_index.caHStIvy.js} +1 -1
  144. package/dist/{fthry_index.Br_wsbaD.js → fthry_index.l3GNavsZ.js} +5 -6
  145. package/dist/{fthry_index.umd.CNiEdJLO.js → fthry_index.umd.zD2ytPrK.js} +1 -1
  146. package/dist/{fthry_index.B03qg4WP.js → fthry_index.wOe1Wv1J.js} +2 -2
  147. package/dist/{fthry_input.C13Hy41e.js → fthry_input.vNAUHsdE.js} +1 -1
  148. package/dist/fthry_mermaid-O7DHMXV3.C6znNgyC.js +8 -0
  149. package/dist/{fthry_script.DG-h2qqu.js → fthry_script.ClnRFan9.js} +1 -1
  150. package/dist/{fthry_styles.BbfFntw_.js → fthry_styles.NzBPYPQ9.js} +1 -1
  151. package/dist/{fthry_useElementSize.Bvu4QN6c.js → fthry_useElementSize.CGVQMCbV.js} +1 -1
  152. package/dist/{fthry_useSalesforceSync.DxPyrYOH.js → fthry_useSalesforceSync.DDPGKOl4.js} +1 -1
  153. package/dist/{fthry_webfontloader.BZH4UrSE.js → fthry_webfontloader.BY0qufCl.js} +1 -1
  154. package/dist/index.js +2 -2
  155. package/dist/thumbnail-renderer.js +1 -1
  156. package/dist/types/Form.d.ts +3 -0
  157. package/dist/types/Form.d.ts.map +1 -1
  158. package/dist/utils/featheryClient/index.d.ts.map +1 -1
  159. package/package.json +1 -1
  160. package/umd/AddressField.4a4788a40afba5fc22d2.js +1 -0
  161. package/umd/ButtonGroupField.fcf087a9664e14da7fc5.js +1 -0
  162. package/umd/CheckboxGroupField.7b055043cbd1ef8b3787.js +1 -0
  163. package/umd/DateSelectorField.b87988253da02a40c6f7.js +1 -0
  164. package/umd/DropdownField.459ba798e2ff6a8518c2.js +1 -0
  165. package/umd/DropdownMultiField.ad59b04c5e3c1ad1a6e8.js +1 -0
  166. package/umd/MatrixField.6541a0f9570b2c56e336.js +1 -0
  167. package/umd/PasswordField.fb8f587107389274112e.js +1 -0
  168. package/umd/PaymentMethodField.f6820da8252bb2eed6b1.js +1 -0
  169. package/umd/PhoneField.a161db93d8f815ced395.js +1 -0
  170. package/umd/RadioButtonGroupField.9a43334b87129e33afd2.js +1 -0
  171. package/umd/TableElement.f51ba6d3b0a6c7835187.js +1 -0
  172. package/umd/TextArea.8341b3d302383a53175d.js +1 -0
  173. package/umd/TextField.fa9f11c4b1fab1747ae1.js +1 -0
  174. package/umd/index.js +1 -1
  175. package/cjs/fthry_Overlay.DLteVVAy.js +0 -231
  176. package/dist/fthry_Overlay.DjQfEgir.js +0 -228
  177. package/dist/fthry_mermaid-O7DHMXV3.rQggAcUJ.js +0 -8
  178. package/umd/277.1a33ea06f86326613fcb.js +0 -1
  179. package/umd/664.4a3ec465094a3d59c184.js +0 -1
  180. package/umd/AddressField.648b3da916171008dc9f.js +0 -1
  181. package/umd/ButtonGroupField.d39ac976a6dee9ef593a.js +0 -1
  182. package/umd/CheckboxGroupField.e495eb152c4faa000d4b.js +0 -1
  183. package/umd/DateSelectorField.e702b3e6b0a5b498c824.js +0 -1
  184. package/umd/DropdownField.d1a234d236d9989bbf20.js +0 -1
  185. package/umd/DropdownMultiField.5b4e24025035f1678c83.js +0 -1
  186. package/umd/MatrixField.bcd6f58ea1896f386988.js +0 -1
  187. package/umd/PasswordField.593d7b7d3d954634fa30.js +0 -1
  188. package/umd/PaymentMethodField.8e4fd6353793eaaa2b5b.js +0 -1
  189. package/umd/PhoneField.861b99c7e81b4b9c8648.js +0 -1
  190. package/umd/RadioButtonGroupField.7a333a6f7e578a181a98.js +0 -1
  191. package/umd/TableElement.8c0bec8400517f135fe6.js +0 -1
  192. package/umd/TextArea.04335be4f0f0d6c0cc1a.js +0 -1
  193. package/umd/TextField.749931ebb258bf38e007.js +0 -1
@@ -23014,8 +23014,15 @@ var resizeFitContainer = function (div) {
23014
23014
  var containerMarginLeft = getStylePxValue(containerStyles.marginLeft);
23015
23015
  var containerMarginRight = getStylePxValue(containerStyles.marginRight);
23016
23016
  var totalMargin = containerMarginLeft + containerMarginRight;
23017
- // Set the maxWidth to the calculated width of it's children and the width to 100% - total margin
23018
- div.style.maxWidth = "".concat(childrenWidth, "px");
23017
+ var totalPadding = 0;
23018
+ if (containerStyles.boxSizing === 'border-box') {
23019
+ totalPadding =
23020
+ getStylePxValue(containerStyles.paddingLeft) +
23021
+ getStylePxValue(containerStyles.paddingRight) +
23022
+ getStylePxValue(containerStyles.borderLeftWidth) +
23023
+ getStylePxValue(containerStyles.borderRightWidth);
23024
+ }
23025
+ div.style.maxWidth = "".concat(childrenWidth + totalPadding, "px");
23019
23026
  div.style.width = "calc(100% - ".concat(totalMargin, "px)");
23020
23027
  };
23021
23028
  var whichTransitionEvent = function () {
@@ -23566,21 +23573,277 @@ var StyledContainer = forwardRef(function (_a, ref) {
23566
23573
  return (jsxs(Fragment, { children: [isFixed && (jsx$1("div", __assign({ className: classNames('styled-container', type, className) }, props, { css: __assign(__assign({}, styles), { position: 'fixed', zIndex: FORM_Z_INDEX + 1 }), ref: fixedContainerRef, "data-feathery-id": node.key, "data-element": elementType }, { children: jsx$1("div", __assign({ className: 'inner-container', css: innerStyles }, { children: children })) }), "".concat(node.id, "-fixed"))), jsx$1("div", __assign({ ref: ref, css: isFixed ? __assign(__assign({}, styles), { visibility: 'hidden' }) : styles, className: classNames('styled-container', type, className) }, props, { "data-id": node.id, "data-feathery-id": node.key, "data-element": elementType }, { children: jsx$1("div", __assign({ className: 'inner-container', css: innerStyles }, { children: isFixed ? null : children })) }), node.id)] }));
23567
23574
  });
23568
23575
 
23576
+ var Tooltip = function (_a) {
23577
+ var children = _a.children, css = _a.css, _b = _a.maxWidth, maxWidth = _b === void 0 ? '200px' : _b, props = __rest$1(_a, ["children", "css", "maxWidth"]);
23578
+ return (jsx$1("div", __assign({ css: __assign({ zIndex: FORM_Z_INDEX + 1, padding: '.4rem 0', transition: 'opacity .10s linear', '.tooltip-inner': {
23579
+ maxWidth: maxWidth,
23580
+ padding: '.25rem .5rem',
23581
+ color: '#fff',
23582
+ textAlign: 'center',
23583
+ backgroundColor: '#000',
23584
+ borderRadius: '.25rem',
23585
+ fontSize: 'smaller',
23586
+ // break long unbroken words so they wrap instead of overflowing
23587
+ overflowWrap: 'anywhere'
23588
+ } }, css) }, props, { children: jsx$1("div", __assign({ className: 'tooltip-inner' }, { children: children })) })));
23589
+ };
23590
+
23591
+ var Overlay = function (_a) {
23592
+ var show = _a.show, targetRef = _a.targetRef, children = _a.children, onHide = _a.onHide, _b = _a.placement, placement = _b === void 0 ? 'bottom-start' : _b, _c = _a.offset, offset = _c === void 0 ? 0 : _c, _d = _a.zIndex, zIndex = _d === void 0 ? 1000 : _d, containerRef = _a.containerRef;
23593
+ var ref = useRef(null);
23594
+ var _e = __read(useState(null), 2), position = _e[0], setPosition = _e[1];
23595
+ var getContainer = useCallback(function () {
23596
+ return (containerRef === null || containerRef === void 0 ? void 0 : containerRef.current) || featheryDoc().body;
23597
+ }, [containerRef]);
23598
+ var recalcPosition = useCallback(function () {
23599
+ var _a;
23600
+ if (!show || !targetRef.current || !ref.current)
23601
+ return;
23602
+ var window = featheryWindow();
23603
+ var container = getContainer();
23604
+ if (!container)
23605
+ return;
23606
+ var targetRect = targetRef.current.getBoundingClientRect();
23607
+ var overlayRect = ref.current.getBoundingClientRect();
23608
+ var containerRect = container.getBoundingClientRect();
23609
+ var _b = calcPosition(placement, targetRect, overlayRect, offset), top = _b.top, left = _b.left;
23610
+ // Flip if it doesn’t fit
23611
+ var overlayBottom = top + overlayRect.height;
23612
+ var overlayRight = left + overlayRect.width;
23613
+ var fitsVertically = top >= 0 && overlayBottom <= window.innerHeight;
23614
+ var fitsHorizontally = left >= 0 && overlayRight <= window.innerWidth;
23615
+ if (!fitsVertically || !fitsHorizontally) {
23616
+ var flipped = getFlippedPlacement(placement, !fitsVertically, !fitsHorizontally);
23617
+ if (flipped !== placement) {
23618
+ (_a = calcPosition(flipped, targetRect, overlayRect, offset), top = _a.top, left = _a.left);
23619
+ }
23620
+ }
23621
+ var isBodyContainer = container === featheryDoc().body;
23622
+ var finalTop = isBodyContainer
23623
+ ? top + window.scrollY
23624
+ : top - containerRect.top;
23625
+ var finalLeft = isBodyContainer
23626
+ ? left + window.scrollX
23627
+ : left - containerRect.left;
23628
+ setPosition(function (prev) {
23629
+ if (!prev || prev.top !== finalTop || prev.left !== finalLeft) {
23630
+ return { top: finalTop, left: finalLeft };
23631
+ }
23632
+ return prev;
23633
+ });
23634
+ }, [show, placement, offset, getContainer, targetRef]);
23635
+ var throttledRecalc = useCallback(function () {
23636
+ var ticking = false;
23637
+ return function () {
23638
+ if (!ticking) {
23639
+ ticking = true;
23640
+ requestAnimationFrame(function () {
23641
+ recalcPosition();
23642
+ ticking = false;
23643
+ });
23644
+ }
23645
+ };
23646
+ }, [recalcPosition])();
23647
+ useLayoutEffect(function () {
23648
+ if (show)
23649
+ recalcPosition();
23650
+ }, [show, recalcPosition]);
23651
+ useEffect(function () {
23652
+ if (!show)
23653
+ return;
23654
+ var window = featheryWindow();
23655
+ var container = getContainer();
23656
+ if (!container)
23657
+ return;
23658
+ window.addEventListener('resize', throttledRecalc);
23659
+ window.addEventListener('scroll', throttledRecalc, true);
23660
+ if (container !== featheryDoc().body) {
23661
+ container.addEventListener('scroll', throttledRecalc);
23662
+ }
23663
+ var resizeObserver = new ResizeObserver(function () { return throttledRecalc(); });
23664
+ if (targetRef.current)
23665
+ resizeObserver.observe(targetRef.current);
23666
+ if (container !== featheryDoc().body)
23667
+ resizeObserver.observe(container);
23668
+ return function () {
23669
+ window.removeEventListener('resize', throttledRecalc);
23670
+ window.removeEventListener('scroll', throttledRecalc, true);
23671
+ if (container !== featheryDoc().body) {
23672
+ container.removeEventListener('scroll', throttledRecalc);
23673
+ }
23674
+ resizeObserver.disconnect();
23675
+ };
23676
+ }, [show, throttledRecalc, getContainer, targetRef]);
23677
+ useEffect(function () {
23678
+ if (!show)
23679
+ return;
23680
+ var handleKeyDown = function (event) {
23681
+ if (event.key === 'Escape') {
23682
+ setPosition(null);
23683
+ onHide === null || onHide === void 0 ? void 0 : onHide();
23684
+ }
23685
+ };
23686
+ var handleClickOutside = function (event) {
23687
+ var target = event.target;
23688
+ if (ref.current &&
23689
+ !ref.current.contains(target) &&
23690
+ targetRef.current &&
23691
+ !targetRef.current.contains(target)) {
23692
+ setPosition(null);
23693
+ onHide === null || onHide === void 0 ? void 0 : onHide();
23694
+ }
23695
+ };
23696
+ var doc = featheryDoc();
23697
+ doc.addEventListener('mousedown', handleClickOutside);
23698
+ doc.addEventListener('keydown', handleKeyDown);
23699
+ return function () {
23700
+ doc.removeEventListener('mousedown', handleClickOutside);
23701
+ doc.removeEventListener('keydown', handleKeyDown);
23702
+ };
23703
+ }, [show, onHide, targetRef]);
23704
+ if (!show)
23705
+ return null;
23706
+ var container = getContainer();
23707
+ if (!container)
23708
+ return jsx$1(Fragment, { children: children });
23709
+ return createPortal(jsx$1("div", __assign({ ref: ref, style: __assign(__assign({ position: 'absolute' }, (position || { top: -9999, left: -9999 })), { zIndex: zIndex }) }, { children: children })), container);
23710
+ };
23711
+ var getFlippedPlacement = function (original, needsVerticalFlip, needsHorizontalFlip) {
23712
+ if (needsVerticalFlip) {
23713
+ if (original.includes('top')) {
23714
+ return original.replace('top', 'bottom');
23715
+ }
23716
+ if (original.includes('bottom')) {
23717
+ return original.replace('bottom', 'top');
23718
+ }
23719
+ }
23720
+ if (needsHorizontalFlip) {
23721
+ if (original.includes('left')) {
23722
+ return original.replace('left', 'right');
23723
+ }
23724
+ if (original.includes('right')) {
23725
+ return original.replace('right', 'left');
23726
+ }
23727
+ }
23728
+ return original;
23729
+ };
23730
+ var calcPosition = function (pl, targetRect, overlayRect, offset) {
23731
+ if (offset === void 0) { offset = 0; }
23732
+ switch (pl) {
23733
+ case 'top':
23734
+ return {
23735
+ top: targetRect.top - overlayRect.height - offset,
23736
+ left: targetRect.left + (targetRect.width - overlayRect.width) / 2
23737
+ };
23738
+ case 'top-start':
23739
+ return {
23740
+ top: targetRect.top - overlayRect.height - offset,
23741
+ left: targetRect.left
23742
+ };
23743
+ case 'top-end':
23744
+ return {
23745
+ top: targetRect.top - overlayRect.height - offset,
23746
+ left: targetRect.right - overlayRect.width
23747
+ };
23748
+ case 'left':
23749
+ return {
23750
+ top: targetRect.top + (targetRect.height - overlayRect.height) / 2,
23751
+ left: targetRect.left - overlayRect.width - offset
23752
+ };
23753
+ case 'left-start':
23754
+ return {
23755
+ top: targetRect.top,
23756
+ left: targetRect.left - overlayRect.width - offset
23757
+ };
23758
+ case 'left-end':
23759
+ return {
23760
+ top: targetRect.bottom - overlayRect.height,
23761
+ left: targetRect.left - overlayRect.width - offset
23762
+ };
23763
+ case 'bottom':
23764
+ return {
23765
+ top: targetRect.bottom + offset,
23766
+ left: targetRect.left + (targetRect.width - overlayRect.width) / 2
23767
+ };
23768
+ case 'bottom-start':
23769
+ return {
23770
+ top: targetRect.bottom + offset,
23771
+ left: targetRect.left
23772
+ };
23773
+ case 'bottom-end':
23774
+ return {
23775
+ top: targetRect.bottom + offset,
23776
+ left: targetRect.right - overlayRect.width
23777
+ };
23778
+ case 'right':
23779
+ return {
23780
+ top: targetRect.top + (targetRect.height - overlayRect.height) / 2,
23781
+ left: targetRect.right + offset
23782
+ };
23783
+ case 'right-start':
23784
+ return {
23785
+ top: targetRect.top,
23786
+ left: targetRect.right + offset
23787
+ };
23788
+ case 'right-end':
23789
+ return {
23790
+ top: targetRect.bottom - overlayRect.height,
23791
+ left: targetRect.right + offset
23792
+ };
23793
+ default:
23794
+ return {
23795
+ top: targetRect.bottom + offset,
23796
+ left: targetRect.left + (targetRect.width - overlayRect.width) / 2
23797
+ };
23798
+ }
23799
+ };
23800
+
23801
+ /**
23802
+ * Shared overlay-anchored tooltip used by InlineTooltip (field help icon),
23803
+ * TextHoverTooltip (hoverable text), and container hover tooltips. Renders the
23804
+ * styled Tooltip inside an Overlay anchored to the provided trigger ref. The
23805
+ * caller owns the show state and the trigger element + its event handlers.
23806
+ */
23807
+ function HoverTooltip(_a) {
23808
+ var show = _a.show, triggerRef = _a.triggerRef, text = _a.text, id = _a.id, onHide = _a.onHide, containerRef = _a.containerRef, _b = _a.placement, placement = _b === void 0 ? 'top' : _b, _c = _a.offset, offset = _c === void 0 ? 4 : _c, css = _a.css, maxWidth = _a.maxWidth;
23809
+ if (!text)
23810
+ return null;
23811
+ return (jsx$1(Overlay, __assign({ show: show, targetRef: triggerRef, containerRef: containerRef, placement: placement, onHide: onHide, offset: offset }, { children: jsx$1(Tooltip, __assign({ id: "tooltip-".concat(id), css: css, maxWidth: maxWidth }, { children: text })) })));
23812
+ }
23813
+
23569
23814
  /**
23570
23815
  * Container
23571
23816
  * This component adds additional logic to the StyledContainer that is unique
23572
23817
  * to rendering containers on hosted forms (not the editor).
23573
23818
  */
23574
23819
  var Container = function (_a) {
23575
- var _b, _c;
23576
- var node = _a.node, _d = _a.runElementActions, runElementActions = _d === void 0 ? function () { } : _d, selected = _a.selected, viewport = _a.viewport, form = _a.form, children = _a.children;
23820
+ var _b, _c, _d;
23821
+ var node = _a.node, _e = _a.runElementActions, runElementActions = _e === void 0 ? function () { } : _e, selected = _a.selected, viewport = _a.viewport, form = _a.form, children = _a.children;
23577
23822
  var ref = useRef(null);
23823
+ var _f = __read(useState(false), 2), showTooltip = _f[0], setShowTooltip = _f[1];
23578
23824
  var additionalCss = {};
23579
23825
  var handleClick;
23826
+ // Container-level hover tooltips apply only to actual containers. Field
23827
+ // elements share the same `tooltipText` property but render their own
23828
+ // icon-based InlineTooltip, so they must be excluded here.
23829
+ var tooltipText = !node.isElement && ((_b = node.properties) === null || _b === void 0 ? void 0 : _b.tooltipText)
23830
+ ? replaceTextVariables(node.properties.tooltipText, node.repeat)
23831
+ : '';
23832
+ var isMobile$1 = isMobile();
23833
+ var tooltipHoverProps = tooltipText
23834
+ ? {
23835
+ // mouse hover is the primary trigger; disabled on mobile where a tap is
23836
+ // ambiguous (containers commonly carry click actions)
23837
+ onMouseEnter: isMobile$1 ? undefined : function () { return setShowTooltip(true); },
23838
+ onMouseLeave: isMobile$1 ? undefined : function () { return setShowTooltip(false); },
23839
+ onFocus: function () { return setShowTooltip(true); },
23840
+ onBlur: function () { return setShowTooltip(false); }
23841
+ }
23842
+ : {};
23580
23843
  if (!node.isElement) {
23581
- var properties = (_b = node.properties) !== null && _b !== void 0 ? _b : {};
23582
- var actions_1 = (_c = properties.actions) !== null && _c !== void 0 ? _c : [];
23583
- var _e = __read(getCellStyle(node, undefined, form.formSettings.mobileBreakpoint), 3), _f = _e[1], cellHoverStyle = _f === void 0 ? {} : _f, _g = _e[2], cellActiveStyle = _g === void 0 ? {} : _g;
23844
+ var properties = (_c = node.properties) !== null && _c !== void 0 ? _c : {};
23845
+ var actions_1 = (_d = properties.actions) !== null && _d !== void 0 ? _d : [];
23846
+ var _g = __read(getCellStyle(node, undefined, form.formSettings.mobileBreakpoint), 3), _h = _g[1], cellHoverStyle = _h === void 0 ? {} : _h, _j = _g[2], cellActiveStyle = _j === void 0 ? {} : _j;
23584
23847
  var selectableStyles = actions_1.length > 0
23585
23848
  ? __assign(__assign({ cursor: 'pointer', transition: '0.2s ease opacity, color, background-color, border-width, border-color, outline, box-shadow' }, (selected ? cellActiveStyle : {})), { '&:hover': cellHoverStyle }) : {};
23586
23849
  handleClick = function (e) {
@@ -23601,7 +23864,7 @@ var Container = function (_a) {
23601
23864
  };
23602
23865
  Object.assign(additionalCss, selectableStyles);
23603
23866
  }
23604
- return (jsx$1(StyledContainer, __assign({ ref: ref, node: node, css: additionalCss, onClick: handleClick, viewport: viewport, breakpoint: form.formSettings.mobileBreakpoint }, { children: children })));
23867
+ return (jsxs(Fragment, { children: [jsx$1(StyledContainer, __assign({ ref: ref, node: node, css: additionalCss, onClick: handleClick, viewport: viewport, breakpoint: form.formSettings.mobileBreakpoint }, tooltipHoverProps, { children: children })), tooltipText && (jsx$1(HoverTooltip, { show: showTooltip, triggerRef: ref, text: tooltipText, id: node.id, onHide: function () { return setShowTooltip(false); }, maxWidth: '320px' }))] }));
23605
23868
  };
23606
23869
 
23607
23870
  function transformCalendlyParams(config) {
@@ -24237,7 +24500,24 @@ function QuikFormViewer(_a) {
24237
24500
  };
24238
24501
  }, [setShow]);
24239
24502
  if (!htmlContent)
24240
- return jsx$1("div", { children: "Loading..." });
24503
+ return (jsx$1("div", __assign({ css: {
24504
+ display: 'flex',
24505
+ alignItems: 'center',
24506
+ justifyContent: 'center',
24507
+ width: '100%',
24508
+ height: '100%',
24509
+ minHeight: 200
24510
+ } }, { children: jsxs("div", __assign({ css: {
24511
+ display: 'flex',
24512
+ flexDirection: 'column',
24513
+ alignItems: 'center',
24514
+ gap: 16
24515
+ } }, { children: [jsx$1("div", __assign({ css: { fontSize: 28 } }, { children: jsx$1(FeatherySpinner$1, {}) })), jsx$1("span", __assign({ css: {
24516
+ fontFamily: "'Helvetica Neue', helvetica, arial, sans-serif",
24517
+ fontSize: 16,
24518
+ fontWeight: 400,
24519
+ color: '#414859'
24520
+ } }, { children: "Generating your paperwork. Please wait..." }))] })) })));
24241
24521
  return (jsx$1("div", __assign({ css: inline
24242
24522
  ? { width: '100%', height: '100%', overflow: 'auto' }
24243
24523
  : {
@@ -41067,7 +41347,7 @@ function useTrackUserInteraction(formRef, activeStep, stepKey, formName) {
41067
41347
  }, [activeStep, stepKey, formName]);
41068
41348
  }
41069
41349
 
41070
- var LazyAssistantChat = lazy(function () { return import(/* webpackChunkName: "AssistantChat" */ './fthry_AssistantChat.h6NTcnjr.js').then(function (n) { return n.A; }); });
41350
+ var LazyAssistantChat = lazy(function () { return import(/* webpackChunkName: "AssistantChat" */ './fthry_AssistantChat.BxCe9PjE.js').then(function (n) { return n.A; }); });
41071
41351
  var AssistantChat = function (props) { return (jsx$1(Suspense, __assign({ fallback: null }, { children: jsx$1(LazyAssistantChat, __assign({}, props)) }))); };
41072
41352
 
41073
41353
  var AssistantClient = /** @class */ (function () {
@@ -45108,7 +45388,7 @@ function loadSegment(segmentConfig, queue) {
45108
45388
  case 0:
45109
45389
  _a.trys.push([0, 2, , 3]);
45110
45390
  return [4 /*yield*/, import(
45111
- /* webpackChunkName: "segment" */ './fthry_index.DNmwwxoZ.js').then(function (n) { return n.q; })];
45391
+ /* webpackChunkName: "segment" */ './fthry_index.HfY_xMXi.js').then(function (n) { return n.q; })];
45112
45392
  case 1:
45113
45393
  (AnalyticsBrowserClass = (_a.sent()).AnalyticsBrowser);
45114
45394
  return [3 /*break*/, 3];
@@ -47132,7 +47412,7 @@ var FeatheryClient = /** @class */ (function (_super) {
47132
47412
  */
47133
47413
  FeatheryClient.prototype._debouncedSubmitCustom = function (override) {
47134
47414
  return __awaiter$2(this, void 0, void 0, function () {
47135
- var customKeyValues, userId, url, jsonKeyVals, formData, options, uniqueId, req;
47415
+ var customKeyValues, userId, url, jsonKeyVals, formData, options, uniqueId, req, removeInFlight;
47136
47416
  var _this = this;
47137
47417
  return __generator(this, function (_a) {
47138
47418
  switch (_a.label) {
@@ -47145,6 +47425,13 @@ var FeatheryClient = /** @class */ (function (_super) {
47145
47425
  if (!isInteractionDetected()) {
47146
47426
  return [2 /*return*/];
47147
47427
  }
47428
+ // If the previous flush hasn't finished yet, skip this cycle. The pending
47429
+ // updates stay queued and a new debounced cycle is scheduled so they get
47430
+ // submitted once the in-flight request completes.
47431
+ if (Object.keys(this.customSubmitInFlight).length) {
47432
+ this.debouncedSubmitCustom(override);
47433
+ return [2 /*return*/];
47434
+ }
47148
47435
  customKeyValues = __assign({}, this.pendingCustomFieldUpdates);
47149
47436
  this.pendingCustomFieldUpdates = {}; // Clear pending updates after copying them
47150
47437
  userId = initInfo().userId;
@@ -47207,7 +47494,8 @@ var FeatheryClient = /** @class */ (function (_super) {
47207
47494
  this._removeCustomFieldListener();
47208
47495
  uniqueId = v4$1();
47209
47496
  req = this.offlineRequestHandler.runOrSaveRequest(function () { return _this._fetch(url, options, true, true); }, url, options, 'submit');
47210
- this.customSubmitInFlight[uniqueId] = req.then(function () { return delete _this.customSubmitInFlight[uniqueId]; });
47497
+ removeInFlight = function () { return delete _this.customSubmitInFlight[uniqueId]; };
47498
+ this.customSubmitInFlight[uniqueId] = req.then(removeInFlight, removeInFlight);
47211
47499
  return [4 /*yield*/, req];
47212
47500
  case 2: return [2 /*return*/, _a.sent()];
47213
47501
  }
@@ -47230,10 +47518,20 @@ var FeatheryClient = /** @class */ (function (_super) {
47230
47518
  return [4 /*yield*/, this.debouncedSubmitCustom.flush()];
47231
47519
  case 1:
47232
47520
  ret = _a.sent();
47233
- return [4 /*yield*/, Promise.all(Object.values(this.customSubmitInFlight))];
47521
+ _a.label = 2;
47234
47522
  case 2:
47523
+ if (!Object.keys(this.customSubmitInFlight).length) return [3 /*break*/, 5];
47524
+ return [4 /*yield*/, Promise.all(Object.values(this.customSubmitInFlight))];
47525
+ case 3:
47235
47526
  _a.sent();
47236
- return [2 /*return*/, ret];
47527
+ if (!Object.keys(this.pendingCustomFieldUpdates).length)
47528
+ return [3 /*break*/, 5];
47529
+ this.debouncedSubmitCustom(override);
47530
+ return [4 /*yield*/, this.debouncedSubmitCustom.flush()];
47531
+ case 4:
47532
+ ret = _a.sent();
47533
+ return [3 /*break*/, 2];
47534
+ case 5: return [2 /*return*/, ret];
47237
47535
  }
47238
47536
  });
47239
47537
  });
@@ -47743,9 +48041,9 @@ function init(sdkKey, options) {
47743
48041
  if (runningInClient()) {
47744
48042
  // Dynamically load libraries that must be client side
47745
48043
  global.scriptjsLoadPromise = import(
47746
- /* webpackChunkName: "scriptjs" */ './fthry_script.DG-h2qqu.js').then(function (n) { return n.s; });
48044
+ /* webpackChunkName: "scriptjs" */ './fthry_script.ClnRFan9.js').then(function (n) { return n.s; });
47747
48045
  global.webfontloaderPromise = import(
47748
- /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.BZH4UrSE.js').then(function (n) { return n.w; });
48046
+ /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.BY0qufCl.js').then(function (n) { return n.w; });
47749
48047
  // Client-side tracking logic
47750
48048
  if (initState.userTracking === 'cookie') {
47751
48049
  var cookieKey = "feathery-user-id-".concat(sdkKey);
@@ -47932,7 +48230,7 @@ function loadCompletedSteps(client) {
47932
48230
  });
47933
48231
  }
47934
48232
  function logFeatheryBadge() {
47935
- console.log('%c Feathery %c v' + "2.48.1" + ' ', // replaced with real version during build
48233
+ console.log('%c Feathery %c v' + "2.50.0" + ' ', // replaced with real version during build
47936
48234
  '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;');
47937
48235
  }
47938
48236
 
@@ -49528,64 +49826,64 @@ function resolveLabelStyle(style, opts) {
49528
49826
 
49529
49827
  var fieldLoaders = {
49530
49828
  AddressLine1: function () {
49531
- return import(/* webpackChunkName: "AddressField" */ './fthry_index.BKjEGHR_.js');
49829
+ return import(/* webpackChunkName: "AddressField" */ './fthry_index.BDSy9TBV.js');
49532
49830
  },
49533
49831
  ButtonGroupField: function () {
49534
- return import(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.BD5OtLZc.js');
49832
+ return import(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.-GpsDCwK.js');
49535
49833
  },
49536
49834
  CheckboxField: function () {
49537
- return import(/* webpackChunkName: "CheckboxField" */ './fthry_index.C75qxU8Z.js');
49835
+ return import(/* webpackChunkName: "CheckboxField" */ './fthry_index.X-5RnKbv.js');
49538
49836
  },
49539
49837
  CheckboxGroupField: function () {
49540
- return import(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.DZPtLmTA.js');
49838
+ return import(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.Tz4wWr5G.js');
49541
49839
  },
49542
49840
  ColorPickerField: function () {
49543
- return import(/* webpackChunkName: "ColorPickerField" */ './fthry_index.k3Hq7wKG.js');
49841
+ return import(/* webpackChunkName: "ColorPickerField" */ './fthry_index.Bs0b7fF8.js');
49544
49842
  },
49545
49843
  CustomField: function () {
49546
- return import(/* webpackChunkName: "CustomField" */ './fthry_index.B4uTV15J.js');
49844
+ return import(/* webpackChunkName: "CustomField" */ './fthry_index.UqBNOqYF.js');
49547
49845
  },
49548
49846
  DateSelectorField: function () {
49549
- return import(/* webpackChunkName: "DateSelectorField" */ './fthry_index.Br_wsbaD.js');
49847
+ return import(/* webpackChunkName: "DateSelectorField" */ './fthry_index.l3GNavsZ.js');
49550
49848
  },
49551
49849
  DropdownField: function () {
49552
- return import(/* webpackChunkName: "DropdownField" */ './fthry_index.DW4ZEycb.js');
49850
+ return import(/* webpackChunkName: "DropdownField" */ './fthry_index.DuFXqlIh.js');
49553
49851
  },
49554
49852
  DropdownMultiField: function () {
49555
- return import(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.CCyrVDsN.js');
49853
+ return import(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.Gk4XHc2v.js');
49556
49854
  },
49557
49855
  FileUploadField: function () {
49558
- return import(/* webpackChunkName: "FileUploadField" */ './fthry_index.BFPFVaWv.js');
49856
+ return import(/* webpackChunkName: "FileUploadField" */ './fthry_index.C-3BwV3D.js');
49559
49857
  },
49560
49858
  MatrixField: function () {
49561
- return import(/* webpackChunkName: "MatrixField" */ './fthry_index.BkzGvVg2.js');
49859
+ return import(/* webpackChunkName: "MatrixField" */ './fthry_index.CV6KaQP2.js');
49562
49860
  },
49563
49861
  PasswordField: function () {
49564
- return import(/* webpackChunkName: "PasswordField" */ './fthry_index.Bl_YFFMi.js');
49862
+ return import(/* webpackChunkName: "PasswordField" */ './fthry_index.DkB3n_gE.js');
49565
49863
  },
49566
49864
  PaymentMethodField: function () {
49567
- return import(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.DoX9prJ2.js');
49865
+ return import(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.0oIU1B6N.js');
49568
49866
  },
49569
- PhoneField: function () { return import(/* webpackChunkName: "PhoneField" */ './fthry_index.Bfo0vjcQ.js'); },
49867
+ PhoneField: function () { return import(/* webpackChunkName: "PhoneField" */ './fthry_index.DtEJ8UnC.js'); },
49570
49868
  PinInputField: function () {
49571
- return import(/* webpackChunkName: "PinInputField" */ './fthry_index.D48zqV-m.js');
49869
+ return import(/* webpackChunkName: "PinInputField" */ './fthry_index.Bmr2qAQ9.js');
49572
49870
  },
49573
- QRScanner: function () { return import(/* webpackChunkName: "QRScanner" */ './fthry_index.INdwJAsd.js'); },
49871
+ QRScanner: function () { return import(/* webpackChunkName: "QRScanner" */ './fthry_index.Bn_DZ8s-.js'); },
49574
49872
  RadioButtonGroupField: function () {
49575
49873
  return import(
49576
- /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.CPrLJ4J-.js');
49874
+ /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.DZYRCGrF.js');
49577
49875
  },
49578
49876
  RatingField: function () {
49579
- return import(/* webpackChunkName: "RatingField" */ './fthry_index.KFRNwcZ_.js');
49877
+ return import(/* webpackChunkName: "RatingField" */ './fthry_index.CXvBwACd.js');
49580
49878
  },
49581
49879
  SignatureField: function () {
49582
- return import(/* webpackChunkName: "SignatureField" */ './fthry_index.BgCJlRTN.js');
49880
+ return import(/* webpackChunkName: "SignatureField" */ './fthry_index.DD4JAsd0.js');
49583
49881
  },
49584
49882
  SliderField: function () {
49585
- return import(/* webpackChunkName: "SliderField" */ './fthry_index.C2QdbMzv.js');
49883
+ return import(/* webpackChunkName: "SliderField" */ './fthry_index.Cl0vinm2.js');
49586
49884
  },
49587
- TextField: function () { return import(/* webpackChunkName: "TextField" */ './fthry_index.CHb07pX6.js'); },
49588
- TextArea: function () { return import(/* webpackChunkName: "TextArea" */ './fthry_index.D9kooW59.js'); }
49885
+ TextField: function () { return import(/* webpackChunkName: "TextField" */ './fthry_index.CgeOgf6v.js'); },
49886
+ TextArea: function () { return import(/* webpackChunkName: "TextArea" */ './fthry_index.CKyEKNhB.js'); }
49589
49887
  };
49590
49888
  var getPositionKey = function (element) { var _a; return ((_a = element.position) === null || _a === void 0 ? void 0 : _a.join(',')) || 'root'; };
49591
49889
  // Share the resolved component between preload and render. A separate
@@ -50344,16 +50642,6 @@ function applyButtonStyles(element, responsiveStyles) {
50344
50642
  return {};
50345
50643
  });
50346
50644
  responsiveStyles.applyTextAlign('buttonLabel');
50347
- // Fit-width buttons shrink to their text and padding, so prevent the
50348
- // text from wrapping
50349
- responsiveStyles.apply('buttonLabel', 'width_unit', function (unit) {
50350
- if (!isFit(unit))
50351
- return {};
50352
- return {
50353
- whiteSpace: 'nowrap',
50354
- 'span, a': { whiteSpace: 'pre' }
50355
- };
50356
- });
50357
50645
  responsiveStyles.apply('button', [
50358
50646
  'uploader_padding_top',
50359
50647
  'uploader_padding_right',
@@ -50847,8 +51135,8 @@ function ElementSkeleton(_a) {
50847
51135
  }
50848
51136
  var templateObject_1;
50849
51137
 
50850
- var TableElement = lazy(function () { return import(/* webpackChunkName: "TableElement" */ './fthry_index.mEvi-eyb.js'); });
50851
- var TabsElement = lazy(function () { return import(/* webpackChunkName: "TabsElement" */ './fthry_TabsElement.JCYNaBSd.js'); });
51138
+ var TableElement = lazy(function () { return import(/* webpackChunkName: "TableElement" */ './fthry_index.6wMTFMTj.js'); });
51139
+ var TabsElement = lazy(function () { return import(/* webpackChunkName: "TabsElement" */ './fthry_TabsElement.DFuHUYUv.js'); });
50852
51140
  var Basic = {
50853
51141
  ImageElement: ImageElement,
50854
51142
  VideoElement: VideoElement,
@@ -50878,4 +51166,4 @@ Object.entries(Elements).map(function (_a) {
50878
51166
  });
50879
51167
  });
50880
51168
 
50881
- export { __values as $, getStripe as A, filterKeys as B, ERROR_COLOR as C, DEFAULT_MOBILE_BREAKPOINT as D, ErrorInput as E, FeatheryCacheProvider as F, Grid as G, DROPDOWN_Z_INDEX as H, getFieldValue$1 as I, stringifyWithNull as J, emailPatternStr as K, replaceTextVariables as L, getDefaultExportFromCjs as M, debounce as N, isEmptyArray as O, toList as P, useThumbnailData as Q, __spreadArray as R, downloadFile as S, CloseIcon as T, justRemove as U, isNum as V, phoneLib as W, authState as X, firebaseSMSCountries as Y, phoneLibPromise as Z, __assign as _, calculateGlobalCSS as a, loadQRScanner as a0, throttle as a1, qrPromise as a2, AuthContext as a3, getFieldValues as a4, setFieldValues as a5, updateTheme as a6, updateUserId as a7, init as a8, Elements as a9, DECLARATION as aA, dealloc as aB, alloc as aC, hash as aD, charat as aE, strlen as aF, indexof as aG, next as aH, token as aI, from as aJ, peek as aK, delimit as aL, slice as aM, position as aN, compile as aO, __extends as aP, formatDateString as aQ, internalState as aR, getPositionKey$1 as aS, initState as aT, getRepeatedContainers as aU, getRepeatedContainer as aV, getDefaultFieldValue as aW, isButtonDisabled as aX, loadPhoneValidator as aY, initInfo as aZ, getCookie as a_, ReactForm as aa, v4$1 as ab, LoginForm as ac, JSForm as ad, getFormContext as ae, resolveLabelStyle as af, AssistantChat as ag, StyledContainer as ah, devicePixelRatio as ai, toBase64 as aj, MODAL_Z_INDEX as ak, dataURLToFile as al, stringify$2 as am, rulesheet as an, COMMENT as ao, middleware as ap, RULESET as aq, combine as ar, match as as, serialize as at, copy as au, replace as av, WEBKIT as aw, MOZ as ax, MS as ay, KEYFRAMES as az, jsxs as b, 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, Fragment as x, isMobile as y, featheryDoc as z };
51169
+ export { firebaseSMSCountries as $, getStripe as A, filterKeys as B, ERROR_COLOR as C, DEFAULT_MOBILE_BREAKPOINT as D, ErrorInput as E, FeatheryCacheProvider as F, Grid as G, HoverTooltip as H, DROPDOWN_Z_INDEX as I, getFieldValue$1 as J, stringifyWithNull as K, emailPatternStr as L, replaceTextVariables as M, getDefaultExportFromCjs 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, Fragment as x, isMobile as y, featheryDoc as z };
@@ -1,4 +1,4 @@
1
- import { j as jsx, _ as __assign, b as jsxs, e as __read, s as __awaiter, t as __generator, w as featheryWindow, x as Fragment, E as ErrorInput } from './fthry_index.B21PnTei.js';
1
+ import { j as jsx, _ as __assign, b as jsxs, e as __read, s as __awaiter, t as __generator, w as featheryWindow, x as Fragment, E as ErrorInput } from './fthry_index.UaQC1EFo.js';
2
2
  import { useRef, useState, useEffect, memo, useMemo } from 'react';
3
3
  import 'react/jsx-runtime';
4
4
  import 'jszip';
@@ -1,4 +1,4 @@
1
- import { _ as __assign, h as hoverStylesGuard, b as jsxs, j as jsx, d as iosScrollOnFocus } from './fthry_index.B21PnTei.js';
1
+ import { _ as __assign, h as hoverStylesGuard, b as jsxs, j as jsx, d as iosScrollOnFocus } from './fthry_index.UaQC1EFo.js';
2
2
  import { useMemo } from 'react';
3
3
  import 'react/jsx-runtime';
4
4
  import 'jszip';
@@ -1,4 +1,4 @@
1
- import { M as getDefaultExportFromCjs } from './fthry_index.B21PnTei.js';
1
+ import { N as getDefaultExportFromCjs } from './fthry_index.UaQC1EFo.js';
2
2
 
3
3
  var propTypes = {exports: {}};
4
4
 
@@ -1,16 +1,15 @@
1
- import { j as jsx, o as Global, l as css, m as __makeTemplateObject, _ as __assign, e as __read, y as isMobile, w as featheryWindow, z as featheryDoc, u as useBorder, b as jsxs$1, h as hoverStylesGuard, r as resetStyles, q as __rest, aQ as formatDateString } from './fthry_index.B21PnTei.js';
1
+ import { j as jsx, o as Global, l as css, m as __makeTemplateObject, _ as __assign, e as __read, y as isMobile, w as featheryWindow, z as featheryDoc, u as useBorder, b as jsxs$1, h as hoverStylesGuard, r as resetStyles, q as __rest, aT as formatDateString } from './fthry_index.UaQC1EFo.js';
2
2
  import * as React from 'react';
3
3
  import React__default, { useMemo, useLayoutEffect, cloneElement, createRef, Component, useRef, useCallback, useEffect, createElement, memo, useState } from 'react';
4
- import { P as Placeholder } from './fthry_Placeholder.DIKXUrCe.js';
5
- import { I as InlineTooltip } from './fthry_InlineTooltip.DUtqoLti.js';
4
+ import { P as Placeholder } from './fthry_Placeholder.CEPxPTLL.js';
5
+ import { I as InlineTooltip } from './fthry_InlineTooltip.Brp4oi0p.js';
6
6
  import { c as clsx } from './fthry_clsx.ChV9xqsO.js';
7
7
  import { jsxs, jsx as jsx$1 } from 'react/jsx-runtime';
8
8
  import * as ReactDOM from 'react-dom';
9
9
  import ReactDOM__default from 'react-dom';
10
- import { a as IMask, I as IMaskInput } from './fthry_input.C13Hy41e.js';
10
+ import { a as IMask, I as IMaskInput } from './fthry_input.vNAUHsdE.js';
11
11
  import 'jszip';
12
- import './fthry_Overlay.DjQfEgir.js';
13
- import './fthry_index.By9XI2Se.js';
12
+ import './fthry_index.caHStIvy.js';
14
13
 
15
14
  var PORTAL_CONTAINER_CLASS = '.react-datepicker__portal';
16
15
  var DATEPICKER_PADDING_TOP_VALUE = '--datepicker-pad-top';
@@ -1,4 +1,4 @@
1
- import { M as getDefaultExportFromCjs } from './fthry_index.B21PnTei.js';
1
+ import { N as getDefaultExportFromCjs } from './fthry_index.UaQC1EFo.js';
2
2
 
3
3
  function _mergeNamespaces(n, m) {
4
4
  m.forEach(function (e) {
@@ -1,4 +1,4 @@
1
- import { s as __awaiter, t as __generator } from './fthry_index.B21PnTei.js';
1
+ import { s as __awaiter, t as __generator } from './fthry_index.UaQC1EFo.js';
2
2
  import 'react/jsx-runtime';
3
3
  import 'react';
4
4
  import 'jszip';
@@ -11,7 +11,7 @@ function loadLegacyVideoPlugins(analytics) {
11
11
  switch (_a.label) {
12
12
  case 0: return [4 /*yield*/, import(
13
13
  // @ts-expect-error
14
- './fthry_index.umd.CNiEdJLO.js').then(function (n) { return n.i; })
14
+ './fthry_index.umd.zD2ytPrK.js').then(function (n) { return n.i; })
15
15
  // This is super gross, but we need to support the `window.analytics.plugins` namespace
16
16
  // that is linked in the segment docs in order to be backwards compatible with ajs-classic
17
17
  // @ts-expect-error
@@ -1,5 +1,5 @@
1
1
  import React__default from 'react';
2
- import { P as PropTypes } from './fthry_index.By9XI2Se.js';
2
+ import { P as PropTypes } from './fthry_index.caHStIvy.js';
3
3
 
4
4
  /** Checks if value is string */
5
5
  function isString(str) {