@feathery/react 2.14.0 → 2.15.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 (155) hide show
  1. package/cjs/Form/grid/Element/index.d.ts.map +1 -1
  2. package/cjs/Form/grid/index.d.ts.map +1 -1
  3. package/cjs/Form/index.d.ts.map +1 -1
  4. package/cjs/elements/basic/TableElement/Actions.d.ts +10 -0
  5. package/cjs/elements/basic/TableElement/Actions.d.ts.map +1 -0
  6. package/cjs/elements/basic/TableElement/EmptyState.d.ts +6 -0
  7. package/cjs/elements/basic/TableElement/EmptyState.d.ts.map +1 -0
  8. package/cjs/elements/basic/TableElement/Pagination.d.ts +10 -0
  9. package/cjs/elements/basic/TableElement/Pagination.d.ts.map +1 -0
  10. package/cjs/elements/basic/TableElement/Search.d.ts +7 -0
  11. package/cjs/elements/basic/TableElement/Search.d.ts.map +1 -0
  12. package/cjs/elements/basic/TableElement/Sort.d.ts +12 -0
  13. package/cjs/elements/basic/TableElement/Sort.d.ts.map +1 -0
  14. package/cjs/elements/basic/TableElement/exampleData.d.ts +3 -0
  15. package/cjs/elements/basic/TableElement/exampleData.d.ts.map +1 -0
  16. package/cjs/elements/basic/TableElement/index.d.ts +3 -0
  17. package/cjs/elements/basic/TableElement/index.d.ts.map +1 -0
  18. package/cjs/elements/basic/TableElement/styles.d.ts +391 -0
  19. package/cjs/elements/basic/TableElement/styles.d.ts.map +1 -0
  20. package/cjs/elements/basic/TableElement/types.d.ts +10 -0
  21. package/cjs/elements/basic/TableElement/types.d.ts.map +1 -0
  22. package/cjs/elements/basic/TableElement/useTableData.d.ts +37 -0
  23. package/cjs/elements/basic/TableElement/useTableData.d.ts.map +1 -0
  24. package/cjs/elements/basic/TableElement/utils.d.ts +11 -0
  25. package/cjs/elements/basic/TableElement/utils.d.ts.map +1 -0
  26. package/cjs/elements/components/skeletons/ElementSkeleton.d.ts +8 -0
  27. package/cjs/elements/components/skeletons/ElementSkeleton.d.ts.map +1 -0
  28. package/cjs/elements/index.d.ts +1 -0
  29. package/cjs/elements/index.d.ts.map +1 -1
  30. package/cjs/{fthry_FormControl.BwXT0ep8.js → fthry_FormControl.C8oeoDk3.js} +1 -1
  31. package/cjs/{fthry_InlineTooltip.BdhCa_rK.js → fthry_InlineTooltip.CRRFOiO4.js} +2 -2
  32. package/cjs/{fthry_Overlay.CkaxO8d5.js → fthry_Overlay.CMYptYVH.js} +1 -1
  33. package/cjs/{fthry_PaymentMethodField.mg1fdRD0.js → fthry_PaymentMethodField.C_yV3aay.js} +4 -4
  34. package/cjs/{fthry_Placeholder.Jcsn0I77.js → fthry_Placeholder.xDn0I29f.js} +1 -1
  35. package/cjs/{fthry_ShowEyeIcon.B1bZYLk8.js → fthry_ShowEyeIcon.COZczYEG.js} +1 -1
  36. package/cjs/{fthry_index.YHxFZskW.js → fthry_index.B5Nc9EIn.js} +90 -47
  37. package/cjs/{fthry_index.DAUqZ_Ax.js → fthry_index.B5aSeoEj.js} +4 -4
  38. package/cjs/fthry_index.B9CITASf.js +669 -0
  39. package/cjs/{fthry_index.BAjR2Rnl.js → fthry_index.BAis6iAm.js} +3 -3
  40. package/cjs/{fthry_index.Wk8VztlG.js → fthry_index.BV9FIqI3.js} +5 -5
  41. package/cjs/{fthry_index.C1fh-rBQ.js → fthry_index.BZzFi9o3.js} +5 -5
  42. package/cjs/{fthry_index.Brf3d6gi.js → fthry_index.BdfASO2V.js} +6 -6
  43. package/cjs/{fthry_index.6mEHhzfW.js → fthry_index.Be_wKtBW.js} +4 -4
  44. package/cjs/{fthry_index.LJEYPWI3.js → fthry_index.BokP8_1j.js} +5 -5
  45. package/cjs/{fthry_index.CFas_RaG.js → fthry_index.BvXec6y1.js} +1 -1
  46. package/cjs/{fthry_index.CH-jUzEB.js → fthry_index.ByYAaIPz.js} +6 -6
  47. package/cjs/{fthry_index.CM61c38_.js → fthry_index.C97Bm277.js} +4 -4
  48. package/cjs/{fthry_index.BlqRmYU3.js → fthry_index.CFl7Tra-.js} +6 -6
  49. package/cjs/{fthry_index.Cg6LX1gC.js → fthry_index.CPkoG8dL.js} +4 -4
  50. package/cjs/{fthry_index.CNP-DZpU.js → fthry_index.CQ3OgNZu.js} +1 -1
  51. package/cjs/{fthry_index.BWlL6Yer.js → fthry_index.CfGx505W.js} +1 -1
  52. package/cjs/{fthry_index.CrMPecva.js → fthry_index.CgatqFlS.js} +2 -2
  53. package/cjs/{fthry_index.Dl8vbJjd.js → fthry_index.CoR2X1u6.js} +8 -8
  54. package/cjs/{fthry_index.BDYAeN41.js → fthry_index.Ct-olYcX.js} +1 -1
  55. package/cjs/{fthry_index.stdBLQZf.js → fthry_index.D35rnGh5.js} +1 -1
  56. package/cjs/{fthry_index.DamIMdR9.js → fthry_index.Db8Zj-xl.js} +2 -2
  57. package/cjs/{fthry_index.CIRAsV1y.js → fthry_index.Dm94Mor0.js} +1 -1
  58. package/cjs/{fthry_index.CdljdZZa.js → fthry_index.Dzq-7u_A.js} +5 -5
  59. package/cjs/{fthry_index.D347YZZf.js → fthry_index.Iw93ZIvk.js} +1 -1
  60. package/cjs/{fthry_input.Co8r9GsS.js → fthry_input.DjhEftHE.js} +1 -1
  61. package/cjs/{fthry_script.Bq4U9W-W.js → fthry_script.CEXFQk2h.js} +1 -1
  62. package/cjs/{fthry_styles.v2wlusMk.js → fthry_styles.twMOjtIt.js} +1 -1
  63. package/cjs/{fthry_useElementSize.H_jyVKqM.js → fthry_useElementSize.CMss2qLc.js} +1 -1
  64. package/cjs/{fthry_useSalesforceSync.PzKJwKNh.js → fthry_useSalesforceSync.GHaAu-dd.js} +1 -1
  65. package/cjs/{fthry_webfontloader.BEk-u0hO.js → fthry_webfontloader.CZxQtgFm.js} +1 -1
  66. package/cjs/index.d.ts +1 -0
  67. package/cjs/index.d.ts.map +1 -1
  68. package/cjs/index.js +1 -1
  69. package/cjs/types/Form.d.ts +4 -1
  70. package/cjs/types/Form.d.ts.map +1 -1
  71. package/cjs/utils/formHelperFunctions.d.ts +1 -1
  72. package/cjs/utils/formHelperFunctions.d.ts.map +1 -1
  73. package/cjs/utils/hideAndRepeats.d.ts.map +1 -1
  74. package/dist/Form/grid/Element/index.d.ts.map +1 -1
  75. package/dist/Form/grid/index.d.ts.map +1 -1
  76. package/dist/Form/index.d.ts.map +1 -1
  77. package/dist/elements/basic/TableElement/Actions.d.ts +10 -0
  78. package/dist/elements/basic/TableElement/Actions.d.ts.map +1 -0
  79. package/dist/elements/basic/TableElement/EmptyState.d.ts +6 -0
  80. package/dist/elements/basic/TableElement/EmptyState.d.ts.map +1 -0
  81. package/dist/elements/basic/TableElement/Pagination.d.ts +10 -0
  82. package/dist/elements/basic/TableElement/Pagination.d.ts.map +1 -0
  83. package/dist/elements/basic/TableElement/Search.d.ts +7 -0
  84. package/dist/elements/basic/TableElement/Search.d.ts.map +1 -0
  85. package/dist/elements/basic/TableElement/Sort.d.ts +12 -0
  86. package/dist/elements/basic/TableElement/Sort.d.ts.map +1 -0
  87. package/dist/elements/basic/TableElement/exampleData.d.ts +3 -0
  88. package/dist/elements/basic/TableElement/exampleData.d.ts.map +1 -0
  89. package/dist/elements/basic/TableElement/index.d.ts +3 -0
  90. package/dist/elements/basic/TableElement/index.d.ts.map +1 -0
  91. package/dist/elements/basic/TableElement/styles.d.ts +391 -0
  92. package/dist/elements/basic/TableElement/styles.d.ts.map +1 -0
  93. package/dist/elements/basic/TableElement/types.d.ts +10 -0
  94. package/dist/elements/basic/TableElement/types.d.ts.map +1 -0
  95. package/dist/elements/basic/TableElement/useTableData.d.ts +37 -0
  96. package/dist/elements/basic/TableElement/useTableData.d.ts.map +1 -0
  97. package/dist/elements/basic/TableElement/utils.d.ts +11 -0
  98. package/dist/elements/basic/TableElement/utils.d.ts.map +1 -0
  99. package/dist/elements/components/skeletons/ElementSkeleton.d.ts +8 -0
  100. package/dist/elements/components/skeletons/ElementSkeleton.d.ts.map +1 -0
  101. package/dist/elements/index.d.ts +1 -0
  102. package/dist/elements/index.d.ts.map +1 -1
  103. package/dist/{fthry_FormControl.CrSvLSA7.js → fthry_FormControl.BdmdMzA3.js} +1 -1
  104. package/dist/{fthry_InlineTooltip.xj-t-582.js → fthry_InlineTooltip.DRPooJGa.js} +2 -2
  105. package/dist/{fthry_Overlay.CJFSLbLE.js → fthry_Overlay.DSfIRMWh.js} +1 -1
  106. package/dist/{fthry_PaymentMethodField.PRJIHswh.js → fthry_PaymentMethodField.C2kDTnuL.js} +4 -4
  107. package/dist/{fthry_Placeholder.7M07CwTS.js → fthry_Placeholder.BYxBlfxe.js} +1 -1
  108. package/dist/{fthry_ShowEyeIcon.n639xEWA.js → fthry_ShowEyeIcon.DcuxGpJk.js} +1 -1
  109. package/dist/{fthry_index.BE1aEx2n.js → fthry_index.4fMPrW44.js} +4 -4
  110. package/dist/{fthry_index.CzHuSmWc.js → fthry_index.B-bHDKSO.js} +1 -1
  111. package/dist/{fthry_index.g8xB96Yo.js → fthry_index.BD6daAle.js} +5 -5
  112. package/dist/{fthry_index.DQhKI62v.js → fthry_index.BF_Plcr0.js} +2 -2
  113. package/dist/{fthry_index.DtttVU-B.js → fthry_index.BIkZtQJH.js} +5 -5
  114. package/dist/{fthry_index.D6sWBKuA.js → fthry_index.BXiUUqma.js} +2 -2
  115. package/dist/{fthry_index.DQuVxHkp.js → fthry_index.BuGMpxqA.js} +1 -1
  116. package/dist/{fthry_index.Dd5mpmpk.js → fthry_index.C0TSdYY1.js} +1 -1
  117. package/dist/{fthry_index.sXNItbKY.js → fthry_index.CCtbaItI.js} +5 -5
  118. package/dist/{fthry_index.BdbDXIuj.js → fthry_index.COrbe5-R.js} +8 -8
  119. package/dist/{fthry_index.RwhYSoEm.js → fthry_index.CkEibXDT.js} +6 -6
  120. package/dist/{fthry_index.DMTSFPNS.js → fthry_index.Cocw39qz.js} +1 -1
  121. package/dist/{fthry_index.DgIPpVNk.js → fthry_index.CxYSZnO_.js} +4 -4
  122. package/dist/{fthry_index.BKbx2qxD.js → fthry_index.Cz1sN7j0.js} +6 -6
  123. package/dist/{fthry_index.Be8xdrui.js → fthry_index.D6uzSPi5.js} +5 -5
  124. package/dist/{fthry_index.Df-7wyL2.js → fthry_index.D9VkJYNy.js} +4 -4
  125. package/dist/{fthry_index.Cfn3D1XZ.js → fthry_index.DCKiab_1.js} +3 -3
  126. package/dist/{fthry_index.CdIRvNp8.js → fthry_index.DSkVpyvV.js} +91 -48
  127. package/dist/{fthry_index.DEU7NBKU.js → fthry_index.DkSTwhvF.js} +1 -1
  128. package/dist/{fthry_index.CxH24rcl.js → fthry_index.DvV-_9rQ.js} +6 -6
  129. package/dist/{fthry_index.DsHJmYgu.js → fthry_index.DwzU97uW.js} +4 -4
  130. package/dist/fthry_index.IjpiaOO-.js +667 -0
  131. package/dist/{fthry_index.CwsphGMI.js → fthry_index.Ox88biXC.js} +1 -1
  132. package/dist/{fthry_index.BpsK3TYO.js → fthry_index.uw0MJJ4F.js} +1 -1
  133. package/dist/{fthry_input.CD5doOgD.js → fthry_input.BJLJlGVj.js} +1 -1
  134. package/dist/{fthry_script.B1ROwso4.js → fthry_script.BL_LvOsU.js} +1 -1
  135. package/dist/{fthry_styles.C-VyrwW3.js → fthry_styles.Bgjx59v5.js} +1 -1
  136. package/dist/{fthry_useElementSize.1FdURPgQ.js → fthry_useElementSize.COmxJss_.js} +1 -1
  137. package/dist/{fthry_useSalesforceSync.wEr6a7_E.js → fthry_useSalesforceSync.BZM69NNS.js} +1 -1
  138. package/dist/{fthry_webfontloader.ChgT0Ifr.js → fthry_webfontloader.BonjOYue.js} +1 -1
  139. package/dist/index.d.ts +1 -0
  140. package/dist/index.d.ts.map +1 -1
  141. package/dist/index.js +1 -1
  142. package/dist/types/Form.d.ts +4 -1
  143. package/dist/types/Form.d.ts.map +1 -1
  144. package/dist/utils/formHelperFunctions.d.ts +1 -1
  145. package/dist/utils/formHelperFunctions.d.ts.map +1 -1
  146. package/dist/utils/hideAndRepeats.d.ts.map +1 -1
  147. package/package.json +1 -1
  148. package/umd/SignatureField.56c69ad7ee1f7e0b5003.js +1 -0
  149. package/umd/TableElement.ef63774f461682dd3ac9.js +1 -0
  150. package/umd/index.js +1 -1
  151. package/cjs/elements/components/skeletons/FieldSkeleton.d.ts +0 -8
  152. package/cjs/elements/components/skeletons/FieldSkeleton.d.ts.map +0 -1
  153. package/dist/elements/components/skeletons/FieldSkeleton.d.ts +0 -8
  154. package/dist/elements/components/skeletons/FieldSkeleton.d.ts.map +0 -1
  155. package/umd/SignatureField.1b502b1edb19e4af3b64.js +0 -1
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.YHxFZskW.js');
3
+ var index = require('./fthry_index.B5Nc9EIn.js');
4
4
 
