@feathery/react 2.22.0 → 2.23.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 (114) hide show
  1. package/cjs/Form/components/ActionToast/index.d.ts +2 -1
  2. package/cjs/Form/components/ActionToast/index.d.ts.map +1 -1
  3. package/cjs/Form/components/Assistant/MarkdownText.d.ts +7 -0
  4. package/cjs/Form/components/Assistant/MarkdownText.d.ts.map +1 -0
  5. package/cjs/Form/components/Assistant/ToolStatus.d.ts +12 -0
  6. package/cjs/Form/components/Assistant/ToolStatus.d.ts.map +1 -0
  7. package/cjs/Form/components/Assistant/colors.d.ts +17 -0
  8. package/cjs/Form/components/Assistant/colors.d.ts.map +1 -0
  9. package/cjs/Form/components/Assistant/icons.d.ts +9 -0
  10. package/cjs/Form/components/Assistant/icons.d.ts.map +1 -0
  11. package/cjs/Form/components/Assistant/index.d.ts +8 -0
  12. package/cjs/Form/components/Assistant/index.d.ts.map +1 -0
  13. package/cjs/Form/index.d.ts.map +1 -1
  14. package/cjs/Form/tests/testMocks.d.ts.map +1 -1
  15. package/cjs/{fthry_FormControl.C6RfrG4j.js → fthry_FormControl.CTwLDqQX.js} +1 -1
  16. package/cjs/{fthry_InlineTooltip.DXjYqPtD.js → fthry_InlineTooltip.R7o5S9Hi.js} +2 -2
  17. package/cjs/{fthry_Overlay.C4w6Cb6j.js → fthry_Overlay.aL6ya79H.js} +1 -1
  18. package/cjs/{fthry_PaymentMethodField.D05feokK.js → fthry_PaymentMethodField.DLFdpNBi.js} +4 -4
  19. package/cjs/{fthry_Placeholder.D7Yh7mU2.js → fthry_Placeholder.BZtsn8fz.js} +1 -1
  20. package/cjs/{fthry_ShowEyeIcon.CiLTfgAK.js → fthry_ShowEyeIcon.DNr8tAO2.js} +1 -1
  21. package/cjs/{fthry_index.BJT2EG9q.js → fthry_index.4VrFlleU.js} +3 -3
  22. package/cjs/{fthry_index.D3t9MrC8.js → fthry_index.B4FRRpgr.js} +1 -1
  23. package/cjs/{fthry_index.CofrHdeg.js → fthry_index.B6VC3yvc.js} +2 -2
  24. package/cjs/{fthry_index.Cy80QFQZ.js → fthry_index.BBe95Bfl.js} +2 -2
  25. package/cjs/{fthry_index.CIxKm2W7.js → fthry_index.BKITOPaK.js} +6 -6
  26. package/cjs/{fthry_index.B7fwm2Qq.js → fthry_index.BdO-WOSW.js} +1 -1
  27. package/cjs/{fthry_index.C7ja1s3P.js → fthry_index.BeZPHYEW.js} +1 -1
  28. package/cjs/fthry_index.BnFW3Myv.js +10154 -0
  29. package/cjs/{fthry_index.BqZlc7T3.js → fthry_index.BxtiIxtR.js} +5 -5
  30. package/cjs/{fthry_index.6gJGxnEh.js → fthry_index.C9ZNNKBl.js} +1 -1
  31. package/cjs/{fthry_index.avrbgACA.js → fthry_index.CJ4fQh0Q.js} +1 -1
  32. package/cjs/{fthry_index.Dl8zGsAp.js → fthry_index.CKclXUEz.js} +1 -1
  33. package/cjs/{fthry_index.dpVLfqGZ.js → fthry_index.CuALcFA0.js} +4 -4
  34. package/cjs/{fthry_index.BNdR1Zvy.js → fthry_index.D4TokwJO.js} +3 -3
  35. package/cjs/{fthry_index.C-ANSPxY.js → fthry_index.D7WPMS-e.js} +8 -8
  36. package/cjs/{fthry_index.BO3AY9qR.js → fthry_index.DG9GFt5B.js} +6 -6
  37. package/cjs/{fthry_index.DiSY7Ac7.js → fthry_index.DLgrd3kv.js} +1 -1
  38. package/cjs/{fthry_index.lrVIrRLc.js → fthry_index.DUmDjh10.js} +178 -104
  39. package/cjs/{fthry_index.BoacvsbM.js → fthry_index.DUsXh3p4.js} +6 -6
  40. package/cjs/{fthry_index.2sunYeoj.js → fthry_index.DrOR5X_e.js} +1 -1
  41. package/cjs/{fthry_index.CvLykMCw.js → fthry_index.NnlX5lQm.js} +5 -5
  42. package/cjs/{fthry_index.DBJtTx9s.js → fthry_index.Pgo2Mu9x.js} +5 -5
  43. package/cjs/{fthry_index.DjWVnEr6.js → fthry_index._QY6Jk0r.js} +4 -4
  44. package/cjs/{fthry_index.D9UgyAK0.js → fthry_index.jT0ywpWI.js} +5 -5
  45. package/cjs/{fthry_index.CRdtsgYY.js → fthry_index.vkA9iK7B.js} +4 -4
  46. package/cjs/{fthry_input.CHp_Jap5.js → fthry_input.Lj-vEccg.js} +1 -1
  47. package/cjs/{fthry_script.C2pt_bUm.js → fthry_script.KoeCqMxj.js} +1 -1
  48. package/cjs/{fthry_styles.DFm8HxDr.js → fthry_styles.Cy6qRjM_.js} +1 -1
  49. package/cjs/{fthry_useElementSize.BroSkGyG.js → fthry_useElementSize.CPxkbWYF.js} +1 -1
  50. package/cjs/{fthry_useSalesforceSync.DiWBOGl_.js → fthry_useSalesforceSync.vKBJt6Ec.js} +1 -1
  51. package/cjs/{fthry_webfontloader.Du37duiu.js → fthry_webfontloader.CFS5EJ_U.js} +1 -1
  52. package/cjs/index.js +1 -1
  53. package/cjs/utils/featheryClient/index.d.ts.map +1 -1
  54. package/cjs/utils/formHelperFunctions.d.ts +3 -0
  55. package/cjs/utils/formHelperFunctions.d.ts.map +1 -1
  56. package/dist/Form/components/ActionToast/index.d.ts +2 -1
  57. package/dist/Form/components/ActionToast/index.d.ts.map +1 -1
  58. package/dist/Form/components/Assistant/MarkdownText.d.ts +7 -0
  59. package/dist/Form/components/Assistant/MarkdownText.d.ts.map +1 -0
  60. package/dist/Form/components/Assistant/ToolStatus.d.ts +12 -0
  61. package/dist/Form/components/Assistant/ToolStatus.d.ts.map +1 -0
  62. package/dist/Form/components/Assistant/colors.d.ts +17 -0
  63. package/dist/Form/components/Assistant/colors.d.ts.map +1 -0
  64. package/dist/Form/components/Assistant/icons.d.ts +9 -0
  65. package/dist/Form/components/Assistant/icons.d.ts.map +1 -0
  66. package/dist/Form/components/Assistant/index.d.ts +8 -0
  67. package/dist/Form/components/Assistant/index.d.ts.map +1 -0
  68. package/dist/Form/index.d.ts.map +1 -1
  69. package/dist/Form/tests/testMocks.d.ts.map +1 -1
  70. package/dist/{fthry_FormControl.BR7z833q.js → fthry_FormControl.CZJ1jn_X.js} +1 -1
  71. package/dist/{fthry_InlineTooltip.D5rXgJxn.js → fthry_InlineTooltip.BI9A2ISt.js} +2 -2
  72. package/dist/{fthry_Overlay.C0T4Ihiz.js → fthry_Overlay.CR5UzcJA.js} +1 -1
  73. package/dist/{fthry_PaymentMethodField.BnHykb0-.js → fthry_PaymentMethodField.CjqJ8yIr.js} +4 -4
  74. package/dist/{fthry_Placeholder.OebdDszh.js → fthry_Placeholder.CVztEMPo.js} +1 -1
  75. package/dist/{fthry_ShowEyeIcon.5ZGg8TFI.js → fthry_ShowEyeIcon.Ou0z80Bk.js} +1 -1
  76. package/dist/{fthry_index.CAO_boB_.js → fthry_index.B3yyXgjw.js} +6 -6
  77. package/dist/{fthry_index.CbxKTwce.js → fthry_index.BBmBREM8.js} +3 -3
  78. package/dist/{fthry_index.BVBupEyX.js → fthry_index.BHOEgj_J.js} +4 -4
  79. package/dist/{fthry_index.DgH--mO0.js → fthry_index.BNYfMPtP.js} +1 -1
  80. package/dist/{fthry_index.BkvB1fWy.js → fthry_index.BOZNibb0.js} +1 -1
  81. package/dist/{fthry_index.CZr2zxPE.js → fthry_index.BPrCG1DF.js} +1 -1
  82. package/dist/{fthry_index.D33p0Cu9.js → fthry_index.BcuiRv7L.js} +5 -5
  83. package/dist/{fthry_index.DSpMogdQ.js → fthry_index.BlTczd9f.js} +6 -6
  84. package/dist/{fthry_index.DSXLISe1.js → fthry_index.BnuKisSC.js} +1 -1
  85. package/dist/{fthry_index.CQIPge2V.js → fthry_index.Bpe9va3I.js} +2 -2
  86. package/dist/{fthry_index.CbNESu0U.js → fthry_index.BzvJX38E.js} +5 -5
  87. package/dist/{fthry_index.CenbmeTZ.js → fthry_index.C1G-XNqF.js} +4 -4
  88. package/dist/{fthry_index.VasUvj87.js → fthry_index.CDrJFqsv.js} +6 -6
  89. package/dist/{fthry_index.CLjO1Hq8.js → fthry_index.CSglnt5z.js} +1 -1
  90. package/dist/{fthry_index.Cog2BDNb.js → fthry_index.CTKMi2rG.js} +1 -1
  91. package/dist/{fthry_index.Cjz0TFbJ.js → fthry_index.CkJMRFNl.js} +8 -8
  92. package/dist/{fthry_index.NZiAUoKR.js → fthry_index.CoZvVNqs.js} +5 -5
  93. package/dist/{fthry_index.Ca6YzvQ4.js → fthry_index.CtYFxOlM.js} +3 -3
  94. package/dist/{fthry_index.CDRQrd84.js → fthry_index.D3lSuyak.js} +134 -61
  95. package/dist/fthry_index.D7y9hs7B.js +10152 -0
  96. package/dist/{fthry_index.Bg6jDqRN.js → fthry_index.DAS7h09M.js} +1 -1
  97. package/dist/{fthry_index.DomytyFl.js → fthry_index.DE3fEAl4.js} +4 -4
  98. package/dist/{fthry_index.B-HK4FAf.js → fthry_index.DQw3p27A.js} +5 -5
  99. package/dist/{fthry_index.D91kaNEu.js → fthry_index.FXwX6-R-.js} +1 -1
  100. package/dist/{fthry_index.Bsx6VyJi.js → fthry_index.pLuBEDzM.js} +2 -2
  101. package/dist/{fthry_input.mf5Eisx1.js → fthry_input.DRka84YM.js} +1 -1
  102. package/dist/{fthry_script.DYkmIi0j.js → fthry_script.CwI252bu.js} +1 -1
  103. package/dist/{fthry_styles.DctHU6BX.js → fthry_styles.PyyCyYCJ.js} +1 -1
  104. package/dist/{fthry_useElementSize.B_En_KWY.js → fthry_useElementSize.zEQ3--PI.js} +1 -1
  105. package/dist/{fthry_useSalesforceSync.wfhYAUgy.js → fthry_useSalesforceSync.BaADT2cu.js} +1 -1
  106. package/dist/{fthry_webfontloader.sudLWRnv.js → fthry_webfontloader.DY9HYBTa.js} +1 -1
  107. package/dist/index.js +1 -1
  108. package/dist/utils/featheryClient/index.d.ts.map +1 -1
  109. package/dist/utils/formHelperFunctions.d.ts +3 -0
  110. package/dist/utils/formHelperFunctions.d.ts.map +1 -1
  111. package/package.json +5 -2
  112. package/umd/790.4e933b431624db11eeec.js +1 -0
  113. package/umd/AssistantChat.ffb5ce7ab5b0350a9159.js +1 -0
  114. package/umd/index.js +1 -1
