@remoteoss/remote-flows 1.21.0 → 1.22.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 (261) hide show
  1. package/dist/{chunk-ZOTT6IZN.js → chunk-67GUBRC6.js} +2 -2
  2. package/dist/{chunk-EMP4ZIVB.js → chunk-72TX2GXH.js} +2 -2
  3. package/dist/{chunk-3OJVYYPZ.js → chunk-7AFCHGML.js} +2 -2
  4. package/dist/{chunk-MXSKCQOT.js → chunk-7PTTOR6T.js} +2 -2
  5. package/dist/{chunk-PGVYRAFJ.js → chunk-7XLP5WFW.js} +2 -2
  6. package/dist/{chunk-2V7SP7UR.js → chunk-7Y4XCQZX.js} +2 -2
  7. package/dist/{chunk-KANAWPXZ.js → chunk-AHBNUSR4.js} +2 -2
  8. package/dist/{chunk-BTS5Q6UZ.js → chunk-AQ4WWMOK.js} +2 -2
  9. package/dist/{chunk-VZV7ZSZ5.js → chunk-BNY76RHM.js} +2 -2
  10. package/dist/{chunk-KJ4JS75E.js → chunk-BRPBSA4E.js} +2 -2
  11. package/dist/{chunk-WZSDVFJ3.js → chunk-C52C6J6Q.js} +2 -2
  12. package/dist/chunk-CT2D4IBR.js +2 -0
  13. package/dist/chunk-CT2D4IBR.js.map +1 -0
  14. package/dist/{chunk-Z6B3PA4M.js → chunk-DPZHLV7U.js} +2 -2
  15. package/dist/{chunk-POKLRB3M.js → chunk-E6B4ZECN.js} +2 -2
  16. package/dist/{chunk-FYSLOFAJ.js → chunk-EULZWL2F.js} +2 -2
  17. package/dist/{chunk-EUSCQL4H.js → chunk-EUQH4FU4.js} +2 -2
  18. package/dist/{chunk-BLGKOMH3.js → chunk-HGNICQUY.js} +2 -2
  19. package/dist/{chunk-Q3VMPVT3.js → chunk-HPLRAHY7.js} +2 -2
  20. package/dist/chunk-I3DVKJCW.js +2 -0
  21. package/dist/chunk-I3DVKJCW.js.map +1 -0
  22. package/dist/{chunk-MVQOMW7S.js → chunk-IJQBLGTI.js} +2 -2
  23. package/dist/{chunk-5YRQBCHM.js → chunk-IW6OJUGY.js} +2 -2
  24. package/dist/{chunk-B7TQYSAY.js → chunk-J5I5ZSW3.js} +2 -2
  25. package/dist/chunk-JBVLUY4M.js +2 -0
  26. package/dist/chunk-JBVLUY4M.js.map +1 -0
  27. package/dist/{chunk-EAF6XPH6.js → chunk-JD2O7KNE.js} +2 -2
  28. package/dist/{chunk-KNHDPKRL.js → chunk-JTD4HJSK.js} +2 -2
  29. package/dist/{chunk-Q72MEHVY.js → chunk-KIQNU673.js} +2 -2
  30. package/dist/{chunk-YSDNZHEB.js → chunk-KKOBWE62.js} +2 -2
  31. package/dist/{chunk-BNHZ4W7L.js → chunk-KN5M3VJD.js} +2 -2
  32. package/dist/{chunk-I5FVESDZ.js → chunk-KQSWP3Y3.js} +2 -2
  33. package/dist/{chunk-WPC2PZ6E.js → chunk-KWLKQ6N6.js} +2 -2
  34. package/dist/{chunk-5OHSFPY6.js → chunk-LT27CPJ6.js} +2 -2
  35. package/dist/{chunk-ATVQXA4X.js → chunk-MAOJJ4WX.js} +2 -2
  36. package/dist/{chunk-DUEZWXBY.js → chunk-OC3MVHTM.js} +2 -2
  37. package/dist/chunk-OZWLRF6P.js +2 -0
  38. package/dist/chunk-OZWLRF6P.js.map +1 -0
  39. package/dist/{chunk-BIP2WGMA.js → chunk-QELEVTDT.js} +2 -2
  40. package/dist/{chunk-T5JT2ZU2.js → chunk-QWQPTZQD.js} +2 -2
  41. package/dist/{chunk-4OJ4TAXO.js → chunk-RQWB2F74.js} +2 -2
  42. package/dist/{chunk-IVXIAOMR.js → chunk-SAUF7ZUE.js} +2 -2
  43. package/dist/chunk-SCEOHA2U.js +2 -0
  44. package/dist/chunk-SCEOHA2U.js.map +1 -0
  45. package/dist/{chunk-RMIAJZOG.js → chunk-TMVRAQYA.js} +2 -2
  46. package/dist/{chunk-24FMEFH5.js → chunk-TZQ2O23Z.js} +2 -2
  47. package/dist/{chunk-WKLTHGWU.js → chunk-UWL56AOZ.js} +2 -2
  48. package/dist/chunk-VZ5BGG3N.js +2 -0
  49. package/dist/chunk-VZ5BGG3N.js.map +1 -0
  50. package/dist/{chunk-LSW66EIR.js → chunk-W5USIIXL.js} +2 -2
  51. package/dist/{chunk-7EUMRKH4.js → chunk-XAPDPR3N.js} +2 -2
  52. package/dist/{chunk-QJ2XK63I.js → chunk-XJECSJYB.js} +2 -2
  53. package/dist/{chunk-7FBVVWZL.js → chunk-XW7ZYSJ3.js} +2 -2
  54. package/dist/{chunk-XQZI2FRQ.js → chunk-Y2JE46ZY.js} +2 -2
  55. package/dist/{chunk-JZM3TDK2.js → chunk-YVAEVXHP.js} +2 -2
  56. package/dist/{chunk-JFJIYAMB.js → chunk-YYGLCI2S.js} +2 -2
  57. package/dist/{chunk-WOWIJ56S.js → chunk-Z7AWT3MQ.js} +2 -2
  58. package/dist/default-components.d.ts +2 -2
  59. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.d.ts +1 -1
  60. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.js +1 -1
  61. package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +3 -3
  62. package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
  63. package/dist/flows/ContractAmendment/ContractAmendmentForm.d.ts +1 -1
  64. package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
  65. package/dist/flows/ContractAmendment/context.d.ts +3 -3
  66. package/dist/flows/ContractAmendment/hooks.d.ts +3 -3
  67. package/dist/flows/ContractAmendment/hooks.js +1 -1
  68. package/dist/flows/ContractAmendment/index.d.ts +3 -3
  69. package/dist/flows/ContractAmendment/index.js +1 -1
  70. package/dist/flows/ContractAmendment/types.d.ts +2 -2
  71. package/dist/flows/ContractAmendment/utils.d.ts +2 -2
  72. package/dist/flows/ContractAmendment/utils.js +1 -1
  73. package/dist/flows/ContractorOnboarding/ContractorOnboarding.d.ts +6 -5
  74. package/dist/flows/ContractorOnboarding/ContractorOnboarding.js +1 -1
  75. package/dist/flows/ContractorOnboarding/api.d.ts +2 -2
  76. package/dist/flows/ContractorOnboarding/api.js +1 -1
  77. package/dist/flows/ContractorOnboarding/components/BasicInformationStep.d.ts +4 -4
  78. package/dist/flows/ContractorOnboarding/components/BasicInformationStep.js +1 -1
  79. package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.d.ts +6 -5
  80. package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.js +1 -1
  81. package/dist/flows/ContractorOnboarding/components/ContractPreviewHeader.d.ts +2 -2
  82. package/dist/flows/ContractorOnboarding/components/ContractPreviewStatement.d.ts +2 -2
  83. package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.d.ts +6 -5
  84. package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.js +1 -1
  85. package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.d.ts +6 -5
  86. package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.js +1 -1
  87. package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.d.ts +6 -5
  88. package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.js +1 -1
  89. package/dist/flows/ContractorOnboarding/components/OnboardingInvite.d.ts +5 -5
  90. package/dist/flows/ContractorOnboarding/components/OnboardingInvite.js +1 -1
  91. package/dist/flows/ContractorOnboarding/components/PricingPlan.d.ts +6 -5
  92. package/dist/flows/ContractorOnboarding/components/PricingPlan.js +1 -1
  93. package/dist/flows/ContractorOnboarding/components/SaveDraftButton.d.ts +3 -3
  94. package/dist/flows/ContractorOnboarding/components/SelectCountryStep.d.ts +4 -4
  95. package/dist/flows/ContractorOnboarding/components/SelectCountryStep.js +1 -1
  96. package/dist/flows/ContractorOnboarding/context.d.ts +6 -5
  97. package/dist/flows/ContractorOnboarding/hooks.d.ts +6 -5
  98. package/dist/flows/ContractorOnboarding/hooks.js +1 -1
  99. package/dist/flows/ContractorOnboarding/index.d.ts +6 -5
  100. package/dist/flows/ContractorOnboarding/index.js +1 -1
  101. package/dist/flows/ContractorOnboarding/jsfModify.d.ts +6 -5
  102. package/dist/flows/ContractorOnboarding/types.d.ts +7 -6
  103. package/dist/flows/ContractorOnboarding/utils.d.ts +4 -4
  104. package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +3 -3
  105. package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
  106. package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +3 -3
  107. package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
  108. package/dist/flows/CostCalculator/EstimationResults/EstimationResults.d.ts +2 -2
  109. package/dist/flows/CostCalculator/SummaryResults/SummaryResults.d.ts +2 -2
  110. package/dist/flows/CostCalculator/api.d.ts +2 -2
  111. package/dist/flows/CostCalculator/api.js +1 -1
  112. package/dist/flows/CostCalculator/components/SalaryField.d.ts +2 -2
  113. package/dist/flows/CostCalculator/components/SalaryField.js +1 -1
  114. package/dist/flows/CostCalculator/context.d.ts +3 -3
  115. package/dist/flows/CostCalculator/hooks.d.ts +3 -3
  116. package/dist/flows/CostCalculator/hooks.js +1 -1
  117. package/dist/flows/CostCalculator/index.d.ts +3 -3
  118. package/dist/flows/CostCalculator/index.js +1 -1
  119. package/dist/flows/CostCalculator/types.d.ts +2 -2
  120. package/dist/flows/CostCalculator/utils.d.ts +3 -3
  121. package/dist/flows/CostCalculator/utils.js +1 -1
  122. package/dist/flows/CreateCompany/CreateCompany.d.ts +4 -4
  123. package/dist/flows/CreateCompany/CreateCompany.js +1 -1
  124. package/dist/flows/CreateCompany/api.d.ts +2 -2
  125. package/dist/flows/CreateCompany/api.js +1 -1
  126. package/dist/flows/CreateCompany/components/AddressDetailsStep.d.ts +4 -4
  127. package/dist/flows/CreateCompany/components/AddressDetailsStep.js +1 -1
  128. package/dist/flows/CreateCompany/components/CompanyBasicInformationStep.d.ts +4 -4
  129. package/dist/flows/CreateCompany/components/CompanyBasicInformationStep.js +1 -1
  130. package/dist/flows/CreateCompany/components/CreateCompanyForm.d.ts +2 -2
  131. package/dist/flows/CreateCompany/components/CreateCompanyForm.js +1 -1
  132. package/dist/flows/CreateCompany/context.d.ts +4 -4
  133. package/dist/flows/CreateCompany/hooks.d.ts +4 -4
  134. package/dist/flows/CreateCompany/hooks.js +1 -1
  135. package/dist/flows/CreateCompany/index.d.ts +4 -4
  136. package/dist/flows/CreateCompany/index.js +1 -1
  137. package/dist/flows/CreateCompany/types.d.ts +4 -4
  138. package/dist/flows/Onboarding/OnboardingFlow.d.ts +4 -4
  139. package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
  140. package/dist/flows/Onboarding/api.d.ts +4 -4
  141. package/dist/flows/Onboarding/api.js +1 -1
  142. package/dist/flows/Onboarding/components/AnnualGrossSalary.d.ts +2 -2
  143. package/dist/flows/Onboarding/components/AnnualGrossSalary.js +1 -1
  144. package/dist/flows/Onboarding/components/BasicInformationStep.d.ts +4 -4
  145. package/dist/flows/Onboarding/components/BasicInformationStep.js +1 -1
  146. package/dist/flows/Onboarding/components/BenefitsStep.d.ts +4 -4
  147. package/dist/flows/Onboarding/components/BenefitsStep.js +1 -1
  148. package/dist/flows/Onboarding/components/ContractDetailsStep.d.ts +4 -4
  149. package/dist/flows/Onboarding/components/ContractDetailsStep.js +1 -1
  150. package/dist/flows/Onboarding/components/OnboardingForm.d.ts +4 -4
  151. package/dist/flows/Onboarding/components/OnboardingForm.js +1 -1
  152. package/dist/flows/Onboarding/components/OnboardingInvite.d.ts +3 -3
  153. package/dist/flows/Onboarding/components/OnboardingInvite.js +1 -1
  154. package/dist/flows/Onboarding/components/ReviewStep.d.ts +4 -4
  155. package/dist/flows/Onboarding/components/SaveDraftButton.d.ts +3 -3
  156. package/dist/flows/Onboarding/components/SelectCountryStep.d.ts +4 -4
  157. package/dist/flows/Onboarding/components/SelectCountryStep.js +1 -1
  158. package/dist/flows/Onboarding/context.d.ts +4 -4
  159. package/dist/flows/Onboarding/hooks.d.ts +4 -4
  160. package/dist/flows/Onboarding/hooks.js +1 -1
  161. package/dist/flows/Onboarding/index.d.ts +4 -4
  162. package/dist/flows/Onboarding/index.js +1 -1
  163. package/dist/flows/Onboarding/types.d.ts +4 -4
  164. package/dist/flows/Onboarding/utils.d.ts +4 -4
  165. package/dist/flows/Termination/AdditionalDetailsForm.d.ts +4 -4
  166. package/dist/flows/Termination/AdditionalDetailsForm.js +1 -1
  167. package/dist/flows/Termination/EmployeeComunicationForm.d.ts +4 -4
  168. package/dist/flows/Termination/EmployeeComunicationForm.js +1 -1
  169. package/dist/flows/Termination/PaidTimeOffForm.d.ts +4 -4
  170. package/dist/flows/Termination/PaidTimeOffForm.js +1 -1
  171. package/dist/flows/Termination/TerminationDetailsForm.d.ts +4 -4
  172. package/dist/flows/Termination/TerminationDetailsForm.js +1 -1
  173. package/dist/flows/Termination/TerminationFlow.d.ts +4 -4
  174. package/dist/flows/Termination/TerminationFlow.js +1 -1
  175. package/dist/flows/Termination/TerminationForm.d.ts +4 -4
  176. package/dist/flows/Termination/TerminationForm.js +1 -1
  177. package/dist/flows/Termination/api.d.ts +5 -5
  178. package/dist/flows/Termination/api.js +1 -1
  179. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOff.d.ts +6 -6
  180. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.d.ts +6 -6
  181. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.js +1 -1
  182. package/dist/flows/Termination/components/PaidTimeOff/types.d.ts +6 -6
  183. package/dist/flows/Termination/context.d.ts +4 -4
  184. package/dist/flows/Termination/hooks.d.ts +4 -4
  185. package/dist/flows/Termination/hooks.js +1 -1
  186. package/dist/flows/Termination/index.d.ts +6 -6
  187. package/dist/flows/Termination/index.js +1 -1
  188. package/dist/flows/Termination/json-schemas/schema.d.ts +4 -4
  189. package/dist/flows/Termination/types.d.ts +4 -4
  190. package/dist/flows/Termination/utils.d.ts +4 -4
  191. package/dist/flows/types.d.ts +2 -2
  192. package/dist/index.d.ts +12 -11
  193. package/dist/index.js +1 -1
  194. package/dist/internals.d.ts +3 -3
  195. package/dist/{mutations-Cw8GlAq0.d.ts → mutations-BsydWn3-.d.ts} +1 -1
  196. package/dist/{remoteFlows-E3wOGnCt.d.ts → remoteFlows-BVt9wH8Z.d.ts} +1 -1
  197. package/dist/{types-ByTWAmkv.d.ts → types-BfQMv-8p.d.ts} +2 -2
  198. package/dist/{types-BDH4I_fE.d.ts → types-C0ri3b3L.d.ts} +1 -1
  199. package/dist/{types-LjlUphtT.d.ts → types-DEfISb39.d.ts} +39 -24
  200. package/dist/{types-DsVpuWHl.d.ts → types-gQ_Tx-qG.d.ts} +3 -3
  201. package/dist/{types-RXM_JpA8.d.ts → types-uW0BsP56.d.ts} +3 -3
  202. package/dist/{types.gen-DdX2syl4.d.ts → types.gen-Oz2Tvvr6.d.ts} +1 -1
  203. package/dist/{utils-BDEB1dzv.d.ts → utils-Db2G1Kxo.d.ts} +1 -1
  204. package/package.json +1 -1
  205. package/dist/chunk-BUOCIXUH.js +0 -2
  206. package/dist/chunk-BUOCIXUH.js.map +0 -1
  207. package/dist/chunk-ENW77KKX.js +0 -2
  208. package/dist/chunk-ENW77KKX.js.map +0 -1
  209. package/dist/chunk-IYCOIHYW.js +0 -2
  210. package/dist/chunk-IYCOIHYW.js.map +0 -1
  211. package/dist/chunk-JTPKAIYL.js +0 -2
  212. package/dist/chunk-JTPKAIYL.js.map +0 -1
  213. package/dist/chunk-T7O3YYOG.js +0 -2
  214. package/dist/chunk-T7O3YYOG.js.map +0 -1
  215. package/dist/chunk-YC7FCCXS.js +0 -2
  216. package/dist/chunk-YC7FCCXS.js.map +0 -1
  217. /package/dist/{chunk-ZOTT6IZN.js.map → chunk-67GUBRC6.js.map} +0 -0
  218. /package/dist/{chunk-EMP4ZIVB.js.map → chunk-72TX2GXH.js.map} +0 -0
  219. /package/dist/{chunk-3OJVYYPZ.js.map → chunk-7AFCHGML.js.map} +0 -0
  220. /package/dist/{chunk-MXSKCQOT.js.map → chunk-7PTTOR6T.js.map} +0 -0
  221. /package/dist/{chunk-PGVYRAFJ.js.map → chunk-7XLP5WFW.js.map} +0 -0
  222. /package/dist/{chunk-2V7SP7UR.js.map → chunk-7Y4XCQZX.js.map} +0 -0
  223. /package/dist/{chunk-KANAWPXZ.js.map → chunk-AHBNUSR4.js.map} +0 -0
  224. /package/dist/{chunk-BTS5Q6UZ.js.map → chunk-AQ4WWMOK.js.map} +0 -0
  225. /package/dist/{chunk-VZV7ZSZ5.js.map → chunk-BNY76RHM.js.map} +0 -0
  226. /package/dist/{chunk-KJ4JS75E.js.map → chunk-BRPBSA4E.js.map} +0 -0
  227. /package/dist/{chunk-WZSDVFJ3.js.map → chunk-C52C6J6Q.js.map} +0 -0
  228. /package/dist/{chunk-Z6B3PA4M.js.map → chunk-DPZHLV7U.js.map} +0 -0
  229. /package/dist/{chunk-POKLRB3M.js.map → chunk-E6B4ZECN.js.map} +0 -0
  230. /package/dist/{chunk-FYSLOFAJ.js.map → chunk-EULZWL2F.js.map} +0 -0
  231. /package/dist/{chunk-EUSCQL4H.js.map → chunk-EUQH4FU4.js.map} +0 -0
  232. /package/dist/{chunk-BLGKOMH3.js.map → chunk-HGNICQUY.js.map} +0 -0
  233. /package/dist/{chunk-Q3VMPVT3.js.map → chunk-HPLRAHY7.js.map} +0 -0
  234. /package/dist/{chunk-MVQOMW7S.js.map → chunk-IJQBLGTI.js.map} +0 -0
  235. /package/dist/{chunk-5YRQBCHM.js.map → chunk-IW6OJUGY.js.map} +0 -0
  236. /package/dist/{chunk-B7TQYSAY.js.map → chunk-J5I5ZSW3.js.map} +0 -0
  237. /package/dist/{chunk-EAF6XPH6.js.map → chunk-JD2O7KNE.js.map} +0 -0
  238. /package/dist/{chunk-KNHDPKRL.js.map → chunk-JTD4HJSK.js.map} +0 -0
  239. /package/dist/{chunk-Q72MEHVY.js.map → chunk-KIQNU673.js.map} +0 -0
  240. /package/dist/{chunk-YSDNZHEB.js.map → chunk-KKOBWE62.js.map} +0 -0
  241. /package/dist/{chunk-BNHZ4W7L.js.map → chunk-KN5M3VJD.js.map} +0 -0
  242. /package/dist/{chunk-I5FVESDZ.js.map → chunk-KQSWP3Y3.js.map} +0 -0
  243. /package/dist/{chunk-WPC2PZ6E.js.map → chunk-KWLKQ6N6.js.map} +0 -0
  244. /package/dist/{chunk-5OHSFPY6.js.map → chunk-LT27CPJ6.js.map} +0 -0
  245. /package/dist/{chunk-ATVQXA4X.js.map → chunk-MAOJJ4WX.js.map} +0 -0
  246. /package/dist/{chunk-DUEZWXBY.js.map → chunk-OC3MVHTM.js.map} +0 -0
  247. /package/dist/{chunk-BIP2WGMA.js.map → chunk-QELEVTDT.js.map} +0 -0
  248. /package/dist/{chunk-T5JT2ZU2.js.map → chunk-QWQPTZQD.js.map} +0 -0
  249. /package/dist/{chunk-4OJ4TAXO.js.map → chunk-RQWB2F74.js.map} +0 -0
  250. /package/dist/{chunk-IVXIAOMR.js.map → chunk-SAUF7ZUE.js.map} +0 -0
  251. /package/dist/{chunk-RMIAJZOG.js.map → chunk-TMVRAQYA.js.map} +0 -0
  252. /package/dist/{chunk-24FMEFH5.js.map → chunk-TZQ2O23Z.js.map} +0 -0
  253. /package/dist/{chunk-WKLTHGWU.js.map → chunk-UWL56AOZ.js.map} +0 -0
  254. /package/dist/{chunk-LSW66EIR.js.map → chunk-W5USIIXL.js.map} +0 -0
  255. /package/dist/{chunk-7EUMRKH4.js.map → chunk-XAPDPR3N.js.map} +0 -0
  256. /package/dist/{chunk-QJ2XK63I.js.map → chunk-XJECSJYB.js.map} +0 -0
  257. /package/dist/{chunk-7FBVVWZL.js.map → chunk-XW7ZYSJ3.js.map} +0 -0
  258. /package/dist/{chunk-XQZI2FRQ.js.map → chunk-Y2JE46ZY.js.map} +0 -0
  259. /package/dist/{chunk-JZM3TDK2.js.map → chunk-YVAEVXHP.js.map} +0 -0
  260. /package/dist/{chunk-JFJIYAMB.js.map → chunk-YYGLCI2S.js.map} +0 -0
  261. /package/dist/{chunk-WOWIJ56S.js.map → chunk-Z7AWT3MQ.js.map} +0 -0
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import"./chunk-FZ7FWFJX.js";import{a as ge}from"./chunk-UMVA4SIV.js";import{a as ye}from"./chunk-X6CON4YE.js";import{a as fe}from"./chunk-WPC2PZ6E.js";import"./chunk-MXSKCQOT.js";import"./chunk-MJQUJZCD.js";import"./chunk-7FBVVWZL.js";import"./chunk-TRBEYNRN.js";import"./chunk-CJG77FUT.js";import"./chunk-YWOJ4NKF.js";import"./chunk-YSDNZHEB.js";import"./chunk-IF42CZJH.js";import"./chunk-6DHV4GT6.js";import"./chunk-5WFWHEXV.js";import"./chunk-L5DII4MV.js";import{a as de,b as pe,c as ue}from"./chunk-JFJIYAMB.js";import"./chunk-XFD3ULUF.js";import"./chunk-42R2H2DW.js";import"./chunk-LMYJ6V44.js";import"./chunk-TC7EQZJK.js";import"./chunk-NX7MM6XR.js";import"./chunk-ZXGAFQXW.js";import"./chunk-DFJNVGK4.js";import"./chunk-SGE4DLC3.js";import"./chunk-GULCZWSK.js";import"./chunk-BTS5Q6UZ.js";import"./chunk-24FMEFH5.js";import"./chunk-7EUMRKH4.js";import"./chunk-Z6B3PA4M.js";import"./chunk-WR5DSTKP.js";import"./chunk-MRYRNB7Y.js";import"./chunk-FGBEOUQK.js";import{a as oe}from"./chunk-JIW2JK7J.js";import{a as te}from"./chunk-EFRT6C7V.js";import"./chunk-AYC6DTFV.js";import{a as Ce}from"./chunk-BIP2WGMA.js";import"./chunk-KRJETP7I.js";import"./chunk-ZOTT6IZN.js";import"./chunk-W7YC2IO2.js";import"./chunk-FHYOWPXB.js";import"./chunk-YIMWF5GR.js";import"./chunk-KANAWPXZ.js";import"./chunk-Q72MEHVY.js";import"./chunk-BNHZ4W7L.js";import"./chunk-FYSLOFAJ.js";import"./chunk-WZSDVFJ3.js";import{a as T,b as S}from"./chunk-4OJ4TAXO.js";import"./chunk-B7TQYSAY.js";import"./chunk-VAIBLWOY.js";import"./chunk-PGWKJ6FK.js";import{a as q}from"./chunk-ATVQXA4X.js";import{b as H,d as Y}from"./chunk-EMP4ZIVB.js";import"./chunk-RMIAJZOG.js";import"./chunk-VFRHMNLJ.js";import"./chunk-XQZI2FRQ.js";import{a as j}from"./chunk-3OJVYYPZ.js";import{a as re}from"./chunk-WD2JGIDK.js";import{a as ee}from"./chunk-3BBQDNZD.js";import{d as J,e as X}from"./chunk-KJ4JS75E.js";import"./chunk-HN5HLFTB.js";import"./chunk-KSHK3ZPX.js";import"./chunk-5KMUUL7U.js";import{a as ve}from"./chunk-DUEZWXBY.js";import"./chunk-MVQOMW7S.js";import"./chunk-I5FVESDZ.js";import"./chunk-T5JT2ZU2.js";import"./chunk-QPN6X6UA.js";import"./chunk-76ZDXC2T.js";import"./chunk-WKLTHGWU.js";import"./chunk-TXSUZLOI.js";import"./chunk-A3LRPGV3.js";import"./chunk-KNHDPKRL.js";import"./chunk-5WIBTOCI.js";import"./chunk-UYUPSPOE.js";import{a as xe}from"./chunk-IYCOIHYW.js";import"./chunk-2V7SP7UR.js";import"./chunk-VAWEOFUO.js";import"./chunk-YC7FCCXS.js";import"./chunk-WD5DNUSS.js";import"./chunk-JZM3TDK2.js";import"./chunk-DPVXSN7T.js";import"./chunk-VZV7ZSZ5.js";import"./chunk-5YRQBCHM.js";import"./chunk-WOWIJ56S.js";import"./chunk-3C6N7DK6.js";import"./chunk-5OHSFPY6.js";import"./chunk-PGVYRAFJ.js";import"./chunk-P3QDMRCC.js";import"./chunk-4WSJ2A6Q.js";import"./chunk-Q3ALCPJN.js";import"./chunk-ENW77KKX.js";import"./chunk-Q3VMPVT3.js";import"./chunk-STF3NTPS.js";import"./chunk-IVXIAOMR.js";import"./chunk-AP56UUME.js";import"./chunk-IJCTN52C.js";import"./chunk-WVJDCDGZ.js";import"./chunk-O6H66UM2.js";import"./chunk-ROQYHTFQ.js";import"./chunk-3UDRMQNE.js";import"./chunk-3DMWQJ5W.js";import"./chunk-RAH453TV.js";import"./chunk-VDRNNOVA.js";import"./chunk-AHRG5QCS.js";import{a as Pe,b as he,c as Ee,d as Re,k as Fe,l as we}from"./chunk-PX5PE6GX.js";import"./chunk-A7ZJQCNU.js";import{a as ce}from"./chunk-BLGKOMH3.js";import{a as ne}from"./chunk-QJ2XK63I.js";import{a as se}from"./chunk-LSW66EIR.js";import"./chunk-LNV36S6D.js";import"./chunk-BUOCIXUH.js";import"./chunk-JTPKAIYL.js";import"./chunk-SNECOPBD.js";import{a as ae}from"./chunk-U6LRMWRI.js";import{a as me}from"./chunk-POKLRB3M.js";import"./chunk-EAF6XPH6.js";import{a as ie,b as le}from"./chunk-YIOLMWB5.js";import"./chunk-EUSCQL4H.js";import{d as Z}from"./chunk-T7O3YYOG.js";import"./chunk-AOSXULKY.js";import"./chunk-BYDQHL6O.js";import"./chunk-HJ7WOTV7.js";import{a as G,b as $}from"./chunk-YHCH57B7.js";import"./chunk-7EONM7HL.js";import{a as E,b as R,l as F,u as w}from"./chunk-WQ4H5V7U.js";import"./chunk-6AAV34CT.js";import"./chunk-TFSRZOMP.js";import"./chunk-R4X2WQXX.js";import"./chunk-SNBAM7SA.js";import"./chunk-7G5JSUZU.js";import"./chunk-56UXOD27.js";import"./chunk-3NESYBEJ.js";import"./chunk-DXIJUMLU.js";import"./chunk-6JTHV4QS.js";import"./chunk-547UHEDI.js";import"./chunk-TNN3W5TU.js";import"./chunk-MP3VDCI7.js";import"./chunk-EOMVTXER.js";import{c as Q,d as h}from"./chunk-VIGKOVHP.js";import"./chunk-X6ZAR7ZL.js";import"./chunk-LWGSXQKI.js";import"./chunk-TSPDJUGG.js";import"./chunk-Z5WMKCRJ.js";import"./chunk-D5AR26AI.js";import"./chunk-TVZAFTPT.js";import{a as x,c as v,d as b}from"./chunk-KQPDXXG3.js";import{a as o}from"./chunk-P37U34EQ.js";import{useMutation as be}from"@tanstack/react-query";var Te=o(()=>{let{client:e}=b();return be({mutationFn:o(r=>w({client:e,headers:{Authorization:""},body:r}),"mutationFn")})},"useMagicLink");import{QueryClientProvider as er}from"@tanstack/react-query";import{useMemo as rr,Suspense as or,useRef as tr}from"react";function f(e){let r=document.documentElement;Object.keys(e).forEach(t=>{let n=e[t];n&&r.style.setProperty(t,n)})}o(f,"setCssProperties");function Se(e){let r={};return Object.keys(e).forEach(t=>{r[`--${t}`]=e[t]}),r}o(Se,"mapThemeColors");function ke(e){return{"--spacing":e}}o(ke,"mapThemeSpacing");function De(e){return{"--radius":e}}o(De,"mapThemeBorderRadius");function Ne(e){return{"--fontSizeBase":e.fontSizeBase}}o(Ne,"mapThemeFont");function k(e){e?.colors&&f(Se(e.colors)),e?.spacing&&f(ke(e.spacing)),e?.borderRadius&&f(De(e.borderRadius)),e?.font&&f(Ne(e.font))}o(k,"applyTheme");import{createContext as Oe,useEffect as Ae,useMemo as Be}from"react";import{jsx as Ie}from"react/jsx-runtime";var Me=Oe({theme:{}});function D(e){Ae(()=>{e.theme&&Object.keys(e.theme).length>0&&k(e.theme)},[e.theme]);let r=Be(()=>({theme:e.theme}),[e.theme]);return Ie(Me.Provider,{value:r,children:e.children})}o(D,"ThemeProvider");var N={local:"http://localhost:4000/api/eor",partners:"https://gateway.partners.remote-sandbox.com",production:"https://gateway.remote.com",sandbox:"https://gateway.remote-sandbox.com",staging:"https://gateway.niceremote.com"},P="production";var d="1.21.0";function Ve(e){try{return new URL(e),!0}catch{return!1}}o(Ve,"isValidUrl");function O(e,r){let t={current:null},n=r?.environment?N[r?.environment]:"https://gateway.remote.com",s=R.getConfig();r?.environment&&r?.environment!=="production"&&h(d);let l=!!r?.proxy&&Ve(r.proxy.url);return r?.proxy&&!l&&console.error("Invalid proxy URL provided. Using default base URL."),E({...s,...r?.credentials&&{credentials:r.credentials},headers:{...s.headers,...l?r?.proxy?.headers:{},"X-Client-Name":"remote-flows-sdk","X-Client-Version":d},baseUrl:l?r.proxy?.url:n,auth:o(async()=>{if(!e)return;function m(a){return!a||Date.now()+6e4>a}if(o(m,"hasTokenExpired"),!t.current||m(t.current.expiresAt))try{let a=await e();t.current={accessToken:a.accessToken,expiresAt:Date.now()+a.expiresIn*1e3}}catch(a){console.error("Failed to fetch auth token:",a);return}return t.current?.accessToken},"auth")})}o(O,"createClient");import{Component as $e}from"react";var A=[{category:"RENDER_ERROR",severity:"critical",messagePatterns:["element type is invalid","hydration","rendered more hooks","rendered fewer hooks"],namePatterns:["invariantviolation"]},{category:"HOOK_ERROR",severity:"critical",messagePatterns:["hook","useeffect","usestate","usecontext"],namePatterns:[]},{category:"STATE_ERROR",severity:"error",messagePatterns:["state","context","provider"],namePatterns:[]},{category:"RENDER_ERROR",severity:"critical",messagePatterns:["render","component"],namePatterns:[]},{category:"RUNTIME_ERROR",severity:"critical",messagePatterns:[],namePatterns:["typeerror","referenceerror"]},{category:"RUNTIME_ERROR",severity:"error",messagePatterns:[],namePatterns:["rangeerror"]}],Le=["cannot read property","is not a function","is not defined"],B=["warning","deprecated"],M=o(e=>{let r=e.message.toLowerCase(),t=e.name.toLowerCase();if(B.some(n=>r.includes(n)))return"UNKNOWN_ERROR";for(let n of A){let s=n.messagePatterns.some(m=>r.includes(m)),l=n.namePatterns.some(m=>t.includes(m));if(s||l)return n.category}return"UNKNOWN_ERROR"},"categorizeError"),I=o((e,r)=>{let t=e.message.toLowerCase(),n=e.name.toLowerCase();if(B.some(s=>t.includes(s)))return"warning";if(Le.some(s=>t.includes(s)))return"critical";for(let s of A){if(s.category!==r)continue;let l=s.messagePatterns.some(a=>t.includes(a)),m=s.namePatterns.some(a=>n.includes(a));if(l||m)return s.severity}return"error"},"determineErrorSeverity");var p=new Map,V=100;function _e(e){return`${e.name}:${e.message}:${e.stack?.substring(0,100)||""}`}o(_e,"getErrorSignature");function Ue(e){let r=_e(e),t=p.get(r),n=Date.now();if(t&&n-t<V)return!0;if(p.set(r,n),p.size>100)for(let[s,l]of p.entries())n-l>V&&p.delete(s);return!1}o(Ue,"wasRecentlyReported");var We=o((e,r)=>{if(!r)return;let t={critical:"\u{1F534}",error:"\u{1F7E0}",warning:"\u{1F7E1}",info:"\u{1F535}"};console.group("\u{1F4EE} [RemoteFlows] Error Report (Debug Mode)"),console.log("\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"),console.log("\u274C Error:",e.error.message),console.log("\u{1F4DB} Name:",e.error.name),console.log(`${t[e.error.severity]} Severity:`,e.error.severity.toUpperCase()),console.log("\u{1F3F7}\uFE0F Category:",e.error.category),e.context?.flow&&console.log("\u{1F504} Flow:",e.context.flow),e.context?.step!==void 0&&console.log("\u{1F4CD} Step:",e.context.step),e.context?.metadata&&console.log("\u{1F4DD} Context Metadata:",e.context.metadata),console.log("\u23F0 Timestamp:",e.metadata.timestamp),console.log("\u{1F310} URL:",e.metadata.url),console.log("\u{1F4E6} SDK Version:",e.metadata.sdk_version),e.error.stack&&(console.log(`
1
+ import"./chunk-FZ7FWFJX.js";import{a as ge}from"./chunk-UMVA4SIV.js";import{a as ye}from"./chunk-X6CON4YE.js";import{a as fe}from"./chunk-KWLKQ6N6.js";import"./chunk-7PTTOR6T.js";import"./chunk-MJQUJZCD.js";import"./chunk-XW7ZYSJ3.js";import"./chunk-TRBEYNRN.js";import"./chunk-CJG77FUT.js";import"./chunk-YWOJ4NKF.js";import"./chunk-KKOBWE62.js";import"./chunk-IF42CZJH.js";import"./chunk-6DHV4GT6.js";import"./chunk-5WFWHEXV.js";import"./chunk-L5DII4MV.js";import{a as de,b as pe,c as ue}from"./chunk-YYGLCI2S.js";import"./chunk-XFD3ULUF.js";import"./chunk-42R2H2DW.js";import"./chunk-LMYJ6V44.js";import"./chunk-TC7EQZJK.js";import"./chunk-NX7MM6XR.js";import"./chunk-ZXGAFQXW.js";import"./chunk-DFJNVGK4.js";import"./chunk-SGE4DLC3.js";import"./chunk-GULCZWSK.js";import"./chunk-AQ4WWMOK.js";import"./chunk-TZQ2O23Z.js";import"./chunk-XAPDPR3N.js";import"./chunk-DPZHLV7U.js";import"./chunk-WR5DSTKP.js";import"./chunk-MRYRNB7Y.js";import"./chunk-5KMUUL7U.js";import{a as Ce}from"./chunk-QELEVTDT.js";import"./chunk-KRJETP7I.js";import"./chunk-67GUBRC6.js";import"./chunk-W7YC2IO2.js";import"./chunk-FHYOWPXB.js";import"./chunk-YIMWF5GR.js";import"./chunk-AHBNUSR4.js";import"./chunk-KIQNU673.js";import"./chunk-KN5M3VJD.js";import"./chunk-EULZWL2F.js";import"./chunk-C52C6J6Q.js";import{a as T,b as S}from"./chunk-RQWB2F74.js";import"./chunk-J5I5ZSW3.js";import"./chunk-VAIBLWOY.js";import"./chunk-PGWKJ6FK.js";import"./chunk-FGBEOUQK.js";import{a as oe}from"./chunk-JIW2JK7J.js";import{a as te}from"./chunk-EFRT6C7V.js";import"./chunk-AYC6DTFV.js";import{a as ve}from"./chunk-OC3MVHTM.js";import"./chunk-QPN6X6UA.js";import"./chunk-IJQBLGTI.js";import"./chunk-KQSWP3Y3.js";import"./chunk-QWQPTZQD.js";import"./chunk-76ZDXC2T.js";import"./chunk-UWL56AOZ.js";import"./chunk-TXSUZLOI.js";import"./chunk-A3LRPGV3.js";import"./chunk-JTD4HJSK.js";import"./chunk-5WIBTOCI.js";import{a as q}from"./chunk-MAOJJ4WX.js";import{b as H,d as Y}from"./chunk-72TX2GXH.js";import"./chunk-TMVRAQYA.js";import"./chunk-Y2JE46ZY.js";import"./chunk-VFRHMNLJ.js";import{a as j}from"./chunk-7AFCHGML.js";import{a as re}from"./chunk-WD2JGIDK.js";import{a as ee}from"./chunk-3BBQDNZD.js";import"./chunk-KSHK3ZPX.js";import{d as J,e as X}from"./chunk-BRPBSA4E.js";import"./chunk-HN5HLFTB.js";import"./chunk-UYUPSPOE.js";import{a as xe}from"./chunk-JBVLUY4M.js";import"./chunk-7Y4XCQZX.js";import"./chunk-VAWEOFUO.js";import"./chunk-OZWLRF6P.js";import"./chunk-WD5DNUSS.js";import"./chunk-YVAEVXHP.js";import"./chunk-DPVXSN7T.js";import"./chunk-BNY76RHM.js";import"./chunk-IW6OJUGY.js";import"./chunk-Z7AWT3MQ.js";import"./chunk-3C6N7DK6.js";import"./chunk-LT27CPJ6.js";import"./chunk-7XLP5WFW.js";import"./chunk-P3QDMRCC.js";import"./chunk-4WSJ2A6Q.js";import"./chunk-Q3ALCPJN.js";import"./chunk-SCEOHA2U.js";import"./chunk-HPLRAHY7.js";import"./chunk-STF3NTPS.js";import"./chunk-SAUF7ZUE.js";import"./chunk-AP56UUME.js";import"./chunk-IJCTN52C.js";import"./chunk-WVJDCDGZ.js";import"./chunk-O6H66UM2.js";import"./chunk-ROQYHTFQ.js";import"./chunk-3UDRMQNE.js";import"./chunk-3DMWQJ5W.js";import"./chunk-RAH453TV.js";import"./chunk-VDRNNOVA.js";import"./chunk-AHRG5QCS.js";import{a as Pe,b as he,c as Ee,d as Re,k as Fe,l as we}from"./chunk-PX5PE6GX.js";import"./chunk-A7ZJQCNU.js";import{a as ce}from"./chunk-HGNICQUY.js";import{a as ne}from"./chunk-XJECSJYB.js";import{a as se}from"./chunk-W5USIIXL.js";import"./chunk-LNV36S6D.js";import"./chunk-VZ5BGG3N.js";import"./chunk-CT2D4IBR.js";import"./chunk-SNECOPBD.js";import{a as ae}from"./chunk-U6LRMWRI.js";import{a as me}from"./chunk-E6B4ZECN.js";import"./chunk-JD2O7KNE.js";import{a as ie,b as le}from"./chunk-YIOLMWB5.js";import"./chunk-EUQH4FU4.js";import{d as Z}from"./chunk-I3DVKJCW.js";import"./chunk-AOSXULKY.js";import"./chunk-BYDQHL6O.js";import"./chunk-HJ7WOTV7.js";import{a as G,b as $}from"./chunk-YHCH57B7.js";import"./chunk-7EONM7HL.js";import{a as E,b as R,l as F,u as w}from"./chunk-WQ4H5V7U.js";import"./chunk-6AAV34CT.js";import"./chunk-TFSRZOMP.js";import"./chunk-R4X2WQXX.js";import"./chunk-SNBAM7SA.js";import"./chunk-7G5JSUZU.js";import"./chunk-56UXOD27.js";import"./chunk-3NESYBEJ.js";import"./chunk-DXIJUMLU.js";import"./chunk-6JTHV4QS.js";import"./chunk-547UHEDI.js";import"./chunk-TNN3W5TU.js";import"./chunk-MP3VDCI7.js";import"./chunk-EOMVTXER.js";import{c as Q,d as h}from"./chunk-VIGKOVHP.js";import"./chunk-X6ZAR7ZL.js";import"./chunk-LWGSXQKI.js";import"./chunk-TSPDJUGG.js";import"./chunk-Z5WMKCRJ.js";import"./chunk-D5AR26AI.js";import"./chunk-TVZAFTPT.js";import{a as x,c as v,d as b}from"./chunk-KQPDXXG3.js";import{a as o}from"./chunk-P37U34EQ.js";import{useMutation as be}from"@tanstack/react-query";var Te=o(()=>{let{client:e}=b();return be({mutationFn:o(r=>w({client:e,headers:{Authorization:""},body:r}),"mutationFn")})},"useMagicLink");import{QueryClientProvider as er}from"@tanstack/react-query";import{useMemo as rr,Suspense as or,useRef as tr}from"react";function f(e){let r=document.documentElement;Object.keys(e).forEach(t=>{let n=e[t];n&&r.style.setProperty(t,n)})}o(f,"setCssProperties");function Se(e){let r={};return Object.keys(e).forEach(t=>{r[`--${t}`]=e[t]}),r}o(Se,"mapThemeColors");function ke(e){return{"--spacing":e}}o(ke,"mapThemeSpacing");function De(e){return{"--radius":e}}o(De,"mapThemeBorderRadius");function Ne(e){return{"--fontSizeBase":e.fontSizeBase}}o(Ne,"mapThemeFont");function k(e){e?.colors&&f(Se(e.colors)),e?.spacing&&f(ke(e.spacing)),e?.borderRadius&&f(De(e.borderRadius)),e?.font&&f(Ne(e.font))}o(k,"applyTheme");import{createContext as Oe,useEffect as Ae,useMemo as Be}from"react";import{jsx as Ie}from"react/jsx-runtime";var Me=Oe({theme:{}});function D(e){Ae(()=>{e.theme&&Object.keys(e.theme).length>0&&k(e.theme)},[e.theme]);let r=Be(()=>({theme:e.theme}),[e.theme]);return Ie(Me.Provider,{value:r,children:e.children})}o(D,"ThemeProvider");var N={local:"http://localhost:4000/api/eor",partners:"https://gateway.partners.remote-sandbox.com",production:"https://gateway.remote.com",sandbox:"https://gateway.remote-sandbox.com",staging:"https://gateway.niceremote.com"},P="production";var d="1.22.0";function Ve(e){try{return new URL(e),!0}catch{return!1}}o(Ve,"isValidUrl");function O(e,r){let t={current:null},n=r?.environment?N[r?.environment]:"https://gateway.remote.com",s=R.getConfig();r?.environment&&r?.environment!=="production"&&h(d);let l=!!r?.proxy&&Ve(r.proxy.url);return r?.proxy&&!l&&console.error("Invalid proxy URL provided. Using default base URL."),E({...s,...r?.credentials&&{credentials:r.credentials},headers:{...s.headers,...l?r?.proxy?.headers:{},"X-Client-Name":"remote-flows-sdk","X-Client-Version":d},baseUrl:l?r.proxy?.url:n,auth:o(async()=>{if(!e)return;function m(a){return!a||Date.now()+6e4>a}if(o(m,"hasTokenExpired"),!t.current||m(t.current.expiresAt))try{let a=await e();t.current={accessToken:a.accessToken,expiresAt:Date.now()+a.expiresIn*1e3}}catch(a){console.error("Failed to fetch auth token:",a);return}return t.current?.accessToken},"auth")})}o(O,"createClient");import{Component as $e}from"react";var A=[{category:"RENDER_ERROR",severity:"critical",messagePatterns:["element type is invalid","hydration","rendered more hooks","rendered fewer hooks"],namePatterns:["invariantviolation"]},{category:"HOOK_ERROR",severity:"critical",messagePatterns:["hook","useeffect","usestate","usecontext"],namePatterns:[]},{category:"STATE_ERROR",severity:"error",messagePatterns:["state","context","provider"],namePatterns:[]},{category:"RENDER_ERROR",severity:"critical",messagePatterns:["render","component"],namePatterns:[]},{category:"RUNTIME_ERROR",severity:"critical",messagePatterns:[],namePatterns:["typeerror","referenceerror"]},{category:"RUNTIME_ERROR",severity:"error",messagePatterns:[],namePatterns:["rangeerror"]}],Le=["cannot read property","is not a function","is not defined"],B=["warning","deprecated"],M=o(e=>{let r=e.message.toLowerCase(),t=e.name.toLowerCase();if(B.some(n=>r.includes(n)))return"UNKNOWN_ERROR";for(let n of A){let s=n.messagePatterns.some(m=>r.includes(m)),l=n.namePatterns.some(m=>t.includes(m));if(s||l)return n.category}return"UNKNOWN_ERROR"},"categorizeError"),I=o((e,r)=>{let t=e.message.toLowerCase(),n=e.name.toLowerCase();if(B.some(s=>t.includes(s)))return"warning";if(Le.some(s=>t.includes(s)))return"critical";for(let s of A){if(s.category!==r)continue;let l=s.messagePatterns.some(a=>t.includes(a)),m=s.namePatterns.some(a=>n.includes(a));if(l||m)return s.severity}return"error"},"determineErrorSeverity");var p=new Map,V=100;function _e(e){return`${e.name}:${e.message}:${e.stack?.substring(0,100)||""}`}o(_e,"getErrorSignature");function Ue(e){let r=_e(e),t=p.get(r),n=Date.now();if(t&&n-t<V)return!0;if(p.set(r,n),p.size>100)for(let[s,l]of p.entries())n-l>V&&p.delete(s);return!1}o(Ue,"wasRecentlyReported");var We=o((e,r)=>{if(!r)return;let t={critical:"\u{1F534}",error:"\u{1F7E0}",warning:"\u{1F7E1}",info:"\u{1F535}"};console.group("\u{1F4EE} [RemoteFlows] Error Report (Debug Mode)"),console.log("\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"),console.log("\u274C Error:",e.error.message),console.log("\u{1F4DB} Name:",e.error.name),console.log(`${t[e.error.severity]} Severity:`,e.error.severity.toUpperCase()),console.log("\u{1F3F7}\uFE0F Category:",e.error.category),e.context?.flow&&console.log("\u{1F504} Flow:",e.context.flow),e.context?.step!==void 0&&console.log("\u{1F4CD} Step:",e.context.step),e.context?.metadata&&console.log("\u{1F4DD} Context Metadata:",e.context.metadata),console.log("\u23F0 Timestamp:",e.metadata.timestamp),console.log("\u{1F310} URL:",e.metadata.url),console.log("\u{1F4E6} SDK Version:",e.metadata.sdk_version),e.error.stack&&(console.log(`
2
2
  \u{1F4DA} Stack Trace:`),console.log(e.error.stack)),console.log(`
3
3
  \u{1F4CB} Full Payload (would be sent to telemetry):`),console.log(JSON.stringify(e,null,2)),console.log("\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"),console.groupEnd()},"logDebugPayload"),ze=o(()=>typeof window<"u"?window.location.href:"unknown","getUrl"),Ke=o(e=>e?btoa(e):"","encodeStack");function Qe(e,r,t,n){let s=M(e),l=I(e,s),m=ze(),a=Ke(e.stack);return{error:{message:e.message,stack:a,name:e.name,category:s,severity:l},context:n,metadata:{sdk_version:r,timestamp:new Date().toISOString(),url:m,user_agent:typeof navigator<"u"?navigator.userAgent:"unknown",environment:t}}}o(Qe,"buildErrorPayload");function Ge(e,r){let t=e==="local",n=r.includes("localhost")||r.includes("127.0.0.1");return t===n}o(Ge,"shouldSendTelemetry");function L(e,r,t={debugMode:!1}){let{error:n,sdkVersion:s,client:l,environment:m}=e;if(Ue(n)){t.debugMode&&console.log("[RemoteFlows] Skipping duplicate error report");return}let a=Qe(n,s,m??P,r);if(t.debugMode&&We(a,!!t.debugMode),!Ge(m??P,a.metadata.url)){t.debugMode&&console.log("[RemoteFlows] Skipping telemetry API call (local environment)");return}F({client:l,body:a}).catch(u=>{t.debugMode&&console.warn("[RemoteFlows] Failed to report error telemetry:",u)})}o(L,"reportTelemetryError");import{jsx as _}from"react/jsx-runtime";var Ze=o(()=>_("div",{style:{padding:"20px",border:"1px solid #dc2626",borderRadius:"4px",backgroundColor:"#fef2f2",color:"#991b1b"},children:"Something went wrong in RemoteFlows. Please refresh the page."}),"FallbackErrorBoundary"),g=class extends $e{static{o(this,"RemoteFlowsErrorBoundary")}constructor(r){super(r),this.state={hasError:!1,error:null}}static getDerivedStateFromError(r){return{hasError:!0,error:r}}static contextType=T;componentDidCatch(r,t){console.error("[RemoteFlows] Error caught:",r,t);let n=this.context?.errorContextRef.current,s={error:r,sdkVersion:d,client:this.props.client,environment:this.props.environment};if(L(s,n,{debugMode:this.props.debug}),this.props.errorBoundary?.useParentErrorBoundary)throw r}render(){return this.state.hasError&&this.state.error?this.props.errorBoundary?.fallback?typeof this.props.errorBoundary?.fallback=="function"?this.props.errorBoundary?.fallback(this.state.error):this.props.errorBoundary?.fallback:_(Ze,{}):this.props.children}};import{lazy as i}from"react";var U={button:i(()=>import("./ButtonDefault-2YV2Z474.js").then(e=>({default:e.ButtonDefault}))),checkbox:i(()=>import("./CheckboxFieldDefault-SZZQUVAM.js").then(e=>({default:e.CheckboxFieldDefault}))),countries:i(()=>import("./CountryFieldDefault-IBVQJVMW.js").then(e=>({default:e.CountryFieldDefault}))),date:i(()=>import("./DatePickerFieldDefault-5LEOVIM2.js").then(e=>({default:e.DatePickerFieldDefault}))),drawer:i(()=>import("./DrawerDefault-AAUS7T5W.js").then(e=>({default:e.DrawerDefault}))),email:i(()=>import("./EmailFieldDefault-2PMSDIXF.js").then(e=>({default:e.EmailFieldDefault}))),fieldsetToggle:i(()=>import("./FieldsetToggleButtonDefault-MFLN2WWT.js").then(e=>({default:e.FieldsetToggleButtonDefault}))),file:i(()=>import("./FileUploadFieldDefault-Y2ZYBSTV.js").then(e=>({default:e.FileUploadFieldDefault}))),"multi-select":i(()=>import("./MultiSelectFieldDefault-UK7652MS.js").then(e=>({default:e.MultiSelectFieldDefault}))),number:i(()=>import("./NumberFieldDefault-C5V6POQ7.js").then(e=>({default:e.NumberFieldDefault}))),radio:i(()=>import("./RadioGroupFieldDefault-DNESPKMT.js").then(e=>({default:e.RadioGroupFieldDefault}))),select:i(()=>import("./SelectFieldDefault-4KQUV57C.js").then(e=>({default:e.SelectFieldDefault}))),statement:i(()=>import("./StatementDefault-DORMITL7.js").then(e=>({default:e.StatementDefault}))),textarea:i(()=>import("./TextAreaFieldDefault-5P2MEQUR.js").then(e=>({default:e.TextAreaFieldDefault}))),text:i(()=>import("./TextFieldDefault-PMCQSPPT.js").then(e=>({default:e.TextFieldDefault}))),zendeskDrawer:i(()=>import("./ZendeskDrawerDefault-A5PVWI4R.js").then(e=>({default:e.ZendeskDrawerDefault}))),table:i(()=>import("./TableFieldDefault-URJVK7YR.js").then(e=>({default:e.TableFieldDefault}))),"work-schedule":i(()=>import("./WorkScheduleFieldDefault-SR3G37MN.js").then(e=>({default:e.WorkScheduleFieldDefault}))),pdfViewer:i(()=>import("./PDFPreviewDefault-HSSMYKV5.js").then(e=>({default:e.PDFPreviewDefault})))};import{jsx as y,jsxs as He}from"react/jsx-runtime";function W(){return He("div",{className:"animate-pulse space-y-4 p-4",children:[y("div",{className:"h-4 bg-gray-200 rounded w-1/4"}),y("div",{className:"h-10 bg-gray-200 rounded"}),y("div",{className:"h-4 bg-gray-200 rounded w-1/4"}),y("div",{className:"h-10 bg-gray-200 rounded"})]})}o(W,"FormLoadingFallback");import{useState as Je,useEffect as Xe}from"react";import{Fragment as Ye,jsx as qe}from"react/jsx-runtime";function z({fallback:e,delay:r=200}){let[t,n]=Je(!1);return Xe(()=>{let s=setTimeout(()=>{n(!0)},r);return()=>clearTimeout(s)},[r]),t?qe(Ye,{children:e}):null}o(z,"DelayedFallback");import{QueryClient as je}from"@tanstack/react-query";var K=o(()=>new je,"getQueryClient");import{jsx as c}from"react/jsx-runtime";function nr({children:e,client:r}){return c(v.Provider,{value:{client:r},children:e})}o(nr,"RemoteFlowContextWrapper");function sr({children:e,components:r={}}){let t=rr(()=>({...U,...r}),[r]);return c(x.Provider,{value:{components:t},children:c(or,{fallback:c(z,{fallback:c(W,{}),delay:200}),children:e})})}o(sr,"FormFieldsProvider");var ar=K();function ir({auth:e,children:r,components:t,theme:n,proxy:s,environment:l,errorBoundary:m={useParentErrorBoundary:!0},debug:a=!1,credentials:C}){let u=tr(O(e,{proxy:s,environment:l,credentials:C})).current;return c(S,{children:c(g,{errorBoundary:m,debug:a,environment:l,client:u,children:c(er,{client:ar,children:c(sr,{components:t,children:c(nr,{environment:l,debug:a,client:u,children:c(D,{theme:n,children:r})})})})})})}o(ir,"RemoteFlows");export{ne as ContractAmendmentConfirmationForm,ce as ContractAmendmentFlow,se as ContractAmendmentForm,ae as ContractAmendmentSubmit,xe as ContractorOnboardingFlow,q as CostCalculatorFlow,j as CostCalculatorForm,re as CostCalculatorResetButton,ee as CostCalculatorSubmitButton,ve as CreateCompanyFlow,oe as EstimationResults,Ce as OnboardingFlow,ir as RemoteFlows,te as SummaryResults,ye as TerminationDialogInfoContent,fe as TerminationFlow,ge as TerminationReasonsDetailContent,$ as ZendeskTriggerButton,H as buildCostCalculatorEstimationPayload,he as contractorPlusProductIdentifier,Pe as contractorStandardProductIdentifier,Z as convertFromCents,Ee as corProductIdentifier,Re as eorProductIdentifier,Fe as onboardingWorkflows,we as pricingPlanDetails,Q as transformYupErrorsIntoObject,me as useContractAmendment,Y as useCostCalculator,X as useCostCalculatorEstimationCsv,J as useCostCalculatorEstimationPdf,le as useDiscardEmploymentMutation,ie as useEmploymentQuery,Te as useMagicLink,pe as usePaidTimeoffBreakdownQuery,ue as useTimeOffLeavePoliciesSummaryQuery,de as useTimeOffQuery,G as zendeskArticles};
4
4
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- export { c as cn } from './utils-BDEB1dzv.js';
1
+ export { c as cn } from './utils-Db2G1Kxo.js';
2
2
  import * as react_jsx_runtime from 'react/jsx-runtime';
3
3
  import * as class_variance_authority_types from 'class-variance-authority/types';
4
4
  import { VariantProps } from 'class-variance-authority';
@@ -13,8 +13,8 @@ import * as SelectPrimitive from '@radix-ui/react-select';
13
13
  import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
14
14
  import 'clsx';
15
15
  import 'yup';
16
- import './remoteFlows-E3wOGnCt.js';
17
- import './types.gen-DdX2syl4.js';
16
+ import './remoteFlows-BVt9wH8Z.js';
17
+ import './types.gen-Oz2Tvvr6.js';
18
18
  import './types-ZWIpiFgj.js';
19
19
  import 'react-hook-form';
20
20
 
@@ -1,4 +1,4 @@
1
- import './remoteFlows-E3wOGnCt.js';
1
+ import './remoteFlows-BVt9wH8Z.js';
2
2
 
3
3
  interface SuccessResponse<D> {
4
4
  data: D;
@@ -1,6 +1,6 @@
1
1
  import { PropsWithChildren, ReactNode } from 'react';
2
2
  import { AnySchema } from 'yup';
3
- import { ab as HelpCenterArticle } from './types.gen-DdX2syl4.js';
3
+ import { ab as HelpCenterArticle } from './types.gen-Oz2Tvvr6.js';
4
4
  import { B as BaseTypes } from './types-ZWIpiFgj.js';
5
5
  import { ControllerRenderProps, FieldValues, ControllerFieldState } from 'react-hook-form';
6
6
 
@@ -1,6 +1,6 @@
1
- import { O as OffboardingResponse, ac as PayrollCalendarEor, E as Employment, H as TerminationDetailsParams, N as NotFoundResponse, U as UnprocessableEntityResponse, T as TooManyRequestsResponse, B as BadRequestResponse, a as UnauthorizedResponse, R as RequestError } from './types.gen-DdX2syl4.js';
1
+ import { O as OffboardingResponse, ac as PayrollCalendarEor, E as Employment, H as TerminationDetailsParams, N as NotFoundResponse, U as UnprocessableEntityResponse, T as TooManyRequestsResponse, B as BadRequestResponse, a as UnauthorizedResponse, R as RequestError } from './types.gen-Oz2Tvvr6.js';
2
2
  import * as react_jsx_runtime from 'react/jsx-runtime';
3
- import { E as ErrorResponse, S as SuccessResponse } from './mutations-Cw8GlAq0.js';
3
+ import { E as ErrorResponse, S as SuccessResponse } from './mutations-BsydWn3-.js';
4
4
  import * as React$1 from 'react';
5
5
  import * as _remoteoss_json_schema_form from '@remoteoss/json-schema-form';
6
6
  import * as _remoteoss_json_schema_form_v0_deprecated from '@remoteoss/json-schema-form-v0-deprecated';
@@ -1,4 +1,4 @@
1
- import { a2 as ListTimeoffResponse, a3 as TimeoffStatus, a4 as TimeoffType, a5 as ListLeavePoliciesSummaryResponse, E as Employment } from './types.gen-DdX2syl4.js';
1
+ import { a2 as ListTimeoffResponse, a3 as TimeoffStatus, a4 as TimeoffType, a5 as ListLeavePoliciesSummaryResponse, E as Employment } from './types.gen-Oz2Tvvr6.js';
2
2
  import * as _tanstack_react_query from '@tanstack/react-query';
3
3
  import { UseQueryResult } from '@tanstack/react-query';
4
4
  import * as _tanstack_query_core from '@tanstack/query-core';
@@ -1,9 +1,9 @@
1
- import { d as EmploymentCreationResponse, S as SuccessResponse, e as EmploymentResponse, f as CreateContractDocumentResponse, E as Employment, g as Signatory, h as CompanyLegalEntity, K as SignContractDocument } from './types.gen-DdX2syl4.js';
1
+ import { d as EmploymentCreationResponse, S as SuccessResponse, e as EmploymentResponse, f as CreateContractDocumentResponse, E as Employment, g as Signatory, h as CompanyLegalEntity, K as SignContractDocument } from './types.gen-Oz2Tvvr6.js';
2
2
  import { OnboardingBack } from './flows/ContractorOnboarding/components/OnboardingBack.js';
3
3
  import { OnboardingSubmit } from './flows/ContractorOnboarding/components/OnboardingSubmit.js';
4
4
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
- import { C as Components, J as JSFFields, M as Meta, a as JSFFieldset } from './remoteFlows-E3wOGnCt.js';
6
- import { N as NormalizedFieldError } from './mutations-Cw8GlAq0.js';
5
+ import { C as Components, J as JSFFields, M as Meta, a as JSFFieldset } from './remoteFlows-BVt9wH8Z.js';
6
+ import { N as NormalizedFieldError } from './mutations-BsydWn3-.js';
7
7
  import * as _tanstack_query_core from '@tanstack/query-core';
8
8
  import * as React$1 from 'react';
9
9
  import { Step } from './flows/useStepState.js';
@@ -11,9 +11,9 @@ import { FieldValues } from 'react-hook-form';
11
11
  import { ValidationResult } from '@remoteoss/remote-json-schema-form-kit';
12
12
  import { StepKeys } from './flows/ContractorOnboarding/utils.js';
13
13
  import { BasicInformationStep } from './flows/ContractorOnboarding/components/BasicInformationStep.js';
14
- import { g as SelectCountryStep } from './types-DsVpuWHl.js';
14
+ import { g as SelectCountryStep } from './types-gQ_Tx-qG.js';
15
15
  import { FlowOptions, JSFModify } from './flows/types.js';
16
- import { OnboardingInvite } from './flows/Onboarding/components/OnboardingInvite.js';
16
+ import { OnboardingInvite } from './flows/ContractorOnboarding/components/OnboardingInvite.js';
17
17
  import { ContractReviewButton } from './flows/ContractorOnboarding/components/ContractReviewButton.js';
18
18
  import { ProductType } from './flows/ContractorOnboarding/constants.js';
19
19
  import { SaveDraftButton } from './flows/ContractorOnboarding/components/SaveDraftButton.js';
@@ -33,7 +33,9 @@ type PricingPlanStepProps = {
33
33
  };
34
34
  declare function PricingPlanStep({ components, onSubmit, onSuccess, onError, }: PricingPlanStepProps): react_jsx_runtime.JSX.Element;
35
35
 
36
- type useContractorOnboardingProps = Omit<ContractorOnboardingFlowProps, 'render'>;
36
+ type useContractorOnboardingProps = Omit<ContractorOnboardingFlowProps, 'render' | 'options'> & {
37
+ options: ContractorOnboardingHookOptions;
38
+ };
37
39
  declare const useContractorOnboarding: ({ countryCode, externalId, employmentId, skipSteps, options, initialValues: onboardingInitialValues, }: useContractorOnboardingProps) => {
38
40
  /**
39
41
  * Loading state indicating if the flow is loading data
@@ -279,6 +281,28 @@ type ContractorOnboardingRenderProps = {
279
281
  SaveDraftButton: typeof SaveDraftButton;
280
282
  };
281
283
  };
284
+ type ContractorOnboardingFlowOptions = Omit<FlowOptions, 'jsfModify'> & {
285
+ /**
286
+ * Products to exclude from the available options in pricing_plan step.
287
+ * By default, all products are shown. Use this to hide specific products.
288
+ * @example excludeProducts: ['eor'] // Hide EOR option
289
+ * @example excludeProducts: ['eor', 'cor'] // Hide both EOR and COR
290
+ */
291
+ excludeProducts?: ProductType[];
292
+ /**
293
+ * The JSON schema modification to use for the onboarding.
294
+ * This is used to modify the JSON schema for the onboarding.
295
+ * @see {@link JSFModify}
296
+ */
297
+ jsfModify?: {
298
+ select_country?: JSFModify;
299
+ basic_information?: JSFModify;
300
+ contract_details?: JSFModify;
301
+ contract_preview?: JSFModify;
302
+ eligibility_questionnaire?: JSFModify;
303
+ pricing_plan?: JSFModify;
304
+ };
305
+ };
282
306
  type ContractorOnboardingFlowProps = {
283
307
  /**
284
308
  * The country code to use for the onboarding.
@@ -304,23 +328,7 @@ type ContractorOnboardingFlowProps = {
304
328
  /**
305
329
  * The options for the contractor onboarding flow.
306
330
  */
307
- options?: Omit<FlowOptions, 'jsfModify'> & {
308
- /**
309
- * Products to exclude from the available options in pricing_plan step.
310
- * By default, all products are shown. Use this to hide specific products.
311
- * @example excludeProducts: ['eor'] // Hide EOR option
312
- * @example excludeProducts: ['eor', 'cor'] // Hide both EOR and COR
313
- */
314
- excludeProducts?: ProductType[];
315
- jsfModify?: {
316
- select_country?: JSFModify;
317
- basic_information?: JSFModify;
318
- contract_details?: JSFModify;
319
- contract_preview?: JSFModify;
320
- eligibility_questionnaire?: JSFModify;
321
- pricing_plan?: JSFModify;
322
- };
323
- };
331
+ options?: ContractorOnboardingFlowOptions;
324
332
  /**
325
333
  * Initial values to pre-populate the form fields.
326
334
  * These are flat field values that will be automatically mapped to the correct step.
@@ -328,6 +336,13 @@ type ContractorOnboardingFlowProps = {
328
336
  */
329
337
  initialValues?: Record<string, unknown>;
330
338
  };
339
+ type ContractorOnboardingHookOptions = ContractorOnboardingFlowOptions & {
340
+ /**
341
+ * Callback invoked when the contract review is completed.
342
+ * Use this to sync external form state if implementing custom forms.
343
+ */
344
+ onContractReviewed?: () => void;
345
+ };
331
346
  type PricingPlanFormPayload = {
332
347
  subscription: string;
333
348
  };
@@ -367,4 +382,4 @@ type EligibilityQuestionnaireFormPayload = {
367
382
  };
368
383
  type EligibilityQuestionnaireResponse = SuccessResponse;
369
384
 
370
- export { type AiValidationError as A, type ContractorOnboardingFlowProps as C, type EligibilityQuestionnaireFormPayload as E, type PricingPlanFormPayload as P, type ContractorOnboardingContractDetailsFormPayload as a, type ContractorOnboardingRenderProps as b, type PricingPlanResponse as c, type ContractorOnboardingContractDetailsResponse as d, type ContractPreviewFormPayload as e, type ContractPreviewResponse as f, type EligibilityQuestionnaireResponse as g, PricingPlanStep as h, ContractDetailsStep as i, ContractPreviewStep as j, EligibilityQuestionnaireStep as k, useContractorOnboarding as u };
385
+ export { type AiValidationError as A, type ContractorOnboardingFlowProps as C, type EligibilityQuestionnaireFormPayload as E, type PricingPlanFormPayload as P, type ContractorOnboardingContractDetailsFormPayload as a, type ContractorOnboardingRenderProps as b, type PricingPlanResponse as c, type ContractorOnboardingContractDetailsResponse as d, type ContractPreviewFormPayload as e, type ContractPreviewResponse as f, type EligibilityQuestionnaireResponse as g, PricingPlanStep as h, ContractDetailsStep as i, ContractPreviewStep as j, EligibilityQuestionnaireStep as k, type ContractorOnboardingHookOptions as l, useContractorOnboarding as u };
@@ -1,10 +1,10 @@
1
- import { d as EmploymentCreationResponse, e as EmploymentResponse, S as SuccessResponse, U as UnprocessableEntityResponse, T as TooManyRequestsResponse, w as ConflictResponse, B as BadRequestResponse, F as ForbiddenResponse, N as NotFoundResponse, a as UnauthorizedResponse, E as Employment$1, x as EmploymentCreateParams } from './types.gen-DdX2syl4.js';
1
+ import { d as EmploymentCreationResponse, e as EmploymentResponse, S as SuccessResponse, U as UnprocessableEntityResponse, T as TooManyRequestsResponse, w as ConflictResponse, B as BadRequestResponse, F as ForbiddenResponse, N as NotFoundResponse, a as UnauthorizedResponse, E as Employment$1, x as EmploymentCreateParams } from './types.gen-Oz2Tvvr6.js';
2
2
  import * as react_jsx_runtime from 'react/jsx-runtime';
3
3
  import { OnboardingBack } from './flows/Onboarding/components/OnboardingBack.js';
4
4
  import { OnboardingInvite } from './flows/Onboarding/components/OnboardingInvite.js';
5
- import { N as NormalizedFieldError, S as SuccessResponse$1, E as ErrorResponse } from './mutations-Cw8GlAq0.js';
5
+ import { N as NormalizedFieldError, S as SuccessResponse$1, E as ErrorResponse } from './mutations-BsydWn3-.js';
6
6
  import { OnboardingSubmit } from './flows/Onboarding/components/OnboardingSubmit.js';
7
- import { C as Components, J as JSFFields, M as Meta, a as JSFFieldset } from './remoteFlows-E3wOGnCt.js';
7
+ import { C as Components, J as JSFFields, M as Meta, a as JSFFieldset } from './remoteFlows-BVt9wH8Z.js';
8
8
  import * as _tanstack_query_core from '@tanstack/query-core';
9
9
  import * as React$1 from 'react';
10
10
  import { ValidationResult } from '@remoteoss/remote-json-schema-form-kit';
@@ -1,8 +1,8 @@
1
- import { l as CompanyResponse, N as NotFoundResponse, U as UnprocessableEntityResponse, T as TooManyRequestsResponse, B as BadRequestResponse, a as UnauthorizedResponse } from './types.gen-DdX2syl4.js';
2
- import { F as FieldError, N as NormalizedFieldError } from './mutations-Cw8GlAq0.js';
1
+ import { t as CompanyResponse, N as NotFoundResponse, U as UnprocessableEntityResponse, T as TooManyRequestsResponse, B as BadRequestResponse, a as UnauthorizedResponse } from './types.gen-Oz2Tvvr6.js';
2
+ import { F as FieldError, N as NormalizedFieldError } from './mutations-BsydWn3-.js';
3
3
  import * as React$1 from 'react';
4
4
  import { FieldValues } from 'react-hook-form';
5
- import { J as JSFFields, M as Meta, a as JSFFieldset } from './remoteFlows-E3wOGnCt.js';
5
+ import { J as JSFFields, M as Meta, a as JSFFieldset } from './remoteFlows-BVt9wH8Z.js';
6
6
  import { ValidationResult } from '@remoteoss/remote-json-schema-form-kit';
7
7
  import * as react_jsx_runtime from 'react/jsx-runtime';
8
8
  import { FlowOptions, JSFModify } from './flows/types.js';
@@ -2169,4 +2169,4 @@ type PostAutomatableContractAmendmentErrors = {
2169
2169
  };
2170
2170
  type PostAutomatableContractAmendmentError = PostAutomatableContractAmendmentErrors[keyof PostAutomatableContractAmendmentErrors];
2171
2171
 
2172
- export type { EligibilityQuestionnaireResponse as $, ConvertCurrencyResponse as A, BadRequestResponse as B, ContractAmendmentAutomatableResponse as C, ConvertCurrencyParams as D, Employment as E, ForbiddenResponse as F, CreateContractEligibilityParams as G, TerminationDetailsParams as H, UploadFileResponse as I, FileParams as J, SignContractDocument as K, ContractorSubscriptionsSummary as L, MinimalRegion as M, NotFoundResponse as N, OffboardingResponse as O, PostCreateContractAmendmentError as P, ManageContractorPlusSubscriptionOperationsParams as Q, RequestError as R, SuccessResponse as S, TooManyRequestsResponse as T, UnprocessableEntityResponse as U, ValidationError as V, CreateContractDocument as W, Country as X, File as Y, DateTimeIso8601 as Z, ContractDocumentItem as _, UnauthorizedResponse as a, ConflictErrorResponse as a0, SubmitEligibilityQuestionnaireRequest as a1, ListTimeoffResponse as a2, TimeoffStatus as a3, TimeoffType as a4, ListLeavePoliciesSummaryResponse as a5, CreateOffboardingParams as a6, MagicLinkResponse as a7, MagicLinkParams as a8, GetShowEmploymentResponse as a9, Currency as aa, HelpCenterArticle as ab, PayrollCalendarEor as ac, ContractAmendmentResponse as b, PostAutomatableContractAmendmentError as c, EmploymentCreationResponse as d, EmploymentResponse as e, CreateContractDocumentResponse as f, Signatory as g, CompanyLegalEntity as h, CompanyCreationResponse as i, CompanyCreationConflictErrorResponse as j, CreateCompanyParams as k, CompanyResponse as l, UpdateCompanyParams as m, CostCalculatorEstimateResponse as n, CostCalculatorEstimatePdfResponse as o, CostCalculatorEstimateParams as p, CostCalculatorEstimateCsvResponse as q, MinimalCountry as r, EmploymentTermType as s, CostCalculatorEmployment as t, PostCreateEstimationError as u, Company as v, ConflictResponse as w, EmploymentCreateParams as x, EmploymentFullParams as y, UnifiedEmploymentUpsertBenefitOffersRequest as z };
2172
+ export type { EligibilityQuestionnaireResponse as $, ConvertCurrencyResponse as A, BadRequestResponse as B, ContractAmendmentAutomatableResponse as C, ConvertCurrencyParams as D, Employment as E, ForbiddenResponse as F, CreateContractEligibilityParams as G, TerminationDetailsParams as H, UploadFileResponse as I, FileParams as J, SignContractDocument as K, ContractorSubscriptionsSummary as L, MinimalRegion as M, NotFoundResponse as N, OffboardingResponse as O, PostCreateContractAmendmentError as P, ManageContractorPlusSubscriptionOperationsParams as Q, RequestError as R, SuccessResponse as S, TooManyRequestsResponse as T, UnprocessableEntityResponse as U, ValidationError as V, CreateContractDocument as W, Country as X, File as Y, DateTimeIso8601 as Z, ContractDocumentItem as _, UnauthorizedResponse as a, ConflictErrorResponse as a0, SubmitEligibilityQuestionnaireRequest as a1, ListTimeoffResponse as a2, TimeoffStatus as a3, TimeoffType as a4, ListLeavePoliciesSummaryResponse as a5, CreateOffboardingParams as a6, MagicLinkResponse as a7, MagicLinkParams as a8, GetShowEmploymentResponse as a9, Currency as aa, HelpCenterArticle as ab, PayrollCalendarEor as ac, ContractAmendmentResponse as b, PostAutomatableContractAmendmentError as c, EmploymentCreationResponse as d, EmploymentResponse as e, CreateContractDocumentResponse as f, Signatory as g, CompanyLegalEntity as h, CostCalculatorEstimateResponse as i, CostCalculatorEstimatePdfResponse as j, CostCalculatorEstimateParams as k, CostCalculatorEstimateCsvResponse as l, MinimalCountry as m, EmploymentTermType as n, CostCalculatorEmployment as o, PostCreateEstimationError as p, CompanyCreationResponse as q, CompanyCreationConflictErrorResponse as r, CreateCompanyParams as s, CompanyResponse as t, UpdateCompanyParams as u, Company as v, ConflictResponse as w, EmploymentCreateParams as x, EmploymentFullParams as y, UnifiedEmploymentUpsertBenefitOffersRequest as z };
@@ -1,6 +1,6 @@
1
1
  import { ClassValue } from 'clsx';
2
2
  import { ValidationError } from 'yup';
3
- import './remoteFlows-E3wOGnCt.js';
3
+ import './remoteFlows-BVt9wH8Z.js';
4
4
 
5
5
  declare function cn(...inputs: ClassValue[]): string;
6
6
  type YupError = Pick<ValidationError, 'type' | 'errors'> & {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remoteoss/remote-flows",
3
- "version": "1.21.0",
3
+ "version": "1.22.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/remoteoss/remote-flows.git"
@@ -1,2 +0,0 @@
1
- import{a as _,b as g}from"./chunk-JTPKAIYL.js";import{a as F}from"./chunk-SNECOPBD.js";import{g as S}from"./chunk-T7O3YYOG.js";import{b as T}from"./chunk-YHCH57B7.js";import{c}from"./chunk-7EONM7HL.js";import{e as m}from"./chunk-VIGKOVHP.js";import{a as i}from"./chunk-P37U34EQ.js";import{Fragment as x}from"react";var d={..._,fieldset:g,"fieldset-flat":g};import{useEffect as P}from"react";import{Fragment as R,jsx as p,jsxs as h}from"react/jsx-runtime";var C=i(({name:e,description:a,helpCenter:n})=>h("span",{children:[p("span",{className:`text-xs RemoteFlows__ForcedValue__Description__${e}`,dangerouslySetInnerHTML:{__html:m(a)}}),n?.callToAction&&n?.id&&p(T,{className:"RemoteFlows__ForcedValue__HelpCenterLink",zendeskId:n.id,children:n.callToAction})]}),"Description");function k({name:e,value:a,description:n,statement:r,label:u,helpCenter:l}){let{setValue:t}=c(),s=m(r?.description||n);return P(()=>{t(e,a)},[]),p("div",{children:r?h(R,{children:[p("p",{className:`text-sm RemoteFlows__ForcedValue__Title__${e}`,dangerouslySetInnerHTML:{__html:m(r?.title||u)}}),p(C,{name:e,description:m(r?.description||n),helpCenter:l})]}):p(C,{name:e,description:s,helpCenter:l})})}i(k,"ForcedValueField");import{Fragment as M,jsx as o,jsxs as y}from"react/jsx-runtime";function J(e){return e.const!==void 0&&e.const===e.default&&e.inputType!=="checkbox"&&e.inputType!=="hidden"}i(J,"checkFieldHasForcedValue");var G=i(({fields:e,fieldsets:a,fieldValues:n,components:r})=>{let{setValue:u}=c();if(!e||e.length===0)return null;let l=a&&n?S({fields:e,fieldsets:a,values:n}):e;return o(M,{children:l.map(t=>{if(t.calculateDynamicProperties&&(t={...t,...t.calculateDynamicProperties(n,t)||{}}),t.isVisible===!1||t.deprecated||t.hidden)return null;if(J(t))return o(k,{name:t.name,description:t.description,value:t.const,statement:t.statement,label:t.label,helpCenter:t.meta?.helpCenter},t.name);if(t.Component){let{Component:b}=t;return y(x,{children:[o(b,{setValue:V=>u(t.name,V),...t}),t.statement?o(F,{...t.statement}):null,t.extra?t.extra:null]},t.name)}let s=d[t.inputType];return s?t.inputType==="fieldset"?o(s,{...t,components:r},t.name):t.inputType==="fieldset-flat"?o(s,{...t,components:r,isFlatFieldset:!0},t.name):(t.inputType==="select"&&t.multiple&&(s=d["multi-select"]),y(x,{children:[o(s,{...t,component:r&&r[t.inputType]}),t.statement?o(F,{...t.statement}):null,t.extra?t.extra:null]},t.name)):y("p",{className:"error",children:["Field type ",t.inputType," not supported"]})})})},"JSONSchemaFormFields");export{G as a};
2
- //# sourceMappingURL=chunk-BUOCIXUH.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/form/JSONSchemaForm.tsx","../src/components/form/fields/fieldsMapping.tsx","../src/components/form/fields/ForcedValueField.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { JSFFields } from '@/src/types/remoteFlows';\nimport React, { Fragment } from 'react';\n\nimport { fieldsMap } from '@/src/components/form/fields/fieldsMapping';\nimport { Statement } from '@/src/components/form/Statement';\nimport { ForcedValueField } from '@/src/components/form/fields/ForcedValueField';\nimport { Components, JSFFieldset } from '@/src/types/remoteFlows';\nimport { getFieldsWithFlatFieldsets } from './utils';\nimport { StatementComponentProps } from '@/src/types/fields';\nimport { useFormContext } from 'react-hook-form';\n\ntype JSONSchemaFormFieldsProps = {\n fields: JSFFields;\n components?: Components;\n fieldsets?: JSFFieldset | null | undefined;\n fieldValues?: Record<string, unknown>;\n};\n\nfunction checkFieldHasForcedValue(field: any) {\n // A field to be considered \"forced value\" must:\n return (\n field.const !== undefined && // Only accepts a specific value\n field.const === field.default && // It can be prefilled, meaning it's not critical\n field.inputType !== 'checkbox' && // Because checkbox must always be visible\n field.inputType !== 'hidden' // Because hidden inputs shouldn't be visible\n );\n}\n\nexport const JSONSchemaFormFields = ({\n fields,\n fieldsets,\n fieldValues,\n components,\n}: JSONSchemaFormFieldsProps) => {\n const { setValue } = useFormContext();\n\n if (!fields || fields.length === 0) return null;\n\n const maybeFieldWithFlatFieldsets =\n fieldsets && fieldValues\n ? getFieldsWithFlatFieldsets({\n fields: fields,\n fieldsets: fieldsets,\n values: fieldValues,\n })\n : fields;\n\n return (\n <>\n {maybeFieldWithFlatFieldsets.map((field) => {\n if (field.calculateDynamicProperties) {\n field = {\n ...field,\n ...(field.calculateDynamicProperties(fieldValues, field) || {}),\n };\n }\n\n if (field.isVisible === false || field.deprecated || field.hidden) {\n return null; // Skip hidden or deprecated fields\n }\n\n if (checkFieldHasForcedValue(field)) {\n return (\n <ForcedValueField\n key={field.name as string}\n name={field.name as string}\n description={field.description as string}\n value={field.const as string}\n statement={field.statement as any}\n label={field.label as string}\n helpCenter={field.meta?.helpCenter}\n />\n );\n }\n\n if (field.Component) {\n const { Component } = field as {\n Component: React.ComponentType<any>;\n };\n return (\n <Fragment key={field.name as string}>\n <Component\n setValue={(value: unknown) => setValue(field.name, value)}\n {...field}\n />\n {field.statement ? (\n <Statement\n {...(field.statement as StatementComponentProps['data'])}\n />\n ) : null}\n {field.extra ? field.extra : null}\n </Fragment>\n );\n }\n\n let FieldComponent =\n fieldsMap[field.inputType as keyof typeof fieldsMap];\n\n if (!FieldComponent) {\n return (\n <p className='error'>\n Field type {field.inputType as string} not supported\n </p>\n );\n }\n\n if (field.inputType === 'fieldset') {\n return (\n <FieldComponent\n key={field.name}\n {...field}\n components={components}\n />\n );\n }\n\n if (field.inputType === 'fieldset-flat') {\n return (\n <FieldComponent\n key={field.name}\n {...field}\n components={components}\n isFlatFieldset\n />\n );\n }\n\n // TODO: Have doubts about this, it seems we only support checkbox for multiple select\n if (field.inputType === 'select' && field.multiple) {\n FieldComponent = fieldsMap['multi-select'];\n }\n\n return (\n <Fragment key={field.name as string}>\n <FieldComponent\n {...field}\n component={\n components && components[field.inputType as keyof Components]\n }\n />\n {field.statement ? (\n <Statement\n {...(field.statement as StatementComponentProps['data'])}\n />\n ) : null}\n {field.extra ? field.extra : null}\n </Fragment>\n );\n })}\n </>\n );\n};\n","import { $TSFixMe } from '@/src/types/remoteFlows';\nimport { baseFields } from './baseFields';\nimport { FieldSetField } from './FieldSetField';\nimport { SupportedTypes } from './types';\n\nexport const fieldsMap: Record<\n SupportedTypes,\n React.ComponentType<$TSFixMe>\n> = {\n ...baseFields,\n fieldset: FieldSetField,\n 'fieldset-flat': FieldSetField,\n};\n","import { useFormContext } from 'react-hook-form';\nimport { sanitizeHtml } from '@/src/lib/utils';\nimport { useEffect } from 'react';\nimport { ZendeskTriggerButton } from '@/src/components/shared/zendesk-drawer/ZendeskTriggerButton';\n\nconst Description = ({\n name,\n description,\n helpCenter,\n}: {\n name: string;\n description: string;\n helpCenter?: {\n callToAction: string;\n id: number;\n url: string;\n label: string;\n };\n}) => {\n return (\n <span>\n <span\n className={`text-xs RemoteFlows__ForcedValue__Description__${name}`}\n dangerouslySetInnerHTML={{ __html: sanitizeHtml(description) }}\n />\n {helpCenter?.callToAction && helpCenter?.id && (\n <ZendeskTriggerButton\n className='RemoteFlows__ForcedValue__HelpCenterLink'\n zendeskId={helpCenter.id}\n >\n {helpCenter.callToAction}\n </ZendeskTriggerButton>\n )}\n </span>\n );\n};\n\nexport type ForcedValueFieldProps = {\n name: string;\n value: string;\n description: string;\n statement?: {\n title?: string;\n description?: string;\n };\n label: string;\n helpCenter?: {\n callToAction: string;\n id: number;\n url: string;\n label: string;\n };\n};\n\nexport function ForcedValueField({\n name,\n value,\n description,\n statement,\n label,\n helpCenter,\n}: ForcedValueFieldProps) {\n const { setValue } = useFormContext();\n const descriptionSanitized = sanitizeHtml(\n statement?.description || description,\n );\n useEffect(() => {\n setValue(name, value);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <div>\n {statement ? (\n <>\n {/* if statement?.title is undefined which could be for example belgium contract details form, we need to use the label attribute */}\n <p\n className={`text-sm RemoteFlows__ForcedValue__Title__${name}`}\n dangerouslySetInnerHTML={{\n __html: sanitizeHtml(statement?.title || label),\n }}\n />\n <Description\n name={name}\n description={sanitizeHtml(statement?.description || description)}\n helpCenter={helpCenter}\n />\n </>\n ) : (\n <Description\n name={name}\n description={descriptionSanitized}\n helpCenter={helpCenter}\n />\n )}\n </div>\n );\n}\n"],"mappings":"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","names":["Fragment","fieldsMap","baseFields","FieldSetField","useEffect","Fragment","jsx","jsxs","Description","__name","name","description","helpCenter","sanitizeHtml","ZendeskTriggerButton","ForcedValueField","value","statement","label","setValue","useFormContext","descriptionSanitized","useEffect","Fragment","jsx","jsxs","checkFieldHasForcedValue","field","__name","JSONSchemaFormFields","fields","fieldsets","fieldValues","components","setValue","useFormContext","maybeFieldWithFlatFieldsets","getFieldsWithFlatFieldsets","ForcedValueField","Component","value","Statement","FieldComponent","fieldsMap"]}
@@ -1,2 +0,0 @@
1
- import{f as Qt,h as Jt,i as Nt}from"./chunk-Q3VMPVT3.js";import{a as Wt,b as te,c as ee,d as ie,e as ne,f as re,h as oe,i as ae,j as se,k as ce,l as le,m as ue,n as de,o as me,p as pe,q as fe,r as ye,s as _e,t as ge}from"./chunk-IVXIAOMR.js";import{a as be,b as Se,c as Ce}from"./chunk-ROQYHTFQ.js";import{a as zt,b as Ht,f as Xt,g as Yt,h as Zt}from"./chunk-AHRG5QCS.js";import{a as $,b as nt,c as y,d as Gt,g as $t}from"./chunk-PX5PE6GX.js";import{a as Ut}from"./chunk-YIOLMWB5.js";import{a as jt,e as f,f as D}from"./chunk-T7O3YYOG.js";import{L as Bt}from"./chunk-WQ4H5V7U.js";import{h as P,i as I}from"./chunk-VIGKOVHP.js";import{a as b}from"./chunk-X6ZAR7ZL.js";import{a as Kt}from"./chunk-TSPDJUGG.js";import{d as xt}from"./chunk-KQPDXXG3.js";import{a as u}from"./chunk-P37U34EQ.js";import{useEffect as L,useMemo as o,useRef as _i,useState as T}from"react";import he from"lodash.omit";import{useQuery as fi}from"@tanstack/react-query";var yi=u(()=>{let{client:k}=xt(),{data:R}=te(),s=ee(R)?R?.company?.id??"":"";return fi({queryKey:["legal-entities",s],queryFn:u(()=>Bt({client:k,path:{company_id:s},query:{page_size:100}}),"queryFn"),select:u(W=>W.data?.data?.legal_entities,"select"),enabled:!!s})},"useLegalEntities"),we=u(()=>{let{data:k}=yi();return k?.find(R=>R.is_default)},"useDefaultLegalEntity");var gi={select_country:null,basic_information:"employment_basic_information",contract_details:null,eligibility_questionnaire:null,pricing_plan:null,contract_preview:null,review:null},bi={employment_basic_information:"basic_information"},Gi=u(({countryCode:k,externalId:R,employmentId:s,skipSteps:W,options:_,initialValues:d})=>{let Pe=_?.excludeProducts||[],[l,yt]=T(k||null),[a,Ee]=T(s),[E,_t]=T(void 0),z=_i({select_country:{},basic_information:{},contract_details:{},contract_preview:{},pricing_plan:{},eligibility_questionnaire:{}}),[H,ve]=T(void 0),[gt,X]=T(!1),[bt,Fe]=T(!0),[rt,St]=T(null),{steps:Ve,stepsArray:Me}=o(()=>zt({includeSelectCountry:!W?.includes("select_country"),includeEligibilityQuestionnaire:gt,includeContractPreview:bt}),[gt,bt,W]),{fieldValues:c,stepState:e,setFieldValues:ot,previousStep:Oe,nextStep:Ie,goToStep:B,setStepValues:Ct}=Kt(Ve);L(()=>{rt&&(B(rt),St(null))},[rt,B]);let{data:r,isLoading:De,refetch:wt}=Ut({employmentId:a,queryParams:{exclude_files:!0}}),Te=we(),{status:q}=r||{},S=q&&Xt.includes(q),Re=q&&!Yt.includes(q),qe=o(()=>q==="invited"?"invited":"not_invited",[q]),ht=Jt(),Pt=Nt(l,_),at=ae(),Et=Wt(),{mutateAsync:vt}=le(at,Et,c),Ft=pe(),Vt=fe(),{mutateAsyncOrThrow:Ae}=b(Pt),Mt=ne(),Ot=oe(),It=ye(),{mutateAsyncOrThrow:Le}=b(ht),{mutateAsyncOrThrow:ke}=b(at),{mutateAsyncOrThrow:Be}=b(Mt),{mutateAsyncOrThrow:Dt}=b(Ot),{mutateAsyncOrThrow:xe}=b(Ft),{mutateAsyncOrThrow:Tt}=b(Vt),{mutateAsyncOrThrow:je}=b(It);s&&r?.country?.code&&!l&&yt(r.country.code);let{selectCountryForm:Y,isLoading:Qe,countries:Rt}=_e({jsfModify:_?.jsfModify?.select_country}),st=o(()=>Rt?.find(t=>t.value===l),[Rt,l]),Je=o(()=>st?.label,[st]),Ne=e.currentStep.name==="pricing_plan"||!!s&&S,{form:v,isLoading:Ue,contractorSubscriptions:Z,refetch:ct,isEligibilityQuestionnaireBlocked:x}=ce(a,st,{jsonSchemaVersion:_?.jsonSchemaVersion,queryOptions:{enabled:Ne},excludeProducts:Pe,jsfModify:_?.jsfModify?.pricing_plan}),F=o(()=>!!Z?.find(t=>t.product.short_name==="COR")?.eligibility_questionnaire?.submitted_at,[Z]);L(()=>{if(F){X(!1);return}else X(H===y)},[F,H]),L(()=>{let t=r?.contractor_type==="cor";Fe(!t)},[r?.contractor_type]);let tt=o(()=>Z?.find(t=>t.product.short_name==="COR")?.eligibility_questionnaire?.responses,[Z]),Ke=gi[e.currentStep.name]||"contractor_basic_information",Ge=bi[Ke],$e=r?.[Ge]||{},We=u(({form:t,options:n={},query:p={}})=>{let g=Object.keys(c).length>0?{...d,...e.values?.[e.currentStep.name],...c}:{...d,...$e};return Qt({countryCode:l,form:t,fieldValues:g,query:p,options:{...n,queryOptions:{enabled:n.queryOptions?.enabled??!0}}})},"useJSONSchema"),ze=!!(l&&(e.currentStep.name==="basic_information"||s)),He=!!(l==="GBR"&&s&&e.currentStep.name==="basic_information"),{data:j,isLoading:Xe}=ue(s,{enabled:He}),{data:et,isLoading:Ye}=de(s,{enabled:!!s});L(()=>{et&&et.length>0&&!E&&_t(et[0].id)},[et,E]);let{data:C,isLoading:Ze}=We({form:"contractor_basic_information",options:{jsfModify:Se(l,Je,_),queryOptions:{enabled:ze}}}),ti=o(()=>Ht(r?.basic_information?.provisional_start_date,c?.service_duration?.provisional_start_date),[r?.basic_information?.provisional_start_date,c?.service_duration?.provisional_start_date]),m=o(()=>{let t={standard:$,plus:nt,cor:y};if(c.subscription)return c.subscription;let n=e.values?.pricing_plan?.subscription;return n&&!x?n:F&&!x?y:x&&F?$:t[r?.contractor_type]||$},[c,e.values,F,r?.contractor_type,x]);L(()=>{m&&m!==H&&ve(m)},[m,H]);let ei=o(()=>({...tt,...d,...e.values?.eligibility_questionnaire,...c}),[tt,d,e.values?.eligibility_questionnaire,c]),ii=o(()=>m===y&&e.currentStep.name==="eligibility_questionnaire"||!!s&&S&&m===y,[m,e.currentStep.name,s,S]),{data:V,isLoading:ni}=me({options:{queryOptions:{enabled:ii},jsfModify:_?.jsfModify?.eligibility_questionnaire},fieldValues:ei}),ri=!!(l&&e.currentStep.name==="contract_details"||S),{data:w,isLoading:oi}=ge({countryCode:l,fieldValues:c,employmentId:a,options:{queryOptions:{enabled:ri},jsfModify:be(_?.jsfModify?.contract_details,ti,m,c,m===y)}}),ai=o(()=>e.currentStep.name==="contract_preview"||!!s&&S,[e.currentStep.name,s,S]),{data:M}=ie({fieldValues:c,options:{queryOptions:{enabled:ai},jsfModify:Ce(_,c)}}),{data:lt,isLoading:si}=re({employmentId:a,contractDocumentId:E,options:{queryOptions:{enabled:!!E}}}),i=o(()=>({select_country:Y?.fields||[],basic_information:C?.fields||[],pricing_plan:v?.fields||[],eligibility_questionnaire:V?.fields||[],contract_details:w?.fields||[],contract_preview:M?.fields||[],review:[]}),[Y?.fields,C?.fields,v?.fields,w?.fields,M?.fields,V?.fields]),ci={select_country:null,basic_information:C?.meta["x-jsf-fieldsets"],pricing_plan:null,contract_details:w?.meta["x-jsf-fieldsets"],eligibility_questionnaire:null,contract_preview:null,review:null},{country:li,basic_information:it={},contract_details:qt={}}=r||{},At=li?.code,Q=o(()=>D(i.select_country,{country:l||At||""}),[i.select_country,l,At]),ut=o(()=>j?.content?jt(j.content,j.name):null,[j?.content,j?.name]),J=o(()=>{let t={...d,...it,ir35:r?.contract_details?.ir_35,nationality_status:r?.contract_details?.nationality,...ut&&{ir35_sds_file:[ut]}};return D(i.basic_information,t)},[d,it,r?.contract_details?.ir_35,r?.contract_details?.nationality,ut,i.basic_information]),N=o(()=>{let n={...{service_duration:{provisional_start_date:it.provisional_start_date}},...d,...qt};return D(i.contract_details,n)},[i.contract_details,qt,d,it]),U=o(()=>{let t=lt?.contract_document?.signatories?.find(p=>p.type==="company"),n={...d,signature:t?.signature};return D(i.contract_preview,n)},[i.contract_preview,d,lt]),K=o(()=>{let n={...{subscription:m},...d};return D(i.pricing_plan,n)},[i.pricing_plan,d,m]),G=o(()=>{let t={...d,...tt};return D(i.eligibility_questionnaire,t)},[i.eligibility_questionnaire,d,tt]),ui=o(()=>({select_country:Q,basic_information:J,contract_details:N,contract_preview:U,pricing_plan:K,eligibility_questionnaire:G}),[Q,J,N,U,K,G]),dt=!!(s&&S&&e.currentStep.name!=="review"),mt=Qe||Ze||De||oi||Ue||si||Xe||Ye||ni,Lt=o(()=>{let n=r?.contractor_type==="cor"||i.contract_preview.length>0;return!!(dt&&!mt&&E&&i.basic_information.length>0&&i.contract_details.length>0&&n)},[dt,mt,E,i.basic_information.length,i.contract_details.length,i.contract_preview.length,r?.contractor_type]);L(()=>{Lt&&(z.current={select_country:P(Q,i.select_country),basic_information:P(J,i.basic_information),contract_details:P(N,i.contract_details),contract_preview:P(U,i.contract_preview),pricing_plan:P(K,i.pricing_plan),eligibility_questionnaire:P(G,i.eligibility_questionnaire)},Ct({select_country:Q,basic_information:J,contract_details:N,contract_preview:U,pricing_plan:K,eligibility_questionnaire:G,review:{}}),B("review"))},[Lt,B,Q,J,N,Ct,i.select_country,i.basic_information,i.contract_details,i.pricing_plan,K,i.contract_preview,U,i.eligibility_questionnaire,G]);let di=u(t=>{B(t)},"goTo"),kt=u(async t=>Y&&e.currentStep.name==="select_country"?t:C&&e.currentStep.name==="basic_information"?await f(t,C?.fields,{isPartialValidation:!1}):w&&e.currentStep.name==="contract_details"?await f(t,w?.fields,{isPartialValidation:!1}):M&&e.currentStep.name==="contract_preview"?await f(t,M?.fields,{isPartialValidation:!1}):v&&e.currentStep.name==="pricing_plan"?await f(t,v?.fields,{isPartialValidation:!1}):V&&e.currentStep.name==="eligibility_questionnaire"?await f(t,V?.fields,{isPartialValidation:!1}):{},"parseFormValues"),mi=u(t=>{let n=t?.rawError?.error?.errors?.services_and_deliverables;return n?.source===$t?{error:n.error,source:n.source,skippable:n.skippable}:null},"extractAiValidationError");async function pi(t){let n=e.currentStep.name;n in z.current&&(z.current[n]=P(t,i[n]));let p=await kt(t);switch(e.currentStep.name){case"select_country":return yt(p.country),Promise.resolve({data:{countryCode:p.country}});case"basic_information":{let A=!a&&l,g=a&&l&&r?.country&&r?.country.code!==l;if(A||g){let O={basic_information:he(p,"nationality_status","ir35","ir35_sds_file"),type:"contractor",country_code:l,external_id:R},pt=await Le(O),ft=pt?.data?.employment?.id;if(!ft)throw I("Employment ID not found");return await vt({employmentId:ft}),Ee(ft),pt}else if(a){let h=he(p,"nationality_status","ir35","ir35_sds_file");return await vt({employmentId:a}),Ae({employmentId:a,basic_information:h})}return}case"contract_details":{let A=c.services_and_deliverables_error_skippable===!0,g={contract_document:p,skip_ai_checks:A};try{let h=await ke({employmentId:a,payload:g}),O=h?.data?.contract_document?.id;if(!O)throw I("Contract document ID not found");return _t(O),h}catch(h){let O=mi(h);throw O&&ot({...t,services_and_deliverables_ai_warning:Zt(m===y),services_and_deliverables_error_skippable:O.skippable}),h}}case"contract_preview":return Be({employmentId:a,contractDocumentId:E,payload:{signature:p.signature}});case"pricing_plan":{if(x&&[y,nt].includes(t.subscription))throw I(`This individual is not eligible for ${se[t.subscription]}.`);if(t.subscription===Gt)return Promise.resolve({data:{subscription:t.subscription}});if(F&&t.subscription!==y)try{await je({employmentId:a}),await ct()}catch(g){if(g?.response?.status!==404)throw g;await ct()}if(t.subscription==$)return Dt({employmentId:a,payload:{operation:"downgrade"}});if(t.subscription==nt)return Dt({employmentId:a,payload:{operation:"upgrade"}});if(t.subscription==y)return F&&r?.contractor_type!=="cor"?Tt({employmentId:a}):Promise.resolve({data:{subscription:t.subscription}});throw I("invalid selection")}case"eligibility_questionnaire":try{if((await xe({employmentId:a,payload:p}))?.data?.is_blocking)throw X(!1),St("pricing_plan"),I("This individual is not eligible for Contractor of Record.");return await Tt({employmentId:a})}finally{await ct()}default:throw I("Invalid step state")}}return u(pi,"onSubmit"),{isLoading:mt||dt,fieldValues:c,stepState:e,checkFieldUpdates:ot,markContractAsReviewed:u(()=>{ot({review_completed:!0})},"markContractAsReviewed"),back:Oe,next:u(()=>{a&&wt(),Ie()},"handleNextStep"),goTo:di,onSubmit:pi,fields:i[e.currentStep.name],meta:{fields:z.current,fieldsets:ci[e.currentStep.name]},parseFormValues:kt,canSkipAiValidation:c.services_and_deliverables_error_skippable===!0,handleValidation:u(async t=>{if(e.currentStep.name==="select_country")return Y.handleValidation(t);if(C&&e.currentStep.name==="basic_information"){let n=await f(t,C?.fields,{isPartialValidation:!1});return C?.handleValidation(n)}if(w&&e.currentStep.name==="contract_details"){let n=await f(t,w?.fields,{isPartialValidation:!1});return w?.handleValidation(n)}if(M&&e.currentStep.name==="contract_preview"){let n=await f(t,M?.fields,{isPartialValidation:!0});return M?.handleValidation(n)}if(v&&e.currentStep.name==="pricing_plan"){let n=await f(t,v?.fields,{isPartialValidation:!1});return v?.handleValidation(n)}if(V&&e.currentStep.name==="eligibility_questionnaire"){let n=await f(t,V?.fields,{isPartialValidation:!1});return V?.handleValidation(n)}return null},"handleValidation"),initialValues:ui,employmentId:a,refetchEmployment:wt,isSubmitting:ht.isPending||Pt.isPending||at.isPending||Mt.isPending||Ot.isPending||Et.isPending||Ft.isPending||Vt.isPending||It.isPending,documentPreviewPdf:lt,canInvite:Re,isEmploymentReadOnly:S,invitedStatus:qe,employment:r,defaultLegalEntity:Te,steps:Me}},"useContractorOnboarding");export{Gi as a};
2
- //# sourceMappingURL=chunk-ENW77KKX.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/ContractorOnboarding/hooks.tsx","../src/common/api/legal-entities.ts"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from 'react';\nimport { FieldValues } from 'react-hook-form';\nimport omit from 'lodash.omit';\nimport { $TSFixMe, JSFFields } from '@/src/types/remoteFlows';\nimport {\n CreateContractDocument,\n Employment,\n EmploymentCreateParams,\n} from '@/src/client/types.gen';\nimport {\n getInitialValues,\n parseJSFToValidate,\n} from '@/src/components/form/utils';\nimport { ValidationResult } from '@remoteoss/remote-json-schema-form-kit';\nimport {\n useCreateContractorContractDocument,\n useGetContractDocumentSignatureSchema,\n usePostManageContractorSubscriptions,\n useContractorSubscriptionSchemaField,\n useGetShowContractDocument,\n useSignContractDocument,\n useUpdateUKandSaudiFields,\n useGetIR35File,\n useGetContractDocuments,\n useGetEligibilityQuestionnaire,\n usePostCreateEligibilityQuestionnaire,\n usePostManageContractorCorSubscription,\n useDeleteContractorCorSubscription,\n useCountriesSchemaField,\n useContractorOnboardingDetailsSchemaWithCurrencies,\n CONTRACT_PRODUCT_TITLES,\n} from '@/src/flows/ContractorOnboarding/api';\nimport { ContractorOnboardingFlowProps } from '@/src/flows/ContractorOnboarding/types';\nimport {\n buildSteps,\n calculateProvisionalStartDateDescription,\n reviewStepAllowedEmploymentStatus,\n disabledInviteButtonEmploymentStatus,\n StepKeys,\n} from '@/src/flows/ContractorOnboarding/utils';\nimport {\n useCreateEmployment,\n useJSONSchemaForm,\n useUpdateEmployment,\n} from '@/src/flows/Onboarding/api';\nimport { FlowOptions, JSFModify, JSONSchemaFormType } from '@/src/flows/types';\nimport { useStepState } from '@/src/flows/useStepState';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport { createStructuredError, prettifyFormValues } from '@/src/lib/utils';\nimport { JSFFieldset, Meta } from '@/src/types/remoteFlows';\nimport {\n contractorStandardProductIdentifier,\n contractorPlusProductIdentifier,\n corProductIdentifier,\n eorProductIdentifier,\n REMOTE_AI_ERROR_SOURCE,\n} from '@/src/flows/ContractorOnboarding/constants';\nimport {\n buildBasicInformationJsfModify,\n buildContractDetailsJsfModify,\n buildContractPreviewJsfModify,\n} from '@/src/flows/ContractorOnboarding/jsfModify';\nimport { transformAiErrorResponse } from '@/src/flows/ContractorOnboarding/utils';\nimport { AiValidationError } from '@/src/flows/ContractorOnboarding/types';\nimport { useUploadFile } from '@/src/common/api/files';\nimport { dataURLtoFile } from '@/src/lib/files';\nimport { useEmploymentQuery } from '@/src/common/api/employment';\nimport { useDefaultLegalEntity } from '@/src/common/api/legal-entities';\n\ntype useContractorOnboardingProps = Omit<\n ContractorOnboardingFlowProps,\n 'render'\n>;\n\nconst stepToFormSchemaMap: Record<StepKeys, JSONSchemaFormType | null> = {\n select_country: null,\n basic_information: 'employment_basic_information',\n contract_details: null,\n eligibility_questionnaire: null,\n pricing_plan: null,\n contract_preview: null,\n review: null,\n};\n\nconst jsonSchemaToEmployment: Partial<\n Record<JSONSchemaFormType, keyof Employment>\n> = {\n employment_basic_information: 'basic_information',\n};\n\nexport const useContractorOnboarding = ({\n countryCode,\n externalId,\n employmentId,\n skipSteps,\n options,\n initialValues: onboardingInitialValues,\n}: useContractorOnboardingProps) => {\n const excludeProducts = options?.excludeProducts || [];\n const [internalCountryCode, setInternalCountryCode] = useState<string | null>(\n countryCode || null,\n );\n const [internalEmploymentId, setInternalEmploymentId] = useState<\n string | undefined\n >(employmentId);\n const [internalContractDocumentId, setInternalContractDocumentId] = useState<\n string | undefined\n >(undefined);\n const fieldsMetaRef = useRef<{\n select_country: Meta;\n basic_information: Meta;\n contract_details: Meta;\n contract_preview: Meta;\n pricing_plan: Meta;\n eligibility_questionnaire: Meta;\n }>({\n select_country: {},\n basic_information: {},\n contract_details: {},\n contract_preview: {},\n pricing_plan: {},\n eligibility_questionnaire: {},\n });\n\n const [selectedProduct, setSelectedProduct] = useState<string | undefined>(\n undefined,\n );\n\n const [includeEligibilityQuestionnaire, setIncludeEligibilityQuestionnaire] =\n useState<boolean>(false);\n\n const [includeContractPreview, setIncludeContractPreview] =\n useState<boolean>(true);\n\n const [pendingNavigationStep, setPendingNavigationStep] =\n useState<StepKeys | null>(null);\n\n const { steps, stepsArray } = useMemo(\n () =>\n buildSteps({\n includeSelectCountry: !skipSteps?.includes('select_country'),\n includeEligibilityQuestionnaire: includeEligibilityQuestionnaire,\n includeContractPreview: includeContractPreview,\n }),\n [includeEligibilityQuestionnaire, includeContractPreview, skipSteps],\n );\n\n const {\n fieldValues,\n stepState,\n setFieldValues,\n previousStep,\n nextStep,\n goToStep,\n setStepValues,\n } = useStepState(steps);\n\n useEffect(() => {\n if (pendingNavigationStep) {\n // Now steps have been updated\n goToStep(pendingNavigationStep);\n setPendingNavigationStep(null);\n }\n }, [pendingNavigationStep, goToStep]);\n\n const {\n data: employment,\n isLoading: isLoadingEmployment,\n refetch: refetchEmployment,\n } = useEmploymentQuery({\n employmentId: internalEmploymentId as string,\n queryParams: { exclude_files: true },\n });\n\n const defaultLegalEntity = useDefaultLegalEntity();\n\n const { status: employmentStatus } = employment || {};\n\n const isEmploymentReadOnly =\n employmentStatus &&\n reviewStepAllowedEmploymentStatus.includes(employmentStatus);\n\n const canInvite =\n employmentStatus &&\n !disabledInviteButtonEmploymentStatus.includes(employmentStatus);\n\n const invitedStatus: 'invited' | 'not_invited' = useMemo(() => {\n const isInvited = employmentStatus === 'invited';\n\n return isInvited ? 'invited' : 'not_invited';\n }, [employmentStatus]);\n\n const createEmploymentMutation = useCreateEmployment();\n const updateEmploymentMutation = useUpdateEmployment(\n internalCountryCode as string,\n options,\n );\n const createContractorContractDocumentMutation =\n useCreateContractorContractDocument();\n const uploadFileMutation = useUploadFile();\n const { mutateAsync: updateUKandSaudiFieldsMutation } =\n useUpdateUKandSaudiFields(\n createContractorContractDocumentMutation,\n uploadFileMutation,\n fieldValues,\n );\n const createEligibilityQuestionnaireMutation =\n usePostCreateEligibilityQuestionnaire();\n const manageContractorCorSubscriptionMutation =\n usePostManageContractorCorSubscription();\n\n const { mutateAsyncOrThrow: updateEmploymentMutationAsync } =\n mutationToPromise(updateEmploymentMutation);\n const signContractDocumentMutation = useSignContractDocument();\n const manageContractorSubscriptionMutation =\n usePostManageContractorSubscriptions();\n const deleteContractorCorSubscriptionMutation =\n useDeleteContractorCorSubscription();\n\n const { mutateAsyncOrThrow: createEmploymentMutationAsync } =\n mutationToPromise(createEmploymentMutation);\n\n const { mutateAsyncOrThrow: createContractorContractDocumentMutationAsync } =\n mutationToPromise(createContractorContractDocumentMutation);\n\n const { mutateAsyncOrThrow: signContractDocumentMutationAsync } =\n mutationToPromise(signContractDocumentMutation);\n\n const { mutateAsyncOrThrow: manageContractorSubscriptionMutationAsync } =\n mutationToPromise(manageContractorSubscriptionMutation);\n\n const { mutateAsyncOrThrow: createEligibilityQuestionnaireMutationAsync } =\n mutationToPromise(createEligibilityQuestionnaireMutation);\n\n const { mutateAsyncOrThrow: manageContractorCorSubscriptionMutationAsync } =\n mutationToPromise(manageContractorCorSubscriptionMutation);\n\n const { mutateAsyncOrThrow: deleteContractorCorSubscriptionMutationAsync } =\n mutationToPromise(deleteContractorCorSubscriptionMutation);\n\n // if the employment is loaded, country code has not been set yet\n // we set the internal country code with the employment country code\n if (employmentId && employment?.country?.code && !internalCountryCode) {\n setInternalCountryCode(employment.country.code);\n }\n\n const {\n selectCountryForm,\n isLoading: isLoadingCountries,\n countries,\n } = useCountriesSchemaField({\n jsfModify: options?.jsfModify?.select_country,\n });\n\n const selectedCountry = useMemo(() => {\n return countries?.find((country) => country.value === internalCountryCode);\n }, [countries, internalCountryCode]);\n\n const countryName = useMemo(() => {\n return selectedCountry?.label;\n }, [selectedCountry]);\n\n const isPricingPlanEnabled =\n stepState.currentStep.name === 'pricing_plan' ||\n (Boolean(employmentId) && isEmploymentReadOnly);\n\n const {\n form: selectContractorSubscriptionForm,\n isLoading: isLoadingContractorSubscriptions,\n contractorSubscriptions,\n refetch: refetchContractorSubscriptions,\n isEligibilityQuestionnaireBlocked,\n } = useContractorSubscriptionSchemaField(\n internalEmploymentId as string,\n selectedCountry,\n {\n jsonSchemaVersion: options?.jsonSchemaVersion,\n queryOptions: {\n enabled: isPricingPlanEnabled,\n },\n excludeProducts: excludeProducts,\n jsfModify: options?.jsfModify?.pricing_plan,\n },\n );\n\n const hasEligibilityQuestionnaireSubmitted = useMemo(() => {\n return Boolean(\n contractorSubscriptions?.find(\n (subscription) => subscription.product.short_name === 'COR',\n )?.eligibility_questionnaire?.submitted_at,\n );\n }, [contractorSubscriptions]);\n\n useEffect(() => {\n if (hasEligibilityQuestionnaireSubmitted) {\n setIncludeEligibilityQuestionnaire(false);\n return;\n } else if (selectedProduct === corProductIdentifier) {\n setIncludeEligibilityQuestionnaire(true);\n } else {\n setIncludeEligibilityQuestionnaire(false);\n }\n }, [hasEligibilityQuestionnaireSubmitted, selectedProduct]);\n\n useEffect(() => {\n const isCor = employment?.contractor_type === 'cor';\n setIncludeContractPreview(!isCor);\n }, [employment?.contractor_type]);\n\n const eligibilityAnswers = useMemo(() => {\n return contractorSubscriptions?.find(\n (subscription) => subscription.product.short_name === 'COR',\n )?.eligibility_questionnaire?.responses;\n }, [contractorSubscriptions]);\n\n const formType =\n stepToFormSchemaMap[stepState.currentStep.name] ||\n 'contractor_basic_information';\n const employmentKey = jsonSchemaToEmployment[formType] as keyof Employment;\n const serverEmploymentData = (employment?.[employmentKey] || {}) as Record<\n string,\n unknown\n >;\n\n const useJSONSchema = ({\n form,\n options: jsonSchemaOptions = {},\n query = {},\n }: {\n form: JSONSchemaFormType;\n options?: {\n jsfModify?: JSFModify;\n queryOptions?: { enabled?: boolean };\n jsonSchemaVersion?: FlowOptions['jsonSchemaVersion'];\n };\n query?: Record<string, string>;\n }) => {\n const hasUserEnteredAnyValues = Object.keys(fieldValues).length > 0;\n // when you write on the fields, the values are stored in the fieldValues state\n // when values are stored in the stepState is when the user has navigated to the step\n // and then we have the values from the server and the onboardingInitialValues that the user can inject,\n const mergedFormValues = hasUserEnteredAnyValues\n ? {\n ...onboardingInitialValues,\n ...stepState.values?.[stepState.currentStep.name], // Restore values for the current step\n ...fieldValues,\n }\n : {\n ...onboardingInitialValues,\n ...serverEmploymentData,\n };\n\n return useJSONSchemaForm({\n countryCode: internalCountryCode as string,\n form: form,\n fieldValues: mergedFormValues,\n query,\n options: {\n ...jsonSchemaOptions,\n queryOptions: {\n enabled: jsonSchemaOptions.queryOptions?.enabled ?? true,\n },\n },\n });\n };\n\n const isBasicInformationDetailsEnabled = Boolean(\n internalCountryCode &&\n (stepState.currentStep.name === 'basic_information' ||\n Boolean(employmentId)),\n );\n\n const isIR35FileEnabled = Boolean(\n internalCountryCode === 'GBR' &&\n employmentId &&\n stepState.currentStep.name === 'basic_information',\n );\n\n const { data: ir35File, isLoading: isLoadingIR35File } = useGetIR35File(\n employmentId as string,\n {\n enabled: isIR35FileEnabled,\n },\n );\n\n const { data: contractDocuments, isLoading: isLoadingContractDocuments } =\n useGetContractDocuments(employmentId as string, {\n enabled: Boolean(employmentId),\n });\n\n useEffect(() => {\n if (\n contractDocuments &&\n contractDocuments.length > 0 &&\n !internalContractDocumentId\n ) {\n setInternalContractDocumentId(contractDocuments[0].id);\n }\n }, [contractDocuments, internalContractDocumentId]);\n\n const {\n data: basicInformationForm,\n isLoading: isLoadingBasicInformationForm,\n } = useJSONSchema({\n form: 'contractor_basic_information',\n options: {\n jsfModify: buildBasicInformationJsfModify(\n internalCountryCode as string,\n countryName,\n options,\n ),\n queryOptions: {\n enabled: isBasicInformationDetailsEnabled,\n },\n },\n });\n\n const descriptionProvisionalStartDate = useMemo(() => {\n return calculateProvisionalStartDateDescription(\n employment?.basic_information?.provisional_start_date as string,\n fieldValues?.service_duration?.provisional_start_date as string,\n );\n }, [\n employment?.basic_information?.provisional_start_date,\n fieldValues?.service_duration?.provisional_start_date,\n ]);\n\n /**\n * When the user selects COR, the data isn't saved yet in the BE\n * We need to use the internalState to know what has happened\n */\n const selectedPricingPlan = useMemo(() => {\n const subscriptions = {\n standard: contractorStandardProductIdentifier,\n plus: contractorPlusProductIdentifier,\n cor: corProductIdentifier,\n };\n\n // HIGHEST PRIORITY: Current form value (user is actively selecting)\n if (fieldValues.subscription) {\n return fieldValues.subscription;\n }\n\n // SECOND: Previously submitted value in this session\n const subscription = stepState.values?.pricing_plan?.subscription;\n if (subscription && !isEligibilityQuestionnaireBlocked) {\n return subscription;\n }\n\n // THIRD: Backend state (eligibility submitted or employment contractor_type)\n if (\n hasEligibilityQuestionnaireSubmitted &&\n !isEligibilityQuestionnaireBlocked\n ) {\n return corProductIdentifier;\n }\n\n // Fourth: If the eligibility questionnaire is blocked and has been submitted, return the standard product\n if (\n isEligibilityQuestionnaireBlocked &&\n hasEligibilityQuestionnaireSubmitted\n ) {\n return contractorStandardProductIdentifier;\n }\n\n // FALLBACK: Employment contractor_type or default\n return (\n subscriptions[\n employment?.contractor_type as keyof typeof subscriptions\n ] || contractorStandardProductIdentifier\n );\n }, [\n fieldValues,\n stepState.values,\n hasEligibilityQuestionnaireSubmitted,\n employment?.contractor_type,\n isEligibilityQuestionnaireBlocked,\n ]);\n\n useEffect(() => {\n if (selectedPricingPlan && selectedPricingPlan !== selectedProduct) {\n setSelectedProduct(selectedPricingPlan);\n }\n }, [selectedPricingPlan, selectedProduct]);\n\n const eligibilityFields = useMemo(() => {\n return {\n ...eligibilityAnswers,\n ...onboardingInitialValues,\n ...stepState.values?.eligibility_questionnaire,\n ...fieldValues,\n };\n }, [\n eligibilityAnswers,\n onboardingInitialValues,\n stepState.values?.eligibility_questionnaire,\n fieldValues,\n ]);\n\n const isEligibilityQuestionnaireEnabled = useMemo(() => {\n return (\n (selectedPricingPlan === corProductIdentifier &&\n stepState.currentStep.name === 'eligibility_questionnaire') ||\n (Boolean(employmentId) &&\n isEmploymentReadOnly &&\n selectedPricingPlan === corProductIdentifier)\n );\n }, [\n selectedPricingPlan,\n stepState.currentStep.name,\n employmentId,\n isEmploymentReadOnly,\n ]);\n\n const {\n data: eligibilityQuestionnaireForm,\n isLoading: isLoadingEligibilityQuestionnaire,\n } = useGetEligibilityQuestionnaire({\n options: {\n queryOptions: {\n enabled: isEligibilityQuestionnaireEnabled,\n },\n jsfModify: options?.jsfModify?.eligibility_questionnaire,\n },\n fieldValues: eligibilityFields,\n });\n\n const isContractorOnboardingDetailsEnabled = Boolean(\n (internalCountryCode &&\n stepState.currentStep.name === 'contract_details') ||\n isEmploymentReadOnly,\n );\n\n const {\n data: contractorOnboardingDetailsForm,\n isLoading: isLoadingContractorOnboardingDetailsForm,\n } = useContractorOnboardingDetailsSchemaWithCurrencies({\n countryCode: internalCountryCode as string,\n fieldValues: fieldValues,\n employmentId: internalEmploymentId as string,\n options: {\n queryOptions: {\n enabled: isContractorOnboardingDetailsEnabled,\n },\n jsfModify: buildContractDetailsJsfModify(\n options?.jsfModify?.contract_details,\n descriptionProvisionalStartDate,\n selectedPricingPlan,\n fieldValues,\n selectedPricingPlan === corProductIdentifier,\n ),\n },\n });\n\n const isSignatureSchemaEnabled = useMemo(() => {\n return (\n stepState.currentStep.name === 'contract_preview' ||\n (Boolean(employmentId) && isEmploymentReadOnly)\n );\n }, [stepState.currentStep.name, employmentId, isEmploymentReadOnly]);\n\n const { data: signatureSchemaForm } = useGetContractDocumentSignatureSchema({\n fieldValues: fieldValues,\n options: {\n queryOptions: {\n enabled: isSignatureSchemaEnabled,\n },\n jsfModify: buildContractPreviewJsfModify(options, fieldValues),\n },\n });\n\n const { data: documentPreviewPdf, isLoading: isLoadingDocumentPreviewForm } =\n useGetShowContractDocument({\n employmentId: internalEmploymentId as string,\n contractDocumentId: internalContractDocumentId as string,\n options: {\n queryOptions: {\n enabled: Boolean(internalContractDocumentId),\n },\n },\n });\n\n const stepFields: Record<StepKeys, JSFFields> = useMemo(\n () => ({\n select_country: selectCountryForm?.fields || [],\n basic_information: basicInformationForm?.fields || [],\n pricing_plan: selectContractorSubscriptionForm?.fields || [],\n eligibility_questionnaire: eligibilityQuestionnaireForm?.fields || [],\n contract_details: contractorOnboardingDetailsForm?.fields || [],\n contract_preview: signatureSchemaForm?.fields || [],\n review: [],\n }),\n [\n selectCountryForm?.fields,\n basicInformationForm?.fields,\n selectContractorSubscriptionForm?.fields,\n contractorOnboardingDetailsForm?.fields,\n signatureSchemaForm?.fields,\n eligibilityQuestionnaireForm?.fields,\n ],\n );\n\n const stepFieldsWithFlatFieldsets: Record<\n StepKeys,\n JSFFieldset | null | undefined\n > = {\n select_country: null,\n basic_information: basicInformationForm?.meta['x-jsf-fieldsets'],\n pricing_plan: null,\n contract_details: contractorOnboardingDetailsForm?.meta['x-jsf-fieldsets'],\n eligibility_questionnaire: null,\n contract_preview: null,\n review: null,\n };\n\n const {\n country,\n basic_information: employmentBasicInformation = {},\n contract_details: employmentContractDetails = {},\n } = employment || {};\n\n const employmentCountryCode = country?.code;\n\n const selectCountryInitialValues = useMemo(\n () =>\n getInitialValues(stepFields.select_country, {\n country: internalCountryCode || employmentCountryCode || '',\n }),\n [stepFields.select_country, internalCountryCode, employmentCountryCode],\n );\n\n // memoize file conversion to avoid re-converting the file on every render\n // noticed performance issues when not doing memoizing individually\n const convertedIr35File = useMemo(() => {\n if (!ir35File?.content) return null;\n return dataURLtoFile(ir35File.content as unknown as string, ir35File.name);\n }, [ir35File?.content, ir35File?.name]);\n\n const basicInformationInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n ...employmentBasicInformation,\n ir35: employment?.contract_details?.ir_35,\n nationality_status: employment?.contract_details?.nationality,\n ...(convertedIr35File && {\n ir35_sds_file: [convertedIr35File],\n }),\n };\n\n return getInitialValues(stepFields.basic_information, initialValues);\n }, [\n onboardingInitialValues,\n employmentBasicInformation,\n employment?.contract_details?.ir_35,\n employment?.contract_details?.nationality,\n convertedIr35File,\n stepFields.basic_information,\n ]);\n\n const contractDetailsInitialValues = useMemo(() => {\n const hardcodedValues = {\n service_duration: {\n provisional_start_date:\n employmentBasicInformation.provisional_start_date,\n },\n };\n const initialValues = {\n ...hardcodedValues,\n ...onboardingInitialValues,\n ...employmentContractDetails,\n };\n\n return getInitialValues(stepFields.contract_details, initialValues);\n }, [\n stepFields.contract_details,\n employmentContractDetails,\n onboardingInitialValues,\n employmentBasicInformation,\n ]);\n\n const contractPreviewInitialValues = useMemo(() => {\n const signature = documentPreviewPdf?.contract_document?.signatories?.find(\n (signatory) => signatory.type === 'company',\n );\n const initialValues = {\n ...onboardingInitialValues,\n signature: signature?.signature,\n };\n\n return getInitialValues(stepFields.contract_preview, initialValues);\n }, [\n stepFields.contract_preview,\n onboardingInitialValues,\n documentPreviewPdf,\n ]);\n\n const pricingPlanInitialValues = useMemo(() => {\n const preselectedPricingPlan = {\n subscription: selectedPricingPlan,\n };\n const initialValues = {\n ...preselectedPricingPlan,\n ...onboardingInitialValues,\n };\n\n return getInitialValues(stepFields.pricing_plan, initialValues);\n }, [stepFields.pricing_plan, onboardingInitialValues, selectedPricingPlan]);\n\n const eligibilityQuestionnaireInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n ...eligibilityAnswers,\n };\n return getInitialValues(\n stepFields.eligibility_questionnaire,\n initialValues,\n );\n }, [\n stepFields.eligibility_questionnaire,\n onboardingInitialValues,\n eligibilityAnswers,\n ]);\n\n const initialValues = useMemo(() => {\n return {\n select_country: selectCountryInitialValues,\n basic_information: basicInformationInitialValues,\n contract_details: contractDetailsInitialValues,\n contract_preview: contractPreviewInitialValues,\n pricing_plan: pricingPlanInitialValues,\n eligibility_questionnaire: eligibilityQuestionnaireInitialValues,\n };\n }, [\n selectCountryInitialValues,\n basicInformationInitialValues,\n contractDetailsInitialValues,\n contractPreviewInitialValues,\n pricingPlanInitialValues,\n eligibilityQuestionnaireInitialValues,\n ]);\n\n const shouldHandleReadOnlyEmployment = Boolean(\n employmentId &&\n isEmploymentReadOnly &&\n stepState.currentStep.name !== 'review',\n );\n\n const initialLoading =\n isLoadingCountries ||\n isLoadingBasicInformationForm ||\n isLoadingEmployment ||\n isLoadingContractorOnboardingDetailsForm ||\n isLoadingContractorSubscriptions ||\n isLoadingDocumentPreviewForm ||\n isLoadingIR35File ||\n isLoadingContractDocuments ||\n isLoadingEligibilityQuestionnaire;\n\n const isNavigatingToReview = useMemo(() => {\n const isCor = employment?.contractor_type === 'cor';\n const hasContractPreviewFields =\n isCor || stepFields.contract_preview.length > 0;\n\n return Boolean(\n shouldHandleReadOnlyEmployment &&\n !initialLoading &&\n Boolean(internalContractDocumentId) &&\n stepFields.basic_information.length > 0 &&\n stepFields.contract_details.length > 0 &&\n hasContractPreviewFields,\n );\n }, [\n shouldHandleReadOnlyEmployment,\n initialLoading,\n internalContractDocumentId,\n stepFields.basic_information.length,\n stepFields.contract_details.length,\n stepFields.contract_preview.length,\n employment?.contractor_type,\n ]);\n\n useEffect(() => {\n if (isNavigatingToReview) {\n fieldsMetaRef.current = {\n select_country: prettifyFormValues(\n selectCountryInitialValues,\n stepFields.select_country,\n ),\n basic_information: prettifyFormValues(\n basicInformationInitialValues,\n stepFields.basic_information,\n ),\n contract_details: prettifyFormValues(\n contractDetailsInitialValues,\n stepFields.contract_details,\n ),\n contract_preview: prettifyFormValues(\n contractPreviewInitialValues,\n stepFields.contract_preview,\n ),\n pricing_plan: prettifyFormValues(\n pricingPlanInitialValues,\n stepFields.pricing_plan,\n ),\n eligibility_questionnaire: prettifyFormValues(\n eligibilityQuestionnaireInitialValues,\n stepFields.eligibility_questionnaire,\n ),\n };\n\n setStepValues({\n select_country: selectCountryInitialValues,\n basic_information: basicInformationInitialValues,\n contract_details: contractDetailsInitialValues,\n contract_preview: contractPreviewInitialValues,\n pricing_plan: pricingPlanInitialValues,\n eligibility_questionnaire: eligibilityQuestionnaireInitialValues,\n review: {},\n });\n goToStep('review');\n }\n }, [\n isNavigatingToReview,\n goToStep,\n selectCountryInitialValues,\n basicInformationInitialValues,\n contractDetailsInitialValues,\n setStepValues,\n stepFields.select_country,\n stepFields.basic_information,\n stepFields.contract_details,\n stepFields.pricing_plan,\n pricingPlanInitialValues,\n stepFields.contract_preview,\n contractPreviewInitialValues,\n stepFields.eligibility_questionnaire,\n eligibilityQuestionnaireInitialValues,\n ]);\n\n const goTo = (step: StepKeys) => {\n goToStep(step);\n };\n\n const parseFormValues = async (values: FieldValues) => {\n if (selectCountryForm && stepState.currentStep.name === 'select_country') {\n return values;\n }\n\n if (\n basicInformationForm &&\n stepState.currentStep.name === 'basic_information'\n ) {\n return await parseJSFToValidate(values, basicInformationForm?.fields, {\n isPartialValidation: false,\n });\n }\n\n if (\n contractorOnboardingDetailsForm &&\n stepState.currentStep.name === 'contract_details'\n ) {\n return await parseJSFToValidate(\n values,\n contractorOnboardingDetailsForm?.fields,\n {\n isPartialValidation: false,\n },\n );\n }\n\n if (\n signatureSchemaForm &&\n stepState.currentStep.name === 'contract_preview'\n ) {\n return await parseJSFToValidate(values, signatureSchemaForm?.fields, {\n isPartialValidation: false,\n });\n }\n\n if (\n selectContractorSubscriptionForm &&\n stepState.currentStep.name === 'pricing_plan'\n ) {\n return await parseJSFToValidate(\n values,\n selectContractorSubscriptionForm?.fields,\n {\n isPartialValidation: false,\n },\n );\n }\n\n if (\n eligibilityQuestionnaireForm &&\n stepState.currentStep.name === 'eligibility_questionnaire'\n ) {\n return await parseJSFToValidate(\n values,\n eligibilityQuestionnaireForm?.fields,\n {\n isPartialValidation: false,\n },\n );\n }\n\n return {};\n };\n\n /**\n * Extracts AI validation error from the error response\n * @param error - The error object from the API call\n * @returns The AI validation error if found, null otherwise\n */\n const extractAiValidationError = (\n error: $TSFixMe,\n ): AiValidationError | null => {\n const errorData = error?.rawError?.error?.errors?.services_and_deliverables;\n if (errorData?.source === REMOTE_AI_ERROR_SOURCE) {\n return {\n error: errorData.error,\n source: errorData.source,\n skippable: errorData.skippable,\n };\n }\n return null;\n };\n\n async function onSubmit(values: FieldValues) {\n const currentStepName = stepState.currentStep.name;\n if (currentStepName in fieldsMetaRef.current) {\n fieldsMetaRef.current[\n currentStepName as keyof typeof fieldsMetaRef.current\n ] = prettifyFormValues(values, stepFields[currentStepName]);\n }\n const parsedValues = await parseFormValues(values);\n switch (stepState.currentStep.name) {\n case 'select_country': {\n setInternalCountryCode(parsedValues.country);\n return Promise.resolve({ data: { countryCode: parsedValues.country } });\n }\n case 'basic_information': {\n const isEmploymentNotLoaded =\n !internalEmploymentId && internalCountryCode;\n const hasChangedCountry =\n internalEmploymentId &&\n internalCountryCode &&\n employment?.country &&\n employment?.country.code !== internalCountryCode;\n\n if (isEmploymentNotLoaded || hasChangedCountry) {\n const basicInformationParsedValues = omit(\n parsedValues,\n 'nationality_status',\n 'ir35',\n 'ir35_sds_file',\n );\n const basicInformationPayload: EmploymentCreateParams = {\n basic_information: basicInformationParsedValues,\n type: 'contractor',\n country_code: internalCountryCode,\n external_id: externalId,\n };\n const response = await createEmploymentMutationAsync(\n basicInformationPayload,\n );\n const employmentId = response?.data?.employment?.id;\n if (!employmentId) {\n throw createStructuredError('Employment ID not found');\n }\n\n await updateUKandSaudiFieldsMutation({\n employmentId: employmentId as string,\n });\n\n // Only update state (triggers queries with fully consistent backend state) if not caused a bug\n // if one of the updateUKandSaudiFieldsMutation fails with a 422 for example\n setInternalEmploymentId(employmentId);\n\n return response;\n } else if (internalEmploymentId) {\n const basicInformationParsedValues = omit(\n parsedValues,\n 'nationality_status',\n 'ir35',\n 'ir35_sds_file',\n );\n\n await updateUKandSaudiFieldsMutation({\n employmentId: internalEmploymentId,\n });\n return updateEmploymentMutationAsync({\n employmentId: internalEmploymentId,\n basic_information: basicInformationParsedValues,\n });\n }\n\n return;\n }\n case 'contract_details': {\n const shouldSkipAiChecks =\n fieldValues.services_and_deliverables_error_skippable === true;\n const payload: CreateContractDocument = {\n contract_document: parsedValues,\n skip_ai_checks: shouldSkipAiChecks,\n };\n\n try {\n const response = await createContractorContractDocumentMutationAsync({\n employmentId: internalEmploymentId as string,\n payload,\n });\n const contractDocumentId = response?.data?.contract_document?.id;\n if (!contractDocumentId) {\n throw createStructuredError('Contract document ID not found');\n }\n setInternalContractDocumentId(contractDocumentId);\n\n return response;\n } catch (error) {\n const aiError = extractAiValidationError(error);\n if (aiError) {\n const isContractorOfRecord =\n selectedPricingPlan === corProductIdentifier;\n setFieldValues({\n ...values,\n services_and_deliverables_ai_warning:\n transformAiErrorResponse(isContractorOfRecord),\n services_and_deliverables_error_skippable: aiError.skippable,\n });\n }\n\n throw error;\n }\n }\n\n case 'contract_preview': {\n return signContractDocumentMutationAsync({\n employmentId: internalEmploymentId as string,\n contractDocumentId: internalContractDocumentId as string,\n payload: {\n signature: parsedValues.signature,\n },\n });\n }\n case 'pricing_plan': {\n const blockedProductsEligibility = [\n corProductIdentifier,\n contractorPlusProductIdentifier,\n ];\n\n if (\n isEligibilityQuestionnaireBlocked &&\n blockedProductsEligibility.includes(values.subscription)\n ) {\n throw createStructuredError(\n `This individual is not eligible for ${\n CONTRACT_PRODUCT_TITLES[\n values.subscription as keyof typeof CONTRACT_PRODUCT_TITLES\n ]\n }.`,\n );\n }\n // Handle EOR selection (from merged options)\n if (values.subscription === eorProductIdentifier) {\n // EOR selection - no API call needed at this step\n return Promise.resolve({\n data: {\n subscription: values.subscription,\n },\n });\n }\n\n if (\n hasEligibilityQuestionnaireSubmitted &&\n values.subscription !== corProductIdentifier\n ) {\n try {\n await deleteContractorCorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n });\n await refetchContractorSubscriptions();\n } catch (error) {\n if ((error as $TSFixMe)?.response?.status !== 404) {\n throw error;\n }\n // Still refetch to update the UI state\n await refetchContractorSubscriptions();\n }\n }\n\n if (values.subscription == contractorStandardProductIdentifier) {\n return manageContractorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n payload: {\n operation: 'downgrade',\n },\n });\n } else if (values.subscription == contractorPlusProductIdentifier) {\n return manageContractorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n payload: {\n operation: 'upgrade',\n },\n });\n } else if (values.subscription == corProductIdentifier) {\n if (\n hasEligibilityQuestionnaireSubmitted &&\n employment?.contractor_type !== 'cor'\n ) {\n return manageContractorCorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n });\n } else {\n return Promise.resolve({\n data: { subscription: values.subscription },\n });\n }\n }\n\n throw createStructuredError('invalid selection');\n }\n\n case 'eligibility_questionnaire': {\n try {\n const response = await createEligibilityQuestionnaireMutationAsync({\n employmentId: internalEmploymentId as string,\n payload: parsedValues,\n });\n\n const isEligibilityQuestionnaireBlocked = response?.data?.is_blocking;\n\n if (isEligibilityQuestionnaireBlocked) {\n setIncludeEligibilityQuestionnaire(false);\n setPendingNavigationStep('pricing_plan');\n throw createStructuredError(\n 'This individual is not eligible for Contractor of Record.',\n );\n }\n\n return await manageContractorCorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n });\n } finally {\n // Always refetch to keep state in sync, even on error\n await refetchContractorSubscriptions();\n }\n }\n\n default: {\n throw createStructuredError('Invalid step state');\n }\n }\n }\n\n const markContractAsReviewed = () => {\n setFieldValues({\n review_completed: true,\n });\n };\n\n const handleNextStep = () => {\n if (internalEmploymentId) {\n refetchEmployment();\n }\n nextStep();\n };\n\n const isLoading = initialLoading || shouldHandleReadOnlyEmployment;\n\n return {\n /**\n * Loading state indicating if the flow is loading data\n */\n isLoading,\n\n /**\n * Current state of the form fields for the current step.\n */\n fieldValues,\n\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState,\n\n /**\n * Function to update the current form field values\n * @param values - New form values to set\n */\n checkFieldUpdates: setFieldValues,\n\n /**\n * Function to mark the contract as reviewed\n * @param values - New form values to check\n * @returns {boolean}\n */\n markContractAsReviewed,\n\n /**\n * Function to handle going back to the previous step\n * @returns {void}\n */\n back: previousStep,\n\n /**\n * Function to handle going to the next step\n * @returns {void}\n */\n next: handleNextStep,\n\n /**\n * Function to handle going to a specific step\n * @param step The step to go to.\n * @returns {void}\n */\n goTo: goTo,\n\n /**\n * Function to handle form submission\n * @param values - Form values to submit\n * @returns Promise resolving to the mutation result\n */\n onSubmit,\n\n /**\n * Array of form fields from the onboarding schema\n */\n fields: stepFields[stepState.currentStep.name],\n\n /**\n * Fields metadata for each step\n */\n meta: {\n fields: fieldsMetaRef.current,\n fieldsets: stepFieldsWithFlatFieldsets[stepState.currentStep.name],\n },\n\n /**\n * Function to parse form values before submission\n * @param values - Form values to parse\n * @returns Parsed form values\n */\n parseFormValues,\n\n /**\n * Indicates whether AI validation errors can be skipped (user can continue at their own risk).\n * True when there's a skippable AI validation error on services_and_deliverables field.\n * @returns {boolean}\n */\n canSkipAiValidation:\n fieldValues.services_and_deliverables_error_skippable === true,\n\n /**\n * Function to validate form values against the onboarding schema\n * @param values - Form values to validate\n * @returns Validation result or null if no schema is available\n */\n handleValidation: async (\n values: FieldValues,\n ): Promise<ValidationResult | null> => {\n if (stepState.currentStep.name === 'select_country') {\n return selectCountryForm.handleValidation(values);\n }\n\n if (\n basicInformationForm &&\n stepState.currentStep.name === 'basic_information'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n basicInformationForm?.fields,\n { isPartialValidation: false },\n );\n return basicInformationForm?.handleValidation(parsedValues);\n }\n\n if (\n contractorOnboardingDetailsForm &&\n stepState.currentStep.name === 'contract_details'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n contractorOnboardingDetailsForm?.fields,\n { isPartialValidation: false },\n );\n return contractorOnboardingDetailsForm?.handleValidation(parsedValues);\n }\n\n if (\n signatureSchemaForm &&\n stepState.currentStep.name === 'contract_preview'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n signatureSchemaForm?.fields,\n { isPartialValidation: true },\n );\n return signatureSchemaForm?.handleValidation(parsedValues);\n }\n\n if (\n selectContractorSubscriptionForm &&\n stepState.currentStep.name === 'pricing_plan'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n selectContractorSubscriptionForm?.fields,\n { isPartialValidation: false },\n );\n return selectContractorSubscriptionForm?.handleValidation(parsedValues);\n }\n\n if (\n eligibilityQuestionnaireForm &&\n stepState.currentStep.name === 'eligibility_questionnaire'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n eligibilityQuestionnaireForm?.fields,\n { isPartialValidation: false },\n );\n return eligibilityQuestionnaireForm?.handleValidation(parsedValues);\n }\n\n return null;\n },\n\n /**\n * Initial form values\n */\n initialValues,\n\n /**\n * Employment id\n */\n employmentId: internalEmploymentId,\n\n /**\n * Function to refetch the employment data\n * @returns {void}\n */\n refetchEmployment: refetchEmployment,\n\n /**\n * Loading state indicating if the onboarding mutation is in progress\n */\n isSubmitting:\n createEmploymentMutation.isPending ||\n updateEmploymentMutation.isPending ||\n createContractorContractDocumentMutation.isPending ||\n signContractDocumentMutation.isPending ||\n manageContractorSubscriptionMutation.isPending ||\n uploadFileMutation.isPending ||\n createEligibilityQuestionnaireMutation.isPending ||\n manageContractorCorSubscriptionMutation.isPending ||\n deleteContractorCorSubscriptionMutation.isPending,\n\n /**\n * Document preview PDF data\n */\n documentPreviewPdf,\n\n /**\n * let's the user know if the company can invite employees\n * @returns {boolean}\n */\n canInvite,\n\n /**\n * let's the user know that the employment cannot be edited, happens when employment.status is invited\n * @returns {boolean}\n */\n isEmploymentReadOnly,\n /**\n * let's the user know if the employment is invited or not\n * @returns {'invited' | 'not_invited'}\n */\n invitedStatus,\n\n /**\n * Employment data\n * @returns {Employment}\n */\n employment,\n\n /**\n * Default legal entity\n * @returns {CompanyLegalEntity}\n */\n defaultLegalEntity,\n /**\n * Steps array\n * @returns {Array<{name: string, index: number, label: string}>}\n */\n steps: stepsArray,\n };\n};\n","import { useQuery } from '@tanstack/react-query';\nimport { getIndexCompanyLegalEntities } from '@/src/client';\nimport { Client } from '@/src/client/client';\nimport { useClient } from '@/src/context';\nimport { useIdentity } from '@/src/common/api/identity';\nimport { hasCompany } from '@/src/common/api/companies';\n\n/**\n * Hook to get the legal entities for a company\n * @param companyId - The company ID\n * @returns The legal entities\n */\nexport const useLegalEntities = () => {\n const { client } = useClient();\n const { data: identity } = useIdentity();\n const companyId = hasCompany(identity) ? (identity?.company?.id ?? '') : '';\n\n return useQuery({\n queryKey: ['legal-entities', companyId],\n queryFn: () =>\n getIndexCompanyLegalEntities({\n client: client as Client,\n path: {\n company_id: companyId,\n },\n query: {\n page_size: 100,\n },\n }),\n select: (data) => data.data?.data?.legal_entities,\n enabled: !!companyId,\n });\n};\n\nexport const useDefaultLegalEntity = () => {\n const { data: legalEntities } = useLegalEntities();\n return legalEntities?.find((legalEntity) => legalEntity.is_default);\n};\n"],"mappings":"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","names":["useEffect","useMemo","useRef","useState","omit","useQuery","useLegalEntities","__name","client","useClient","identity","useIdentity","companyId","hasCompany","useQuery","getIndexCompanyLegalEntities","data","useDefaultLegalEntity","legalEntities","legalEntity","stepToFormSchemaMap","jsonSchemaToEmployment","useContractorOnboarding","__name","countryCode","externalId","employmentId","skipSteps","options","onboardingInitialValues","excludeProducts","internalCountryCode","setInternalCountryCode","useState","internalEmploymentId","setInternalEmploymentId","internalContractDocumentId","setInternalContractDocumentId","fieldsMetaRef","useRef","selectedProduct","setSelectedProduct","includeEligibilityQuestionnaire","setIncludeEligibilityQuestionnaire","includeContractPreview","setIncludeContractPreview","pendingNavigationStep","setPendingNavigationStep","steps","stepsArray","useMemo","buildSteps","fieldValues","stepState","setFieldValues","previousStep","nextStep","goToStep","setStepValues","useStepState","useEffect","employment","isLoadingEmployment","refetchEmployment","useEmploymentQuery","defaultLegalEntity","useDefaultLegalEntity","employmentStatus","isEmploymentReadOnly","reviewStepAllowedEmploymentStatus","canInvite","disabledInviteButtonEmploymentStatus","invitedStatus","createEmploymentMutation","useCreateEmployment","updateEmploymentMutation","useUpdateEmployment","createContractorContractDocumentMutation","useCreateContractorContractDocument","uploadFileMutation","useUploadFile","updateUKandSaudiFieldsMutation","useUpdateUKandSaudiFields","createEligibilityQuestionnaireMutation","usePostCreateEligibilityQuestionnaire","manageContractorCorSubscriptionMutation","usePostManageContractorCorSubscription","updateEmploymentMutationAsync","mutationToPromise","signContractDocumentMutation","useSignContractDocument","manageContractorSubscriptionMutation","usePostManageContractorSubscriptions","deleteContractorCorSubscriptionMutation","useDeleteContractorCorSubscription","createEmploymentMutationAsync","createContractorContractDocumentMutationAsync","signContractDocumentMutationAsync","manageContractorSubscriptionMutationAsync","createEligibilityQuestionnaireMutationAsync","manageContractorCorSubscriptionMutationAsync","deleteContractorCorSubscriptionMutationAsync","selectCountryForm","isLoadingCountries","countries","useCountriesSchemaField","selectedCountry","country","countryName","isPricingPlanEnabled","selectContractorSubscriptionForm","isLoadingContractorSubscriptions","contractorSubscriptions","refetchContractorSubscriptions","isEligibilityQuestionnaireBlocked","useContractorSubscriptionSchemaField","hasEligibilityQuestionnaireSubmitted","subscription","corProductIdentifier","isCor","eligibilityAnswers","formType","employmentKey","serverEmploymentData","useJSONSchema","form","jsonSchemaOptions","query","mergedFormValues","useJSONSchemaForm","isBasicInformationDetailsEnabled","isIR35FileEnabled","ir35File","isLoadingIR35File","useGetIR35File","contractDocuments","isLoadingContractDocuments","useGetContractDocuments","basicInformationForm","isLoadingBasicInformationForm","buildBasicInformationJsfModify","descriptionProvisionalStartDate","calculateProvisionalStartDateDescription","selectedPricingPlan","subscriptions","contractorStandardProductIdentifier","contractorPlusProductIdentifier","eligibilityFields","isEligibilityQuestionnaireEnabled","eligibilityQuestionnaireForm","isLoadingEligibilityQuestionnaire","useGetEligibilityQuestionnaire","isContractorOnboardingDetailsEnabled","contractorOnboardingDetailsForm","isLoadingContractorOnboardingDetailsForm","useContractorOnboardingDetailsSchemaWithCurrencies","buildContractDetailsJsfModify","isSignatureSchemaEnabled","signatureSchemaForm","useGetContractDocumentSignatureSchema","buildContractPreviewJsfModify","documentPreviewPdf","isLoadingDocumentPreviewForm","useGetShowContractDocument","stepFields","stepFieldsWithFlatFieldsets","employmentBasicInformation","employmentContractDetails","employmentCountryCode","selectCountryInitialValues","getInitialValues","convertedIr35File","dataURLtoFile","basicInformationInitialValues","initialValues","contractDetailsInitialValues","contractPreviewInitialValues","signature","signatory","pricingPlanInitialValues","eligibilityQuestionnaireInitialValues","shouldHandleReadOnlyEmployment","initialLoading","isNavigatingToReview","hasContractPreviewFields","prettifyFormValues","goTo","step","parseFormValues","values","parseJSFToValidate","extractAiValidationError","error","errorData","REMOTE_AI_ERROR_SOURCE","onSubmit","currentStepName","parsedValues","isEmploymentNotLoaded","hasChangedCountry","basicInformationPayload","omit","response","createStructuredError","basicInformationParsedValues","shouldSkipAiChecks","payload","contractDocumentId","aiError","transformAiErrorResponse","CONTRACT_PRODUCT_TITLES","eorProductIdentifier"]}
@@ -1,2 +0,0 @@
1
- import{a as d}from"./chunk-2V7SP7UR.js";import{a as n}from"./chunk-VAWEOFUO.js";import{a as u}from"./chunk-YC7FCCXS.js";import{a as m}from"./chunk-WD5DNUSS.js";import{a as p}from"./chunk-JZM3TDK2.js";import{a as S}from"./chunk-DPVXSN7T.js";import{a as e}from"./chunk-VZV7ZSZ5.js";import{a}from"./chunk-5YRQBCHM.js";import{a as c}from"./chunk-WOWIJ56S.js";import{a as f}from"./chunk-5OHSFPY6.js";import{a as s}from"./chunk-P3QDMRCC.js";import{a as r}from"./chunk-Q3ALCPJN.js";import{a as i}from"./chunk-ENW77KKX.js";import{a as t}from"./chunk-P37U34EQ.js";import{useId as R,useRef as F,useMemo as y}from"react";import{jsx as D}from"react/jsx-runtime";var K=t(({render:l,employmentId:g,externalId:C,countryCode:b,skipSteps:v,initialValues:B,options:O})=>{let o=i({options:O,employmentId:g,externalId:C,countryCode:b,skipSteps:v,initialValues:B}),P=R(),w=F(void 0),I=y(()=>({setValue:w}),[]);return D(r.Provider,{value:{contractorOnboardingBag:o,formId:P,formRef:I},children:l({contractorOnboardingBag:o,components:{BasicInformationStep:a,SelectCountryStep:e,BackButton:n,SubmitButton:m,PricingPlanStep:p,EligibilityQuestionnaireStep:d,ContractDetailsStep:c,ContractPreviewStep:f,OnboardingInvite:u,ContractReviewButton:s,SaveDraftButton:S}})})},"ContractorOnboardingFlow");export{K as a};
2
- //# sourceMappingURL=chunk-IYCOIHYW.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/ContractorOnboarding/ContractorOnboarding.tsx"],"sourcesContent":["import { UseFormSetValue } from 'react-hook-form';\nimport { useId, useRef, useMemo } from 'react';\nimport { OnboardingBack } from '@/src/flows/ContractorOnboarding/components/OnboardingBack';\nimport { SelectCountryStep } from '@/src/flows/ContractorOnboarding/components/SelectCountryStep';\nimport { ContractorOnboardingContext } from '@/src/flows/ContractorOnboarding/context';\nimport { useContractorOnboarding } from '@/src/flows/ContractorOnboarding/hooks';\nimport { ContractorOnboardingFlowProps } from '@/src/flows/ContractorOnboarding/types';\nimport { BasicInformationStep } from '@/src/flows/ContractorOnboarding/components/BasicInformationStep';\nimport { OnboardingSubmit } from '@/src/flows/ContractorOnboarding/components/OnboardingSubmit';\nimport { PricingPlanStep } from '@/src/flows/ContractorOnboarding/components/PricingPlan';\nimport { ContractDetailsStep } from '@/src/flows/ContractorOnboarding/components/ContractDetailsStep';\nimport { ContractPreviewStep } from '@/src/flows/ContractorOnboarding/components/ContractPreviewStep';\nimport { OnboardingInvite } from '@/src/flows/ContractorOnboarding/components/OnboardingInvite';\nimport { ContractReviewButton } from '@/src/flows/ContractorOnboarding/components/ContractReviewButton';\nimport { EligibilityQuestionnaireStep } from '@/src/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep';\nimport { SaveDraftButton } from '@/src/flows/ContractorOnboarding/components/SaveDraftButton';\n\nexport const ContractorOnboardingFlow = ({\n render,\n employmentId,\n externalId,\n countryCode,\n skipSteps,\n initialValues,\n options,\n}: ContractorOnboardingFlowProps) => {\n const contractorOnboardingBag = useContractorOnboarding({\n options,\n employmentId,\n externalId,\n countryCode,\n skipSteps,\n initialValues,\n });\n const formId = useId();\n // Store form's setValue method in ref to allow sibling components\n // to update form state directly (e.g., ContractReviewButton setting review_completed)\n const setValueRef = useRef<\n UseFormSetValue<Record<string, unknown>> | undefined\n >(undefined);\n const formRef = useMemo(() => ({ setValue: setValueRef }), []);\n\n return (\n <ContractorOnboardingContext.Provider\n value={{ contractorOnboardingBag, formId, formRef }}\n >\n {render({\n contractorOnboardingBag,\n components: {\n BasicInformationStep: BasicInformationStep,\n SelectCountryStep: SelectCountryStep,\n BackButton: OnboardingBack,\n SubmitButton: OnboardingSubmit,\n PricingPlanStep: PricingPlanStep,\n EligibilityQuestionnaireStep: EligibilityQuestionnaireStep,\n ContractDetailsStep: ContractDetailsStep,\n ContractPreviewStep: ContractPreviewStep,\n OnboardingInvite: OnboardingInvite,\n ContractReviewButton: ContractReviewButton,\n SaveDraftButton: SaveDraftButton,\n },\n })}\n </ContractorOnboardingContext.Provider>\n );\n};\n"],"mappings":"2iBACA,OAAS,SAAAA,EAAO,UAAAC,EAAQ,WAAAC,MAAe,QA0CnC,cAAAC,MAAA,oBA1BG,IAAMC,EAA2BC,EAAA,CAAC,CACvC,OAAAC,EACA,aAAAC,EACA,WAAAC,EACA,YAAAC,EACA,UAAAC,EACA,cAAAC,EACA,QAAAC,CACF,IAAqC,CACnC,IAAMC,EAA0BC,EAAwB,CACtD,QAAAF,EACA,aAAAL,EACA,WAAAC,EACA,YAAAC,EACA,UAAAC,EACA,cAAAC,CACF,CAAC,EACKI,EAASC,EAAM,EAGfC,EAAcC,EAElB,MAAS,EACLC,EAAUC,EAAQ,KAAO,CAAE,SAAUH,CAAY,GAAI,CAAC,CAAC,EAE7D,OACEd,EAACkB,EAA4B,SAA5B,CACC,MAAO,CAAE,wBAAAR,EAAyB,OAAAE,EAAQ,QAAAI,CAAQ,EAEjD,SAAAb,EAAO,CACN,wBAAAO,EACA,WAAY,CACV,qBAAsBS,EACtB,kBAAmBC,EACnB,WAAYC,EACZ,aAAcC,EACd,gBAAiBC,EACjB,6BAA8BC,EAC9B,oBAAqBC,EACrB,oBAAqBC,EACrB,iBAAkBC,EAClB,qBAAsBC,EACtB,gBAAiBC,CACnB,CACF,CAAC,EACH,CAEJ,EA/CwC","names":["useId","useRef","useMemo","jsx","ContractorOnboardingFlow","__name","render","employmentId","externalId","countryCode","skipSteps","initialValues","options","contractorOnboardingBag","useContractorOnboarding","formId","useId","setValueRef","useRef","formRef","useMemo","ContractorOnboardingContext","BasicInformationStep","SelectCountryStep","OnboardingBack","OnboardingSubmit","PricingPlanStep","EligibilityQuestionnaireStep","ContractDetailsStep","ContractPreviewStep","OnboardingInvite","ContractReviewButton","SaveDraftButton"]}