5
5
  function Placeholder(_a) {
6
6
  var _b;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.YHxFZskW.js');
3
+ var index = require('./fthry_index.B5Nc9EIn.js');
4
4
 
5
5
  function ShowEyeIcon$1(_a) {
6
6
  var _b = _a.width, width = _b === void 0 ? 30 : _b, _c = _a.height, height = _c === void 0 ? 30 : _c, props = index.__rest(_a, ["width", "height"]);
@@ -16503,7 +16503,8 @@ var stepElementTypes = [
16503
16503
  'servar_fields',
16504
16504
  'progress_bars',
16505
16505
  'images',
16506
- 'videos'
16506
+ 'videos',
16507
+ 'tables'
16507
16508
  ];
16508
16509
  var getPositionKey = function (node) {
16509
16510
  if (!node.position)
@@ -16561,7 +16562,9 @@ function getVisiblePositions(step, internalId) {
16561
16562
  var typeIndex = elementTypes.indexOf('subgrids');
16562
16563
  elementTypes.splice(typeIndex, 1);
16563
16564
  elementTypes.forEach(function (elementType) {
16564
- step[elementType].forEach(function (el) {
16565
+ var _a;
16566
+ // TODO (table): remove backwards compatibility
16567
+ (_a = step[elementType]) === null || _a === void 0 ? void 0 : _a.forEach(function (el) {
16565
16568
  _collectHideFlags(step, el, visiblePositions, hiddenPositions, repeatKeys, internalId);
16566
16569
  });
16567
16570
  });
@@ -20142,7 +20145,7 @@ var Element$1 = function (_a) {
20142
20145
  var _b, _c, _d, _e, _f, _g;
20143
20146
  var el = _a.node, form = _a.form;
20144
20147
  var type = el.type;
20145
- var userProgress = form.userProgress, curDepth = form.curDepth, maxDepth = form.maxDepth, elementProps = form.elementProps, activeStep = form.activeStep, buttonLoaders = form.buttonLoaders, customClickSelectionState = form.customClickSelectionState, runElementActions = form.runElementActions, buttonOnClick = form.buttonOnClick, fieldOnChange = form.fieldOnChange, inlineErrors = form.inlineErrors, setInlineErrors = form.setInlineErrors, changeValue = form.changeValue, updateFieldValues = form.updateFieldValues, elementOnView = form.elementOnView, onViewElements = form.onViewElements, formSettings = form.formSettings, formRef = form.formRef, focusRef = form.focusRef, setCardElement = form.setCardElement, visiblePositions = form.visiblePositions, featheryContext = form.featheryContext;
20148
+ var userProgress = form.userProgress, curDepth = form.curDepth, maxDepth = form.maxDepth, elementProps = form.elementProps, activeStep = form.activeStep, buttonLoaders = form.buttonLoaders, customClickSelectionState = form.customClickSelectionState, runElementActions = form.runElementActions, buttonOnClick = form.buttonOnClick, tableOnClick = form.tableOnClick, fieldOnChange = form.fieldOnChange, inlineErrors = form.inlineErrors, setInlineErrors = form.setInlineErrors, changeValue = form.changeValue, updateFieldValues = form.updateFieldValues, elementOnView = form.elementOnView, onViewElements = form.onViewElements, formSettings = form.formSettings, formRef = form.formRef, focusRef = form.focusRef, setCardElement = form.setCardElement, visiblePositions = form.visiblePositions, featheryContext = form.featheryContext;
20146
20149
  var readOnly = formSettings.readOnly || initState.collaboratorReview === 'readOnly';
20147
20150
  var basicProps = {
20148
20151
  componentOnly: false,
@@ -20161,6 +20164,8 @@ var Element$1 = function (_a) {
20161
20164
  return jsx$1(Elements.ImageElement, exports.__assign({}, basicProps));
20162
20165
  else if (type === 'video')
20163
20166
  return jsx$1(Elements.VideoElement, exports.__assign({}, basicProps));
20167
+ else if (type === 'table')
20168
+ return (jsx$1(Elements.TableElement, exports.__assign({}, basicProps, { onClick: function (payload) { return tableOnClick(el, payload); } })));
20164
20169
  else if (type === 'text')
20165
20170
  return (jsx$1(Elements.TextElement, exports.__assign({ textSpanOnClick: function (textSpanStart, textSpanEnd) {
20166
20171
  var _a;
@@ -21986,7 +21991,9 @@ var buildStepGrid = function (step, viewport, visiblePositions) {
21986
21991
  };
21987
21992
  var convertStepToViewport = function (step, viewport) {
21988
21993
  stepElementTypes.forEach(function (type) {
21989
- step[type].forEach(function (obj, i) {
21994
+ // TODO (table): remove backwards compatibility
21995
+ var _a;
21996
+ (_a = step[type]) === null || _a === void 0 ? void 0 : _a.forEach(function (obj, i) {
21990
21997
  step[type][i] =
21991
21998
  type === 'subgrids'
21992
21999
  ? convertToViewport(obj, viewport, viewportProperties.subgrids)
@@ -22019,7 +22026,8 @@ var typeMap = {
22019
22026
  texts: 'text',
22020
22027
  buttons: 'button',
22021
22028
  servar_fields: 'field',
22022
- videos: 'video'
22029
+ videos: 'video',
22030
+ tables: 'table'
22023
22031
  };
22024
22032
  var buildGridMap = function (step) {
22025
22033
  var map = {};
@@ -38519,13 +38527,28 @@ function Form(_a) {
38519
38527
  }
38520
38528
  });
38521
38529
  }); };
38530
+ var tableOnClick = function (table, payload) { return __awaiter$2(_this, void 0, void 0, function () {
38531
+ return __generator(this, function (_a) {
38532
+ switch (_a.label) {
38533
+ case 0: return [4 /*yield*/, runElementActions({
38534
+ actions: [],
38535
+ element: table,
38536
+ elementType: 'table',
38537
+ triggerPayload: payload
38538
+ })];
38539
+ case 1:
38540
+ _a.sent();
38541
+ return [2 /*return*/];
38542
+ }
38543
+ });
38544
+ }); };
38522
38545
  // Orchestrates all actions triggered by a button/element click.
38523
38546
  // Runs validations and submission first (if submit=true), then executes click actions in order.
38524
38547
  // Prevents race conditions by locking element during execution and tracking global button state.
38525
38548
  // Some actions (Persona, Plaid, etc) require special handling: they pause execution and
38526
38549
  // provide a callback for continuing to the next action once they complete.
38527
38550
  var runElementActions = function (_a) {
38528
- var actions = _a.actions, element = _a.element, elementType = _a.elementType, _b = _a.submit, submit = _b === void 0 ? false : _b, _c = _a.setElementError, setElementError = _c === void 0 ? function () { } : _c, _d = _a.onAsyncEnd, onAsyncEnd = _d === void 0 ? function () { } : _d, textSpanStart = _a.textSpanStart, textSpanEnd = _a.textSpanEnd;
38551
+ var actions = _a.actions, element = _a.element, elementType = _a.elementType, _b = _a.submit, submit = _b === void 0 ? false : _b, _c = _a.setElementError, setElementError = _c === void 0 ? function () { } : _c, _d = _a.onAsyncEnd, onAsyncEnd = _d === void 0 ? function () { } : _d, textSpanStart = _a.textSpanStart, textSpanEnd = _a.textSpanEnd, triggerPayload = _a.triggerPayload;
38529
38552
  return __awaiter$2(_this, void 0, void 0, function () {
38530
38553
  var id, metadata, trigger, submitPromise, pendingFileKeys, invalid, hasNext, submissionResult, error_3, _e, stepPromise, flowOnSuccess, actionTypes, runAction, i, hasExtractions, hasEnvelopeGeneration, _loop_1, state_1;
38531
38554
  var _this = this;
@@ -38549,7 +38572,7 @@ function Form(_a) {
38549
38572
  start: textSpanStart,
38550
38573
  end: textSpanEnd
38551
38574
  };
38552
- trigger = exports.__assign(exports.__assign({}, lookUpTrigger(activeStep, elementType === 'container' ? element.key : element.id, elementType)), { repeatIndex: element.repeat });
38575
+ trigger = exports.__assign(exports.__assign({}, lookUpTrigger(activeStep, elementType === 'container' ? element.key : element.id, elementType, triggerPayload)), { repeatIndex: element.repeat });
38553
38576
  submitPromise = Promise.resolve();
38554
38577
  if (!(submit && !readOnly)) return [3 /*break*/, 7];
38555
38578
  // Do not proceed until user has gone through required flows
@@ -38650,7 +38673,8 @@ function Form(_a) {
38650
38673
  setElementError: setElementError,
38651
38674
  onAsyncEnd: onAsyncEnd,
38652
38675
  textSpanStart: textSpanStart,
38653
- textSpanEnd: textSpanEnd
38676
+ textSpanEnd: textSpanEnd,
38677
+ triggerPayload: triggerPayload
38654
38678
  })];
38655
38679
  case 1:
38656
38680
  running = _a.sent();
@@ -39425,6 +39449,7 @@ function Form(_a) {
39425
39449
  customClickSelectionState: customClickSelectionState,
39426
39450
  runElementActions: runElementActions,
39427
39451
  buttonOnClick: buttonOnClick,
39452
+ tableOnClick: tableOnClick,
39428
39453
  fieldOnChange: fieldOnChange,
39429
39454
  buttonLoaders: buttonLoaders,
39430
39455
  inlineErrors: inlineErrors,
@@ -43628,9 +43653,9 @@ function init(sdkKey, options) {
43628
43653
  if (runningInClient()) {
43629
43654
  // Dynamically load libraries that must be client side
43630
43655
  global.scriptjsLoadPromise = Promise.resolve().then(function () { return require(
43631
- /* webpackChunkName: "scriptjs" */ './fthry_script.Bq4U9W-W.js'); }).then(function (n) { return n.script; });
43656
+ /* webpackChunkName: "scriptjs" */ './fthry_script.CEXFQk2h.js'); }).then(function (n) { return n.script; });
43632
43657
  global.webfontloaderPromise = Promise.resolve().then(function () { return require(
43633
- /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.BEk-u0hO.js'); }).then(function (n) { return n.webfontloader; });
43658
+ /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.CZxQtgFm.js'); }).then(function (n) { return n.webfontloader; });
43634
43659
  // Client-side tracking logic
43635
43660
  if (initState.userTracking === 'cookie') {
43636
43661
  var cookieKey = "feathery-user-id-".concat(sdkKey);
@@ -43776,7 +43801,7 @@ function getFieldValues() {
43776
43801
  return exports.__assign({}, exports.fieldValues);
43777
43802
  }
43778
43803
  function logFeatheryBadge() {
43779
- console.log('%c Feathery %c v' + "2.14.0" + ' ', // replaced with real version during build
43804
+ console.log('%c Feathery %c v' + "2.15.0" + ' ', // replaced with real version during build
43780
43805
  '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;');
43781
43806
  }
43782
43807
 
@@ -43812,9 +43837,10 @@ var getABVariant = function (stepRes) {
43812
43837
  return stepRes;
43813
43838
  };
43814
43839
  var getAllElements = function (step) {
43815
- return __spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(step.progress_bars.map(function (e) { return [e, 'progress_bar']; })), false), __read(step.images.map(function (e) { return [e, 'image']; })), false), __read(step.videos.map(function (e) { return [e, 'video']; })), false), __read(step.texts.map(function (e) { return [e, 'text']; })), false), __read(step.buttons.map(function (e) { return [e, 'button']; })), false), __read(step.servar_fields.map(function (e) { return [e, 'field']; })), false), __read(step.subgrids.map(function (e) { return [e, 'subgrid']; })), false);
43840
+ var _a, _b;
43841
+ return __spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(step.progress_bars.map(function (e) { return [e, 'progress_bar']; })), false), __read(step.images.map(function (e) { return [e, 'image']; })), false), __read(step.videos.map(function (e) { return [e, 'video']; })), false), __read(((_b = (_a = step.tables) === null || _a === void 0 ? void 0 : _a.map(function (e) { return [e, 'table']; })) !== null && _b !== void 0 ? _b : [])), false), __read(step.texts.map(function (e) { return [e, 'text']; })), false), __read(step.buttons.map(function (e) { return [e, 'button']; })), false), __read(step.servar_fields.map(function (e) { return [e, 'field']; })), false), __read(step.subgrids.map(function (e) { return [e, 'subgrid']; })), false);
43816
43842
  };
43817
- var lookUpTrigger = function (step, elementID, type) {
43843
+ var lookUpTrigger = function (step, elementID, type, additionalPayload) {
43818
43844
  var _a, _b;
43819
43845
  var payload = {};
43820
43846
  if (type === 'button') {
@@ -43834,7 +43860,12 @@ var lookUpTrigger = function (step, elementID, type) {
43834
43860
  text: element.servar.name
43835
43861
  };
43836
43862
  }
43837
- return exports.__assign({ id: elementID, type: type }, payload);
43863
+ else if (type === 'table') {
43864
+ // For tables, we don't look up additional properties from the step
43865
+ // All table-specific data is provided via additionalPayload
43866
+ payload = {};
43867
+ }
43868
+ return exports.__assign(exports.__assign({ id: elementID, type: type }, payload), additionalPayload);
43838
43869
  };
43839
43870
  /** Update the fieldValues cache with a backend session */
43840
43871
  function updateSessionValues(session) {
@@ -45248,39 +45279,39 @@ breakpoint) {
45248
45279
  return styles.getTarget('inner-container', undefined, viewport === 'mobile');
45249
45280
  };
45250
45281
 
45251
- var AddressLine1 = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "AddressField" */ './fthry_index.C1fh-rBQ.js'); }); });
45252
- var ButtonGroupField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.DAUqZ_Ax.js'); }); });
45253
- var CheckboxField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxField" */ './fthry_index.CIRAsV1y.js'); }); });
45282
+ var AddressLine1 = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "AddressField" */ './fthry_index.BZzFi9o3.js'); }); });
45283
+ var ButtonGroupField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.B5aSeoEj.js'); }); });
45284
+ var CheckboxField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxField" */ './fthry_index.Dm94Mor0.js'); }); });
45254
45285
  var CheckboxGroupField = React.lazy(function () {
45255
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.BlqRmYU3.js'); });
45286
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.CFl7Tra-.js'); });
45256
45287
  });