@@ -7476,7 +7476,7 @@ var IntegrationClient = /** @class */ (function () {
7476
7476
  _a.sent();
7477
7477
  userId = initInfo().userId;
7478
7478
  params = encodeGetParams(exports.__assign({ form_key: this.formKey, fuser_key: userId }, kwargs));
7479
- return [4 /*yield*/, this._fetch("".concat(API_URL, "plaid/link_token/?").concat(params))];
7479
+ return [4 /*yield*/, this._fetch("".concat(exports.API_URL, "plaid/link_token/?").concat(params))];
7480
7480
  case 2:
7481
7481
  res = _a.sent();
7482
7482
  if (!res)
@@ -7505,7 +7505,7 @@ var IntegrationClient = /** @class */ (function () {
7505
7505
  form_key: this.formKey,
7506
7506
  fuser_key: userId
7507
7507
  });
7508
- url = "".concat(API_URL, "plaid/verification_status/?").concat(params);
7508
+ url = "".concat(exports.API_URL, "plaid/verification_status/?").concat(params);
7509
7509
  return [2 /*return*/, this._fetch(url).then(function (response) {
7510
7510
  return response ? response.json() : Promise.resolve();
7511
7511
  })];
@@ -7522,7 +7522,7 @@ var IntegrationClient = /** @class */ (function () {
7522
7522
  case 1:
7523
7523
  _a.sent();
7524
7524
  userId = initInfo().userId;
7525
- url = "".concat(API_URL, "plaid/user_data/");
7525
+ url = "".concat(exports.API_URL, "plaid/user_data/");
7526
7526
  data = {
7527
7527
  public_token: publicToken,
7528
7528
  form_key: this.formKey,
@@ -7553,7 +7553,7 @@ var IntegrationClient = /** @class */ (function () {
7553
7553
  form_key: this.formKey,
7554
7554
  fuser_key: userId
7555
7555
  });
7556
- url = "".concat(API_URL, "argyle/user_token/?").concat(params);
7556
+ url = "".concat(exports.API_URL, "argyle/user_token/?").concat(params);
7557
7557
  return [2 /*return*/, this._fetch(url).then(function (response) {
7558
7558
  return response ? response.json() : Promise.resolve();
7559
7559
  })];
@@ -7574,7 +7574,7 @@ var IntegrationClient = /** @class */ (function () {
7574
7574
  form_key: this.formKey,
7575
7575
  fuser_key: userId
7576
7576
  };
7577
- url = "".concat(API_URL, "flinks/authorize-iframe/?").concat(encodeGetParams(params));
7577
+ url = "".concat(exports.API_URL, "flinks/authorize-iframe/?").concat(encodeGetParams(params));
7578
7578
  return [2 /*return*/, this._fetch(url)];
7579
7579
  }
7580
7580
  });
@@ -7598,7 +7598,7 @@ var IntegrationClient = /** @class */ (function () {
7598
7598
  params.login_id = loginId;
7599
7599
  if (token)
7600
7600
  params.token = token;
7601
- url = "".concat(API_URL, "flinks/login-id/?").concat(encodeGetParams(params));
7601
+ url = "".concat(exports.API_URL, "flinks/login-id/?").concat(encodeGetParams(params));
7602
7602
  return [2 /*return*/, this._fetch(url)];
7603
7603
  }
7604
7604
  });
@@ -7610,20 +7610,20 @@ var IntegrationClient = /** @class */ (function () {
7610
7610
  country: country,
7611
7611
  city_search: city ? 'true' : ''
7612
7612
  });
7613
- var url = "".concat(API_URL, "integration/address/search/?").concat(params);
7613
+ var url = "".concat(exports.API_URL, "integration/address/search/?").concat(params);
7614
7614
  return this._fetch(url).then(function (response) {
7615
7615
  return response ? response.json() : Promise.resolve();
7616
7616
  });
7617
7617
  };
7618
7618
  IntegrationClient.prototype.addressDetail = function (addressId) {
7619
7619
  var params = encodeGetParams({ address_id: addressId });
7620
- var url = "".concat(API_URL, "integration/address/detail/?").concat(params);
7620
+ var url = "".concat(exports.API_URL, "integration/address/detail/?").concat(params);
7621
7621
  return this._fetch(url).then(function (response) {
7622
7622
  return response ? response.json() : Promise.resolve();
7623
7623
  });
7624
7624
  };
7625
7625
  IntegrationClient.prototype.verifyRecaptchaToken = function (token) {
7626
- var url = "".concat(API_URL, "google/recaptcha/verify/");
7626
+ var url = "".concat(exports.API_URL, "google/recaptcha/verify/");
7627
7627
  var options = {
7628
7628
  headers: { 'Content-Type': 'application/json' },
7629
7629
  method: 'POST',
@@ -7643,7 +7643,7 @@ var IntegrationClient = /** @class */ (function () {
7643
7643
  case 1:
7644
7644
  _a.sent();
7645
7645
  userId = initInfo().userId;
7646
- url = "".concat(API_URL, "stripe/payment_method/");
7646
+ url = "".concat(exports.API_URL, "stripe/payment_method/");
7647
7647
  data = exports.__assign(exports.__assign({ form_key: this.formKey }, (userId ? { user_id: userId } : {})), { field_id: paymentMethodFieldId });
7648
7648
  options = {
7649
7649
  headers: { 'Content-Type': 'application/json' },
@@ -7668,7 +7668,7 @@ var IntegrationClient = /** @class */ (function () {
7668
7668
  _a.sent();
7669
7669
  userId = initInfo().userId;
7670
7670
  params = encodeGetParams(exports.__assign(exports.__assign({ field_id: paymentMethodFieldId, form_key: this.formKey }, (userId ? { user_id: userId } : {})), { stripe_payment_method_id: stripePaymentMethodId }));
7671
- url = "".concat(API_URL, "stripe/payment_method/card/?").concat(params);
7671
+ url = "".concat(exports.API_URL, "stripe/payment_method/card/?").concat(params);
7672
7672
  return [2 /*return*/, this._fetch(url).then(function (response) {
7673
7673
  return response ? response.json() : Promise.resolve();
7674
7674
  })];
@@ -7687,7 +7687,7 @@ var IntegrationClient = /** @class */ (function () {
7687
7687
  case 1:
7688
7688
  _a.sent();
7689
7689
  userId = initInfo().userId;
7690
- url = "".concat(API_URL, "stripe/payment/");
7690
+ url = "".concat(exports.API_URL, "stripe/payment/");
7691
7691
  data = exports.__assign({ form_key: this.formKey, user_id: userId }, extraParams);
7692
7692
  options = {
7693
7693
  headers: { 'Content-Type': 'application/json' },
@@ -7713,7 +7713,7 @@ var IntegrationClient = /** @class */ (function () {
7713
7713
  case 1:
7714
7714
  _a.sent();
7715
7715
  userId = initInfo().userId;
7716
- url = "".concat(API_URL, "stripe/checkout/");
7716
+ url = "".concat(exports.API_URL, "stripe/checkout/");
7717
7717
  data = {
7718
7718
  form_key: this.formKey,
7719
7719
  user_id: userId,
@@ -7738,7 +7738,7 @@ var IntegrationClient = /** @class */ (function () {
7738
7738
  var _this = this;
7739
7739
  return __generator(this, function (_a) {
7740
7740
  userId = initInfo().userId;
7741
- url = "".concat(API_URL, "otp/send/");
7741
+ url = "".concat(exports.API_URL, "otp/send/");
7742
7742
  options = {
7743
7743
  headers: { 'Content-Type': 'application/json' },
7744
7744
  method: 'POST',
@@ -7776,7 +7776,7 @@ var IntegrationClient = /** @class */ (function () {
7776
7776
  var _this = this;
7777
7777
  return __generator(this, function (_a) {
7778
7778
  userId = initInfo().userId;
7779
- url = "".concat(API_URL, "otp/send/");
7779
+ url = "".concat(exports.API_URL, "otp/send/");
7780
7780
  options = {
7781
7781
  headers: { 'Content-Type': 'application/json' },
7782
7782
  method: 'POST',
@@ -7815,7 +7815,7 @@ var IntegrationClient = /** @class */ (function () {
7815
7815
  var _this = this;
7816
7816
  return __generator(this, function (_a) {
7817
7817
  userId = initInfo().userId;
7818
- url = "".concat(API_URL, "otp/verify/");
7818
+ url = "".concat(exports.API_URL, "otp/verify/");
7819
7819
  options = {
7820
7820
  headers: { 'Content-Type': 'application/json' },
7821
7821
  method: 'POST',
@@ -7880,7 +7880,7 @@ var IntegrationClient = /** @class */ (function () {
7880
7880
  var _this = this;
7881
7881
  var documents = _a.documents, fillData = _a.fillData, emailSubject = _a.emailSubject, emailBlurb = _a.emailBlurb, signers = _a.signers;
7882
7882
  var userId = initInfo().userId;
7883
- var url = "".concat(API_URL, "docusign/envelope/");
7883
+ var url = "".concat(exports.API_URL, "docusign/envelope/");
7884
7884
  var options = {
7885
7885
  headers: { 'Content-Type': 'application/json' },
7886
7886
  method: 'POST',
@@ -8062,7 +8062,7 @@ var IntegrationClient = /** @class */ (function () {
8062
8062
  switch (_d.label) {
8063
8063
  case 0:
8064
8064
  userId = initInfo().userId;
8065
- initialUrl = "".concat(API_URL, "telesign/silent/initial/");
8065
+ initialUrl = "".concat(exports.API_URL, "telesign/silent/initial/");
8066
8066
  options = {
8067
8067
  headers: { 'Content-Type': 'application/json' },
8068
8068
  method: 'POST',
@@ -8102,7 +8102,7 @@ var IntegrationClient = /** @class */ (function () {
8102
8102
  form_key: this.formKey,
8103
8103
  fuser_key: userId
8104
8104
  };
8105
- finalUrl = "".concat(API_URL, "telesign/silent/final/?").concat(encodeGetParams(params));
8105
+ finalUrl = "".concat(exports.API_URL, "telesign/silent/final/?").concat(encodeGetParams(params));
8106
8106
  return [4 /*yield*/, this._fetch(finalUrl, {})];
8107
8107
  case 4:
8108
8108
  finalResponse = _d.sent();
@@ -8130,7 +8130,7 @@ var IntegrationClient = /** @class */ (function () {
8130
8130
  switch (_a.label) {
8131
8131
  case 0:
8132
8132
  userId = initInfo().userId;
8133
- url = "".concat(API_URL, "telesign/phone_type/");
8133
+ url = "".concat(exports.API_URL, "telesign/phone_type/");
8134
8134
  options = {
8135
8135
  headers: { 'Content-Type': 'application/json' },
8136
8136
  method: 'POST',
@@ -8161,7 +8161,7 @@ var IntegrationClient = /** @class */ (function () {
8161
8161
  switch (_a.label) {
8162
8162
  case 0:
8163
8163
  userId = initInfo().userId;
8164
- url = "".concat(API_URL, "telesign/otp/").concat(mode, "/");
8164
+ url = "".concat(exports.API_URL, "telesign/otp/").concat(mode, "/");
8165
8165
  options = {
8166
8166
  headers: { 'Content-Type': 'application/json' },
8167
8167
  method: 'POST',
@@ -8191,7 +8191,7 @@ var IntegrationClient = /** @class */ (function () {
8191
8191
  form_key: this.formKey,
8192
8192
  fuser_key: userId
8193
8193
  };
8194
- url = "".concat(API_URL, "telesign/otp/verify/?").concat(encodeGetParams(params));
8194
+ url = "".concat(exports.API_URL, "telesign/otp/verify/?").concat(encodeGetParams(params));
8195
8195
  return [4 /*yield*/, this._fetch(url)];
8196
8196
  case 1:
8197
8197
  response = _c.sent();
@@ -8235,7 +8235,7 @@ var IntegrationClient = /** @class */ (function () {
8235
8235
  switch (_d.label) {
8236
8236
  case 0:
8237
8237
  userId = initInfo().userId;
8238
- url = "".concat(API_URL, "alloy/journey/application/");
8238
+ url = "".concat(exports.API_URL, "alloy/journey/application/");
8239
8239
  reqOptions = {
8240
8240
  headers: { 'Content-Type': 'application/json' },
8241
8241
  method: 'POST',
@@ -8270,7 +8270,7 @@ var IntegrationClient = /** @class */ (function () {
8270
8270
  switch (_d.label) {
8271
8271
  case 0:
8272
8272
  userId = initInfo().userId;
8273
- url = "".concat(API_URL, "loanpro/customer/create/");
8273
+ url = "".concat(exports.API_URL, "loanpro/customer/create/");
8274
8274
  reqOptions = {
8275
8275
  headers: { 'Content-Type': 'application/json' },
8276
8276
  method: 'POST',
@@ -8304,7 +8304,7 @@ var IntegrationClient = /** @class */ (function () {
8304
8304
  switch (_d.label) {
8305
8305
  case 0:
8306
8306
  userId = initInfo().userId;
8307
- url = "".concat(API_URL, "loanpro/customer/search/");
8307
+ url = "".concat(exports.API_URL, "loanpro/customer/search/");
8308
8308
  reqOptions = {
8309
8309
  headers: { 'Content-Type': 'application/json' },
8310
8310
  method: 'POST',
@@ -8337,7 +8337,7 @@ var IntegrationClient = /** @class */ (function () {
8337
8337
  switch (_d.label) {
8338
8338
  case 0:
8339
8339
  userId = initInfo().userId;
8340
- url = "".concat(API_URL, "schwab/create_contact/");
8340
+ url = "".concat(exports.API_URL, "schwab/create_contact/");
8341
8341
  reqOptions = {
8342
8342
  headers: { 'Content-Type': 'application/json' },
8343
8343
  method: 'POST',
@@ -8382,7 +8382,7 @@ var IntegrationClient = /** @class */ (function () {
8382
8382
  return __generator(this, function (_a) {
8383
8383
  switch (_a.label) {
8384
8384
  case 0:
8385
- url = "".concat(API_URL, "salesforce/field/options/");
8385
+ url = "".concat(exports.API_URL, "salesforce/field/options/");
8386
8386
  params = new URLSearchParams({
8387
8387
  object_name: objectName,
8388
8388
  field_name: fieldName,
@@ -38756,12 +38756,12 @@ var getTitle = function (data) {
38756
38756
  }
38757
38757
  return 'Scanning Documents';
38758
38758
  };
38759
- var ActionToast = function (_a) {
38759
+ var ActionToast = React.forwardRef(function (_a, ref) {
38760
38760
  var data = _a.data, _b = _a.bottom, bottom = _b === void 0 ? 20 : _b;
38761
38761
  var _c = __read(React.useState(true), 2), isToastExpanded = _c[0], setIsToastExpanded = _c[1];
38762
38762
  if (data.length === 0)
38763
38763
  return null;
38764
- return (jsxs("div", exports.__assign({ css: {
38764
+ return (jsxs("div", exports.__assign({ ref: ref, css: {
38765
38765
  position: 'fixed',
38766
38766
  bottom: "".concat(bottom, "px"),
38767
38767
  right: '16px',
@@ -38792,7 +38792,7 @@ var ActionToast = function (_a) {
38792
38792
  maxHeight: '384px',
38793
38793
  overflowY: 'auto'
38794
38794
  } }, { children: data.map(function (item, index) { return (jsx$1(ToastItem, { item: item }, index)); }) })))] })));
38795
- };
38795
+ });
38796
38796
 
38797
38797
  // Type guard function
38798
38798
  function isAIExtractionAction(action) {
@@ -39094,6 +39094,7 @@ function useTrackUserInteraction(formRef, activeStep, stepKey, formName) {
39094
39094
  }, [activeStep, stepKey, formName]);
39095
39095
  }
39096
39096
 
39097
+ var AssistantChat = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "AssistantChat" */ './fthry_index.BnFW3Myv.js'); }); });
39097
39098
  var getSubmissionErrorMessage = function (error) {
39098
39099
  if (error instanceof TypeError && error.message === 'Failed to fetch') {
39099
39100
  return 'Unable to upload files. Please check your connection and try again.';
@@ -39103,6 +39104,26 @@ var getSubmissionErrorMessage = function (error) {
39103
39104
  }
39104
39105
  return 'Submission failed. Please try again.';
39105
39106
  };
39107
+ function closePreOpenedWindows(windows) {
39108
+ windows.forEach(function (win) { return win === null || win === void 0 ? void 0 : win.close(); });
39109
+ }
39110
+ // Pre-open windows synchronously within the user-gesture call stack on iOS.
39111
+ // iOS Safari blocks window.open() after any await breaks the gesture chain.
39112
+ function preOpenIOSWindows(actions) {
39113
+ var windows = new Map();
39114
+ if (isIOS()) {
39115
+ actions.forEach(function (action, idx) {
39116
+ if (action.type === ACTION_URL && action.open_tab) {
39117
+ var win = featheryWindow().open('about:blank', '_blank');
39118
+ if (win) {
39119
+ win.opener = null;
39120
+ windows.set(idx, win);
39121
+ }
39122
+ }
39123
+ });
39124
+ }
39125
+ return windows;
39126
+ }
39106
39127
  function Form(_a) {
39107
39128
  var _this = this;
39108
39129
  var _b;
@@ -39143,7 +39164,10 @@ function Form(_a) {
39143
39164
  clearHideIfFields: false,
39144
39165
  completionBehavior: '',
39145
39166
  globalStyles: {},
39146
- mobileBreakpoint: DEFAULT_MOBILE_BREAKPOINT
39167
+ mobileBreakpoint: DEFAULT_MOBILE_BREAKPOINT,
39168
+ assistantEnabled: false,
39169
+ assistantContext: '',
39170
+ assistantColor: '#6b7280'
39147
39171
  }), 2), formSettings = _12[0], setFormSettings = _12[1];
39148
39172
  var trackHashes = React.useRef(false);
39149
39173
  var curLanguage = React.useRef(undefined);
@@ -39296,7 +39320,41 @@ function Form(_a) {
39296
39320
  });
39297
39321
  }, [setLoaders]);
39298
39322
  var _30 = useAIExtractionToast(), currentActionExtractions = _30.currentActionExtractions, initializeActionExtractions = _30.initializeActionExtractions, updateExtractionInAction = _30.updateExtractionInAction, handleExtractionStatusUpdate = _30.handleExtractionStatusUpdate;
39299
- var _31 = useEnvelopeGenerationToast(), currentEnvelopeGeneration = _31.currentEnvelopeGeneration, initializeEnvelopeGeneration = _31.initializeEnvelopeGeneration, updateEnvelopeGeneration = _31.updateEnvelopeGeneration;
39323
+ // Track if any extraction has completed (for showing assistant)
39324
+ // eventually we will always show the assistant regardless of extraction status
39325
+ var _31 = __read(React.useState(false), 2), hasCompletedExtraction = _31[0], setHasCompletedExtraction = _31[1];
39326
+ React.useEffect(function () {
39327
+ if (!hasCompletedExtraction &&
39328
+ currentActionExtractions.some(function (e) { return e.status === 'complete'; })) {
39329
+ setHasCompletedExtraction(true);
39330
+ }
39331
+ }, [currentActionExtractions, hasCompletedExtraction]);
39332
+ var _32 = useEnvelopeGenerationToast(), currentEnvelopeGeneration = _32.currentEnvelopeGeneration, initializeEnvelopeGeneration = _32.initializeEnvelopeGeneration, updateEnvelopeGeneration = _32.updateEnvelopeGeneration;
39333
+ // Track ActionToast height for positioning WorkflowChat above it
39334
+ var _33 = __read(React.useState(0), 2), actionToastHeight = _33[0], setActionToastHeight = _33[1];
39335
+ var actionToastRef = React.useRef(null);
39336
+ var actionToastObserverRef = React.useRef(null);
39337
+ // Reset height when toast data becomes empty
39338
+ var actionToastData = React.useMemo(function () { return __spreadArray(__spreadArray([], __read(currentActionExtractions), false), __read(currentEnvelopeGeneration), false); }, [currentActionExtractions, currentEnvelopeGeneration]);
39339
+ React.useEffect(function () {
39340
+ if (actionToastData.length === 0) {
39341
+ setActionToastHeight(0);
39342
+ }
39343
+ }, [actionToastData.length]);
39344
+ var setActionToastRef = React.useCallback(function (node) {
39345
+ if (actionToastObserverRef.current) {
39346
+ actionToastObserverRef.current.disconnect();
39347
+ actionToastObserverRef.current = null;
39348
+ }
39349
+ actionToastRef.current = node;
39350
+ if (node) {
39351
+ var observer = new ResizeObserver(function (entries) {
39352
+ setActionToastHeight(entries[0].contentRect.height);
39353
+ });
39354
+ observer.observe(node);
39355
+ actionToastObserverRef.current = observer;
39356
+ }
39357
+ }, []);
39300
39358
  // Tracks element to focus
39301
39359
  var focusRef = React.useRef(undefined);
39302
39360
  // Tracks the execution of user-provided callback functions
@@ -39371,7 +39429,7 @@ function Form(_a) {
39371
39429
  setRequiredStepAction(requiredStepAction);
39372
39430
  }, [activeStep === null || activeStep === void 0 ? void 0 : activeStep.id]);
39373
39431
  // viewElements state
39374
- var _32 = __read(React.useState([]), 2), viewElements = _32[0], setViewElements = _32[1];
39432
+ var _34 = __read(React.useState([]), 2), viewElements = _34[0], setViewElements = _34[1];
39375
39433
  React.useEffect(function () {
39376
39434
  setViewElements(onViewElements);
39377
39435
  }, [onViewElements.length]);
@@ -39515,7 +39573,7 @@ function Form(_a) {
39515
39573
  return true;
39516
39574
  };
39517
39575
  // For audio AI only right now
39518
- var _33 = __read(React.useState(_pollFuserData), 2), pollFuserData = _33[0], setPollFuserData = _33[1];
39576
+ var _35 = __read(React.useState(_pollFuserData), 2), pollFuserData = _35[0], setPollFuserData = _35[1];
39519
39577
  usePollFuserData(pollFuserData, client, updateFieldValues);
39520
39578
  var eventCallbackMap = {
39521
39579
  change: onChange,
@@ -40302,7 +40360,7 @@ function Form(_a) {
40302
40360
  });
40303
40361
  }); };
40304
40362
  // usePayments (Stripe)
40305
- var _34 = __read(usePayments(), 2), getCardElement = _34[0], setCardElement = _34[1];
40363
+ var _36 = __read(usePayments(), 2), getCardElement = _36[0], setCardElement = _36[1];
40306
40364
  function setupStepPaymentMethod(formattedFields) {
40307
40365
  return __awaiter$2(this, void 0, void 0, function () {
40308
40366
  var i, field, integrationData, actionData, actionResult;
@@ -40635,9 +40693,9 @@ function Form(_a) {
40635
40693
  }
40636
40694
  return state;
40637
40695
  };
40638
- var _35 = useCheckButtonAction(setButtonLoader, clearLoaders), isButtonActionRunning = _35.isButtonActionRunning, updateButtonActionState = _35.updateButtonActionState, clearButtonActionState = _35.clearButtonActionState, setUserLogicRunning = _35.setUserLogicRunning;
40696
+ var _37 = useCheckButtonAction(setButtonLoader, clearLoaders), isButtonActionRunning = _37.isButtonActionRunning, updateButtonActionState = _37.updateButtonActionState, clearButtonActionState = _37.clearButtonActionState, setUserLogicRunning = _37.setUserLogicRunning;
40639
40697
  var buttonOnClick = function (button) { return __awaiter$2(_this, void 0, void 0, function () {
40640
- var setButtonError, invalid, running, e_5;
40698
+ var setButtonError, actions, preOpenedWindows, invalid, running, e_5;
40641
40699
  var _a;
40642
40700
  return __generator(this, function (_b) {
40643
40701
  switch (_b.label) {
@@ -40664,6 +40722,8 @@ function Form(_a) {
40664
40722
  });
40665
40723
  }, 10);
40666
40724
  };
40725
+ actions = prioritizeActions((_a = button.properties.actions) !== null && _a !== void 0 ? _a : []);
40726
+ preOpenedWindows = preOpenIOSWindows(actions);
40667
40727
  _b.label = 3;
40668
40728
  case 3:
40669
40729
  _b.trys.push([3, 7, , 8]);
@@ -40672,17 +40732,19 @@ function Form(_a) {
40672
40732
  case 4:
40673
40733
  invalid = _b.sent();
40674
40734
  if (invalid) {
40735
+ closePreOpenedWindows(preOpenedWindows);
40675
40736
  setButtonError("You didn't pass CAPTCHA verification");
40676
40737
  return [2 /*return*/];
40677
40738
  }
40678
40739
  _b.label = 5;
40679
40740
  case 5: return [4 /*yield*/, runElementActions({
40680
- actions: (_a = button.properties.actions) !== null && _a !== void 0 ? _a : [],
40741
+ actions: actions,
40681
40742
  element: button,
40682
40743
  elementType: 'button',
40683
40744
  submit: button.properties.submit,
40684
40745
  setElementError: setButtonError,
40685
- onAsyncEnd: function () { return clearLoaders(); }
40746
+ onAsyncEnd: function () { return clearLoaders(); },
40747
+ preOpenedWindows: preOpenedWindows
40686
40748
  })];
40687
40749
  case 6:
40688
40750
  running = _b.sent();
@@ -40692,6 +40754,7 @@ function Form(_a) {
40692
40754
  return [3 /*break*/, 8];
40693
40755
  case 7:
40694
40756
  e_5 = _b.sent();
40757
+ closePreOpenedWindows(preOpenedWindows);
40695
40758
  // Clear the click lock so user can retry
40696
40759
  if (button.id) {
40697
40760
  elementClicks[button.id] = false;
@@ -40749,21 +40812,25 @@ function Form(_a) {
40749
40812
  // Some actions (Persona, Plaid, etc) require special handling: they pause execution and
40750
40813
  // provide a callback for continuing to the next action once they complete.
40751
40814
  var runElementActions = function (_a) {
40752
- 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;
40815
+ 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, externalPreOpenedWindows = _a.preOpenedWindows;
40753
40816
  return __awaiter$2(_this, void 0, void 0, function () {
40754
- var id, metadata, trigger, submitPromise, pendingFileKeys, invalid, hasNext, submissionResult, error_3, _e, stepPromise, preOpenedWindows, flowOnSuccess, actionTypes, runAction, i, hasExtractions, hasEnvelopeGeneration, _loop_1, state_1;
40817
+ var id, preOpenedWindows, metadata, trigger, submitPromise, pendingFileKeys, invalid, hasNext, submissionResult, error_3, _e, stepPromise, flowOnSuccess, actionTypes, runAction, i, hasExtractions, hasEnvelopeGeneration, _loop_1, state_1;
40755
40818
  var _this = this;
40756
40819
  var _f, _g, _h, _j, _k;
40757
40820
  return __generator(this, function (_l) {
40758
40821
  switch (_l.label) {
40759
40822
  case 0:
40760
40823
  id = (_f = element.id) !== null && _f !== void 0 ? _f : '';
40824
+ preOpenedWindows = externalPreOpenedWindows !== null && externalPreOpenedWindows !== void 0 ? externalPreOpenedWindows : new Map();
40761
40825
  // Prevent rapid re-clicks on the same element during async operations (file uploads, API calls)
40762
- if (id && elementClicks[id])
40826
+ if (id && elementClicks[id]) {
40827
+ closePreOpenedWindows(preOpenedWindows);
40763
40828
  return [2 /*return*/];
40829
+ }
40764
40830
  elementClicks[id] = true;
40765
40831
  if (isButtonActionRunning()) {
40766
40832
  elementClicks[id] = false;
40833
+ closePreOpenedWindows(preOpenedWindows);
40767
40834
  return [2 /*return*/, true];
40768
40835
  }
40769
40836
  updateButtonActionState(elementType, element, triggerPayload);
@@ -40783,6 +40850,7 @@ function Form(_a) {
40783
40850
  setElementError(REQUIRED_FLOW_ACTIONS[requiredStepAction]);
40784
40851
  elementClicks[id] = false;
40785
40852
  clearButtonActionState();
40853
+ closePreOpenedWindows(preOpenedWindows);
40786
40854
  return [2 /*return*/];
40787
40855
  }
40788
40856
  pendingFileKeys = getPendingFileUploadKeys();
@@ -40818,6 +40886,7 @@ function Form(_a) {
40818
40886
  setAutoValidate(true);
40819
40887
  elementClicks[id] = false;
40820
40888
  clearButtonActionState();
40889
+ closePreOpenedWindows(preOpenedWindows);
40821
40890
  return [2 /*return*/];
40822
40891
  }
40823
40892
  hasNext = actions.some(function (action) { return action.type === ACTION_NEXT; }) &&
@@ -40838,6 +40907,7 @@ function Form(_a) {
40838
40907
  if (!submissionResult) {
40839
40908
  elementClicks[id] = false;
40840
40909
  clearButtonActionState();
40910
+ closePreOpenedWindows(preOpenedWindows);
40841
40911
  return [2 /*return*/];
40842
40912
  }
40843
40913
  _e = __read(submissionResult, 1), stepPromise = _e[0];
@@ -40855,19 +40925,12 @@ function Form(_a) {
40855
40925
  submitPromise.catch(function () { });
40856
40926
  _l.label = 7;
40857
40927
  case 7:
40858
- // Adjust action order to prioritize certain actions and
40859
- // to ensure all actions are run as expected
40860
- actions = prioritizeActions(actions);
40861
- preOpenedWindows = new Map();
40862
- if (isIOS()) {
40863
- actions.forEach(function (action, idx) {
40864
- if (action.type === ACTION_URL && action.open_tab) {
40865
- var win = featheryWindow().open('about:blank', '_blank');
40866
- if (win) {
40867
- win.opener = null; // Prevent reverse tabnabbing
40868
- preOpenedWindows.set(idx, win);
40869
- }
40870
- }
40928
+ if (!externalPreOpenedWindows)
40929
+ actions = prioritizeActions(actions);
40930
+ // Guards text/container callers if an async onAction or action logic rule breaks the gesture chain
40931
+ if (!externalPreOpenedWindows) {
40932
+ preOpenIOSWindows(actions).forEach(function (win, idx) {
40933
+ return preOpenedWindows.set(idx, win);
40871
40934
  });
40872
40935
  }
40873
40936
  flowOnSuccess = function (index) { return function () { return __awaiter$2(_this, void 0, void 0, function () {
@@ -41585,8 +41648,7 @@ function Form(_a) {
41585
41648
  i++;
41586
41649
  return [3 /*break*/, 9];
41587
41650
  case 12:
41588
- // Close any pre-opened windows that weren't used (e.g., validation failed)
41589
- preOpenedWindows.forEach(function (win) { return win === null || win === void 0 ? void 0 : win.close(); });
41651
+ closePreOpenedWindows(preOpenedWindows);
41590
41652
  if (i < actions.length) {
41591
41653
  elementClicks[id] = false;
41592
41654
  clearButtonActionState();
@@ -41733,10 +41795,13 @@ function Form(_a) {
41733
41795
  navigate(getNewStepUrl(stepKey));
41734
41796
  else
41735
41797
  setStepKey(stepKey);
41736
- }, formName: formName, draft: _draft, visible: !hideTestUI })), global.firebase && (jsx$1("div", { id: 'featheryRecaptcha', style: { position: 'absolute', visibility: 'hidden' } })), jsx$1(Watermark, { show: formSettings.showBrand, brandPosition: formSettings.brandPosition }), jsx$1(ActionToast, { data: __spreadArray(__spreadArray([], __read(currentActionExtractions), false), __read(currentEnvelopeGeneration), false), bottom: formSettings.showBrand &&
41798
+ }, formName: formName, draft: _draft, visible: !hideTestUI })), global.firebase && (jsx$1("div", { id: 'featheryRecaptcha', style: { position: 'absolute', visibility: 'hidden' } })), jsx$1(Watermark, { show: formSettings.showBrand, brandPosition: formSettings.brandPosition }), jsx$1(ActionToast, { ref: setActionToastRef, data: actionToastData, bottom: formSettings.showBrand &&
41737
41799
  formSettings.brandPosition === 'bottom_right'
41738
41800
  ? 67
41739
- : 20 })] })) })));
41801
+ : 20 }), formSettings.assistantEnabled && hasCompletedExtraction && (jsx$1(React.Suspense, exports.__assign({ fallback: null }, { children: jsx$1(AssistantChat, { formId: formId, bottom: (formSettings.showBrand &&
41802
+ formSettings.brandPosition === 'bottom_right'
41803
+ ? 67
41804
+ : 20) + (actionToastHeight > 0 ? actionToastHeight + 10 : 0), color: formSettings.assistantColor }) })))] })) })));
41740
41805
  }
41741
41806
  // normal <Form /> (aka ReactForm) component is exported with just `props:
41742
41807
  // Props`, so need this component to support exposing _internalId for use in
@@ -44670,7 +44735,7 @@ try {
44670
44735
  distExports$2.setEnvironment((process.env.BACKEND_ENV || 'production'));
44671
44736
  }
44672
44737
  catch (e) { } // process.env won't exist in production build
44673
- var API_URL = distExports$2.getApiUrl();
44738
+ exports.API_URL = distExports$2.getApiUrl();
44674
44739
  var CDN_URL = distExports$2.getCdnUrl();
44675
44740
  var STATIC_URL = distExports$2.getStaticUrl();
44676
44741
  var S3_URL = distExports$2.getS3Url();
@@ -44683,7 +44748,7 @@ var updateRegionApiUrls = function (region) {
44683
44748
  if (!environmentMap[region])
44684
44749
  return;
44685
44750
  distExports$2.setEnvironment(environmentMap[region]);
44686
- API_URL = distExports$2.getApiUrl();
44751
+ exports.API_URL = distExports$2.getApiUrl();
44687
44752
  CDN_URL = distExports$2.getCdnUrl();
44688
44753
  STATIC_URL = distExports$2.getStaticUrl();
44689
44754
  S3_URL = distExports$2.getS3Url();
@@ -44788,7 +44853,7 @@ var FeatheryClient = /** @class */ (function (_super) {
44788
44853
  if (servars.length === 0)
44789
44854
  return [2 /*return*/, Promise.resolve()];
44790
44855
  _a = initInfo(), userId = _a.userId, collaboratorId = _a.collaboratorId;
44791
- url = "".concat(API_URL, "panel/step/submit/v3/");
44856
+ url = "".concat(exports.API_URL, "panel/step/submit/v3/");
44792
44857
  data = {
44793
44858
  fuser_key: userId,
44794
44859
  step_key: stepKey,
@@ -44894,7 +44959,7 @@ var FeatheryClient = /** @class */ (function (_super) {
44894
44959
  switch (_a.label) {
44895
44960
  case 0:
44896
44961
  userId = initInfo().userId;
44897
- url = "".concat(API_URL, "panel/step/submit/file/").concat(userId, "/");
44962
+ url = "".concat(exports.API_URL, "panel/step/submit/file/").concat(userId, "/");
44898
44963
  formData = new FormData();
44899
44964
  return [4 /*yield*/, this._getFileValue(servar)];
44900
44965
  case 1:
@@ -44974,7 +45039,7 @@ var FeatheryClient = /** @class */ (function (_super) {
44974
45039
  if (merge === void 0) { merge = false; }
44975
45040
  var oldUserId = initInfo().userId;
44976
45041
  var data = exports.__assign({ new_fuser_key: newUserId, merge: merge }, (oldUserId ? { fuser_key: oldUserId } : {}));
44977
- var url = "".concat(API_URL, "fuser/update_key/");
45042
+ var url = "".concat(exports.API_URL, "fuser/update_key/");
44978
45043
  var options = {
44979
45044
  headers: { 'Content-Type': 'application/json' },
44980
45045
  method: 'PATCH',
@@ -44984,7 +45049,7 @@ var FeatheryClient = /** @class */ (function (_super) {
44984
45049
  };
44985
45050
  FeatheryClient.prototype.pollUserData = function () {
44986
45051
  var userId = initInfo().userId;
44987
- var url = "".concat(API_URL, "fuser/poll/?fuser_key=").concat(userId);
45052
+ var url = "".concat(exports.API_URL, "fuser/poll/?fuser_key=").concat(userId);
44988
45053
  return this._fetch(url);
44989
45054
  };
44990
45055
  FeatheryClient.prototype.setDefaultFormValues = function (_a) {
@@ -45081,7 +45146,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45081
45146
  draft: this.draft,
45082
45147
  theme: theme
45083
45148
  });
45084
- var baseURL = this.bypassCDN ? API_URL : CDN_URL;
45149
+ var baseURL = this.bypassCDN ? exports.API_URL : CDN_URL;
45085
45150
  var url = "".concat(baseURL, "panel/v20/?").concat(params);
45086
45151
  var options = {
45087
45152
  importance: 'high',
@@ -45177,7 +45242,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45177
45242
  params.no_data = 'true';
45178
45243
  // @ts-expect-error TS(2322): Type 'string' is not assignable to type '{ form_ke... Remove this comment to see the full error message
45179
45244
  params = encodeGetParams(params);
45180
- url = "".concat(API_URL, "panel/session/v3/?").concat(params);
45245
+ url = "".concat(exports.API_URL, "panel/session/v3/?").concat(params);
45181
45246
  options = { importance: 'high' };
45182
45247
  return [4 /*yield*/, this._fetch(url, options)];
45183
45248
  case 4:
@@ -45227,7 +45292,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45227
45292
  case 1:
45228
45293
  _d.sent();
45229
45294
  data = exports.__assign({ auth_id: authId, auth_data: authData, auth_form_key: authState.authFormKey, is_stytch_template_key: isStytchTemplateKey }, (userId ? { fuser_key: userId } : {}));
45230
- url = "".concat(API_URL, "panel/update_auth/v3/");
45295
+ url = "".concat(exports.API_URL, "panel/update_auth/v3/");
45231
45296
  options = {
45232
45297
  headers: { 'Content-Type': 'application/json' },
45233
45298
  method: 'PATCH',
@@ -45283,7 +45348,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45283
45348
  customKeyValues = exports.__assign({}, this.pendingCustomFieldUpdates);
45284
45349
  this.pendingCustomFieldUpdates = {}; // Clear pending updates after copying them
45285
45350
  userId = initInfo().userId;
45286
- url = "".concat(API_URL, "panel/custom/submit/v3/");
45351
+ url = "".concat(exports.API_URL, "panel/custom/submit/v3/");
45287
45352
  jsonKeyVals = {};
45288
45353
  formData = new FormData();
45289
45354
  return [4 /*yield*/, Promise.all(Object.entries(customKeyValues).map(function (_a) {
@@ -45484,7 +45549,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45484
45549
  case 1:
45485
45550
  _b.sent();
45486
45551
  _a = initInfo(), userId = _a.userId, collaboratorId = _a.collaboratorId;
45487
- url = "".concat(API_URL, "event/");
45552
+ url = "".concat(exports.API_URL, "event/");
45488
45553
  data = exports.__assign(exports.__assign({ form_key: this.formKey }, eventData), (userId ? { fuser_key: userId } : {}));
45489
45554
  if (collaboratorId)
45490
45555
  data.collaborator_user = collaboratorId;
@@ -45547,7 +45612,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45547
45612
  };
45548
45613
  if (collaboratorId)
45549
45614
  data.collaborator_id = collaboratorId;
45550
- var url = "".concat(API_URL, "panel/logic-rule/execute/");
45615
+ var url = "".concat(exports.API_URL, "panel/logic-rule/execute/");
45551
45616
  var options = {
45552
45617
  headers: { 'Content-Type': 'application/json' },
45553
45618
  method: 'POST',
@@ -45599,7 +45664,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45599
45664
  return __generator(this, function (_a) {
45600
45665
  switch (_a.label) {
45601
45666
  case 0:
45602
- url = "".concat(API_URL, "account/config/");
45667
+ url = "".concat(exports.API_URL, "account/config/");
45603
45668
  reqOptions = {
45604
45669
  headers: { 'Content-Type': 'application/json' },
45605
45670
  method: 'POST',
@@ -45629,7 +45694,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45629
45694
  };
45630
45695
  if (collaboratorId)
45631
45696
  params.collaborator_user = collaboratorId;
45632
- url = "".concat(API_URL, "collaborator/verify/?").concat(encodeGetParams(params));
45697
+ url = "".concat(exports.API_URL, "collaborator/verify/?").concat(encodeGetParams(params));
45633
45698
  return [2 /*return*/, this._fetch(url).then(function (response) {
45634
45699
  return response ? response.json() : Promise.resolve();
45635
45700
  })];
@@ -45669,7 +45734,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45669
45734
  email = exports.fieldValues[rewindEmailKey];
45670
45735
  if (email)
45671
45736
  data.rewind_email = email;
45672
- url = "".concat(API_URL, "collaborator/rewind/");
45737
+ url = "".concat(exports.API_URL, "collaborator/rewind/");
45673
45738
  return [2 /*return*/, this._fetch(url, {
45674
45739
  headers: { 'Content-Type': 'application/json' },
45675
45740
  method: 'PATCH',
@@ -45706,7 +45771,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45706
45771
  fuser_key: userId,
45707
45772
  template_id: templateId
45708
45773
  };
45709
- url = "".concat(API_URL, "collaborator/complete/");
45774
+ url = "".concat(exports.API_URL, "collaborator/complete/");
45710
45775
  return [2 /*return*/, this._fetch(url, {
45711
45776
  headers: { 'Content-Type': 'application/json' },
45712
45777
  method: 'PATCH',
@@ -45778,7 +45843,7 @@ var FeatheryClient = /** @class */ (function (_super) {
45778
45843
  userId = initInfo().userId;
45779
45844
  if (!userId)
45780
45845
  return [2 /*return*/];
45781
- url = "".concat(API_URL, "panel/step/submit/file/").concat(userId, "/");
45846
+ url = "".concat(exports.API_URL, "panel/step/submit/file/").concat(userId, "/");
45782
45847
  return [4 /*yield*/, Promise.all(fieldKeys.map(function (key) {
45783
45848
  return _this.offlineRequestHandler.resetRetryAttemptsByUrl(url, {
45784
45849
  fieldKey: key
@@ -45804,7 +45869,12 @@ var FeatheryClient = /** @class */ (function (_super) {
45804
45869
  return [4 /*yield*/, this._fetch(url, {
45805
45870
  headers: { 'Content-Type': 'application/json' },
45806
45871
  method: 'POST',
45807
- body: JSON.stringify({ operation: operation, entry_id: entryId, data: data })
45872
+ body: JSON.stringify({
45873
+ operation: operation,
45874
+ entry_id: entryId,
45875
+ data: data,
45876
+ form_key: this.formKey
45877
+ })
45808
45878
  }, false)];
45809
45879
  case 1:
45810
45880
  response = _d.sent();
@@ -45903,9 +45973,9 @@ function init(sdkKey, options) {
45903
45973
  if (runningInClient()) {
45904
45974
  // Dynamically load libraries that must be client side
45905
45975
  global.scriptjsLoadPromise = Promise.resolve().then(function () { return require(
45906
- /* webpackChunkName: "scriptjs" */ './fthry_script.C2pt_bUm.js'); }).then(function (n) { return n.script; });
45976
+ /* webpackChunkName: "scriptjs" */ './fthry_script.KoeCqMxj.js'); }).then(function (n) { return n.script; });
45907
45977
  global.webfontloaderPromise = Promise.resolve().then(function () { return require(
45908
- /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.Du37duiu.js'); }).then(function (n) { return n.webfontloader; });
45978
+ /* webpackChunkName: "webfontloader" */ './fthry_webfontloader.CFS5EJ_U.js'); }).then(function (n) { return n.webfontloader; });
45909
45979
  // Client-side tracking logic
45910
45980
  if (initState.userTracking === 'cookie') {
45911
45981
  var cookieKey = "feathery-user-id-".concat(sdkKey);
@@ -46051,7 +46121,7 @@ function getFieldValues() {
46051
46121
  return exports.__assign({}, exports.fieldValues);
46052
46122
  }
46053
46123
  function logFeatheryBadge() {
46054
- console.log('%c Feathery %c v' + "2.22.0" + ' ', // replaced with real version during build
46124
+ console.log('%c Feathery %c v' + "2.23.0" + ' ', // replaced with real version during build
46055
46125
  '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;');
46056
46126
  }
46057
46127
 
@@ -46332,7 +46402,10 @@ function mapFormSettingsResponse(res) {
46332
46402
  globalStyles: res.global_styles,
46333
46403
  saveHideIfFields: res.save_hide_if_fields,
46334
46404
  clearHideIfFields: res.clear_hide_if_fields,
46335
- mobileBreakpoint: (_a = res.mobile_breakpoint) !== null && _a !== void 0 ? _a : DEFAULT_MOBILE_BREAKPOINT
46405
+ mobileBreakpoint: (_a = res.mobile_breakpoint) !== null && _a !== void 0 ? _a : DEFAULT_MOBILE_BREAKPOINT,
46406
+ assistantEnabled: res.assistant_enabled,
46407
+ assistantContext: res.assistant_context,
46408
+ assistantColor: res.assistant_color ? "#".concat(res.assistant_color) : '#6b7280'
46336
46409
  };
46337
46410
  }
46338
46411
  function updateCustomHead(headCode) {
@@ -47479,39 +47552,39 @@ breakpoint) {
47479
47552
  return styles.getTarget('inner-container', undefined, viewport === 'mobile');
47480
47553
  };
47481
47554
 
47482
- var AddressLine1 = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "AddressField" */ './fthry_index.CvLykMCw.js'); }); });
47483
- var ButtonGroupField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.CRdtsgYY.js'); }); });
47484
- var CheckboxField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxField" */ './fthry_index.D3t9MrC8.js'); }); });
47555
+ var AddressLine1 = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "AddressField" */ './fthry_index.NnlX5lQm.js'); }); });
47556
+ var ButtonGroupField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ButtonGroupField" */ './fthry_index.vkA9iK7B.js'); }); });
47557
+ var CheckboxField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxField" */ './fthry_index.B4FRRpgr.js'); }); });
47485
47558
  var CheckboxGroupField = React.lazy(function () {
47486
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.CIxKm2W7.js'); });
47559
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "CheckboxGroupField" */ './fthry_index.BKITOPaK.js'); });
47487
47560
  });
47488
- var ColorPickerField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ColorPickerField" */ './fthry_index.C7ja1s3P.js'); }); });
47489
- var CustomField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CustomField" */ './fthry_index.Dl8zGsAp.js'); }); });
47561
+ var ColorPickerField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "ColorPickerField" */ './fthry_index.BeZPHYEW.js'); }); });
47562
+ var CustomField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "CustomField" */ './fthry_index.CKclXUEz.js'); }); });
47490
47563
  var DateSelectorField = React.lazy(function () {
47491
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "DateSelectorField" */ './fthry_index.BoacvsbM.js'); });
47564
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "DateSelectorField" */ './fthry_index.DUsXh3p4.js'); });
47492
47565
  });
47493
- var DropdownField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownField" */ './fthry_index.dpVLfqGZ.js'); }); });
47566
+ var DropdownField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownField" */ './fthry_index.CuALcFA0.js'); }); });
47494
47567
  var DropdownMultiField = React.lazy(function () {
47495
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.D9UgyAK0.js'); });
47568
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "DropdownMultiField" */ './fthry_index.jT0ywpWI.js'); });
47496
47569
  });
47497
- var FileUploadField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "FileUploadField" */ './fthry_index.2sunYeoj.js'); }); });
47498
- var MatrixField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "MatrixField" */ './fthry_index.BJT2EG9q.js'); }); });
47499
- var PasswordField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PasswordField" */ './fthry_index.BqZlc7T3.js'); }); });
47570
+ var FileUploadField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "FileUploadField" */ './fthry_index.DrOR5X_e.js'); }); });
47571
+ var MatrixField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "MatrixField" */ './fthry_index.4VrFlleU.js'); }); });
47572
+ var PasswordField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PasswordField" */ './fthry_index.BxtiIxtR.js'); }); });
47500
47573
  var PaymentMethodField = React.lazy(function () {
47501
- return Promise.resolve().then(function () { return require(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.D05feokK.js'); });
47574
+ return Promise.resolve().then(function () { return require(/* webpackChunkName: "PaymentMethodField" */ './fthry_PaymentMethodField.DLFdpNBi.js'); });
47502
47575
  });
47503
- var PhoneField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PhoneField" */ './fthry_index.DBJtTx9s.js'); }); });
47504
- var PinInputField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PinInputField" */ './fthry_index.DiSY7Ac7.js'); }); });
47505
- var QRScanner = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "QRScanner" */ './fthry_index.CofrHdeg.js'); }); });
47576
+ var PhoneField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PhoneField" */ './fthry_index.Pgo2Mu9x.js'); }); });
47577
+ var PinInputField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "PinInputField" */ './fthry_index.DLgrd3kv.js'); }); });
47578
+ var QRScanner = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "QRScanner" */ './fthry_index.B6VC3yvc.js'); }); });
47506
47579
  var RadioButtonGroupField = React.lazy(function () {
47507
47580
  return Promise.resolve().then(function () { return require(
47508
- /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.BO3AY9qR.js'); });
47581
+ /* webpackChunkName: "RadioButtonGroupField" */ './fthry_index.DG9GFt5B.js'); });
47509
47582
  });
47510
- var RatingField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "RatingField" */ './fthry_index.B7fwm2Qq.js'); }); });
47511
- var SignatureField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SignatureField" */ './fthry_index.BNdR1Zvy.js'); }); });
47512
- var SliderField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SliderField" */ './fthry_index.Cy80QFQZ.js'); }); });
47513
- var TextField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextField" */ './fthry_index.C-ANSPxY.js'); }); });
47514
- var TextArea = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextArea" */ './fthry_index.DjWVnEr6.js'); }); });
47583
+ var RatingField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "RatingField" */ './fthry_index.BdO-WOSW.js'); }); });
47584
+ var SignatureField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SignatureField" */ './fthry_index.D4TokwJO.js'); }); });
47585
+ var SliderField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "SliderField" */ './fthry_index.BBe95Bfl.js'); }); });
47586
+ var TextField = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextField" */ './fthry_index.D7WPMS-e.js'); }); });
47587
+ var TextArea = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TextArea" */ './fthry_index._QY6Jk0r.js'); }); });
47515
47588
  var Fields = {
47516
47589
  AddressLine1: AddressLine1,
47517
47590
  ButtonGroupField: ButtonGroupField,
@@ -48451,7 +48524,7 @@ function ElementSkeleton(_a) {
48451
48524
  }
48452
48525
  var templateObject_1;
48453
48526
 
48454
- var TableElement = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TableElement" */ './fthry_index.avrbgACA.js'); }); });
48527
+ var TableElement = React.lazy(function () { return Promise.resolve().then(function () { return require(/* webpackChunkName: "TableElement" */ './fthry_index.CJ4fQh0Q.js'); }); });
48455
48528
  var Basic = {
48456
48529
  ImageElement: ImageElement,
48457
48530
  VideoElement: VideoElement,
@@ -48807,6 +48880,7 @@ exports.hoverStylesGuard = hoverStylesGuard;
48807
48880
  exports.imgMaxSizeStyles = imgMaxSizeStyles;
48808
48881
  exports.indexof = indexof;
48809
48882
  exports.init = init;
48883
+ exports.initInfo = initInfo;
48810
48884
  exports.iosScrollOnFocus = iosScrollOnFocus;
48811
48885
  exports.isEmptyArray = isEmptyArray;
48812
48886
  exports.isMobile = isMobile;