45257
- var ColorPickerField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ColorPickerField" */ './fthry_index.D347YZZf.js'); }); });
45258
- var CustomField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CustomField" */ './fthry_index.BWlL6Yer.js'); }); });
45288
+ var ColorPickerField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ColorPickerField" */ './fthry_index.Iw93ZIvk.js'); }); });
45289
+ var CustomField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CustomField" */ './fthry_index.CfGx505W.js'); }); });
45259
45290
  var DateSelectorField = React.lazy(function () {
45260
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "DateSelectorField" */ './fthry_index.CH-jUzEB.js'); });
45291
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "DateSelectorField" */ './fthry_index.ByYAaIPz.js'); });
45261
45292
  });
45262
- var DropdownField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownField" */ './fthry_index.CM61c38_.js'); }); });
45293
+ var DropdownField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownField" */ './fthry_index.C97Bm277.js'); }); });
45263
45294
  var DropdownMultiField = React.lazy(function () {
45264
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.LJEYPWI3.js'); });
45295
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.BokP8_1j.js'); });
45265
45296
  });
45266
- var FileUploadField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "FileUploadField" */ './fthry_index.CFas_RaG.js'); }); });
45267
- var MatrixField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "MatrixField" */ './fthry_index.BAjR2Rnl.js'); }); });
45268
- var PasswordField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PasswordField" */ './fthry_index.Wk8VztlG.js'); }); });
45297
+ var FileUploadField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "FileUploadField" */ './fthry_index.BvXec6y1.js'); }); });
45298
+ var MatrixField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "MatrixField" */ './fthry_index.BAis6iAm.js'); }); });
45299
+ var PasswordField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PasswordField" */ './fthry_index.BV9FIqI3.js'); }); });
45269
45300
  var PaymentMethodField = React.lazy(function () {
45270
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.mg1fdRD0.js'); });
45301
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.C_yV3aay.js'); });
45271
45302
  });
45272
- var PhoneField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PhoneField" */ './fthry_index.CdljdZZa.js'); }); });
45273
- var PinInputField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PinInputField" */ './fthry_index.BDYAeN41.js'); }); });
45274
- var QRScanner = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "QRScanner" */ './fthry_index.DamIMdR9.js'); }); });
45303
+ var PhoneField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PhoneField" */ './fthry_index.Dzq-7u_A.js'); }); });
45304
+ var PinInputField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PinInputField" */ './fthry_index.Ct-olYcX.js'); }); });
45305
+ var QRScanner = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "QRScanner" */ './fthry_index.Db8Zj-xl.js'); }); });
45275
45306
  var RadioButtonGroupField = React.lazy(function () {
45276
45307
  return Promise.resolve().then(function () { return require(
45277
- /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.Brf3d6gi.js'); });
45308
+ /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.BdfASO2V.js'); });
45278
45309
  });
45279
- var RatingField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "RatingField" */ './fthry_index.stdBLQZf.js'); }); });
45280
- var SignatureField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SignatureField" */ './fthry_index.6mEHhzfW.js'); }); });
45281
- var SliderField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SliderField" */ './fthry_index.CrMPecva.js'); }); });
45282
- var TextField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextField" */ './fthry_index.Dl8vbJjd.js'); }); });
45283
- var TextArea = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextArea" */ './fthry_index.Cg6LX1gC.js'); }); });
45310
+ var RatingField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "RatingField" */ './fthry_index.D35rnGh5.js'); }); });
45311
+ var SignatureField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SignatureField" */ './fthry_index.Be_wKtBW.js'); }); });
45312
+ var SliderField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SliderField" */ './fthry_index.CgatqFlS.js'); }); });
45313
+ var TextField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextField" */ './fthry_index.CoR2X1u6.js'); }); });
45314
+ var TextArea = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextArea" */ './fthry_index.CPkoG8dL.js'); }); });
45284
45315
  var Fields = {
45285
45316
  AddressLine1: AddressLine1,
45286
45317
  ButtonGroupField: ButtonGroupField,
@@ -45320,7 +45351,7 @@ var defaultBorderFields = [
45320
45351
  'file_upload'
45321
45352
  ];
45322
45353
  var DROPDOWN_Z_INDEX = 10;
45323
- function applyFieldStyles$1(field, styles) {
45354
+ function applyFieldStyles(field, styles) {
45324
45355
  var type = field.servar.type;
45325
45356
  styles.addTargets('fc', 'sub-fc', 'field', 'error', 'active', 'hover', 'disabled', 'tooltipIcon');
45326
45357
  // For these fields, selector font colors
@@ -45655,7 +45686,7 @@ Object.entries(Fields).map(function (_a) {
45655
45686
  whiteSpace: 'pre-wrap',
45656
45687
  overflowWrap: 'anywhere'
45657
45688
  } }, { children: servar.name }))) : null;
45658
- var styles = React.useMemo(function () { return applyFieldStyles$1(element, responsiveStyles); }, [element]);
45689
+ var styles = React.useMemo(function () { return applyFieldStyles(element, responsiveStyles); }, [element]);
45659
45690
  return (jsx$1(Field, exports.__assign({ element: element, fieldLabel: fieldLabel, responsiveStyles: styles }, props)));
45660
45691
  });
45661
45692
  });
@@ -46049,7 +46080,7 @@ function ProgressBarElement(_a) {
46049
46080
  var element = _a.element, responsiveStyles = _a.responsiveStyles, progress = _a.progress, _d = _a.curDepth, curDepth = _d === void 0 ? 1 : _d, _e = _a.maxDepth, maxDepth = _e === void 0 ? 1 : _e, _f = _a.elementProps, elementProps = _f === void 0 ? {} : _f, children = _a.children;
46050
46081
  var styles = React.useMemo(function () { return applyProgressBarStyles(responsiveStyles); }, [responsiveStyles]);
46051
46082
  var userProgress, userSegments;
46052
- if (progress) {
46083
+ if (![null, undefined].includes(progress)) {
46053
46084
  if (typeof progress === 'number') {
46054
46085
  userProgress = progress;
46055
46086
  }
@@ -46082,7 +46113,8 @@ var shimmerFields = [
46082
46113
  'select',
46083
46114
  'button_group',
46084
46115
  'slider',
46085
- 'rating'
46116
+ 'rating',
46117
+ 'table_element'
46086
46118
  ];
46087
46119
  var shimmer = keyframes$1(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n 100% {\n transform: translateX(100%);\n }\n"], ["\n 100% {\n transform: translateX(100%);\n }\n"])));
46088
46120
  var shimmerStyles = {
@@ -46101,8 +46133,8 @@ var shimmerStyles = {
46101
46133
  animation: "".concat(shimmer, " 5s infinite")
46102
46134
  }
46103
46135
  };
46104
- function applyFieldStyles(field, styles) {
46105
- var type = field.servar.type;
46136
+ function applyStyles(element, styles) {
46137
+ var type = element._type;
46106
46138
  styles.addTargets('fc', 'sub-fc', 'field');
46107
46139
  styles.applyFontStyles('fc', false, true);
46108
46140
  switch (type) {
@@ -46174,11 +46206,11 @@ function applyFieldStyles(field, styles) {
46174
46206
  }
46175
46207
  return styles;
46176
46208
  }
46177
- function FieldSkeleton(_a) {
46209
+ function ElementSkeleton(_a) {
46178
46210
  var _b, _c, _d;
46179
46211
  var responsiveStyles = _a.responsiveStyles, element = _a.element;
46180
- var type = element.servar.type;
46181
- var styles = React.useMemo(function () { return applyFieldStyles(element, responsiveStyles); }, [element, responsiveStyles]);
46212
+ var type = element._type;
46213
+ var styles = React.useMemo(function () { return applyStyles(element, responsiveStyles); }, [element, responsiveStyles]);
46182
46214
  var renderPinInput = function () {
46183
46215
  var maxLength = element.servar.max_length || 6;
46184
46216
  var pinDivs = [];
@@ -46202,6 +46234,15 @@ function FieldSkeleton(_a) {
46202
46234
  else if (type === 'qr_scanner') {
46203
46235
  heightAdjust.height = '166px'; // hardcode qr scanner height
46204
46236
  }
46237
+ if (!element.servar) {
46238
+ return (jsx$1("div", exports.__assign({ css: {
46239
+ maxWidth: '100%',
46240
+ width: '100%',
46241
+ height: '100%',
46242
+ position: 'relative',
46243
+ boxSizing: 'border-box'
46244
+ } }, { children: jsx$1("div", { css: exports.__assign(exports.__assign({ width: '100%', boxSizing: 'border-box' }, heightAdjust), shimmerStyles) }) })));
46245
+ }
46205
46246
  return (jsx$1("div", exports.__assign({ css: exports.__assign({ maxWidth: '100%', width: '100%', height: '100%', position: 'relative', boxSizing: 'border-box' }, styles.getTarget('fc')) }, { children: type === 'pin_input' ? (jsx$1("div", exports.__assign({ css: {
46206
46247
  display: 'flex',
46207
46248
  alignItems: 'center',
@@ -46210,12 +46251,14 @@ function FieldSkeleton(_a) {
46210
46251
  }
46211
46252
  var templateObject_1;
46212
46253
 
46254
+ var TableElement = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TableElement" */ './fthry_index.B9CITASf.js'); }); });
46213
46255
  var Basic = {
46214
46256
  ImageElement: ImageElement,
46215
46257
  VideoElement: VideoElement,
46216
46258
  TextElement: TextElement,
46217
46259
  ButtonElement: ButtonElement,
46218
- ProgressBarElement: ProgressBarElement
46260
+ ProgressBarElement: ProgressBarElement,
46261
+ TableElement: TableElement
46219
46262
  };
46220
46263
  var Elements = exports.__assign(exports.__assign({}, Basic), Fields);
46221
46264
  Object.entries(Elements).map(function (_a) {
@@ -46226,7 +46269,7 @@ Object.entries(Elements).map(function (_a) {
46226
46269
  var responsiveStyles = React.useMemo(function () {
46227
46270
  return new ResponsiveStyles(element, ['container'], !componentOnly, formSettings === null || formSettings === void 0 ? void 0 : formSettings.mobileBreakpoint);
46228
46271
  }, [element, componentOnly, formSettings]);
46229
- var featheryElement = (jsx$1(React.Suspense, exports.__assign({ fallback: jsx$1(FieldSkeleton, { element: element, responsiveStyles: responsiveStyles }) }, { children: jsx$1(Element, exports.__assign({ element: element, responsiveStyles: responsiveStyles }, props)) })));
46272
+ var featheryElement = (jsx$1(React.Suspense, exports.__assign({ fallback: jsx$1(ElementSkeleton, { element: element, responsiveStyles: responsiveStyles }) }, { children: jsx$1(Element, exports.__assign({ element: element, responsiveStyles: responsiveStyles }, props)) })));
46230
46273
  var e = onView ? (jsx$1(InView, exports.__assign({ onChange: onView }, { children: featheryElement }))) : (featheryElement);
46231
46274
  if (componentOnly) {
46232
46275
  return (jsxs(Fragment, { children: [children, e] }));
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./fthry_index.YHxFZskW.js');
3
+ var index = require('./fthry_index.B5Nc9EIn.js');
4
4
  var React = require('react');
5
- var InlineTooltip = require('./fthry_InlineTooltip.BdhCa_rK.js');
6
- var useSalesforceSync = require('./fthry_useSalesforceSync.PzKJwKNh.js');
5
+ var InlineTooltip = require('./fthry_InlineTooltip.CRRFOiO4.js');
6
+ var useSalesforceSync = require('./fthry_useSalesforceSync.GHaAu-dd.js');
7
7
  require('react/jsx-runtime');
8
8
  require('react-dom/client');
9
9
  require('jszip');
10
10
  require('react-dom');
11
- require('./fthry_Overlay.CkaxO8d5.js');
11
+ require('./fthry_Overlay.CMYptYVH.js');
12
12
 
13
13
  function ButtonGroupField(_a) {
14
14
  var element = _a.element, responsiveStyles = _a.responsiveStyles, fieldLabel = _a.fieldLabel, inlineError = _a.inlineError, _b = _a.fieldVal, fieldVal = _b === void 0 ? null : _b, _c = _a.repeatIndex, repeatIndex = _c === void 0 ? null : _c, editMode = _a.editMode, _d = _a.onClick, onClick = _d === void 0 ? function () { } : _d, _e = _a.elementProps, elementProps = _e === void 0 ? {} : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f, children = _a.children;