@remoteoss/remote-flows 1.24.1 → 1.26.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 (502) hide show
  1. package/dist/ButtonDefault-EPOEMC2J.js +2 -0
  2. package/dist/CheckboxFieldDefault-SQULI7DO.js +2 -0
  3. package/dist/CountryFieldDefault-4YHZACZ5.js +2 -0
  4. package/dist/DatePickerFieldDefault-B7WY5H6M.js +2 -0
  5. package/dist/DrawerDefault-WN7Z4LY7.js +2 -0
  6. package/dist/EmailFieldDefault-LTDNKVUW.js +2 -0
  7. package/dist/FieldsetToggleButtonDefault-4RZ3GTDF.js +2 -0
  8. package/dist/FileUploadFieldDefault-HSLW6SHB.js +2 -0
  9. package/dist/MultiSelectFieldDefault-GSJWVA5H.js +2 -0
  10. package/dist/NumberFieldDefault-NVOVVUNK.js +2 -0
  11. package/dist/RadioGroupFieldDefault-G637DHSW.js +2 -0
  12. package/dist/SelectFieldDefault-WU4CDEZD.js +2 -0
  13. package/dist/StatementDefault-T3RCCUE5.js +2 -0
  14. package/dist/TableFieldDefault-S5XRYF36.js +2 -0
  15. package/dist/TelFieldDefault-D5EW44ZU.js +2 -0
  16. package/dist/TextAreaFieldDefault-32E5FGS7.js +2 -0
  17. package/dist/TextFieldDefault-FCVIHZTV.js +2 -0
  18. package/dist/WorkScheduleFieldDefault-5JZPKI2P.js +2 -0
  19. package/dist/ZendeskDrawerDefault-WQ32QQVE.js +2 -0
  20. package/dist/ZendeskDrawerDefault-WQ32QQVE.js.map +1 -0
  21. package/dist/chunk-2P4RPBIO.js +2 -0
  22. package/dist/{chunk-ECGWCDC3.js.map → chunk-2P4RPBIO.js.map} +1 -1
  23. package/dist/{chunk-BYDQHL6O.js → chunk-2UZ72KAQ.js} +2 -2
  24. package/dist/{chunk-ADTGWDQ7.js → chunk-33IPP266.js} +2 -2
  25. package/dist/{chunk-UJXUKEQU.js → chunk-36NGPS63.js} +2 -2
  26. package/dist/{chunk-OQ5WZBDA.js → chunk-3SECILYU.js} +2 -2
  27. package/dist/{chunk-C4MRFGQG.js → chunk-3VWXALRD.js} +2 -2
  28. package/dist/{chunk-IJ2BGCAF.js → chunk-45K26OSG.js} +2 -2
  29. package/dist/{chunk-IJ2BGCAF.js.map → chunk-45K26OSG.js.map} +1 -1
  30. package/dist/chunk-4EDPYN5F.js +2 -0
  31. package/dist/chunk-4EDPYN5F.js.map +1 -0
  32. package/dist/{chunk-VB6KFDBL.js → chunk-5EDCZGZV.js} +2 -2
  33. package/dist/{chunk-6QEF52IP.js → chunk-5EHJ5HTV.js} +2 -2
  34. package/dist/{chunk-YOFBRZUZ.js → chunk-5F5BHJQO.js} +2 -2
  35. package/dist/chunk-5F5H7LZT.js +2 -0
  36. package/dist/chunk-5F5H7LZT.js.map +1 -0
  37. package/dist/chunk-626FTNKA.js +2 -0
  38. package/dist/chunk-626FTNKA.js.map +1 -0
  39. package/dist/{chunk-3DMWQJ5W.js → chunk-64AJX2DH.js} +2 -2
  40. package/dist/chunk-6I5FRZSX.js +2 -0
  41. package/dist/{chunk-K5Y67GIG.js.map → chunk-6I5FRZSX.js.map} +1 -1
  42. package/dist/{chunk-MSBCYMSH.js → chunk-6SDLOAEO.js} +2 -2
  43. package/dist/{chunk-TNN3W5TU.js → chunk-6Y4QJ7WK.js} +2 -2
  44. package/dist/chunk-72RFYT5Y.js +2 -0
  45. package/dist/chunk-72RFYT5Y.js.map +1 -0
  46. package/dist/{chunk-L3LOATSG.js → chunk-75P5LUKA.js} +2 -2
  47. package/dist/{chunk-56UXOD27.js → chunk-7N2A2ZJ5.js} +2 -2
  48. package/dist/{chunk-H5PRUDCX.js → chunk-7VKV5G6N.js} +2 -2
  49. package/dist/{chunk-FAIEJW57.js → chunk-7X56CYUV.js} +2 -2
  50. package/dist/chunk-7X56CYUV.js.map +1 -0
  51. package/dist/chunk-7Z4MWUCV.js +2 -0
  52. package/dist/{chunk-JI5PQLWS.js.map → chunk-7Z4MWUCV.js.map} +1 -1
  53. package/dist/{chunk-SNECOPBD.js → chunk-ACKYD4QC.js} +2 -2
  54. package/dist/{chunk-G5O2CM6V.js → chunk-AMSYQQG7.js} +2 -2
  55. package/dist/{chunk-AS77PXWM.js → chunk-AXGWQVCT.js} +2 -2
  56. package/dist/{chunk-NAMR4DA5.js → chunk-B5UGFNCU.js} +2 -2
  57. package/dist/{chunk-WD2JGIDK.js → chunk-BAE2OWEH.js} +2 -2
  58. package/dist/{chunk-LSVH4U4W.js → chunk-BAKE7YEE.js} +2 -2
  59. package/dist/chunk-BFSBZTDB.js +2 -0
  60. package/dist/{chunk-EIVCBH53.js.map → chunk-BFSBZTDB.js.map} +1 -1
  61. package/dist/{chunk-2AYGZ4RY.js → chunk-BI3PHE5N.js} +2 -2
  62. package/dist/{chunk-7BGANM2R.js → chunk-BMLTMXEK.js} +2 -2
  63. package/dist/{chunk-4FMQTOXJ.js → chunk-BS4A6UYL.js} +2 -2
  64. package/dist/{chunk-2V4CTIAG.js → chunk-BTP3NN3N.js} +2 -2
  65. package/dist/{chunk-SXKIRVA2.js → chunk-C6ARUHCB.js} +2 -2
  66. package/dist/chunk-CEIDSIMA.js +2 -0
  67. package/dist/chunk-CEIDSIMA.js.map +1 -0
  68. package/dist/chunk-CLAVZQBC.js +2 -0
  69. package/dist/chunk-CLAVZQBC.js.map +1 -0
  70. package/dist/chunk-CUSAI2ZT.js +2 -0
  71. package/dist/chunk-CUSAI2ZT.js.map +1 -0
  72. package/dist/{chunk-KKMW7Q42.js → chunk-DEVQ2NNK.js} +2 -2
  73. package/dist/{chunk-42R2H2DW.js → chunk-DN6BXTAC.js} +1 -1
  74. package/dist/chunk-DN6BXTAC.js.map +1 -0
  75. package/dist/{chunk-SNBAM7SA.js → chunk-DYNVJFJH.js} +2 -2
  76. package/dist/{chunk-KXT6ACFL.js → chunk-EC6ZM3SX.js} +2 -2
  77. package/dist/chunk-ERY43GUW.js +2 -0
  78. package/dist/chunk-ERY43GUW.js.map +1 -0
  79. package/dist/chunk-FFVTWWGX.js +2 -0
  80. package/dist/chunk-FFVTWWGX.js.map +1 -0
  81. package/dist/{chunk-SADMJJDB.js → chunk-FIM36WNY.js} +2 -2
  82. package/dist/{chunk-6JTHV4QS.js → chunk-FOBUW3RN.js} +2 -2
  83. package/dist/{chunk-TQXCLXWH.js → chunk-FTC4EFBO.js} +2 -2
  84. package/dist/{chunk-NKMO2WW3.js → chunk-FZO24P53.js} +2 -2
  85. package/dist/{chunk-C32W6TCT.js → chunk-FZVUO3UU.js} +2 -2
  86. package/dist/chunk-GCPDTL2M.js +2 -0
  87. package/dist/chunk-GCPDTL2M.js.map +1 -0
  88. package/dist/{chunk-VY6W6W6F.js → chunk-GHYCSTSK.js} +2 -2
  89. package/dist/{chunk-SXM3GJ5M.js → chunk-HMVU7HJL.js} +2 -2
  90. package/dist/{chunk-QLYFMDLB.js → chunk-I2DXGO23.js} +2 -2
  91. package/dist/{chunk-K4YQQMHD.js → chunk-IK27ZFUU.js} +2 -2
  92. package/dist/{chunk-CKVI2UDU.js → chunk-INV4YWPR.js} +2 -2
  93. package/dist/{chunk-7SO6WCYM.js → chunk-IY3ASS7L.js} +2 -2
  94. package/dist/{chunk-JF3KLAB5.js → chunk-JFD2OJ6L.js} +2 -2
  95. package/dist/{chunk-NAF6LRSS.js → chunk-JMDINYDB.js} +2 -2
  96. package/dist/{chunk-RDYN6W2A.js → chunk-JWP4HAIS.js} +2 -2
  97. package/dist/{chunk-R4X2WQXX.js → chunk-JXWFFVQO.js} +2 -2
  98. package/dist/{chunk-PZAYG2DF.js → chunk-K56VMRZ5.js} +2 -2
  99. package/dist/chunk-KFYWUBRS.js +2 -0
  100. package/dist/{chunk-LNV36S6D.js.map → chunk-KFYWUBRS.js.map} +1 -1
  101. package/dist/{chunk-2K2RK7RF.js → chunk-KJMPEOZ7.js} +2 -2
  102. package/dist/{chunk-KM7CQTD5.js → chunk-KKCYP5TA.js} +2 -2
  103. package/dist/{chunk-KM7CQTD5.js.map → chunk-KKCYP5TA.js.map} +1 -1
  104. package/dist/chunk-KLN2FG5Y.js +2 -0
  105. package/dist/{chunk-JTMJKRH7.js.map → chunk-KLN2FG5Y.js.map} +1 -1
  106. package/dist/chunk-KMBA73YG.js +2 -0
  107. package/dist/chunk-KMBA73YG.js.map +1 -0
  108. package/dist/{chunk-L5DII4MV.js → chunk-KVMWDA6O.js} +2 -2
  109. package/dist/{chunk-DXIJUMLU.js → chunk-LBJAKZ6V.js} +2 -2
  110. package/dist/{chunk-VWBA3U4U.js → chunk-LFYDEIZG.js} +2 -2
  111. package/dist/chunk-LX3JPBUV.js +2 -0
  112. package/dist/{chunk-YMJ3HQTG.js.map → chunk-LX3JPBUV.js.map} +1 -1
  113. package/dist/{chunk-HIFEVMKP.js → chunk-NORWRQQM.js} +2 -2
  114. package/dist/chunk-NUD662HZ.js +2 -0
  115. package/dist/{chunk-TNYFIB6U.js.map → chunk-NUD662HZ.js.map} +1 -1
  116. package/dist/{chunk-HNCOYMS5.js → chunk-O6H23YQW.js} +2 -2
  117. package/dist/chunk-OCTM6K3V.js +2 -0
  118. package/dist/{chunk-6GCLDEJP.js.map → chunk-OCTM6K3V.js.map} +1 -1
  119. package/dist/{chunk-RAH453TV.js → chunk-OJTYP5W7.js} +2 -2
  120. package/dist/chunk-OSQ6VUDM.js +2 -0
  121. package/dist/chunk-OSQ6VUDM.js.map +1 -0
  122. package/dist/{chunk-VPSESR6G.js → chunk-OXCSFW3F.js} +2 -2
  123. package/dist/{chunk-T4YYYCSD.js → chunk-P4TKMCSQ.js} +2 -2
  124. package/dist/chunk-P4TKMCSQ.js.map +1 -0
  125. package/dist/chunk-POKPAJNL.js +2 -0
  126. package/dist/{chunk-B4E43MXD.js.map → chunk-POKPAJNL.js.map} +1 -1
  127. package/dist/{chunk-AYC6DTFV.js → chunk-PX6B2DBO.js} +2 -2
  128. package/dist/{chunk-BNQFPYNQ.js → chunk-PZFFXEI3.js} +2 -2
  129. package/dist/{chunk-7QXULBD7.js → chunk-QLJMIWS4.js} +2 -2
  130. package/dist/chunk-R47Q7R6C.js +8 -0
  131. package/dist/chunk-R47Q7R6C.js.map +1 -0
  132. package/dist/{chunk-NNFWLL7F.js → chunk-R5WFXN2Z.js} +2 -2
  133. package/dist/{chunk-UQBKFWUI.js → chunk-R7WSWTCF.js} +2 -2
  134. package/dist/{chunk-XBPTFEGC.js → chunk-RD5FPT3Y.js} +2 -2
  135. package/dist/{chunk-JQJBDHAL.js → chunk-RPCS3K2I.js} +2 -2
  136. package/dist/{chunk-H5QXOIKS.js → chunk-RRZ2GPQS.js} +2 -2
  137. package/dist/{chunk-YWOJ4NKF.js → chunk-RUYVQ6R6.js} +2 -2
  138. package/dist/{chunk-7V2QPZ2F.js → chunk-SJVCXKRO.js} +2 -2
  139. package/dist/{chunk-VK7T332E.js → chunk-SP2V52RP.js} +2 -2
  140. package/dist/chunk-T4Y4D743.js +2 -0
  141. package/dist/chunk-T4Y4D743.js.map +1 -0
  142. package/dist/{chunk-MSEHAEEK.js → chunk-TFJOJCCS.js} +2 -2
  143. package/dist/chunk-TIJRONPS.js +2 -0
  144. package/dist/chunk-TIJRONPS.js.map +1 -0
  145. package/dist/{chunk-BZAO32QW.js → chunk-TUPZTWGP.js} +2 -2
  146. package/dist/chunk-TVBZT6FA.js +2 -0
  147. package/dist/chunk-TVBZT6FA.js.map +1 -0
  148. package/dist/chunk-TXEONNPV.js +2 -0
  149. package/dist/chunk-TXEONNPV.js.map +1 -0
  150. package/dist/{chunk-WRRTZ2AL.js → chunk-UBNSYRKM.js} +2 -2
  151. package/dist/{chunk-3C6N7DK6.js → chunk-UN4RAIAR.js} +2 -2
  152. package/dist/{chunk-AS6KFUXS.js → chunk-UZNF4JV3.js} +2 -2
  153. package/dist/{chunk-3BBQDNZD.js → chunk-V5OIMFSH.js} +2 -2
  154. package/dist/{chunk-7ZFZYZSP.js → chunk-VDVWAYXP.js} +2 -2
  155. package/dist/{chunk-7G5JSUZU.js → chunk-VHAJRKCI.js} +2 -2
  156. package/dist/{chunk-OK2NP3L5.js → chunk-VLVKKSJP.js} +2 -2
  157. package/dist/{chunk-OK2NP3L5.js.map → chunk-VLVKKSJP.js.map} +1 -1
  158. package/dist/{chunk-BAMGHBLT.js → chunk-VSXPCSKU.js} +2 -2
  159. package/dist/{chunk-UMVA4SIV.js → chunk-W2ZXKNL4.js} +2 -2
  160. package/dist/{chunk-MP3VDCI7.js → chunk-XADVV6OP.js} +2 -2
  161. package/dist/{chunk-R3BBN7TV.js → chunk-XHZHFM2J.js} +2 -2
  162. package/dist/{chunk-W6OOI5NF.js → chunk-XUT44QU6.js} +2 -2
  163. package/dist/{chunk-GOTY4N6S.js → chunk-XXXLKG43.js} +2 -2
  164. package/dist/{chunk-547UHEDI.js → chunk-YYMGZZTO.js} +2 -2
  165. package/dist/{chunk-MG4PHNSS.js → chunk-ZS7YCDY6.js} +2 -2
  166. package/dist/{chunk-JKB4KOVF.js → chunk-ZYAMVSAL.js} +2 -2
  167. package/dist/default-components.d.ts +2 -3
  168. package/dist/default-components.js +1 -1
  169. package/dist/default-components.js.map +1 -1
  170. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.d.ts +1 -1
  171. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.js +1 -1
  172. package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +3 -4
  173. package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
  174. package/dist/flows/ContractAmendment/ContractAmendmentForm.d.ts +1 -1
  175. package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
  176. package/dist/flows/ContractAmendment/context.d.ts +3 -4
  177. package/dist/flows/ContractAmendment/hooks.d.ts +3 -4
  178. package/dist/flows/ContractAmendment/hooks.js +1 -1
  179. package/dist/flows/ContractAmendment/index.d.ts +3 -4
  180. package/dist/flows/ContractAmendment/index.js +1 -1
  181. package/dist/flows/ContractAmendment/types.d.ts +2 -3
  182. package/dist/flows/ContractAmendment/utils.d.ts +2 -3
  183. package/dist/flows/ContractAmendment/utils.js +1 -1
  184. package/dist/flows/ContractorOnboarding/ContractorOnboarding.d.ts +5 -6
  185. package/dist/flows/ContractorOnboarding/ContractorOnboarding.js +1 -1
  186. package/dist/flows/ContractorOnboarding/api.d.ts +3 -4
  187. package/dist/flows/ContractorOnboarding/api.js +1 -1
  188. package/dist/flows/ContractorOnboarding/components/BasicInformationStep.d.ts +4 -5
  189. package/dist/flows/ContractorOnboarding/components/BasicInformationStep.js +1 -1
  190. package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.d.ts +5 -6
  191. package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.js +1 -1
  192. package/dist/flows/ContractorOnboarding/components/ContractPreviewHeader.d.ts +2 -3
  193. package/dist/flows/ContractorOnboarding/components/ContractPreviewStatement.d.ts +2 -3
  194. package/dist/flows/ContractorOnboarding/components/ContractPreviewStatement.js +1 -1
  195. package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.d.ts +5 -6
  196. package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.js +1 -1
  197. package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.d.ts +5 -6
  198. package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.js +1 -1
  199. package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.d.ts +5 -6
  200. package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.js +1 -1
  201. package/dist/flows/ContractorOnboarding/components/OnboardingInvite.d.ts +3 -4
  202. package/dist/flows/ContractorOnboarding/components/OnboardingInvite.js +1 -1
  203. package/dist/flows/ContractorOnboarding/components/PricingPlan.d.ts +5 -6
  204. package/dist/flows/ContractorOnboarding/components/PricingPlan.js +1 -1
  205. package/dist/flows/ContractorOnboarding/components/SaveDraftButton.d.ts +3 -4
  206. package/dist/flows/ContractorOnboarding/components/SelectCountryStep.d.ts +4 -5
  207. package/dist/flows/ContractorOnboarding/components/SelectCountryStep.js +1 -1
  208. package/dist/flows/ContractorOnboarding/components/StatementOfWorkDisclaimer.js +1 -1
  209. package/dist/flows/ContractorOnboarding/context.d.ts +6 -7
  210. package/dist/flows/ContractorOnboarding/hooks.d.ts +5 -6
  211. package/dist/flows/ContractorOnboarding/hooks.js +1 -1
  212. package/dist/flows/ContractorOnboarding/index.d.ts +5 -6
  213. package/dist/flows/ContractorOnboarding/index.js +1 -1
  214. package/dist/flows/ContractorOnboarding/jsfModify.d.ts +5 -6
  215. package/dist/flows/ContractorOnboarding/jsfModify.js +1 -1
  216. package/dist/flows/ContractorOnboarding/types.d.ts +5 -6
  217. package/dist/flows/ContractorOnboarding/utils.d.ts +4 -5
  218. package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +3 -4
  219. package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
  220. package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +3 -4
  221. package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
  222. package/dist/flows/CostCalculator/CostCalculatorResetButton.js +1 -1
  223. package/dist/flows/CostCalculator/CostCalculatorSubmitButton.js +1 -1
  224. package/dist/flows/CostCalculator/EstimationResults/EstimationResults.d.ts +2 -3
  225. package/dist/flows/CostCalculator/EstimationResults/EstimationResults.js +1 -1
  226. package/dist/flows/CostCalculator/SummaryResults/SummaryResults.d.ts +2 -3
  227. package/dist/flows/CostCalculator/SummaryResults/SummaryResults.js +1 -1
  228. package/dist/flows/CostCalculator/api.d.ts +2 -3
  229. package/dist/flows/CostCalculator/api.js +1 -1
  230. package/dist/flows/CostCalculator/components/SalaryField.d.ts +2 -3
  231. package/dist/flows/CostCalculator/components/SalaryField.js +1 -1
  232. package/dist/flows/CostCalculator/context.d.ts +3 -4
  233. package/dist/flows/CostCalculator/hooks.d.ts +3 -4
  234. package/dist/flows/CostCalculator/hooks.js +1 -1
  235. package/dist/flows/CostCalculator/index.d.ts +3 -4
  236. package/dist/flows/CostCalculator/index.js +1 -1
  237. package/dist/flows/CostCalculator/types.d.ts +2 -3
  238. package/dist/flows/CostCalculator/utils.d.ts +3 -4
  239. package/dist/flows/CostCalculator/utils.js +1 -1
  240. package/dist/flows/CreateCompany/CreateCompany.d.ts +4 -5
  241. package/dist/flows/CreateCompany/CreateCompany.js +1 -1
  242. package/dist/flows/CreateCompany/api.d.ts +2 -3
  243. package/dist/flows/CreateCompany/api.js +1 -1
  244. package/dist/flows/CreateCompany/components/AddressDetailsStep.d.ts +4 -5
  245. package/dist/flows/CreateCompany/components/AddressDetailsStep.js +1 -1
  246. package/dist/flows/CreateCompany/components/CompanyBasicInformationStep.d.ts +4 -5
  247. package/dist/flows/CreateCompany/components/CompanyBasicInformationStep.js +1 -1
  248. package/dist/flows/CreateCompany/components/CreateCompanyForm.d.ts +2 -3
  249. package/dist/flows/CreateCompany/components/CreateCompanyForm.js +1 -1
  250. package/dist/flows/CreateCompany/context.d.ts +4 -5
  251. package/dist/flows/CreateCompany/hooks.d.ts +4 -5
  252. package/dist/flows/CreateCompany/hooks.js +1 -1
  253. package/dist/flows/CreateCompany/index.d.ts +4 -5
  254. package/dist/flows/CreateCompany/index.js +1 -1
  255. package/dist/flows/CreateCompany/types.d.ts +4 -5
  256. package/dist/flows/Onboarding/OnboardingFlow.d.ts +4 -5
  257. package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
  258. package/dist/flows/Onboarding/api.d.ts +5 -9
  259. package/dist/flows/Onboarding/api.js +1 -1
  260. package/dist/flows/Onboarding/components/AnnualGrossSalary.d.ts +2 -3
  261. package/dist/flows/Onboarding/components/AnnualGrossSalary.js +1 -1
  262. package/dist/flows/Onboarding/components/BasicInformationStep.d.ts +4 -5
  263. package/dist/flows/Onboarding/components/BasicInformationStep.js +1 -1
  264. package/dist/flows/Onboarding/components/BenefitsStep.d.ts +4 -5
  265. package/dist/flows/Onboarding/components/BenefitsStep.js +1 -1
  266. package/dist/flows/Onboarding/components/ContractDetailsStep.d.ts +4 -5
  267. package/dist/flows/Onboarding/components/ContractDetailsStep.js +1 -1
  268. package/dist/flows/Onboarding/components/OnboardingForm.d.ts +4 -5
  269. package/dist/flows/Onboarding/components/OnboardingForm.js +1 -1
  270. package/dist/flows/Onboarding/components/OnboardingInvite.d.ts +3 -4
  271. package/dist/flows/Onboarding/components/OnboardingInvite.js +1 -1
  272. package/dist/flows/Onboarding/components/ReviewStep.d.ts +4 -5
  273. package/dist/flows/Onboarding/components/SaveDraftButton.d.ts +3 -4
  274. package/dist/flows/Onboarding/components/SelectCountryStep.d.ts +4 -5
  275. package/dist/flows/Onboarding/components/SelectCountryStep.js +1 -1
  276. package/dist/flows/Onboarding/context.d.ts +14 -8
  277. package/dist/flows/Onboarding/hooks.d.ts +4 -5
  278. package/dist/flows/Onboarding/hooks.js +1 -1
  279. package/dist/flows/Onboarding/index.d.ts +4 -5
  280. package/dist/flows/Onboarding/index.js +1 -1
  281. package/dist/flows/Onboarding/types.d.ts +4 -5
  282. package/dist/flows/Onboarding/utils.d.ts +4 -5
  283. package/dist/flows/Onboarding/utils.js +1 -1
  284. package/dist/flows/Termination/AdditionalDetailsForm.d.ts +4 -5
  285. package/dist/flows/Termination/AdditionalDetailsForm.js +1 -1
  286. package/dist/flows/Termination/EmployeeComunicationForm.d.ts +4 -5
  287. package/dist/flows/Termination/EmployeeComunicationForm.js +1 -1
  288. package/dist/flows/Termination/PaidTimeOffForm.d.ts +4 -5
  289. package/dist/flows/Termination/PaidTimeOffForm.js +1 -1
  290. package/dist/flows/Termination/TerminationDetailsForm.d.ts +4 -5
  291. package/dist/flows/Termination/TerminationDetailsForm.js +1 -1
  292. package/dist/flows/Termination/TerminationFlow.d.ts +4 -5
  293. package/dist/flows/Termination/TerminationFlow.js +1 -1
  294. package/dist/flows/Termination/TerminationForm.d.ts +4 -5
  295. package/dist/flows/Termination/TerminationForm.js +1 -1
  296. package/dist/flows/Termination/api.d.ts +5 -6
  297. package/dist/flows/Termination/api.js +1 -1
  298. package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInformation.js +1 -1
  299. package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInformationFees.js +1 -1
  300. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOff.d.ts +6 -7
  301. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOff.js +1 -1
  302. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.d.ts +6 -7
  303. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.js +1 -1
  304. package/dist/flows/Termination/components/PaidTimeOff/types.d.ts +6 -7
  305. package/dist/flows/Termination/components/TerminationDialogInfoContent/TerminationDialogInfoContent.js +1 -1
  306. package/dist/flows/Termination/components/TerminationReasonsDetailContent/TerminationReasonsDetailContent.js +1 -1
  307. package/dist/flows/Termination/context.d.ts +4 -5
  308. package/dist/flows/Termination/hooks.d.ts +4 -5
  309. package/dist/flows/Termination/hooks.js +1 -1
  310. package/dist/flows/Termination/index.d.ts +6 -7
  311. package/dist/flows/Termination/index.js +1 -1
  312. package/dist/flows/Termination/json-schemas/schema.d.ts +7 -8
  313. package/dist/flows/Termination/json-schemas/schema.js +1 -1
  314. package/dist/flows/Termination/types.d.ts +4 -5
  315. package/dist/flows/Termination/utils.d.ts +4 -5
  316. package/dist/flows/Termination/utils.js +1 -1
  317. package/dist/flows/types.d.ts +2 -3
  318. package/dist/flows/utils.d.ts +6 -2
  319. package/dist/flows/utils.js +1 -1
  320. package/dist/index.css +2 -2
  321. package/dist/index.css.map +1 -1
  322. package/dist/index.d.ts +11 -12
  323. package/dist/index.js +2 -2
  324. package/dist/index.js.map +1 -1
  325. package/dist/internals.d.ts +6 -7
  326. package/dist/internals.js +1 -1
  327. package/dist/{mutations-BsydWn3-.d.ts → mutations-BlHJKh7X.d.ts} +1 -1
  328. package/dist/{remoteFlows-BVt9wH8Z.d.ts → remoteFlows-BgpcnCNA.d.ts} +44 -4
  329. package/dist/styles.css +2 -2
  330. package/dist/styles.css.map +1 -1
  331. package/dist/{types-BUI5G3ML.d.ts → types-BBgv8INf.d.ts} +6 -6
  332. package/dist/{types-C0ri3b3L.d.ts → types-CRnEmzMD.d.ts} +1 -1
  333. package/dist/{types-BfQMv-8p.d.ts → types-DEzrQ-MU.d.ts} +2 -2
  334. package/dist/{types-uW0BsP56.d.ts → types-nfUNaXC-.d.ts} +3 -3
  335. package/dist/{types-C0m9mu0v.d.ts → types-x02L1Qo9.d.ts} +41 -11
  336. package/dist/{types.gen-Oz2Tvvr6.d.ts → types.gen-Dgw1W-SB.d.ts} +74 -21
  337. package/dist/{utils-Db2G1Kxo.d.ts → utils-Dg9zSNDT.d.ts} +1 -1
  338. package/package.json +31 -38
  339. package/dist/ButtonDefault-2YV2Z474.js +0 -2
  340. package/dist/CheckboxFieldDefault-55JIXW4D.js +0 -2
  341. package/dist/CountryFieldDefault-NX5GNCKS.js +0 -2
  342. package/dist/DatePickerFieldDefault-PRJ4Z72O.js +0 -2
  343. package/dist/DrawerDefault-AAUS7T5W.js +0 -2
  344. package/dist/EmailFieldDefault-TFQ5SQVC.js +0 -2
  345. package/dist/FieldsetToggleButtonDefault-MFLN2WWT.js +0 -2
  346. package/dist/FileUploadFieldDefault-7ETO2SEZ.js +0 -2
  347. package/dist/MultiSelectFieldDefault-5TL5SL7W.js +0 -2
  348. package/dist/NumberFieldDefault-L7J22NRQ.js +0 -2
  349. package/dist/RadioGroupFieldDefault-B2ZRFHJ4.js +0 -2
  350. package/dist/SelectFieldDefault-AT6LLZNX.js +0 -2
  351. package/dist/StatementDefault-DORMITL7.js +0 -2
  352. package/dist/TableFieldDefault-URJVK7YR.js +0 -2
  353. package/dist/TextAreaFieldDefault-2TV3WHKH.js +0 -2
  354. package/dist/TextFieldDefault-2GEILZPU.js +0 -2
  355. package/dist/WorkScheduleFieldDefault-XH4AEXSM.js +0 -2
  356. package/dist/ZendeskDrawerDefault-A5PVWI4R.js +0 -2
  357. package/dist/chunk-3NESYBEJ.js +0 -2
  358. package/dist/chunk-3NESYBEJ.js.map +0 -1
  359. package/dist/chunk-42R2H2DW.js.map +0 -1
  360. package/dist/chunk-6GCLDEJP.js +0 -2
  361. package/dist/chunk-6H4634RG.js +0 -2
  362. package/dist/chunk-6H4634RG.js.map +0 -1
  363. package/dist/chunk-B4E43MXD.js +0 -2
  364. package/dist/chunk-BI4RFXFL.js +0 -2
  365. package/dist/chunk-BI4RFXFL.js.map +0 -1
  366. package/dist/chunk-CWAFRJAQ.js +0 -2
  367. package/dist/chunk-CWAFRJAQ.js.map +0 -1
  368. package/dist/chunk-D5AO6SOM.js +0 -2
  369. package/dist/chunk-D5AO6SOM.js.map +0 -1
  370. package/dist/chunk-DZXU45AS.js +0 -2
  371. package/dist/chunk-DZXU45AS.js.map +0 -1
  372. package/dist/chunk-ECGWCDC3.js +0 -2
  373. package/dist/chunk-EIVCBH53.js +0 -2
  374. package/dist/chunk-FAIEJW57.js.map +0 -1
  375. package/dist/chunk-H2RAK6F7.js +0 -6
  376. package/dist/chunk-H2RAK6F7.js.map +0 -1
  377. package/dist/chunk-HDH5PEOK.js +0 -2
  378. package/dist/chunk-HDH5PEOK.js.map +0 -1
  379. package/dist/chunk-JI5PQLWS.js +0 -2
  380. package/dist/chunk-JTMJKRH7.js +0 -2
  381. package/dist/chunk-K5Y67GIG.js +0 -2
  382. package/dist/chunk-LNV36S6D.js +0 -2
  383. package/dist/chunk-LXOYWRNU.js +0 -2
  384. package/dist/chunk-LXOYWRNU.js.map +0 -1
  385. package/dist/chunk-OWUINMZP.js +0 -2
  386. package/dist/chunk-OWUINMZP.js.map +0 -1
  387. package/dist/chunk-T4YYYCSD.js.map +0 -1
  388. package/dist/chunk-TNYFIB6U.js +0 -2
  389. package/dist/chunk-UMLRTS3B.js +0 -2
  390. package/dist/chunk-UMLRTS3B.js.map +0 -1
  391. package/dist/chunk-UOA5WU4S.js +0 -2
  392. package/dist/chunk-UOA5WU4S.js.map +0 -1
  393. package/dist/chunk-VIGKOVHP.js +0 -2
  394. package/dist/chunk-VIGKOVHP.js.map +0 -1
  395. package/dist/chunk-WFZGKBFS.js +0 -2
  396. package/dist/chunk-WFZGKBFS.js.map +0 -1
  397. package/dist/chunk-X6ZAR7ZL.js +0 -2
  398. package/dist/chunk-X6ZAR7ZL.js.map +0 -1
  399. package/dist/chunk-XGRFWXUU.js +0 -2
  400. package/dist/chunk-XGRFWXUU.js.map +0 -1
  401. package/dist/chunk-YMJ3HQTG.js +0 -2
  402. package/dist/chunk-Z5WMKCRJ.js +0 -2
  403. package/dist/chunk-Z5WMKCRJ.js.map +0 -1
  404. package/dist/types-ZWIpiFgj.d.ts +0 -4
  405. /package/dist/{ButtonDefault-2YV2Z474.js.map → ButtonDefault-EPOEMC2J.js.map} +0 -0
  406. /package/dist/{CheckboxFieldDefault-55JIXW4D.js.map → CheckboxFieldDefault-SQULI7DO.js.map} +0 -0
  407. /package/dist/{CountryFieldDefault-NX5GNCKS.js.map → CountryFieldDefault-4YHZACZ5.js.map} +0 -0
  408. /package/dist/{DatePickerFieldDefault-PRJ4Z72O.js.map → DatePickerFieldDefault-B7WY5H6M.js.map} +0 -0
  409. /package/dist/{DrawerDefault-AAUS7T5W.js.map → DrawerDefault-WN7Z4LY7.js.map} +0 -0
  410. /package/dist/{EmailFieldDefault-TFQ5SQVC.js.map → EmailFieldDefault-LTDNKVUW.js.map} +0 -0
  411. /package/dist/{FieldsetToggleButtonDefault-MFLN2WWT.js.map → FieldsetToggleButtonDefault-4RZ3GTDF.js.map} +0 -0
  412. /package/dist/{FileUploadFieldDefault-7ETO2SEZ.js.map → FileUploadFieldDefault-HSLW6SHB.js.map} +0 -0
  413. /package/dist/{MultiSelectFieldDefault-5TL5SL7W.js.map → MultiSelectFieldDefault-GSJWVA5H.js.map} +0 -0
  414. /package/dist/{NumberFieldDefault-L7J22NRQ.js.map → NumberFieldDefault-NVOVVUNK.js.map} +0 -0
  415. /package/dist/{RadioGroupFieldDefault-B2ZRFHJ4.js.map → RadioGroupFieldDefault-G637DHSW.js.map} +0 -0
  416. /package/dist/{SelectFieldDefault-AT6LLZNX.js.map → SelectFieldDefault-WU4CDEZD.js.map} +0 -0
  417. /package/dist/{StatementDefault-DORMITL7.js.map → StatementDefault-T3RCCUE5.js.map} +0 -0
  418. /package/dist/{TableFieldDefault-URJVK7YR.js.map → TableFieldDefault-S5XRYF36.js.map} +0 -0
  419. /package/dist/{TextAreaFieldDefault-2TV3WHKH.js.map → TelFieldDefault-D5EW44ZU.js.map} +0 -0
  420. /package/dist/{TextFieldDefault-2GEILZPU.js.map → TextAreaFieldDefault-32E5FGS7.js.map} +0 -0
  421. /package/dist/{WorkScheduleFieldDefault-XH4AEXSM.js.map → TextFieldDefault-FCVIHZTV.js.map} +0 -0
  422. /package/dist/{ZendeskDrawerDefault-A5PVWI4R.js.map → WorkScheduleFieldDefault-5JZPKI2P.js.map} +0 -0
  423. /package/dist/{chunk-BYDQHL6O.js.map → chunk-2UZ72KAQ.js.map} +0 -0
  424. /package/dist/{chunk-ADTGWDQ7.js.map → chunk-33IPP266.js.map} +0 -0
  425. /package/dist/{chunk-UJXUKEQU.js.map → chunk-36NGPS63.js.map} +0 -0
  426. /package/dist/{chunk-OQ5WZBDA.js.map → chunk-3SECILYU.js.map} +0 -0
  427. /package/dist/{chunk-C4MRFGQG.js.map → chunk-3VWXALRD.js.map} +0 -0
  428. /package/dist/{chunk-VB6KFDBL.js.map → chunk-5EDCZGZV.js.map} +0 -0
  429. /package/dist/{chunk-6QEF52IP.js.map → chunk-5EHJ5HTV.js.map} +0 -0
  430. /package/dist/{chunk-YOFBRZUZ.js.map → chunk-5F5BHJQO.js.map} +0 -0
  431. /package/dist/{chunk-3DMWQJ5W.js.map → chunk-64AJX2DH.js.map} +0 -0
  432. /package/dist/{chunk-MSBCYMSH.js.map → chunk-6SDLOAEO.js.map} +0 -0
  433. /package/dist/{chunk-TNN3W5TU.js.map → chunk-6Y4QJ7WK.js.map} +0 -0
  434. /package/dist/{chunk-L3LOATSG.js.map → chunk-75P5LUKA.js.map} +0 -0
  435. /package/dist/{chunk-56UXOD27.js.map → chunk-7N2A2ZJ5.js.map} +0 -0
  436. /package/dist/{chunk-H5PRUDCX.js.map → chunk-7VKV5G6N.js.map} +0 -0
  437. /package/dist/{chunk-SNECOPBD.js.map → chunk-ACKYD4QC.js.map} +0 -0
  438. /package/dist/{chunk-G5O2CM6V.js.map → chunk-AMSYQQG7.js.map} +0 -0
  439. /package/dist/{chunk-AS77PXWM.js.map → chunk-AXGWQVCT.js.map} +0 -0
  440. /package/dist/{chunk-NAMR4DA5.js.map → chunk-B5UGFNCU.js.map} +0 -0
  441. /package/dist/{chunk-WD2JGIDK.js.map → chunk-BAE2OWEH.js.map} +0 -0
  442. /package/dist/{chunk-LSVH4U4W.js.map → chunk-BAKE7YEE.js.map} +0 -0
  443. /package/dist/{chunk-2AYGZ4RY.js.map → chunk-BI3PHE5N.js.map} +0 -0
  444. /package/dist/{chunk-7BGANM2R.js.map → chunk-BMLTMXEK.js.map} +0 -0
  445. /package/dist/{chunk-4FMQTOXJ.js.map → chunk-BS4A6UYL.js.map} +0 -0
  446. /package/dist/{chunk-2V4CTIAG.js.map → chunk-BTP3NN3N.js.map} +0 -0
  447. /package/dist/{chunk-SXKIRVA2.js.map → chunk-C6ARUHCB.js.map} +0 -0
  448. /package/dist/{chunk-KKMW7Q42.js.map → chunk-DEVQ2NNK.js.map} +0 -0
  449. /package/dist/{chunk-SNBAM7SA.js.map → chunk-DYNVJFJH.js.map} +0 -0
  450. /package/dist/{chunk-KXT6ACFL.js.map → chunk-EC6ZM3SX.js.map} +0 -0
  451. /package/dist/{chunk-SADMJJDB.js.map → chunk-FIM36WNY.js.map} +0 -0
  452. /package/dist/{chunk-6JTHV4QS.js.map → chunk-FOBUW3RN.js.map} +0 -0
  453. /package/dist/{chunk-TQXCLXWH.js.map → chunk-FTC4EFBO.js.map} +0 -0
  454. /package/dist/{chunk-NKMO2WW3.js.map → chunk-FZO24P53.js.map} +0 -0
  455. /package/dist/{chunk-C32W6TCT.js.map → chunk-FZVUO3UU.js.map} +0 -0
  456. /package/dist/{chunk-VY6W6W6F.js.map → chunk-GHYCSTSK.js.map} +0 -0
  457. /package/dist/{chunk-SXM3GJ5M.js.map → chunk-HMVU7HJL.js.map} +0 -0
  458. /package/dist/{chunk-QLYFMDLB.js.map → chunk-I2DXGO23.js.map} +0 -0
  459. /package/dist/{chunk-K4YQQMHD.js.map → chunk-IK27ZFUU.js.map} +0 -0
  460. /package/dist/{chunk-CKVI2UDU.js.map → chunk-INV4YWPR.js.map} +0 -0
  461. /package/dist/{chunk-7SO6WCYM.js.map → chunk-IY3ASS7L.js.map} +0 -0
  462. /package/dist/{chunk-JF3KLAB5.js.map → chunk-JFD2OJ6L.js.map} +0 -0
  463. /package/dist/{chunk-NAF6LRSS.js.map → chunk-JMDINYDB.js.map} +0 -0
  464. /package/dist/{chunk-RDYN6W2A.js.map → chunk-JWP4HAIS.js.map} +0 -0
  465. /package/dist/{chunk-R4X2WQXX.js.map → chunk-JXWFFVQO.js.map} +0 -0
  466. /package/dist/{chunk-PZAYG2DF.js.map → chunk-K56VMRZ5.js.map} +0 -0
  467. /package/dist/{chunk-2K2RK7RF.js.map → chunk-KJMPEOZ7.js.map} +0 -0
  468. /package/dist/{chunk-L5DII4MV.js.map → chunk-KVMWDA6O.js.map} +0 -0
  469. /package/dist/{chunk-DXIJUMLU.js.map → chunk-LBJAKZ6V.js.map} +0 -0
  470. /package/dist/{chunk-VWBA3U4U.js.map → chunk-LFYDEIZG.js.map} +0 -0
  471. /package/dist/{chunk-HIFEVMKP.js.map → chunk-NORWRQQM.js.map} +0 -0
  472. /package/dist/{chunk-HNCOYMS5.js.map → chunk-O6H23YQW.js.map} +0 -0
  473. /package/dist/{chunk-RAH453TV.js.map → chunk-OJTYP5W7.js.map} +0 -0
  474. /package/dist/{chunk-VPSESR6G.js.map → chunk-OXCSFW3F.js.map} +0 -0
  475. /package/dist/{chunk-AYC6DTFV.js.map → chunk-PX6B2DBO.js.map} +0 -0
  476. /package/dist/{chunk-BNQFPYNQ.js.map → chunk-PZFFXEI3.js.map} +0 -0
  477. /package/dist/{chunk-7QXULBD7.js.map → chunk-QLJMIWS4.js.map} +0 -0
  478. /package/dist/{chunk-NNFWLL7F.js.map → chunk-R5WFXN2Z.js.map} +0 -0
  479. /package/dist/{chunk-UQBKFWUI.js.map → chunk-R7WSWTCF.js.map} +0 -0
  480. /package/dist/{chunk-XBPTFEGC.js.map → chunk-RD5FPT3Y.js.map} +0 -0
  481. /package/dist/{chunk-JQJBDHAL.js.map → chunk-RPCS3K2I.js.map} +0 -0
  482. /package/dist/{chunk-H5QXOIKS.js.map → chunk-RRZ2GPQS.js.map} +0 -0
  483. /package/dist/{chunk-YWOJ4NKF.js.map → chunk-RUYVQ6R6.js.map} +0 -0
  484. /package/dist/{chunk-7V2QPZ2F.js.map → chunk-SJVCXKRO.js.map} +0 -0
  485. /package/dist/{chunk-VK7T332E.js.map → chunk-SP2V52RP.js.map} +0 -0
  486. /package/dist/{chunk-MSEHAEEK.js.map → chunk-TFJOJCCS.js.map} +0 -0
  487. /package/dist/{chunk-BZAO32QW.js.map → chunk-TUPZTWGP.js.map} +0 -0
  488. /package/dist/{chunk-WRRTZ2AL.js.map → chunk-UBNSYRKM.js.map} +0 -0
  489. /package/dist/{chunk-3C6N7DK6.js.map → chunk-UN4RAIAR.js.map} +0 -0
  490. /package/dist/{chunk-AS6KFUXS.js.map → chunk-UZNF4JV3.js.map} +0 -0
  491. /package/dist/{chunk-3BBQDNZD.js.map → chunk-V5OIMFSH.js.map} +0 -0
  492. /package/dist/{chunk-7ZFZYZSP.js.map → chunk-VDVWAYXP.js.map} +0 -0
  493. /package/dist/{chunk-7G5JSUZU.js.map → chunk-VHAJRKCI.js.map} +0 -0
  494. /package/dist/{chunk-BAMGHBLT.js.map → chunk-VSXPCSKU.js.map} +0 -0
  495. /package/dist/{chunk-UMVA4SIV.js.map → chunk-W2ZXKNL4.js.map} +0 -0
  496. /package/dist/{chunk-MP3VDCI7.js.map → chunk-XADVV6OP.js.map} +0 -0
  497. /package/dist/{chunk-R3BBN7TV.js.map → chunk-XHZHFM2J.js.map} +0 -0
  498. /package/dist/{chunk-W6OOI5NF.js.map → chunk-XUT44QU6.js.map} +0 -0
  499. /package/dist/{chunk-GOTY4N6S.js.map → chunk-XXXLKG43.js.map} +0 -0
  500. /package/dist/{chunk-547UHEDI.js.map → chunk-YYMGZZTO.js.map} +0 -0
  501. /package/dist/{chunk-MG4PHNSS.js.map → chunk-ZS7YCDY6.js.map} +0 -0
  502. /package/dist/{chunk-JKB4KOVF.js.map → chunk-ZYAMVSAL.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{a as qe}from"./chunk-VWBA3U4U.js";import{a as Je}from"./chunk-VAIBLWOY.js";import{a as Be}from"./chunk-MSEHAEEK.js";import{b as Pe,c as xe,f as Oe,g as Me,h as Re,i as ve,j as we,k as Te,m as Le,n as ke}from"./chunk-UMLRTS3B.js";import{a as ge,b as Ee,c as Ce,d as Fe,f as he,g as Ve}from"./chunk-LXOYWRNU.js";import{e as C,f as T,h as $}from"./chunk-D5AO6SOM.js";import{h as M}from"./chunk-VIGKOVHP.js";import{a as w}from"./chunk-X6ZAR7ZL.js";import{a as De}from"./chunk-TSPDJUGG.js";import{a as r}from"./chunk-P37U34EQ.js";import{useCallback as ht,useEffect as Vt,useMemo as p,useRef as Pt,useState as Ue}from"react";import xt from"lodash.mergewith";import{createContext as _t,useContext as St,useMemo as bt,useCallback as gt,useRef as Et}from"react";import{jsx as Ct}from"react/jsx-runtime";var je=_t(void 0);function Lt({children:a}){let u=Et({}),c=gt(o=>{u.current={...u.current,...o}},[]),F=bt(()=>({errorContextRef:u,updateContext:c}),[c]);return Ct(je.Provider,{value:F,children:a})}r(Lt,"ErrorContextProvider");var Ne=r(()=>{let a=St(je);if(!a)throw new Error("useErrorContext must be used within ErrorContextProvider");return a},"useErrorContext");import{useEffect as Ae,useMemo as Ft}from"react";function Ie(a){let{updateContext:u,errorContextRef:c}=Ne();return Ae(()=>{a&&(c.current=a)},[]),Ae(()=>()=>{c.current={}},[c]),{...Ft(()=>({updateErrorContext:r(o=>{u(o)},"updateErrorContext"),clearErrorContext:r(()=>{c.current={}},"clearErrorContext")}),[]),errorContext:c}}r(Ie,"useErrorReporting");import{jsx as He}from"react/jsx-runtime";var Ot={employment_basic_information:"basic_information",contract_details:"contract_details"},Mt={select_country:null,basic_information:"employment_basic_information",contract_details:"contract_details",benefits:null,review:null},Rt=r(({isLoadingBasicInformationForm:a,isLoadingContractDetailsForm:u,isLoadingEmployment:c,isLoadingBenefitsOffersSchema:F,isLoadingBenefitOffers:o,isLoadingCompany:N,isLoadingCountries:R,employmentStatus:s,employmentId:L,currentStepName:A,basicInformationFields:I,contractDetailsFields:y})=>{let t=a||u||c||F||o||N||R,k=s&&Ce.includes(s),U=s&&!Fe.includes(s),B=!!(L&&k&&A!=="review"),v=t||B,D=!!(B&&!t&&I.length>0&&y.length>0);return{isLoading:v,isNavigatingToReview:D,isEmploymentReadOnly:k,canInvite:U}},"getLoadingStates"),en=r(({employmentId:a,companyId:u,countryCode:c,type:F,options:o,skipSteps:N,externalId:R,initialValues:s})=>{let{updateErrorContext:L}=Ie({flow:"onboarding",metadata:{employmentId:a,companyId:u,isUpdating:!!a}}),A=N?.includes("select_country")?Ee:ge,I=ht(e=>{L({step:e.name})},[L]),{fieldValues:y,stepState:t,setFieldValues:k,previousStep:U,nextStep:B,goToStep:v,setStepValues:D}=De(A,I),q=Pt({select_country:{},basic_information:{},contract_details:{},benefits:{}}),[l,We]=Ue(a),[d,z]=Ue(c||null),{data:m,isLoading:K,refetch:Ge}=Be({employmentId:l,queryParams:{exclude_files:!0}});a&&m?.country?.code&&!d&&z(m.country.code);let{data:Q,isLoading:Y}=xe(l),{data:J,isLoading:X,refetch:$e}=Pe(u),ze=o?.features?.includes("onboarding_reserves")&&t.currentStep.name==="review"||!1,{data:Ke}=ke(u,l,ze),{selectCountryForm:j,isLoading:Z}=Te({jsfModify:o?.jsfModify?.select_country,queryOptions:{enabled:t.currentStep.name==="select_country"}}),ee=Re(o),te=ve(d,o),ne=we(o),oe=Le(),{mutateAsync:Qe}=w(ee),{mutateAsync:re}=w(te),{mutateAsync:Ye}=w(ne),{mutateAsync:Xe}=w(oe),Ze=Mt[t.currentStep.name]||"employment_basic_information",et=Ot[Ze],tt=m?.[et]||{},ae=r(({form:e,options:i={},query:f={},jsonSchemaVersion:O})=>{let W=Object.keys(y).length>0?{...s,...t.values?.[t.currentStep.name],...y}:{...s,...tt};return Oe({countryCode:d,form:e,fieldValues:W,query:f,options:{...i,queryOptions:{enabled:i.queryOptions?.enabled??!0}},jsonSchemaVersion:O})},"useJSONSchema"),nt=!!(d&&(t.currentStep.name==="basic_information"||a)),ot=!!(d&&(t.currentStep.name==="contract_details"||a)),{data:_,isLoading:ie}=ae({form:"employment_basic_information",options:{jsfModify:o?.jsfModify?.basic_information,queryOptions:{enabled:nt}},jsonSchemaVersion:Ve(o)}),h=o?.jsfModify?.contract_details?.fields?.annual_gross_salary,H=h&&typeof h=="object"&&"presentation"in h?h.presentation:void 0,se=o?.jsfModify?.contract_details?.fields?.equity_compensation,rt=p(()=>({fields:{annual_gross_salary:{...h,presentation:{annual_gross_salary_conversion_properties:{label:H?.annual_gross_salary_conversion_properties?.label,description:H?.annual_gross_salary_conversion_properties?.description},desiredCurrency:J?.desired_currency,Component:r(e=>He(qe,{desiredCurrency:J?.desired_currency||"",...e}),"Component")}},equity_compensation:{...se,presentation:{calculateDynamicProperties:r((e,i)=>{let f=e.equity_compensation?.offer_equity_compensation,O=i?.meta?.cost;return{extra:He(Je,{offerEquity:f,equityCost:O})}},"calculateDynamicProperties")}}}}),[h,H,J?.desired_currency,se]),at=he(o,d),{data:S,isLoading:ce}=ae({form:"contract_details",query:{employment_id:l},options:{jsfModify:{...o?.jsfModify?.contract_details,fields:{...o?.jsfModify?.contract_details?.fields,...rt.fields}},queryOptions:{enabled:ot}},jsonSchemaVersion:at}),{data:g,isLoading:le}=Me(l,y,o),de=p(()=>{if(t.currentStep.name==="benefits"){let e={...t.values?.[t.currentStep.name],...y};return xt({},Q,e)}return{}},[t.currentStep.name,Q,t.values,y]),n=p(()=>({select_country:j?.fields||[],basic_information:_?.fields||[],contract_details:S?.fields||[],benefits:g?.fields||[],review:[]}),[j?.fields,_?.fields,S?.fields,g?.fields]),it={select_country:null,basic_information:_?.meta["x-jsf-fieldsets"],contract_details:S?.meta["x-jsf-fieldsets"],benefits:null,review:null},{country:st,basic_information:ue={},contract_details:me={},status:fe}=m||{},pe=st?.code,ye=t.currentStep.name,V=p(()=>T(n.select_country,{country:d||pe||""}),[n.select_country,d,pe]),P=p(()=>{let e={...s,...ue};return T(n.basic_information,e)},[n.basic_information,ue,s]),E=p(()=>{let e={...s,...me};return T(n.contract_details,e)},[n.contract_details,me,s]),x=p(()=>{let e={...s,...de};return T(n.benefits,e)},[n.benefits,de,s]),ct=p(()=>m?{select_country:V,basic_information:$(n.basic_information,P),contract_details:m?.contract_details!==null?$(n.contract_details,E):E,benefits:x}:{select_country:V,basic_information:P,contract_details:E,benefits:x},[V,P,E,x,m,n]),{isLoading:lt,isNavigatingToReview:_e,isEmploymentReadOnly:dt,canInvite:ut}=p(()=>Rt({isLoadingBasicInformationForm:ie,isLoadingContractDetailsForm:ce,isLoadingEmployment:K,isLoadingBenefitsOffersSchema:le,isLoadingBenefitOffers:Y,isLoadingCompany:X,isLoadingCountries:Z,employmentId:a,employmentStatus:fe,basicInformationFields:n.basic_information,contractDetailsFields:n.contract_details,currentStepName:ye}),[ie,ce,K,le,Y,X,Z,a,fe,n.basic_information,n.contract_details,ye]);Vt(()=>{_e&&(q.current={select_country:M(V,n.select_country),basic_information:M(P,n.basic_information),contract_details:M(E,n.contract_details),benefits:M(x,n.benefits)},D({select_country:V,basic_information:P,contract_details:E,benefits:x,review:{}}),v("review"))},[P,x,E,v,_e,V,D,n.basic_information,n.benefits,n.contract_details,n.select_country]);let Se=r(async e=>j&&t.currentStep.name==="select_country"?e:_&&t.currentStep.name==="basic_information"?await C(e,_?.fields,{isPartialValidation:!1}):S&&t.currentStep.name==="contract_details"?await C(e,S?.fields,{isPartialValidation:!1}):g&&t.currentStep.name==="benefits"?await C(e,g?.fields,{isPartialValidation:!1}):{},"parseFormValues");async function mt(e){let i=t.currentStep.name;i in q.current&&(q.current[i]=M(e,n[i]));let f=await Se(e);switch($e(),t.currentStep.name){case"select_country":return z(f.country),Promise.resolve({data:{countryCode:f.country}});case"basic_information":{let O=!l&&d,be=l&&d&&m?.country&&m?.country.code!==d;if(O||be){let W={basic_information:f,type:F,country_code:d,external_id:R};try{let b=await Qe(W);if(b.error)return b;if(b.data){let G=b.data?.data?.employment?.id;return G&&(We(G),await Xe({employmentId:G,eligible_to_work_in_residing_country:"citizen",employer_or_work_restrictions:!1})),b}}catch(b){throw console.error("Error creating onboarding:",b),b}}else if(l)return re({employmentId:l,basic_information:f,pricing_plan_details:{frequency:"monthly"},external_id:R});return}case"contract_details":return re({employmentId:l,external_id:R,...{contract_details:f,pricing_plan_details:{frequency:"monthly"}}});case"benefits":return Ye({employmentId:l,...f})}}r(mt,"onSubmit");function ft(){U()}r(ft,"back");function pt(){B()}r(pt,"next");function yt(e){v(e)}return r(yt,"goTo"),{employmentId:l,creditRiskStatus:J?.default_legal_entity_credit_risk_status,onboardingReservesStatus:Ke,fieldValues:y,stepState:t,fields:n[t.currentStep.name],isLoading:lt,isSubmitting:ee.isPending||te.isPending||ne.isPending||oe.isPending,initialValues:ct,handleValidation:r(async e=>{if(t.currentStep.name==="select_country")return j.handleValidation(e);if(t.currentStep.name==="benefits"&&g){let i=await C(e,g?.fields,{isPartialValidation:!1});return g?.handleValidation(i)}if(_&&t.currentStep.name==="basic_information"){let i=await C(e,_?.fields,{isPartialValidation:!1});return _?.handleValidation(i)}if(S&&t.currentStep.name==="contract_details"){let i=await C(e,S?.fields,{isPartialValidation:!1});return S?.handleValidation(i)}return null},"handleValidation"),checkFieldUpdates:k,parseFormValues:Se,onSubmit:mt,back:ft,next:pt,goTo:yt,meta:{fields:q.current,fieldsets:it[t.currentStep.name]},refetchEmployment:Ge,employment:m,isEmploymentReadOnly:dt,canInvite:ut}},"useOnboarding");export{je as a,Lt as b,en as c};
2
- //# sourceMappingURL=chunk-HDH5PEOK.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/hooks.tsx","../src/components/error-handling/ErrorContext.tsx","../src/components/error-handling/useErrorReporting.ts"],"sourcesContent":["import { ValidationResult } from '@remoteoss/remote-json-schema-form-kit';\nimport {\n Employment,\n EmploymentCreateParams,\n EmploymentFullParams,\n} from '@/src/client';\nimport { JSFFields } from '@/src/types/remoteFlows';\nimport { useStepState, Step } from '@/src/flows/useStepState';\nimport {\n disabledInviteButtonEmploymentStatus,\n getContractDetailsSchemaVersion,\n getBasicInformationSchemaVersion,\n reviewStepAllowedEmploymentStatus,\n STEPS,\n STEPS_WITHOUT_SELECT_COUNTRY,\n} from '@/src/flows/Onboarding/utils';\nimport { prettifyFormValues } from '@/src/lib/utils';\nimport {\n getInitialValues,\n enableAckFields,\n parseJSFToValidate,\n} from '@/src/components/form/utils';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport { FieldValues } from 'react-hook-form';\nimport { OnboardingFlowProps } from '@/src/flows/Onboarding/types';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport mergeWith from 'lodash.mergewith';\nimport {\n useBenefitOffers,\n useBenefitOffersSchema,\n useCompany,\n useCountriesSchemaField,\n useCreateEmployment,\n useEmploymentOnboardingReservesStatus,\n useJSONSchemaForm,\n useUpdateBenefitsOffers,\n useUpdateEmployment,\n useUpsertContractEligibility,\n} from '@/src/flows/Onboarding/api';\nimport { JSFModify, JSONSchemaFormType } from '@/src/flows/types';\nimport { AnnualGrossSalary } from '@/src/flows/Onboarding/components/AnnualGrossSalary';\nimport { $TSFixMe, JSFField, JSFFieldset, Meta } from '@/src/types/remoteFlows';\nimport { EquityPriceDetails } from '@/src/flows/Onboarding/components/EquityPriceDetails';\nimport { useErrorReporting } from '@/src/components/error-handling/useErrorReporting';\nimport { useEmploymentQuery } from '@/src/common/api/employment';\n\ntype OnboardingHookProps = Omit<OnboardingFlowProps, 'render'>;\n\nconst jsonSchemaToEmployment: Partial<\n Record<JSONSchemaFormType, keyof Employment>\n> = {\n employment_basic_information: 'basic_information',\n contract_details: 'contract_details',\n};\n\nconst stepToFormSchemaMap: Record<\n keyof typeof STEPS,\n JSONSchemaFormType | null\n> = {\n select_country: null,\n basic_information: 'employment_basic_information',\n contract_details: 'contract_details',\n benefits: null,\n review: null,\n};\n\nconst getLoadingStates = ({\n isLoadingBasicInformationForm,\n isLoadingContractDetailsForm,\n isLoadingEmployment,\n isLoadingBenefitsOffersSchema,\n isLoadingBenefitOffers,\n isLoadingCompany,\n isLoadingCountries,\n employmentStatus,\n employmentId,\n currentStepName,\n basicInformationFields,\n contractDetailsFields,\n}: {\n isLoadingBasicInformationForm: boolean;\n isLoadingContractDetailsForm: boolean;\n isLoadingEmployment: boolean;\n isLoadingBenefitsOffersSchema: boolean;\n isLoadingBenefitOffers: boolean;\n isLoadingCompany: boolean;\n isLoadingCountries: boolean;\n employmentStatus?: Employment['status'];\n employmentId?: string;\n currentStepName: string;\n basicInformationFields: JSFFields;\n contractDetailsFields: JSFFields;\n}) => {\n const initialLoading =\n isLoadingBasicInformationForm ||\n isLoadingContractDetailsForm ||\n isLoadingEmployment ||\n isLoadingBenefitsOffersSchema ||\n isLoadingBenefitOffers ||\n isLoadingCompany ||\n isLoadingCountries;\n\n const isEmploymentReadOnly =\n employmentStatus &&\n reviewStepAllowedEmploymentStatus.includes(employmentStatus);\n\n const canInvite =\n employmentStatus &&\n !disabledInviteButtonEmploymentStatus.includes(employmentStatus);\n\n const shouldHandleReadOnlyEmployment = Boolean(\n employmentId && isEmploymentReadOnly && currentStepName !== 'review',\n );\n\n const isLoading = initialLoading || shouldHandleReadOnlyEmployment;\n\n const isNavigatingToReview = Boolean(\n shouldHandleReadOnlyEmployment &&\n !initialLoading &&\n basicInformationFields.length > 0 &&\n contractDetailsFields.length > 0,\n );\n\n return {\n isLoading,\n isNavigatingToReview,\n isEmploymentReadOnly,\n canInvite,\n };\n};\n\nexport const useOnboarding = ({\n employmentId,\n companyId,\n countryCode,\n type,\n options,\n skipSteps,\n externalId,\n initialValues: onboardingInitialValues,\n}: OnboardingHookProps) => {\n const { updateErrorContext } = useErrorReporting({\n flow: 'onboarding',\n metadata: {\n employmentId,\n companyId,\n isUpdating: Boolean(employmentId),\n },\n });\n const stepsToUse = skipSteps?.includes('select_country')\n ? STEPS_WITHOUT_SELECT_COUNTRY\n : STEPS;\n\n const onStepChange = useCallback(\n (step: Step<keyof typeof STEPS>) => {\n updateErrorContext({\n step: step.name,\n });\n },\n [updateErrorContext],\n );\n\n const {\n fieldValues,\n stepState,\n setFieldValues,\n previousStep,\n nextStep,\n goToStep,\n setStepValues,\n } = useStepState(\n stepsToUse as Record<keyof typeof STEPS, Step<keyof typeof STEPS>>,\n onStepChange,\n );\n\n const fieldsMetaRef = useRef<{\n select_country: Meta;\n basic_information: Meta;\n contract_details: Meta;\n benefits: Meta;\n }>({\n select_country: {},\n basic_information: {},\n contract_details: {},\n benefits: {},\n });\n const [internalEmploymentId, setInternalEmploymentId] = useState<\n string | undefined\n >(employmentId);\n const [internalCountryCode, setInternalCountryCode] = useState<string | null>(\n countryCode || null,\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 // 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 { data: benefitOffers, isLoading: isLoadingBenefitOffers } =\n useBenefitOffers(internalEmploymentId);\n\n const {\n data: company,\n isLoading: isLoadingCompany,\n refetch: refetchCompany,\n } = useCompany(companyId);\n\n const isOnboardingReservesEnabled =\n (options?.features?.includes('onboarding_reserves') &&\n stepState.currentStep.name === 'review') ||\n false;\n\n const { data: onboardingReservesStatus } =\n useEmploymentOnboardingReservesStatus(\n companyId,\n internalEmploymentId,\n isOnboardingReservesEnabled,\n );\n\n const { selectCountryForm, isLoading: isLoadingCountries } =\n useCountriesSchemaField({\n jsfModify: options?.jsfModify?.select_country,\n queryOptions: {\n enabled: stepState.currentStep.name === 'select_country',\n },\n });\n\n const createEmploymentMutation = useCreateEmployment(options);\n const updateEmploymentMutation = useUpdateEmployment(\n internalCountryCode as string,\n options,\n );\n const updateBenefitsOffersMutation = useUpdateBenefitsOffers(options);\n const updateContractEligibilityMutation = useUpsertContractEligibility();\n const { mutateAsync: createEmploymentMutationAsync } = mutationToPromise(\n createEmploymentMutation,\n );\n const { mutateAsync: updateEmploymentMutationAsync } = mutationToPromise(\n updateEmploymentMutation,\n );\n const { mutateAsync: updateBenefitsOffersMutationAsync } = mutationToPromise(\n updateBenefitsOffersMutation,\n );\n const { mutateAsync: updateContractEligibilityMutationAsync } =\n mutationToPromise(updateContractEligibilityMutation);\n\n const formType =\n stepToFormSchemaMap[stepState.currentStep.name] ||\n 'employment_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 jsonSchemaVersion,\n }: {\n form: JSONSchemaFormType;\n options?: {\n jsfModify?: JSFModify;\n queryOptions?: { enabled?: boolean };\n };\n query?: Record<string, string>;\n jsonSchemaVersion?: number | 'latest';\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 jsonSchemaVersion,\n });\n };\n\n const isBasicInformationDetailsEnabled = Boolean(\n internalCountryCode &&\n (stepState.currentStep.name === 'basic_information' ||\n Boolean(employmentId)),\n );\n\n const isContractDetailsEnabled = Boolean(\n internalCountryCode &&\n (stepState.currentStep.name === 'contract_details' ||\n Boolean(employmentId)),\n );\n\n const {\n data: basicInformationForm,\n isLoading: isLoadingBasicInformationForm,\n } = useJSONSchema({\n form: 'employment_basic_information',\n options: {\n jsfModify: options?.jsfModify?.basic_information,\n queryOptions: {\n enabled: isBasicInformationDetailsEnabled,\n },\n },\n jsonSchemaVersion: getBasicInformationSchemaVersion(options),\n });\n\n const annualGrossSalaryField =\n options?.jsfModify?.contract_details?.fields?.annual_gross_salary;\n const annualSalaryFieldPresentation =\n annualGrossSalaryField &&\n typeof annualGrossSalaryField === 'object' &&\n 'presentation' in annualGrossSalaryField\n ? (\n annualGrossSalaryField as {\n presentation?: {\n annual_gross_salary_conversion_properties?: {\n label?: string;\n description?: string;\n };\n };\n }\n ).presentation\n : undefined;\n\n const equityCompensationField =\n options?.jsfModify?.contract_details?.fields?.equity_compensation;\n\n const contractDetailsCustomFields = useMemo(\n () => ({\n fields: {\n annual_gross_salary: {\n ...annualGrossSalaryField,\n presentation: {\n annual_gross_salary_conversion_properties: {\n label:\n annualSalaryFieldPresentation\n ?.annual_gross_salary_conversion_properties?.label,\n description:\n annualSalaryFieldPresentation\n ?.annual_gross_salary_conversion_properties?.description,\n },\n desiredCurrency: company?.desired_currency,\n Component: (props: JSFField & { currency: string }) => {\n return (\n <AnnualGrossSalary\n desiredCurrency={company?.desired_currency || ''}\n {...props}\n />\n );\n },\n },\n },\n equity_compensation: {\n ...equityCompensationField,\n presentation: {\n calculateDynamicProperties: (\n values: FieldValues,\n field: JSFField,\n ) => {\n const offerEquity =\n values.equity_compensation?.offer_equity_compensation;\n const equityCost = field?.meta?.cost;\n\n return {\n extra: (\n <EquityPriceDetails\n offerEquity={offerEquity}\n equityCost={equityCost as $TSFixMe}\n />\n ),\n };\n },\n },\n },\n },\n }),\n [\n annualGrossSalaryField,\n annualSalaryFieldPresentation,\n company?.desired_currency,\n equityCompensationField,\n ],\n );\n\n const effectiveContractDetailsJsonSchemaVersion =\n getContractDetailsSchemaVersion(options, internalCountryCode);\n\n const { data: contractDetailsForm, isLoading: isLoadingContractDetailsForm } =\n useJSONSchema({\n form: 'contract_details',\n query: {\n employment_id: internalEmploymentId as string,\n },\n options: {\n jsfModify: {\n ...options?.jsfModify?.contract_details,\n fields: {\n ...options?.jsfModify?.contract_details?.fields,\n ...contractDetailsCustomFields.fields,\n },\n },\n queryOptions: {\n enabled: isContractDetailsEnabled,\n },\n },\n jsonSchemaVersion: effectiveContractDetailsJsonSchemaVersion,\n });\n\n const {\n data: benefitOffersSchema,\n isLoading: isLoadingBenefitsOffersSchema,\n } = useBenefitOffersSchema(\n internalEmploymentId as string,\n fieldValues,\n options,\n );\n\n const initialValuesBenefitOffers = useMemo(() => {\n if (stepState.currentStep.name === 'benefits') {\n const benefitsFormValues = {\n ...stepState.values?.[stepState.currentStep.name as keyof typeof STEPS], // Restore values for the current step\n ...fieldValues,\n };\n return mergeWith({}, benefitOffers, benefitsFormValues);\n }\n return {};\n }, [\n stepState.currentStep.name,\n benefitOffers,\n stepState.values,\n fieldValues,\n ]);\n\n const stepFields: Record<keyof typeof STEPS, JSFFields> = useMemo(\n () => ({\n select_country: selectCountryForm?.fields || [],\n basic_information: basicInformationForm?.fields || [],\n contract_details: contractDetailsForm?.fields || [],\n benefits: benefitOffersSchema?.fields || [],\n review: [],\n }),\n [\n selectCountryForm?.fields,\n basicInformationForm?.fields,\n contractDetailsForm?.fields,\n benefitOffersSchema?.fields,\n ],\n );\n\n const stepFieldsWithFlatFieldsets: Record<\n keyof typeof STEPS,\n JSFFieldset | null | undefined\n > = {\n select_country: null,\n basic_information: basicInformationForm?.meta['x-jsf-fieldsets'],\n contract_details: contractDetailsForm?.meta['x-jsf-fieldsets'],\n benefits: null,\n review: null,\n };\n\n const {\n country,\n basic_information: employmentBasicInformation = {},\n contract_details: employmentContractDetails = {},\n status: employmentStatus,\n } = employment || {};\n\n const employmentCountryCode = country?.code;\n const currentStepName = stepState.currentStep.name;\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 const basicInformationInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n ...employmentBasicInformation,\n };\n\n return getInitialValues(stepFields.basic_information, initialValues);\n }, [\n stepFields.basic_information,\n employmentBasicInformation,\n onboardingInitialValues,\n ]);\n\n const contractDetailsInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n ...employmentContractDetails,\n };\n\n return getInitialValues(stepFields.contract_details, initialValues);\n }, [\n stepFields.contract_details,\n employmentContractDetails,\n onboardingInitialValues,\n ]);\n\n const benefitsInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n ...initialValuesBenefitOffers,\n };\n\n return getInitialValues(stepFields.benefits, initialValues);\n }, [\n stepFields.benefits,\n initialValuesBenefitOffers,\n onboardingInitialValues,\n ]);\n\n const initialValues = useMemo(() => {\n if (employment) {\n return {\n select_country: selectCountryInitialValues,\n // We don't store ack fields in the db, eg \"ack_start_date_ammendment\" for Argentina, and therefore is not returned in the employment response\n // So when an employmentId exists, it means that the user has already started the onboarding process, and we need to enable the ack fields\n basic_information: enableAckFields(\n stepFields['basic_information'],\n basicInformationInitialValues,\n ),\n contract_details:\n // if contract details is null, it means it has not been filled yet, so we can't enable the ack fields\n employment?.contract_details !== null\n ? enableAckFields(\n stepFields['contract_details'],\n contractDetailsInitialValues,\n )\n : contractDetailsInitialValues,\n benefits: benefitsInitialValues,\n };\n }\n return {\n select_country: selectCountryInitialValues,\n basic_information: basicInformationInitialValues,\n contract_details: contractDetailsInitialValues,\n benefits: benefitsInitialValues,\n };\n }, [\n selectCountryInitialValues,\n basicInformationInitialValues,\n contractDetailsInitialValues,\n benefitsInitialValues,\n employment,\n stepFields,\n ]);\n\n const { isLoading, isNavigatingToReview, isEmploymentReadOnly, canInvite } =\n useMemo(\n () =>\n getLoadingStates({\n isLoadingBasicInformationForm,\n isLoadingContractDetailsForm,\n isLoadingEmployment,\n isLoadingBenefitsOffersSchema,\n isLoadingBenefitOffers,\n isLoadingCompany,\n isLoadingCountries,\n employmentId,\n employmentStatus: employmentStatus,\n basicInformationFields: stepFields.basic_information,\n contractDetailsFields: stepFields.contract_details,\n currentStepName: currentStepName,\n }),\n [\n isLoadingBasicInformationForm,\n isLoadingContractDetailsForm,\n isLoadingEmployment,\n isLoadingBenefitsOffersSchema,\n isLoadingBenefitOffers,\n isLoadingCompany,\n isLoadingCountries,\n employmentId,\n employmentStatus,\n stepFields.basic_information,\n stepFields.contract_details,\n currentStepName,\n ],\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 benefits: prettifyFormValues(\n benefitsInitialValues,\n stepFields.benefits,\n ),\n };\n\n setStepValues({\n select_country: selectCountryInitialValues,\n basic_information: basicInformationInitialValues,\n contract_details: contractDetailsInitialValues,\n benefits: benefitsInitialValues,\n review: {},\n });\n\n goToStep('review');\n }\n }, [\n basicInformationInitialValues,\n benefitsInitialValues,\n contractDetailsInitialValues,\n goToStep,\n isNavigatingToReview,\n selectCountryInitialValues,\n setStepValues,\n stepFields.basic_information,\n stepFields.benefits,\n stepFields.contract_details,\n stepFields.select_country,\n ]);\n\n const parseFormValues = async (values: FieldValues) => {\n if (selectCountryForm && stepState.currentStep.name === 'select_country') {\n return values;\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 contractDetailsForm &&\n stepState.currentStep.name === 'contract_details'\n ) {\n return await parseJSFToValidate(values, contractDetailsForm?.fields, {\n isPartialValidation: false,\n });\n }\n\n if (benefitOffersSchema && stepState.currentStep.name === 'benefits') {\n return await parseJSFToValidate(values, benefitOffersSchema?.fields, {\n isPartialValidation: false,\n });\n }\n\n return {};\n };\n\n async function onSubmit(values: FieldValues) {\n // Prettify values for the current step\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\n const parsedValues = await parseFormValues(values);\n refetchCompany();\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 if (isEmploymentNotLoaded || hasChangedCountry) {\n const payload: EmploymentCreateParams = {\n basic_information: parsedValues,\n type: type,\n country_code: internalCountryCode,\n external_id: externalId,\n };\n try {\n const response = await createEmploymentMutationAsync(payload);\n\n if (response.error) {\n return response;\n }\n\n if (response.data) {\n // @ts-expect-error the types from the response are not matching\n const employmentId = response.data?.data?.employment?.id;\n if (employmentId) {\n setInternalEmploymentId(employmentId);\n await updateContractEligibilityMutationAsync({\n employmentId: employmentId,\n eligible_to_work_in_residing_country: 'citizen',\n employer_or_work_restrictions: false,\n });\n }\n\n return response;\n }\n } catch (error) {\n console.error('Error creating onboarding:', error);\n throw error;\n }\n } else if (internalEmploymentId) {\n return updateEmploymentMutationAsync({\n employmentId: internalEmploymentId,\n basic_information: parsedValues,\n pricing_plan_details: {\n frequency: 'monthly',\n },\n external_id: externalId,\n });\n }\n\n return;\n }\n case 'contract_details': {\n const payload: EmploymentFullParams = {\n contract_details: parsedValues,\n pricing_plan_details: {\n frequency: 'monthly',\n },\n };\n return updateEmploymentMutationAsync({\n employmentId: internalEmploymentId as string,\n external_id: externalId,\n ...payload,\n });\n }\n\n case 'benefits': {\n return updateBenefitsOffersMutationAsync({\n employmentId: internalEmploymentId as string,\n ...parsedValues,\n });\n }\n }\n return;\n }\n\n function back() {\n previousStep();\n }\n\n function next() {\n nextStep();\n }\n\n function goTo(step: keyof typeof STEPS) {\n goToStep(step);\n }\n\n return {\n /**\n * Employment id passed useful to be used between components\n */\n employmentId: internalEmploymentId,\n\n /**\n * Credit risk status of the company, useful to know what to to show in the review step\n * The possible values are:\n * - not_started\n * - ready\n * - in_progress\n * - referred\n * - fail\n * - deposit_required\n * - no_deposit_required\n */\n\n creditRiskStatus: company?.default_legal_entity_credit_risk_status,\n /**\n * Onboarding reserves status for the employment\n * Returns 'deposit_required' if a deposit is required based on onboarding reserves policies\n */\n onboardingReservesStatus: onboardingReservesStatus,\n /**\n * Current state of the form fields for the current step.\n */\n fieldValues,\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState,\n /**\n * Array of form fields from the onboarding schema\n */\n fields: stepFields[stepState.currentStep.name],\n /**\n * Loading state indicating if the onboarding schema is being fetched\n */\n isLoading: isLoading,\n /**\n * Loading state indicating if the onboarding mutation is in progress\n */\n isSubmitting:\n createEmploymentMutation.isPending ||\n updateEmploymentMutation.isPending ||\n updateBenefitsOffersMutation.isPending ||\n updateContractEligibilityMutation.isPending,\n /**\n * Initial form values\n */\n initialValues,\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 if (stepState.currentStep.name === 'benefits' && benefitOffersSchema) {\n const parsedValues = await parseJSFToValidate(\n values,\n benefitOffersSchema?.fields,\n { isPartialValidation: false },\n );\n\n return benefitOffersSchema?.handleValidation(parsedValues);\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 contractDetailsForm &&\n stepState.currentStep.name === 'contract_details'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n contractDetailsForm?.fields,\n { isPartialValidation: false },\n );\n return contractDetailsForm?.handleValidation(parsedValues);\n }\n\n return null;\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 parse form values before submission\n * @param values - Form values to parse\n * @returns Parsed form values\n */\n parseFormValues,\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 * Function to handle going back to the previous step\n * @returns {void}\n */\n back,\n\n /**\n * Function to handle going to the next step\n * @returns {void}\n */\n next,\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,\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 refetch the employment data\n * @returns {void}\n */\n refetchEmployment,\n /**\n * Employment data\n */\n employment,\n\n /**\n * let's the user know that the employment cannot be edited, happens when employment.status is invited, created_awaiting_reserve or created_reserve_paid\n * @returns {boolean}\n */\n isEmploymentReadOnly,\n\n /**\n * let's the user know if the company can invite employees\n * @returns {boolean}\n */\n canInvite,\n };\n};\n","import {\n createContext,\n useContext,\n ReactNode,\n useMemo,\n useCallback,\n useRef,\n RefObject,\n} from 'react';\nimport type { ErrorContextData } from './types';\n\nexport type ErrorContextValue = {\n errorContextRef: RefObject<ErrorContextData>;\n updateContext: (updates: Partial<ErrorContextData>) => void;\n};\n\nexport const ErrorContext = createContext<ErrorContextValue | undefined>(\n undefined,\n);\n\nexport function ErrorContextProvider({ children }: { children: ReactNode }) {\n const errorContextRef = useRef<ErrorContextData>({});\n\n const updateContext = useCallback((updates: Partial<ErrorContextData>) => {\n errorContextRef.current = { ...errorContextRef.current, ...updates };\n }, []);\n\n // Memoize the value object to prevent unnecessary re-renders\n // Note: setContext is stable from useState and doesn't need to be in deps\n const value = useMemo(\n () => ({\n errorContextRef,\n updateContext,\n }),\n [updateContext],\n );\n\n return (\n <ErrorContext.Provider value={value}>{children}</ErrorContext.Provider>\n );\n}\n\nexport const useErrorContext = () => {\n const ctx = useContext(ErrorContext);\n if (!ctx) {\n throw new Error('useErrorContext must be used within ErrorContextProvider');\n }\n return ctx;\n};\n","import { useErrorContext } from '@/src/components/error-handling/ErrorContext';\nimport { ErrorContextData } from '@/src/components/error-handling/types';\nimport { useEffect, useMemo } from 'react';\n\nexport function useErrorReporting(initialContext: ErrorContextData) {\n const { updateContext, errorContextRef } = useErrorContext();\n\n // Set initial context on mount\n useEffect(() => {\n if (initialContext) {\n errorContextRef.current = initialContext;\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // Clear context on unmount\n useEffect(() => {\n return () => {\n errorContextRef.current = {};\n };\n }, [errorContextRef]);\n\n // Note: setContext and updateContext are stable, don't need to be in deps\n const handlers = useMemo(\n () => ({\n updateErrorContext: (updates: Partial<ErrorContextData>) => {\n updateContext(updates);\n },\n\n clearErrorContext: () => {\n errorContextRef.current = {};\n },\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n\n return {\n ...handlers,\n /**\n * @internal For unit testing only - we access the errorContext in the error boundary directly\n * Use updateErrorContext() and clearErrorContext() handlers instead.\n */\n errorContext: errorContextRef,\n };\n}\n"],"mappings":"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","names":["useCallback","useEffect","useMemo","useRef","useState","mergeWith","createContext","useContext","useMemo","useCallback","useRef","jsx","ErrorContext","createContext","ErrorContextProvider","children","errorContextRef","useRef","updateContext","useCallback","updates","value","useMemo","__name","useErrorContext","ctx","useContext","useEffect","useMemo","useErrorReporting","initialContext","updateContext","errorContextRef","useErrorContext","useEffect","useMemo","__name","updates","jsx","jsonSchemaToEmployment","stepToFormSchemaMap","getLoadingStates","__name","isLoadingBasicInformationForm","isLoadingContractDetailsForm","isLoadingEmployment","isLoadingBenefitsOffersSchema","isLoadingBenefitOffers","isLoadingCompany","isLoadingCountries","employmentStatus","employmentId","currentStepName","basicInformationFields","contractDetailsFields","initialLoading","isEmploymentReadOnly","reviewStepAllowedEmploymentStatus","canInvite","disabledInviteButtonEmploymentStatus","shouldHandleReadOnlyEmployment","isLoading","isNavigatingToReview","useOnboarding","companyId","countryCode","type","options","skipSteps","externalId","onboardingInitialValues","updateErrorContext","useErrorReporting","stepsToUse","STEPS_WITHOUT_SELECT_COUNTRY","STEPS","onStepChange","useCallback","step","fieldValues","stepState","setFieldValues","previousStep","nextStep","goToStep","setStepValues","useStepState","fieldsMetaRef","useRef","internalEmploymentId","setInternalEmploymentId","useState","internalCountryCode","setInternalCountryCode","employment","refetchEmployment","useEmploymentQuery","benefitOffers","useBenefitOffers","company","refetchCompany","useCompany","isOnboardingReservesEnabled","onboardingReservesStatus","useEmploymentOnboardingReservesStatus","selectCountryForm","useCountriesSchemaField","createEmploymentMutation","useCreateEmployment","updateEmploymentMutation","useUpdateEmployment","updateBenefitsOffersMutation","useUpdateBenefitsOffers","updateContractEligibilityMutation","useUpsertContractEligibility","createEmploymentMutationAsync","mutationToPromise","updateEmploymentMutationAsync","updateBenefitsOffersMutationAsync","updateContractEligibilityMutationAsync","formType","employmentKey","serverEmploymentData","useJSONSchema","form","jsonSchemaOptions","query","jsonSchemaVersion","mergedFormValues","useJSONSchemaForm","isBasicInformationDetailsEnabled","isContractDetailsEnabled","basicInformationForm","getBasicInformationSchemaVersion","annualGrossSalaryField","annualSalaryFieldPresentation","equityCompensationField","contractDetailsCustomFields","useMemo","props","AnnualGrossSalary","values","field","offerEquity","equityCost","EquityPriceDetails","effectiveContractDetailsJsonSchemaVersion","getContractDetailsSchemaVersion","contractDetailsForm","benefitOffersSchema","useBenefitOffersSchema","initialValuesBenefitOffers","benefitsFormValues","mergeWith","stepFields","stepFieldsWithFlatFieldsets","country","employmentBasicInformation","employmentContractDetails","employmentCountryCode","selectCountryInitialValues","getInitialValues","basicInformationInitialValues","initialValues","contractDetailsInitialValues","benefitsInitialValues","enableAckFields","useEffect","prettifyFormValues","parseFormValues","parseJSFToValidate","onSubmit","parsedValues","isEmploymentNotLoaded","hasChangedCountry","payload","response","error","back","next","goTo"]}
@@ -1,2 +0,0 @@
1
- import{b as p}from"./chunk-KSHK3ZPX.js";import{a as F}from"./chunk-BI4RFXFL.js";import{h as C}from"./chunk-CWAFRJAQ.js";import{h as E}from"./chunk-VIGKOVHP.js";import{b as f}from"./chunk-X6ZAR7ZL.js";import{a as n}from"./chunk-P37U34EQ.js";import{useEffect as R}from"react";import{jsx as u}from"react/jsx-runtime";function T({onSubmit:S,onError:w,onSuccess:y,onErrorWithFields:c,shouldResetForm:d,resetFields:a}){let{form:e,formId:V,costCalculatorBag:o}=p(),{formState:{isSubmitSuccessful:s}}=e;R(()=>{if(s&&d){o?.resetForm(),e.reset();return}if(s&&a){let t={...e.getValues()};a.forEach(r=>{t[r]=""}),o?.resetForm(),e.reset(t)}},[s,e,d,o,a]);let b=n(async i=>{try{let t=await o?.parseFormValues(i);o?.meta?.fields&&(o.meta.fields=E(i,o.fields),o.meta.fields.employer_currency_slug=o.meta.fields.currency);let r=await o?.onSubmit(t);if(await S?.(t),r?.data&&!r.error){let l={data:{...r.data.data,employments:r.data.data.employments?.map(m=>({...m,title:t.estimation_title}))}};await y?.(l)}else throw{data:null,error:r?.error,fieldErrors:r?.fieldErrors,rawError:r?.rawError}}catch(t){let r=t,l=r.fieldErrors;if(c){let m=o?.meta?.fields,h=f(l,m);c({error:r.error,rawError:r.rawError,fieldErrors:h})}else w?.(r.error)}},"handleSubmit");return u(C,{...e,children:u("form",{id:V,onSubmit:e.handleSubmit(b),className:"space-y-4 RemoteFlows__CostCalculatorForm",children:u(F,{fields:o?.fields??[]})})})}n(T,"CostCalculatorForm");export{T as a};
2
- //# sourceMappingURL=chunk-JI5PQLWS.js.map
@@ -1,2 +0,0 @@
1
- import{a as Wt,b as ee,c as ie,d as ne,e as re,f as oe,h as ae,i as se,j as ce,k as le,l as ue,m as de,n as pe,o as me,p as fe,q as ye,r as _e,s as ge,t as be}from"./chunk-TNYFIB6U.js";import{a as Se,b as Ce,c as we}from"./chunk-VK7T332E.js";import{a as zt,b as Xt,f as Yt,g as Zt,h as te}from"./chunk-AHRG5QCS.js";import{a as $,b as nt,c as _,d as $t,g as Ht}from"./chunk-PX5PE6GX.js";import{a as Kt}from"./chunk-MSEHAEEK.js";import{f as Jt,h as Nt,i as Ut}from"./chunk-UMLRTS3B.js";import{a as Qt,e as y,f as D}from"./chunk-D5AO6SOM.js";import{h as P,i as R}from"./chunk-VIGKOVHP.js";import{L as xt}from"./chunk-H2RAK6F7.js";import{a as b}from"./chunk-X6ZAR7ZL.js";import{a as Gt}from"./chunk-TSPDJUGG.js";import{d as jt}from"./chunk-KQPDXXG3.js";import{a as u}from"./chunk-P37U34EQ.js";import{useEffect as T,useMemo as a,useRef as Pe,useState as q}from"react";import ve from"lodash.omit";import{useQuery as _i}from"@tanstack/react-query";var gi=u(()=>{let{client:L}=jt(),{data:A}=ee(),l=ie(A)?A?.company?.id??"":"";return _i({queryKey:["legal-entities",l],queryFn:u(()=>xt({client:L,path:{company_id:l},query:{page_size:100}}),"queryFn"),select:u(H=>H.data?.data?.legal_entities,"select"),enabled:!!l})},"useLegalEntities"),he=u(()=>{let{data:L}=gi();return L?.find(A=>A.is_default)},"useDefaultLegalEntity");var bi={select_country:null,basic_information:"employment_basic_information",contract_details:null,eligibility_questionnaire:null,pricing_plan:null,contract_preview:null,review:null},Si={employment_basic_information:"basic_information"},$i=u(({countryCode:L,externalId:A,employmentId:l,skipSteps:H,options:p,initialValues:d})=>{let Ee=p?.excludeProducts||[],ft=Pe(p?.onContractReviewed);T(()=>{ft.current=p?.onContractReviewed},[p?.onContractReviewed]);let[c,yt]=q(L||null),[r,Fe]=q(l),[v,_t]=q(void 0),W=Pe({select_country:{},basic_information:{},contract_details:{},contract_preview:{},pricing_plan:{},eligibility_questionnaire:{}}),[z,Ve]=q(void 0),[gt,X]=q(!1),[bt,Oe]=q(!0),[rt,St]=q(null),{steps:Me,stepsArray:Ie}=a(()=>zt({includeSelectCountry:!H?.includes("select_country"),includeEligibilityQuestionnaire:gt,includeContractPreview:bt}),[gt,bt,H]),{fieldValues:s,stepState:e,setFieldValues:Ct,previousStep:Re,nextStep:De,goToStep:B,setStepValues:wt}=Gt(Me);T(()=>{rt&&(B(rt),St(null))},[rt,B]);let{data:o,isLoading:Te,refetch:ht}=Kt({employmentId:r,queryParams:{exclude_files:!0}}),qe=he(),{status:k}=o||{},S=k&&Yt.includes(k),Ae=k&&!Zt.includes(k),ke=a(()=>k==="invited"?"invited":"not_invited",[k]),Pt=Nt(),vt=Ut(c,p),ot=se(),Et=Wt(),{mutateAsync:Ft}=ue(ot,Et,s),Vt=fe(),Ot=ye(),{mutateAsyncOrThrow:Le}=b(vt),Mt=re(),It=ae(),Rt=_e(),{mutateAsyncOrThrow:Be}=b(Pt),{mutateAsyncOrThrow:xe}=b(ot),{mutateAsyncOrThrow:je}=b(Mt),{mutateAsyncOrThrow:Dt}=b(It),{mutateAsyncOrThrow:Qe}=b(Vt),{mutateAsyncOrThrow:Tt}=b(Ot),{mutateAsyncOrThrow:Je}=b(Rt);l&&o?.country?.code&&!c&&yt(o.country.code);let{selectCountryForm:Y,isLoading:Ne,countries:qt}=ge({jsfModify:p?.jsfModify?.select_country}),at=a(()=>qt?.find(t=>t.value===c),[qt,c]),Ue=a(()=>at?.label,[at]),Ke=e.currentStep.name==="pricing_plan"||!!l&&S,{form:E,isLoading:Ge,contractorSubscriptions:Z,refetch:st,isEligibilityQuestionnaireBlocked:x}=le(r,at,{jsonSchemaVersion:p?.jsonSchemaVersion,queryOptions:{enabled:Ke},excludeProducts:Ee,jsfModify:p?.jsfModify?.pricing_plan}),F=a(()=>!!Z?.find(t=>t.product.short_name==="COR")?.eligibility_questionnaire?.submitted_at,[Z]);T(()=>{if(F){X(!1);return}else X(z===_)},[F,z]),T(()=>{let t=o?.contractor_type==="cor";Oe(!t)},[o?.contractor_type]);let tt=a(()=>Z?.find(t=>t.product.short_name==="COR")?.eligibility_questionnaire?.responses,[Z]),$e=bi[e.currentStep.name]||"contractor_basic_information",He=Si[$e],We=o?.[He]||{},ze=u(({form:t,options:n={},query:f={}})=>{let g=Object.keys(s).length>0?{...d,...e.values?.[e.currentStep.name],...s}:{...d,...We};return Jt({countryCode:c,form:t,fieldValues:g,query:f,options:{...n,queryOptions:{enabled:n.queryOptions?.enabled??!0}}})},"useJSONSchema"),Xe=!!(c&&(e.currentStep.name==="basic_information"||l)),Ye=!!(c==="GBR"&&l&&e.currentStep.name==="basic_information"),{data:j,isLoading:Ze}=de(l,{enabled:Ye}),{data:et,isLoading:ti}=pe(r,{enabled:!!r});T(()=>{et&&et.length>0&&!v&&_t(et[0].id)},[et,v]);let{data:C,isLoading:ei}=ze({form:"contractor_basic_information",options:{jsfModify:Ce(c,Ue,p),queryOptions:{enabled:Xe}}}),ii=a(()=>Xt(o?.basic_information?.provisional_start_date,s?.service_duration?.provisional_start_date),[o?.basic_information?.provisional_start_date,s?.service_duration?.provisional_start_date]),m=a(()=>{let t={standard:$,plus:nt,cor:_};if(s.subscription)return s.subscription;let n=e.values?.pricing_plan?.subscription;return n&&!x?n:F&&!x?_:x&&F?$:t[o?.contractor_type]||$},[s,e.values,F,o?.contractor_type,x]);T(()=>{m&&m!==z&&Ve(m)},[m,z]);let ni=a(()=>({...tt,...d,...e.values?.eligibility_questionnaire,...s}),[tt,d,e.values?.eligibility_questionnaire,s]),ri=a(()=>m===_&&e.currentStep.name==="eligibility_questionnaire"||!!l&&S&&m===_,[m,e.currentStep.name,l,S]),{data:V,isLoading:oi}=me({options:{queryOptions:{enabled:ri},jsfModify:p?.jsfModify?.eligibility_questionnaire},fieldValues:ni}),ai=!!(c&&e.currentStep.name==="contract_details"||S),{data:w,isLoading:si}=be({countryCode:c,fieldValues:s,employmentId:r,options:{queryOptions:{enabled:ai},jsfModify:Se(p?.jsfModify?.contract_details,ii,m,s,m===_)}}),ci=a(()=>e.currentStep.name==="contract_preview"||!!l&&S,[e.currentStep.name,l,S]),{data:O}=ne({fieldValues:s,options:{queryOptions:{enabled:ci},jsfModify:we(p,s)}}),{data:ct,isLoading:li}=oe({employmentId:r,contractDocumentId:v,options:{queryOptions:{enabled:!!v}}}),i=a(()=>({select_country:Y?.fields||[],basic_information:C?.fields||[],pricing_plan:E?.fields||[],eligibility_questionnaire:V?.fields||[],contract_details:w?.fields||[],contract_preview:O?.fields||[],review:[]}),[Y?.fields,C?.fields,E?.fields,w?.fields,O?.fields,V?.fields]),ui={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:di,basic_information:it={},contract_details:At={}}=o||{},kt=di?.code,Q=a(()=>D(i.select_country,{country:c||kt||""}),[i.select_country,c,kt]),lt=a(()=>j?.content?Qt(j.content,j.name):null,[j?.content,j?.name]),J=a(()=>{let t={...d,...it,ir35:o?.contract_details?.ir_35,nationality_status:o?.contract_details?.nationality,...lt&&{ir35_sds_file:[lt]}};return D(i.basic_information,t)},[d,it,o?.contract_details?.ir_35,o?.contract_details?.nationality,lt,i.basic_information]),N=a(()=>{let n={...{service_duration:{provisional_start_date:it.provisional_start_date}},...d,...At};return D(i.contract_details,n)},[i.contract_details,At,d,it]),U=a(()=>{let t=ct?.contract_document?.signatories?.find(f=>f.type==="company"),n={...d,signature:t?.signature};return D(i.contract_preview,n)},[i.contract_preview,d,ct]),K=a(()=>{let n={...{subscription:m},...d};return D(i.pricing_plan,n)},[i.pricing_plan,d,m]),G=a(()=>{let t={...d,...tt};return D(i.eligibility_questionnaire,t)},[i.eligibility_questionnaire,d,tt]),pi=a(()=>({select_country:Q,basic_information:J,contract_details:N,contract_preview:U,pricing_plan:K,eligibility_questionnaire:G}),[Q,J,N,U,K,G]),ut=!!(l&&S&&e.currentStep.name!=="review"),dt=Ne||ei||Te||si||Ge||li||Ze||ti||oi,Lt=a(()=>{let n=o?.contractor_type==="cor"||i.contract_preview.length>0;return!!(ut&&!dt&&v&&i.basic_information.length>0&&i.contract_details.length>0&&n)},[ut,dt,v,i.basic_information.length,i.contract_details.length,i.contract_preview.length,o?.contractor_type]);T(()=>{Lt&&(W.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)},wt({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,wt,i.select_country,i.basic_information,i.contract_details,i.pricing_plan,K,i.contract_preview,U,i.eligibility_questionnaire,G]);let mi=u(t=>{B(t)},"goTo"),Bt=u(async t=>Y&&e.currentStep.name==="select_country"?t:C&&e.currentStep.name==="basic_information"?await y(t,C?.fields,{isPartialValidation:!1}):w&&e.currentStep.name==="contract_details"?await y(t,w?.fields,{isPartialValidation:!1}):O&&e.currentStep.name==="contract_preview"?await y(t,O?.fields,{isPartialValidation:!1}):E&&e.currentStep.name==="pricing_plan"?await y(t,E?.fields,{isPartialValidation:!1}):V&&e.currentStep.name==="eligibility_questionnaire"?await y(t,V?.fields,{isPartialValidation:!1}):{},"parseFormValues"),fi=u(t=>{let n=t?.rawError?.error?.errors?.services_and_deliverables;return n?.source===Ht?{error:n.error,source:n.source,skippable:n.skippable}:null},"extractAiValidationError");async function yi(t){let n=e.currentStep.name;n in W.current&&(W.current[n]=P(t,i[n]));let f=await Bt(t);switch(e.currentStep.name){case"select_country":return yt(f.country),Promise.resolve({data:{countryCode:f.country}});case"basic_information":{let M=!r&&c,g=r&&c&&o?.country&&o?.country.code!==c;if(M||g){let I={basic_information:ve(f,"nationality_status","ir35","ir35_sds_file"),type:"contractor",country_code:c,external_id:A},pt=await Be(I),mt=pt?.data?.employment?.id;if(!mt)throw R("Employment ID not found");return await Ft({employmentId:mt}),Fe(mt),pt}else if(r){let h=ve(f,"nationality_status","ir35","ir35_sds_file");return await Ft({employmentId:r}),Le({employmentId:r,basic_information:h})}return}case"contract_details":{let M=s.services_and_deliverables_error_skippable===!0,g={contract_document:f,skip_ai_checks:M};try{let h=await xe({employmentId:r,payload:g}),I=h?.data?.contract_document?.id;if(!I)throw R("Contract document ID not found");return _t(I),h}catch(h){let I=fi(h);throw I&&Ct({...t,services_and_deliverables_ai_warning:te(m===_),services_and_deliverables_error_skippable:I.skippable}),h}}case"contract_preview":return await je({employmentId:r,contractDocumentId:v,payload:{signature:f.signature}});case"pricing_plan":{if(x&&[_,nt].includes(t.subscription))throw R(`This individual is not eligible for ${ce[t.subscription]}.`);if(t.subscription===$t)return Promise.resolve({data:{subscription:t.subscription}});if(F&&t.subscription!==_)try{await Je({employmentId:r}),await st()}catch(g){if(g?.response?.status!==404)throw g;await st()}if(t.subscription==$)return Dt({employmentId:r,payload:{operation:"downgrade"}});if(t.subscription==nt)return Dt({employmentId:r,payload:{operation:"upgrade"}});if(t.subscription==_)return F&&o?.contractor_type!=="cor"?Tt({employmentId:r}):Promise.resolve({data:{subscription:t.subscription}});throw R("invalid selection")}case"eligibility_questionnaire":try{if((await Qe({employmentId:r,payload:f}))?.data?.is_blocking)throw X(!1),St("pricing_plan"),R("This individual is not eligible for Contractor of Record.");return await Tt({employmentId:r})}finally{await st()}default:throw R("Invalid step state")}}return u(yi,"onSubmit"),{isLoading:dt||ut,fieldValues:s,stepState:e,checkFieldUpdates:Ct,markContractAsReviewed:u(()=>{ft.current?.()},"markContractAsReviewed"),back:Re,next:u(()=>{r&&ht(),De()},"handleNextStep"),goTo:mi,onSubmit:yi,fields:i[e.currentStep.name],meta:{fields:W.current,fieldsets:ui[e.currentStep.name]},parseFormValues:Bt,canSkipAiValidation:s.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 y(t,C?.fields,{isPartialValidation:!1});return C?.handleValidation(n)}if(w&&e.currentStep.name==="contract_details"){let n=await y(t,w?.fields,{isPartialValidation:!1});return w?.handleValidation(n)}if(O&&e.currentStep.name==="contract_preview"){let n=await y(t,O?.fields,{isPartialValidation:!0});return O?.handleValidation(n)}if(E&&e.currentStep.name==="pricing_plan"){let n=await y(t,E?.fields,{isPartialValidation:!1});return E?.handleValidation(n)}if(V&&e.currentStep.name==="eligibility_questionnaire"){let n=await y(t,V?.fields,{isPartialValidation:!1});return V?.handleValidation(n)}return null},"handleValidation"),initialValues:pi,employmentId:r,refetchEmployment:ht,isSubmitting:Pt.isPending||vt.isPending||ot.isPending||Mt.isPending||It.isPending||Et.isPending||Vt.isPending||Ot.isPending||Rt.isPending,documentPreviewPdf:ct,canInvite:Ae,isEmploymentReadOnly:S,invitedStatus:ke,employment:o,defaultLegalEntity:qe,steps:Ie}},"useContractorOnboarding");export{$i as a};
2
- //# sourceMappingURL=chunk-JTMJKRH7.js.map
@@ -1,2 +0,0 @@
1
- import{b as y}from"./chunk-Q3ALCPJN.js";import{d as p,e as v}from"./chunk-UMLRTS3B.js";import{j as u}from"./chunk-VIGKOVHP.js";import{a as n}from"./chunk-X6ZAR7ZL.js";import{b as l}from"./chunk-KQPDXXG3.js";import{a as r}from"./chunk-P37U34EQ.js";import O from"lodash.omit";import{jsx as C}from"react/jsx-runtime";function T({onSubmit:f,onSuccess:i,onError:s,render:w,...o}){let{components:E}=l(),{contractorOnboardingBag:e}=y(),a=p(),m=v(),{mutateAsyncOrThrow:g}=n(a),{mutateAsyncOrThrow:I}=n(m),c=e.employment?.contractor_type==="cor"&&!e.isEmploymentReadOnly,R=r(async()=>{try{if(await f?.(),c&&e.employmentId){let t=await I({employment_slug:e.employmentId});if(t?.data){await i?.({data:t,employmentStatus:"created_awaiting_reserve"}),e.refetchEmployment();return}}else if(e.employmentId){let t=await g({employment_id:e.employmentId});t&&(await i?.({data:t,employmentStatus:"invited"}),e.refetchEmployment())}}catch(t){u(t)?s?.(O(t,"response")):s?.({error:t,rawError:t,fieldErrors:[]})}},"handleSubmit"),d=E?.button;if(!d)throw new Error("Button component not found");let b=a.isPending||m.isPending||!e.canInvite||o.disabled;return C(d,{...o,disabled:b,onClick:t=>{R(),o.onClick?.(t)},children:w({status:c?"create_reserve":"invite"})})}r(T,"OnboardingInvite");export{T as a};
2
- //# sourceMappingURL=chunk-K5Y67GIG.js.map
@@ -1,2 +0,0 @@
1
- import{a as i}from"./chunk-P37U34EQ.js";function u(s){return s.inner.reduce((r,e)=>({...r,[e.path]:{type:e.type??"validation",message:e.message}}),{})}i(u,"iterateErrors");function l(s,t=""){return Object.entries(s||{}).reduce((r,[e,o])=>{let n=t?`${t}.${e}`:e;if(typeof o=="object"&&o!==null&&!Array.isArray(o))return{...r,...l(o,n)};let a=typeof o=="string"?o:JSON.stringify(o);return r[n]={type:"validation",message:a},r[`${n}.value`]={type:"validation",message:a},r},{})}i(l,"iterateFormErrors");var d=i(s=>async t=>{let r=await s(t);if(!r)return{values:t,errors:{}};let e="formErrors"in r?r.formErrors:void 0;if(Object.keys(e||{}).length>0){let o=l(e);return{values:{},errors:o}}return{values:t,errors:{}}},"useJsonSchemasValidationFormResolver");export{u as a,d as b};
2
- //# sourceMappingURL=chunk-LNV36S6D.js.map
@@ -1,2 +0,0 @@
1
- import{a as t}from"./chunk-P37U34EQ.js";var c={select_country:{index:0,name:"select_country"},basic_information:{index:1,name:"basic_information"},contract_details:{index:2,name:"contract_details"},benefits:{index:3,name:"benefits"},review:{index:4,name:"review"}},m={basic_information:{index:0,name:"basic_information"},contract_details:{index:1,name:"contract_details"},benefits:{index:2,name:"benefits"},review:{index:3,name:"review"}},d=["invited","created_awaiting_reserve","created_reserve_paid"],p=["created_awaiting_reserve","invited"],n=1,i=t(()=>n,"getDefaultContractDetailsSchemaVersion"),l=t((e,o)=>{let s=e?.jsonSchemaVersionByCountry,r=o?s?.[o]?.contract_details:void 0;return r||i()},"getContractDetailsSchemaVersion"),_=t(e=>e?.jsonSchemaVersion?.employment_basic_information||n,"getBasicInformationSchemaVersion"),u=t(e=>e?.jsonSchemaVersion?.benefit_offers_form_schema||n,"getBenefitOffersSchemaVersion");export{c as a,m as b,d as c,p as d,n as e,l as f,_ as g,u as h};
2
- //# sourceMappingURL=chunk-LXOYWRNU.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/utils.ts"],"sourcesContent":["import { Employment, OnboardingFlowProps } from '@/src/flows/Onboarding/types';\nimport { Step } from '@/src/flows/useStepState';\n\ntype StepKeys =\n | 'select_country'\n | 'basic_information'\n | 'contract_details'\n | 'benefits'\n | 'review';\n\nexport const STEPS: Record<StepKeys, Step<StepKeys>> = {\n select_country: {\n index: 0,\n name: 'select_country',\n },\n basic_information: { index: 1, name: 'basic_information' },\n contract_details: { index: 2, name: 'contract_details' },\n benefits: { index: 3, name: 'benefits' },\n review: { index: 4, name: 'review' },\n} as const;\n\nexport const STEPS_WITHOUT_SELECT_COUNTRY: Record<\n Exclude<StepKeys, 'select_country'>,\n Step<Exclude<StepKeys, 'select_country'>>\n> = {\n basic_information: { index: 0, name: 'basic_information' },\n contract_details: { index: 1, name: 'contract_details' },\n benefits: { index: 2, name: 'benefits' },\n review: { index: 3, name: 'review' },\n} as const;\n\n/**\n * Array of employment statuses that are allowed to proceed to the review step.\n * These statuses indicate that the employment is in a final state and the employment cannot be modified further.\n * @type {Employment['status'][]}\n * @constant\n */\nexport const reviewStepAllowedEmploymentStatus: Employment['status'][] = [\n 'invited',\n 'created_awaiting_reserve',\n 'created_reserve_paid',\n];\n\nexport const disabledInviteButtonEmploymentStatus: Employment['status'][] = [\n 'created_awaiting_reserve',\n 'invited',\n];\n\nexport const DEFAULT_VERSION = 1;\n\n/**\n * Gets the default (recommended) contract details schema version for a country\n */\nconst getDefaultContractDetailsSchemaVersion = (): number => {\n return DEFAULT_VERSION;\n};\n\n/**\n * Resolves the effective contract details schema version for a country\n *\n * @param options - The flow options containing version configurations\n * @param countryCode - The country code to resolve version for\n * @returns The effective jsonSchemaVersion configuration\n */\nexport const getContractDetailsSchemaVersion = (\n options: OnboardingFlowProps['options'],\n countryCode: string | null,\n) => {\n const jsonSchemaVersionByCountry = options?.jsonSchemaVersionByCountry;\n const countrySpecificVersion = countryCode\n ? jsonSchemaVersionByCountry?.[countryCode]?.contract_details\n : undefined;\n\n const requestedVersion = countrySpecificVersion\n ? countrySpecificVersion\n : getDefaultContractDetailsSchemaVersion();\n\n return requestedVersion;\n};\n\n/**\n * Gets the basic information schema version from options\n * @param options - The flow options containing version configurations\n * @returns The jsonSchemaVersion for basic information or default\n */\nexport const getBasicInformationSchemaVersion = (\n options: OnboardingFlowProps['options'],\n): number | 'latest' => {\n return (\n options?.jsonSchemaVersion?.employment_basic_information || DEFAULT_VERSION\n );\n};\n\n/**\n * Gets the benefit offers schema version from options\n * @param options - The flow options containing version configurations\n * @returns The jsonSchemaVersion for benefit offers or undefined if not set\n */\nexport const getBenefitOffersSchemaVersion = (\n options: OnboardingFlowProps['options'],\n): number | 'latest' => {\n return (\n options?.jsonSchemaVersion?.benefit_offers_form_schema || DEFAULT_VERSION\n );\n};\n"],"mappings":"wCAUO,IAAMA,EAA0C,CACrD,eAAgB,CACd,MAAO,EACP,KAAM,gBACR,EACA,kBAAmB,CAAE,MAAO,EAAG,KAAM,mBAAoB,EACzD,iBAAkB,CAAE,MAAO,EAAG,KAAM,kBAAmB,EACvD,SAAU,CAAE,MAAO,EAAG,KAAM,UAAW,EACvC,OAAQ,CAAE,MAAO,EAAG,KAAM,QAAS,CACrC,EAEaC,EAGT,CACF,kBAAmB,CAAE,MAAO,EAAG,KAAM,mBAAoB,EACzD,iBAAkB,CAAE,MAAO,EAAG,KAAM,kBAAmB,EACvD,SAAU,CAAE,MAAO,EAAG,KAAM,UAAW,EACvC,OAAQ,CAAE,MAAO,EAAG,KAAM,QAAS,CACrC,EAQaC,EAA4D,CACvE,UACA,2BACA,sBACF,EAEaC,EAA+D,CAC1E,2BACA,SACF,EAEaC,EAAkB,EAKzBC,EAAyCC,EAAA,IACtCF,EADsC,0CAWlCG,EAAkCD,EAAA,CAC7CE,EACAC,IACG,CACH,IAAMC,EAA6BF,GAAS,2BACtCG,EAAyBF,EAC3BC,IAA6BD,CAAW,GAAG,iBAC3C,OAMJ,OAJyBE,GAErBN,EAAuC,CAG7C,EAd+C,mCAqBlCO,EAAmCN,EAC9CE,GAGEA,GAAS,mBAAmB,8BAAgCJ,EAJhB,oCAanCS,EAAgCP,EAC3CE,GAGEA,GAAS,mBAAmB,4BAA8BJ,EAJjB","names":["STEPS","STEPS_WITHOUT_SELECT_COUNTRY","reviewStepAllowedEmploymentStatus","disabledInviteButtonEmploymentStatus","DEFAULT_VERSION","getDefaultContractDetailsSchemaVersion","__name","getContractDetailsSchemaVersion","options","countryCode","jsonSchemaVersionByCountry","countrySpecificVersion","getBasicInformationSchemaVersion","getBenefitOffersSchemaVersion"]}
@@ -1,2 +0,0 @@
1
- import{j as d,k as _,l as x,m as u,n as f}from"./chunk-CWAFRJAQ.js";import{a as t}from"./chunk-VIGKOVHP.js";import{a as p}from"./chunk-P37U34EQ.js";import*as b from"react";import{jsx as T}from"react/jsx-runtime";var n=b.forwardRef(({className:e,...r},a)=>T("textarea",{className:t("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:a,...r}));n.displayName="Textarea";import{jsx as o,jsxs as l}from"react/jsx-runtime";function C({field:e,fieldState:r,fieldData:a}){let{name:i,label:c,description:s,maxLength:m}=a,g=e.value?.length??0;return l(d,{"data-field":i,className:`RemoteFlows__TextArea__Item__${i}`,children:[o(_,{className:"RemoteFlows__TextArea__Label",children:c}),o(x,{children:o(n,{...e,value:e.value??"",onChange:F=>{e.onChange(F)},className:t(r.error&&"border-red-500 focus-visible:ring-red-500","RemoteFlows__TextArea__Input"),placeholder:c})}),(s||m)&&l("div",{className:"flex items-center justify-between",children:[s&&o(u,{className:"RemoteFlows__TextArea__Description",children:s}),m&&l("span",{className:"text-sm ml-auto RemoteFlows__TextArea__MaxLength",children:[g,"/",m]})]}),r.error&&o(f,{className:"RemoteFlows__TextArea__Error"})]})}p(C,"TextAreaFieldDefault");export{C as a};
2
- //# sourceMappingURL=chunk-OWUINMZP.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/ui/textarea.tsx","../src/components/form/fields/default/TextAreaFieldDefault.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { cn } from '@/src/lib/utils';\n\nconst Textarea = React.forwardRef<\n HTMLTextAreaElement,\n React.ComponentProps<'textarea'>\n>(({ className, ...props }, ref) => {\n return (\n <textarea\n className={cn(\n 'flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',\n className,\n )}\n ref={ref}\n {...props}\n />\n );\n});\nTextarea.displayName = 'Textarea';\n\nexport { Textarea };\n","import {\n FormControl,\n FormDescription,\n FormItem,\n FormLabel,\n FormMessage,\n} from '@/src/components/ui/form';\nimport { Textarea } from '@/src/components/ui/textarea';\nimport { cn } from '@/src/lib/utils';\nimport { FieldComponentProps } from '@/src/types/fields';\n\nexport function TextAreaFieldDefault({\n field,\n fieldState,\n fieldData,\n}: FieldComponentProps) {\n const { name, label, description, maxLength } = fieldData;\n const valueLength = field.value?.length ?? 0;\n return (\n <FormItem\n data-field={name}\n className={`RemoteFlows__TextArea__Item__${name}`}\n >\n <FormLabel className='RemoteFlows__TextArea__Label'>{label}</FormLabel>\n <FormControl>\n <Textarea\n {...field}\n value={field.value ?? ''}\n onChange={(event: React.ChangeEvent<HTMLTextAreaElement>) => {\n field.onChange(event);\n }}\n className={cn(\n fieldState.error && 'border-red-500 focus-visible:ring-red-500',\n 'RemoteFlows__TextArea__Input',\n )}\n placeholder={label}\n />\n </FormControl>\n {(description || maxLength) && (\n <div className='flex items-center justify-between'>\n {description && (\n <FormDescription className='RemoteFlows__TextArea__Description'>\n {description}\n </FormDescription>\n )}\n {maxLength && (\n <span className='text-sm ml-auto RemoteFlows__TextArea__MaxLength'>\n {valueLength}/{maxLength}\n </span>\n )}\n </div>\n )}\n {fieldState.error && (\n <FormMessage className='RemoteFlows__TextArea__Error' />\n )}\n </FormItem>\n );\n}\n"],"mappings":"oJAAA,UAAYA,MAAW,QASnB,cAAAC,MAAA,oBALJ,IAAMC,EAAiB,aAGrB,CAAC,CAAE,UAAAC,EAAW,GAAGC,CAAM,EAAGC,IAExBJ,EAAC,YACC,UAAWK,EACT,kTACAH,CACF,EACA,IAAKE,EACJ,GAAGD,EACN,CAEH,EACDF,EAAS,YAAc,WCIjB,cAAAK,EAuBM,QAAAC,MAvBN,oBAZC,SAASC,EAAqB,CACnC,MAAAC,EACA,WAAAC,EACA,UAAAC,CACF,EAAwB,CACtB,GAAM,CAAE,KAAAC,EAAM,MAAAC,EAAO,YAAAC,EAAa,UAAAC,CAAU,EAAIJ,EAC1CK,EAAcP,EAAM,OAAO,QAAU,EAC3C,OACEF,EAACU,EAAA,CACC,aAAYL,EACZ,UAAW,gCAAgCA,CAAI,GAE/C,UAAAN,EAACY,EAAA,CAAU,UAAU,+BAAgC,SAAAL,EAAM,EAC3DP,EAACa,EAAA,CACC,SAAAb,EAACc,EAAA,CACE,GAAGX,EACJ,MAAOA,EAAM,OAAS,GACtB,SAAWY,GAAkD,CAC3DZ,EAAM,SAASY,CAAK,CACtB,EACA,UAAWC,EACTZ,EAAW,OAAS,4CACpB,8BACF,EACA,YAAaG,EACf,EACF,GACEC,GAAeC,IACfR,EAAC,OAAI,UAAU,oCACZ,UAAAO,GACCR,EAACiB,EAAA,CAAgB,UAAU,qCACxB,SAAAT,EACH,EAEDC,GACCR,EAAC,QAAK,UAAU,mDACb,UAAAS,EAAY,IAAED,GACjB,GAEJ,EAEDL,EAAW,OACVJ,EAACkB,EAAA,CAAY,UAAU,+BAA+B,GAE1D,CAEJ,CA9CgBC,EAAAjB,EAAA","names":["React","jsx","Textarea","className","props","ref","cn","jsx","jsxs","TextAreaFieldDefault","field","fieldState","fieldData","name","label","description","maxLength","valueLength","FormItem","FormLabel","FormControl","Textarea","event","cn","FormDescription","FormMessage","__name"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/form/fields/default/CountryFieldDefault.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport {\n FormControl,\n FormDescription,\n FormLabel,\n FormMessage,\n} from '@/src/components/ui/form';\n\nimport { FormItem } from '@/src/components/ui/form';\nimport { MultiSelect } from '@/src/components/ui/multi-select';\nimport { $TSFixMe } from '@/src/types/remoteFlows';\nimport { CountryComponentProps } from '@/src/types/fields';\nimport { HelpCenter } from '@/src/components/shared/zendesk-drawer/HelpCenter';\n\nexport function CountryFieldDefault({\n field,\n fieldState,\n fieldData,\n}: CountryComponentProps) {\n const [selected, setSelected] = useState<$TSFixMe[]>([]);\n const handleChange = (rawValues: $TSFixMe[]) => {\n const values = rawValues.map(({ value }) => value);\n field.onChange(values);\n setSelected(rawValues);\n };\n\n useEffect(() => {\n if (field.value && fieldData.options) {\n setSelected(\n field.value.map(\n (value: $TSFixMe) =>\n fieldData?.options?.find(\n (option) => option.value === value,\n ) as $TSFixMe,\n ),\n );\n }\n }, [field.value, fieldData.options]);\n\n const countryOptions = [\n ...Object.entries(fieldData.$meta?.regions || {}).map(([key, value]) => ({\n value,\n label: key,\n category: 'Regions',\n })),\n ...Object.entries(fieldData.$meta?.subregions || {}).map(\n ([key, value]) => ({\n value,\n label: key,\n category: 'Subregions',\n }),\n ),\n ...(fieldData.options?.map((option) => ({\n ...option,\n value: option.value,\n label: option.label,\n category: 'Countries',\n })) || []),\n ];\n return (\n <FormItem\n data-field={field.name}\n className={`RemoteFlows__CountryField__Item__${field.name}`}\n >\n <FormLabel className='RemoteFlows__CountryField__Label'>\n {fieldData.label}\n </FormLabel>\n <FormControl>\n <MultiSelect\n options={countryOptions}\n selected={selected}\n onChange={handleChange}\n />\n </FormControl>\n {fieldData.description && (\n <FormDescription>\n {fieldData.description}{' '}\n <HelpCenter helpCenter={fieldData.meta?.helpCenter} />\n </FormDescription>\n )}\n {fieldState.error && <FormMessage />}\n </FormItem>\n );\n}\n"],"mappings":"4LAAA,OAAS,aAAAA,EAAW,YAAAC,MAAgB,QAgE9B,cAAAC,EAWE,QAAAC,MAXF,oBAlDC,SAASC,EAAoB,CAClC,MAAAC,EACA,WAAAC,EACA,UAAAC,CACF,EAA0B,CACxB,GAAM,CAACC,EAAUC,CAAW,EAAIC,EAAqB,CAAC,CAAC,EACjDC,EAAeC,EAACC,GAA0B,CAC9C,IAAMC,EAASD,EAAU,IAAI,CAAC,CAAE,MAAAE,CAAM,IAAMA,CAAK,EACjDV,EAAM,SAASS,CAAM,EACrBL,EAAYI,CAAS,CACvB,EAJqB,gBAMrBG,EAAU,IAAM,CACVX,EAAM,OAASE,EAAU,SAC3BE,EACEJ,EAAM,MAAM,IACTU,GACCR,GAAW,SAAS,KACjBU,GAAWA,EAAO,QAAUF,CAC/B,CACJ,CACF,CAEJ,EAAG,CAACV,EAAM,MAAOE,EAAU,OAAO,CAAC,EAEnC,IAAMW,EAAiB,CACrB,GAAG,OAAO,QAAQX,EAAU,OAAO,SAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAACY,EAAKJ,CAAK,KAAO,CACvE,MAAAA,EACA,MAAOI,EACP,SAAU,SACZ,EAAE,EACF,GAAG,OAAO,QAAQZ,EAAU,OAAO,YAAc,CAAC,CAAC,EAAE,IACnD,CAAC,CAACY,EAAKJ,CAAK,KAAO,CACjB,MAAAA,EACA,MAAOI,EACP,SAAU,YACZ,EACF,EACA,GAAIZ,EAAU,SAAS,IAAKU,IAAY,CACtC,GAAGA,EACH,MAAOA,EAAO,MACd,MAAOA,EAAO,MACd,SAAU,WACZ,EAAE,GAAK,CAAC,CACV,EACA,OACEd,EAACiB,EAAA,CACC,aAAYf,EAAM,KAClB,UAAW,oCAAoCA,EAAM,IAAI,GAEzD,UAAAH,EAACmB,EAAA,CAAU,UAAU,mCAClB,SAAAd,EAAU,MACb,EACAL,EAACoB,EAAA,CACC,SAAApB,EAACqB,EAAA,CACC,QAASL,EACT,SAAUV,EACV,SAAUG,EACZ,EACF,EACCJ,EAAU,aACTJ,EAACqB,EAAA,CACE,UAAAjB,EAAU,YAAa,IACxBL,EAACuB,EAAA,CAAW,WAAYlB,EAAU,MAAM,WAAY,GACtD,EAEDD,EAAW,OAASJ,EAACwB,EAAA,EAAY,GACpC,CAEJ,CArEgBd,EAAAR,EAAA","names":["useEffect","useState","jsx","jsxs","CountryFieldDefault","field","fieldState","fieldData","selected","setSelected","useState","handleChange","__name","rawValues","values","value","useEffect","option","countryOptions","key","FormItem","FormLabel","FormControl","MultiSelect","FormDescription","HelpCenter","FormMessage"]}
@@ -1,2 +0,0 @@
1
- import{a as H}from"./chunk-AP56UUME.js";import{a as z}from"./chunk-IJCTN52C.js";import{e as E}from"./chunk-AHRG5QCS.js";import{a as P,b as Y,c as X,d as _,f as q}from"./chunk-PX5PE6GX.js";import{a as N}from"./chunk-WVJDCDGZ.js";import{a as W}from"./chunk-C32W6TCT.js";import{a as b}from"./chunk-NAF6LRSS.js";import{d as x}from"./chunk-D5AO6SOM.js";import{g as w}from"./chunk-VIGKOVHP.js";import{$ as B,B as v,F as U,N as J,Q as K,S as j,U as A,V as G,W as V,X as k,_ as $,f as I,h as M,p as D,r as T,s as L,t as Q}from"./chunk-H2RAK6F7.js";import{a as O}from"./chunk-X6ZAR7ZL.js";import{d as a}from"./chunk-KQPDXXG3.js";import{a as n}from"./chunk-P37U34EQ.js";import{useMemo as be}from"react";import{useMutation as f,useQuery as p}from"@tanstack/react-query";import{useMutation as de,useQuery as Z}from"@tanstack/react-query";var Re=n(()=>{let{client:e}=a();return de({mutationFn:n(t=>j({client:e,body:t,headers:{Authorization:""}}),"mutationFn")})},"useUploadFile"),ee=n(e=>{let{client:t}=a();return Z({queryKey:["download-file",e],queryFn:n(async()=>{let o=await v({client:t,path:{id:e}});if(o.error)throw o.error;return o.data},"queryFn"),select:n(({data:o})=>o?.file,"select"),enabled:!!e})},"useDownloadFile"),te=n((e,t,o)=>{let{client:r}=a();return Z({queryKey:["employment-files",e],queryFn:n(async()=>{let i=await K({client:r,path:{employment_id:e},query:t});if(i.error)throw i.error;return i.data},"queryFn"),...o})},"useEmploymentFiles");import{useQuery as me}from"@tanstack/react-query";import{useQuery as pe}from"@tanstack/react-query";var ne=n(()=>{let{client:e}=a();return pe({queryKey:["identity"],queryFn:n(()=>G({client:e,headers:{Authorization:""}}),"queryFn"),select:n(t=>t.data?.data,"select")})},"useIdentity");function ye(e){return e!=null&&"company"in e}n(ye,"hasCompany");var oe=n((e={enabled:!0})=>{let{data:t}=ne(),o=ye(t)?t?.company?.id??"":"",{client:r}=a();return me({queryKey:["pricing-plans",o],queryFn:n(()=>I({client:r,path:{company_id:o}}),"queryFn"),select:n(i=>i.data?.data?.pricing_plans,"select"),enabled:!!e?.enabled&&!!o})},"useCompanyPricingPlans");var fe=n(({employmentId:e,options:t})=>{let{client:o}=a();return p({queryKey:["contractor-currencies",e],queryFn:n(async()=>Q({client:o,path:{employment_id:e},query:{restrict_to_guaranteed_pay_out_currencies:!1}}),"queryFn"),enabled:t?.queryOptions?.enabled,select:n(({data:r})=>r?.data,"select")})},"useContractorCurrencies"),yt=n(({fieldValues:e,options:t})=>p({queryKey:["contract-document-signature",e.review_completed,t?.jsfModify],queryFn:n(async()=>b(z,e,{jsfModify:t?.jsfModify}),"queryFn"),enabled:t?.queryOptions?.enabled}),"useGetContractDocumentSignatureSchema"),bt=n(()=>{let{client:e}=a();return f({mutationFn:n(async({employmentId:t,contractDocumentId:o,payload:r})=>A({client:e,body:r,path:{employment_id:t,contract_document_id:o}}),"mutationFn")})},"useSignContractDocument"),ft=n(({employmentId:e,contractDocumentId:t,options:o})=>{let{client:r}=a();return p({queryKey:["contract-document",e,t],queryFn:n(async()=>T({client:r,path:{employment_id:e,id:t}}),"queryFn"),enabled:o?.queryOptions?.enabled,select:n(({data:i})=>({...i?.data,contract_document:{...i?.data?.contract_document,content:w(i?.data?.contract_document?.content)}}),"select")})},"useGetShowContractDocument"),Ce=n(({employmentId:e,options:t})=>{let{client:o}=a();return p({queryKey:["contractor-subscriptions",e],queryFn:n(async()=>D({client:o,path:{employment_id:e}}),"queryFn"),enabled:t?.queryOptions?.enabled,select:n(({data:r})=>r?.data,"select")})},"useGetContractorSubscriptions"),Ct=n(()=>{let{client:e}=a();return f({mutationFn:n(async({employmentId:t,payload:o})=>k({client:e,body:o,path:{employment_id:t}}),"mutationFn")})},"usePostManageContractorSubscriptions"),gt=n(()=>{let{client:e}=a();return f({mutationFn:n(async({employmentId:t,payload:o})=>J({client:e,body:o,path:{employment_id:t}}),"mutationFn")})},"useCreateContractorContractDocument"),ge=n(({countryCode:e,employmentId:t,fieldValues:o,options:r})=>{let{client:i}=a();return p({queryKey:["contractor-onboarding-details-schema",e,t],retry:!1,queryFn:n(async()=>M({client:i,path:{country_code:e},query:{json_schema_version:1,employment_id:t}}),"queryFn"),enabled:r?.queryOptions?.enabled,select:n(({data:s})=>{let c=s?.data?.schema||{};return b(c,o,r)},"select")})},"useContractorOnboardingDetailsSchema"),Fe={[P]:"Contractor Management",[Y]:"Contractor Management Plus",[X]:"Contractor of Record"},Se=n(e=>{let{data:t,isLoading:o}=oe({enabled:e?.enabled}),r=t?.find(s=>s.product.name==="EOR Monthly");return{eorSubscription:{product:{identifier:_,short_name:"EOR"},currency:r?.price.currency,price:{amount:x(r?.price.amount??0)},features:["Contract between Remote and employee","Remote manages onboarding, payroll, and compliance","Manages taxes, benefits, and time-off tracking","Handles contracts, transfers, and terminations"],description:"Enables hiring in countries without a local entity",label:"Employer of Record",value:_},isLoading:o}},"useEorSubscription"),he=n((e,t,o)=>(E(_,o)&&e.push({label:t.label,value:t.value,description:t.description,meta:{features:t.features,price:{amount:t.price.amount,currencyCode:t.currency?.code??""}},disabled:!1}),e),"addEorToFieldOptions"),Ft=n((e,t,o)=>{let{data:r,isLoading:i,refetch:s}=Ce({employmentId:e,options:{queryOptions:o?.queryOptions}}),c=r?.length===0,u=r?.length===1,l=r?.find(S=>S.product.short_name==="COR")?.eligibility_questionnaire?.is_blocking,d=(u||l===!0||c)&&t?.eor_onboarding,{eorSubscription:C,isLoading:re}=Se({enabled:d}),R=b(H.data.schema,{},o);if(r){let S=R.fields.find(h=>h.name==="subscription");if(S){let h=r.filter(m=>E(m.product.identifier??"",o?.excludeProducts)).map(m=>{let y=m.product,ie=m.price.amount,ae=m.currency.code,se=Fe[y.identifier]??"",ce=y.identifier??"",le=y.description??"",ue={features:y.features??[],price:{amount:x(ie),currencyCode:ae}};return{label:se,value:ce,description:le,meta:ue,disabled:l&&y.identifier!==P}});h.sort((m,y)=>m.label.localeCompare(y.label));let g=[];d&&(he(g,C,o?.excludeProducts),g.length>0&&(g[0].meta={...g[0].meta,groupSeparator:{show:!0}})),S.options=[...h,...g]}}return{isLoading:i||re,form:R,contractorSubscriptions:r,refetch:s,isEligibilityQuestionnaireBlocked:l}},"useContractorSubscriptionSchemaField"),St=n((e,t,o)=>{let{mutateAsyncOrThrow:r}=O(t),{mutateAsyncOrThrow:i}=O(e);return{mutateAsync:n(async({employmentId:s})=>{let{nationality_status:c,ir35:u,ir35_sds_file:F}=o,l={contract_document:{ir_35:u}},d={contract_document:{nationality:c}};return u?(await i({employmentId:s,payload:l}),F?r({employment_id:s,file:F,sub_type:q}):Promise.resolve()):c?i({employmentId:s,payload:d}):Promise.resolve()},"mutateAsync")}},"useUpdateUKandSaudiFields"),ht=n((e,t)=>{let{data:o,isLoading:r}=te(e,{sub_type:q},{...t,select:n(({data:c})=>c?.files?.filter(u=>u.sub_type===q),"select")}),i=o?.[0]?.id,s=ee(i);return{...s,isLoading:r||s.isLoading}},"useGetIR35File"),_t=n((e,t)=>{let{client:o}=a();return p({queryKey:["contract-documents",e],queryFn:n(async()=>L({client:o,path:{employment_id:e}}),"queryFn"),enabled:t?.enabled,select:n(({data:r})=>r?.data?.contract_documents,"select")})},"useGetContractDocuments"),qt=n(({options:e,fieldValues:t})=>{let{client:o}=a();return p({queryKey:["eligibility-questionnaire"],queryFn:n(async()=>{let r=await V({client:o,query:{type:"contractor_of_record",json_schema_version:1}});if(r.error)throw new Error("Failed to fetch eligibility questionnaire");return r.data.data},"queryFn"),select:n(r=>{let i=r?.schema||{};return b(i,t,{jsfModify:e?.jsfModify})},"select"),enabled:e?.queryOptions?.enabled})},"useGetEligibilityQuestionnaire"),Ot=n(()=>{let{client:e}=a();return f({mutationFn:n(async({employmentId:t,payload:o})=>U({client:e,body:{employment_slug:t,responses:o,type:"contractor_of_record"},query:{json_schema_version:1}}),"mutationFn")})},"usePostCreateEligibilityQuestionnaire"),xt=n(()=>{let{client:e}=a();return f({mutationFn:n(async({employmentId:t})=>B({client:e,path:{employment_id:t}}),"mutationFn")})},"usePostManageContractorCorSubscription"),Pt=n(()=>{let{client:e}=a();return f({mutationFn:n(async({employmentId:t})=>$({client:e,path:{employment_id:t}}),"mutationFn")})},"useDeleteContractorCorSubscription"),Et=n(e=>{let{client:t}=a(),{data:o,isLoading:r}=p({...W(t,"contractor-onboarding-countries"),select:n(s=>s.data?.data?.map(c=>({label:c.name,value:c.code,eor_onboarding:c.eor_onboarding,contractor_products_available:c.contractor_products_available}))||[],"select"),enabled:e?.queryOptions?.enabled}),i=b(N.data.schema,{},e);if(o){let s=i.fields.find(c=>c.name==="country");s&&(s.options=o)}return{isLoading:r,selectCountryForm:i,countries:o}},"useCountriesSchemaField"),Rt=n(({countryCode:e,employmentId:t,fieldValues:o,options:r})=>{let i=ge({countryCode:e,employmentId:t,fieldValues:o,options:r}),{data:s,isLoading:c}=fe({employmentId:t,options:{queryOptions:{enabled:r?.queryOptions?.enabled}}}),u=be(()=>!i.data||!s?i.data:{...i.data,fields:i.data.fields.map(l=>l.name!=="payment_terms"?l:{...l,fields:l.fields?.map(d=>d.name!=="compensation_currency_code"?d:{...d,options:s.map(C=>({label:C.code,value:C.code,meta:{source:C.source}}))})})},[i.data,s]);return{...i,data:u,isLoading:i.isLoading||c}},"useContractorOnboardingDetailsSchemaWithCurrencies");export{Re as a,ne as b,ye as c,yt as d,bt as e,ft as f,Ce as g,Ct as h,gt as i,Fe as j,Ft as k,St as l,ht as m,_t as n,qt as o,Ot as p,xt as q,Pt as r,Et as s,Rt as t};
2
- //# sourceMappingURL=chunk-TNYFIB6U.js.map
@@ -1,2 +0,0 @@
1
- import{f as x,g as y,h as d}from"./chunk-LXOYWRNU.js";import{a as j}from"./chunk-WVJDCDGZ.js";import{a as R}from"./chunk-C32W6TCT.js";import{a as p}from"./chunk-NAF6LRSS.js";import{A as S,E as w,G as v,H as O,J as E,O as q,T as P,g as f,i as h,j as g,n as b,o as C,w as F,x as _}from"./chunk-H2RAK6F7.js";import{d as i}from"./chunk-KQPDXXG3.js";import{a as n}from"./chunk-P37U34EQ.js";import{useMutation as c,useQuery as u}from"@tanstack/react-query";var L=n(e=>{let{client:r}=i();return u({queryKey:["employment",e],retry:!1,enabled:!!e,select:n(({data:t})=>t?.data.employment,"select"),queryFn:n(async()=>{let t=await v({client:r,headers:{Authorization:""},path:{employment_id:e}});if(t.error||!t.data)throw new Error("Failed to fetch employment data");return t},"queryFn")})},"useEmployment"),G=n(e=>{let{client:r}=i();return u({queryKey:["company",e],retry:!1,enabled:!!e,queryFn:n(async()=>{let t=await _({client:r,headers:{Authorization:""},path:{company_id:e}});if(t.error||!t.data)throw new Error("Failed to fetch employment data");return t},"queryFn"),select:n(({data:t})=>t.data.company,"select")})},"useCompany"),X=n(e=>{let{client:r}=i();return u({queryKey:["benefit-offers",e],retry:!1,enabled:!!e,queryFn:n(async()=>b({client:r,path:{employment_id:e}}).then(t=>{if(t.error||!t.data)throw new Error("Failed to fetch benefit offers data");return t}),"queryFn"),select:n(({data:t})=>t?.data?.reduce((s,o)=>({...s,[o.benefit_group.slug]:{value:o.benefit_tier?.slug??"no",...o.benefit_group?.filter?.slug?{filter:o.benefit_group?.filter?.slug}:{}}}),{}),"select")})},"useBenefitOffers"),Y=n(()=>{let{client:e}=i();return c({mutationFn:n(r=>P({client:e,headers:{Authorization:""},path:r}),"mutationFn")})},"useEmploymentInvite"),Z=n(()=>{let{client:e}=i();return c({mutationFn:n(r=>F({client:e,body:r}),"mutationFn")})},"useCreateReserveInvoice"),$=n(({countryCode:e,form:r,fieldValues:t,options:s,query:o={},jsonSchemaVersion:a})=>{let{client:l}=i(),U=a?{json_schema_version:a}:{};return u({queryKey:["onboarding-json-schema-form",e,r,a],retry:!1,queryFn:n(async()=>{let m=await S({client:l,headers:{Authorization:""},path:{country_code:e,form:r},query:{skip_benefits:!0,...o,...U}});if(m.error||!m.data)throw new Error("Failed to fetch onboarding schema");return m},"queryFn"),enabled:s?.queryOptions?.enabled,select:n(({data:m})=>{let B=m?.data||{};return p(B,t,s)},"select")})},"useJSONSchemaForm"),ee=n((e,r,t)=>{let{client:s}=i(),o={json_schema_version:d(t)};return u({queryKey:["benefit-offers-schema",e],retry:!1,enabled:!!e,queryFn:n(async()=>{let a=await w({client:s,path:{employment_id:e},query:o});if(a.error||!a.data)throw new Error("Failed to fetch benefit offers schema");return a},"queryFn"),select:n(({data:a})=>{let l=a?.data?.schema||{};return p(l,r,{jsfModify:t?.jsfModify?.benefits})},"select")})},"useBenefitOffersSchema"),te=n(e=>{let{client:r}=i(),t={json_schema_version:y(e)};return c({mutationFn:n(s=>h({client:r,headers:{Authorization:""},body:s,query:{...t}}),"mutationFn")})},"useCreateEmployment"),ne=n((e,r)=>{let{client:t}=i(),s={employment_basic_information_json_schema_version:y(r),contract_details_json_schema_version:x(r,e)||1};return c({mutationFn:n(({employmentId:o,...a})=>O({client:t,headers:{Authorization:""},body:a,path:{employment_id:o},query:{skip_benefits:!0,...s}}),"mutationFn")})},"useUpdateEmployment"),re=n(e=>{let{client:r}=i();return c({mutationFn:n(({employmentId:t,...s})=>{let o={json_schema_version:d(e)};return C({client:r,body:s,path:{employment_id:t},query:o})},"mutationFn")})},"useUpdateBenefitsOffers"),oe=n(e=>{let{client:r}=i(),{data:t,isLoading:s}=u({...R(r,"onboarding-countries"),select:n(a=>a.data?.data?.filter(l=>l.eor_onboarding).map(l=>({label:l.name,value:l.code}))||[],"select"),enabled:e?.queryOptions?.enabled}),o=p(j.data.schema,{},e);if(t){let a=o.fields.find(l=>l.name==="country");a&&(a.options=t)}return{isLoading:s,selectCountryForm:o}},"useCountriesSchemaField"),se=n(({type:e="spread"})=>{let{client:r}=i();return c({mutationFn:n(t=>(e==="no_spread"?f:q)({client:r,body:t}),"mutationFn")})},"useConvertCurrency"),ae=n(()=>{let{client:e}=i();return c({mutationFn:n(({employmentId:r,...t})=>E({client:e,path:{employment_id:r},body:t}),"mutationFn")})},"useUpsertContractEligibility"),ie=n((e,r,t=!0)=>{let{client:s}=i();return u({queryKey:["employment-onboarding-reserves-status",e,r],retry:!1,enabled:t&&!!e&&!!r,queryFn:n(async()=>{let o=await g({client:s,headers:{Authorization:""},path:{company_id:e,employment_id:r}});if(o.error||!o.data)throw new Error("Failed to fetch employment onboarding reserves status");return o},"queryFn"),select:n(({data:o})=>o?.data?.status,"select")})},"useEmploymentOnboardingReservesStatus");export{L as a,G as b,X as c,Y as d,Z as e,$ as f,ee as g,te as h,ne as i,re as j,oe as k,se as l,ae as m,ie as n};
2
- //# sourceMappingURL=chunk-UMLRTS3B.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/api.ts"],"sourcesContent":["import { useMutation, useQuery, UseQueryResult } from '@tanstack/react-query';\nimport { FieldValues } from 'react-hook-form';\nimport { Client } from '@/src/client/client';\nimport {\n ConvertCurrencyParams,\n CreateContractEligibilityParams,\n EmploymentCreateParams,\n EmploymentFullParams,\n getIndexBenefitOffer,\n getShowCompany,\n getShowCompanyEmploymentOnboardingReservesStatus,\n getShowEmployment,\n getShowFormCountry,\n getShowSchema,\n patchUpdateEmployment2,\n postConvertRawCurrencyConverter,\n postConvertWithSpreadCurrencyConverter,\n postCreateContractEligibility,\n postCreateEmployment2,\n postCreateRiskReserve,\n postInviteEmploymentInvitation,\n PostInviteEmploymentInvitationData,\n putUpdateBenefitOffer,\n UnifiedEmploymentUpsertBenefitOffersRequest,\n} from '@/src/client';\n\nimport { useClient } from '@/src/context';\nimport { selectCountryStepSchema } from '@/src/flows/Onboarding/json-schemas/selectCountryStep';\nimport { OnboardingFlowProps } from '@/src/flows/Onboarding/types';\nimport {\n JSONSchemaFormResultWithFieldsets,\n JSONSchemaFormType,\n FlowOptions,\n} from '@/src/flows/types';\nimport {\n getContractDetailsSchemaVersion,\n getBasicInformationSchemaVersion,\n getBenefitOffersSchemaVersion,\n} from '@/src/flows/Onboarding/utils';\nimport { createHeadlessForm } from '@/src/common/createHeadlessForm';\nimport { countriesOptions } from '@/src/common/api/countries';\n\nexport const useEmployment = (employmentId: string | undefined) => {\n const { client } = useClient();\n\n return useQuery({\n queryKey: ['employment', employmentId],\n retry: false,\n enabled: !!employmentId,\n select: ({ data }) => {\n return data?.data.employment;\n },\n queryFn: async () => {\n const response = await getShowEmployment({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n employment_id: employmentId as string,\n },\n });\n\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch employment data');\n }\n\n return response;\n },\n });\n};\n\nexport const useCompany = (companyId: string) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['company', companyId],\n retry: false,\n enabled: !!companyId,\n queryFn: async () => {\n const response = await getShowCompany({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n company_id: companyId,\n },\n });\n\n if (response.error || !response.data) {\n throw new Error('Failed to fetch employment data');\n }\n\n return response;\n },\n select: ({ data }) => {\n return data.data.company;\n },\n });\n};\n\nexport const useBenefitOffers = (employmentId: string | undefined) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['benefit-offers', employmentId],\n retry: false,\n enabled: !!employmentId,\n queryFn: async () => {\n return getIndexBenefitOffer({\n client: client as Client,\n path: {\n employment_id: employmentId as string,\n },\n }).then((response) => {\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch benefit offers data');\n }\n\n return response;\n });\n },\n select: ({ data }) =>\n data?.data?.reduce(\n (acc, item) => {\n return {\n ...acc,\n [item.benefit_group.slug]: {\n value: item.benefit_tier?.slug ?? 'no',\n ...(item.benefit_group?.filter?.slug\n ? { filter: item.benefit_group?.filter?.slug }\n : {}),\n },\n };\n },\n {} as Record<string, { value: string }>,\n ),\n });\n};\n/**\n * Use this hook to invite an employee to the onboarding flow\n * @returns\n */\nexport const useEmploymentInvite = () => {\n const { client } = useClient();\n\n return useMutation({\n mutationFn: (payload: PostInviteEmploymentInvitationData['path']) => {\n return postInviteEmploymentInvitation({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: payload,\n });\n },\n });\n};\n\nexport const useCreateReserveInvoice = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (payload: { employment_slug: string }) => {\n return postCreateRiskReserve({\n client: client as Client,\n body: payload,\n });\n },\n });\n};\n\n/**\n * Use this hook to get the JSON schema form for the onboarding flow\n * @param param0\n * @returns\n */\nexport const useJSONSchemaForm = ({\n countryCode,\n form,\n fieldValues,\n options,\n query = {},\n jsonSchemaVersion,\n}: {\n countryCode: string;\n form: JSONSchemaFormType;\n fieldValues: FieldValues;\n options?: FlowOptions & { queryOptions?: { enabled?: boolean } };\n query?: Record<string, unknown>;\n jsonSchemaVersion?: number | 'latest';\n}): UseQueryResult<JSONSchemaFormResultWithFieldsets> => {\n const { client } = useClient();\n const jsonSchemaQueryParam = jsonSchemaVersion\n ? {\n json_schema_version: jsonSchemaVersion,\n }\n : {};\n return useQuery({\n queryKey: [\n 'onboarding-json-schema-form',\n countryCode,\n form,\n jsonSchemaVersion,\n ],\n retry: false,\n queryFn: async () => {\n const response = await getShowFormCountry({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n country_code: countryCode,\n form: form,\n },\n query: {\n skip_benefits: true,\n ...query,\n ...jsonSchemaQueryParam,\n },\n });\n\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch onboarding schema');\n }\n\n return response;\n },\n enabled: options?.queryOptions?.enabled,\n select: ({ data }) => {\n const jsfSchema = data?.data || {};\n return createHeadlessForm(jsfSchema, fieldValues, options);\n },\n });\n};\n\nexport const useBenefitOffersSchema = (\n employmentId: string,\n fieldValues: FieldValues,\n options: OnboardingFlowProps['options'],\n) => {\n const { client } = useClient();\n const jsonSchemaQueryParam = {\n json_schema_version: getBenefitOffersSchemaVersion(options),\n };\n\n return useQuery({\n queryKey: ['benefit-offers-schema', employmentId],\n retry: false,\n enabled: !!employmentId,\n queryFn: async () => {\n const response = await getShowSchema({\n client: client as Client,\n path: {\n employment_id: employmentId,\n },\n query: jsonSchemaQueryParam,\n });\n\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch benefit offers schema');\n }\n\n return response;\n },\n select: ({ data }) => {\n const jsfSchema = data?.data?.schema || {};\n\n return createHeadlessForm(jsfSchema, fieldValues, {\n jsfModify: options?.jsfModify?.benefits,\n });\n },\n });\n};\n\n/**\n * Use this hook to create an employment\n * @returns\n */\nexport const useCreateEmployment = (\n options?: OnboardingFlowProps['options'],\n) => {\n const { client } = useClient();\n const jsonSchemaQueryParam = {\n json_schema_version: getBasicInformationSchemaVersion(options),\n };\n return useMutation({\n mutationFn: (payload: EmploymentCreateParams) => {\n return postCreateEmployment2({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n query: {\n ...jsonSchemaQueryParam,\n },\n });\n },\n });\n};\n\nexport const useUpdateEmployment = (\n countryCode: string,\n options?: OnboardingFlowProps['options'],\n) => {\n const { client } = useClient();\n const jsonSchemaQueryParams = {\n employment_basic_information_json_schema_version:\n getBasicInformationSchemaVersion(options),\n contract_details_json_schema_version:\n getContractDetailsSchemaVersion(options, countryCode) || 1,\n };\n\n return useMutation({\n mutationFn: ({\n employmentId,\n ...payload\n }: EmploymentFullParams & { employmentId: string }) => {\n return patchUpdateEmployment2({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n path: {\n employment_id: employmentId,\n },\n query: {\n skip_benefits: true,\n ...jsonSchemaQueryParams,\n },\n });\n },\n });\n};\n\nexport const useUpdateBenefitsOffers = (\n options?: OnboardingFlowProps['options'],\n) => {\n const { client } = useClient();\n return useMutation({\n mutationFn: ({\n employmentId,\n ...payload\n }: UnifiedEmploymentUpsertBenefitOffersRequest & {\n employmentId: string;\n }) => {\n const jsonSchemaQueryParam = {\n json_schema_version: getBenefitOffersSchemaVersion(options),\n };\n\n return putUpdateBenefitOffer({\n client: client as Client,\n body: payload,\n path: {\n employment_id: employmentId,\n },\n query: jsonSchemaQueryParam,\n });\n },\n });\n};\n\nexport const useCountriesSchemaField = (\n options?: Omit<FlowOptions, 'jsonSchemaVersion'> & {\n queryOptions?: { enabled?: boolean };\n },\n) => {\n const { client } = useClient();\n const { data: countries, isLoading } = useQuery({\n ...countriesOptions(client as Client, 'onboarding-countries'),\n select: (response) => {\n return (\n response.data?.data\n ?.filter((country) => country.eor_onboarding)\n .map((country) => {\n return {\n label: country.name,\n value: country.code,\n };\n }) || []\n );\n },\n enabled: options?.queryOptions?.enabled,\n });\n\n const selectCountryForm = createHeadlessForm(\n selectCountryStepSchema.data.schema,\n {},\n options,\n );\n\n if (countries) {\n const countryField = selectCountryForm.fields.find(\n (field) => field.name === 'country',\n );\n if (countryField) {\n countryField.options = countries;\n }\n }\n\n return {\n isLoading,\n selectCountryForm,\n };\n};\n\nexport const useConvertCurrency = ({\n type = 'spread',\n}: {\n type?: 'spread' | 'no_spread';\n}) => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (payload: ConvertCurrencyParams) => {\n const apiFn =\n type === 'no_spread'\n ? postConvertRawCurrencyConverter\n : postConvertWithSpreadCurrencyConverter;\n return apiFn({\n client: client as Client,\n body: payload,\n });\n },\n });\n};\n\nexport const useUpsertContractEligibility = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: ({\n employmentId,\n ...payload\n }: { employmentId: string } & CreateContractEligibilityParams) => {\n return postCreateContractEligibility({\n client: client as Client,\n path: {\n employment_id: employmentId,\n },\n body: payload,\n });\n },\n });\n};\n\n/**\n * Hook to fetch onboarding reserves status for an employment\n * @param companyId - Company ID\n * @param employmentId - Employment ID\n * @param enabled - Whether the query should be enabled\n * @returns Query result with onboarding reserves status\n */\nexport const useEmploymentOnboardingReservesStatus = (\n companyId: string | undefined,\n employmentId: string | undefined,\n enabled = true,\n) => {\n const { client } = useClient();\n return useQuery({\n queryKey: [\n 'employment-onboarding-reserves-status',\n companyId,\n employmentId,\n ],\n retry: false,\n enabled: enabled && !!companyId && !!employmentId,\n queryFn: async () => {\n const response = await getShowCompanyEmploymentOnboardingReservesStatus({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n path: {\n company_id: companyId as string,\n employment_id: employmentId as string,\n },\n });\n\n if (response.error || !response.data) {\n throw new Error(\n 'Failed to fetch employment onboarding reserves status',\n );\n }\n\n return response;\n },\n select: ({ data }) => data?.data?.status,\n });\n};\n"],"mappings":"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","names":["useMutation","useQuery","useEmployment","__name","employmentId","client","useClient","useQuery","data","response","getShowEmployment","useCompany","companyId","getShowCompany","useBenefitOffers","getIndexBenefitOffer","acc","item","useEmploymentInvite","useMutation","payload","postInviteEmploymentInvitation","useCreateReserveInvoice","postCreateRiskReserve","useJSONSchemaForm","countryCode","form","fieldValues","options","query","jsonSchemaVersion","jsonSchemaQueryParam","getShowFormCountry","jsfSchema","createHeadlessForm","useBenefitOffersSchema","getBenefitOffersSchemaVersion","getShowSchema","useCreateEmployment","getBasicInformationSchemaVersion","postCreateEmployment2","useUpdateEmployment","jsonSchemaQueryParams","getContractDetailsSchemaVersion","patchUpdateEmployment2","useUpdateBenefitsOffers","putUpdateBenefitOffer","useCountriesSchemaField","countries","isLoading","countriesOptions","country","selectCountryForm","selectCountryStepSchema","countryField","field","useConvertCurrency","type","postConvertRawCurrencyConverter","postConvertWithSpreadCurrencyConverter","useUpsertContractEligibility","postCreateContractEligibility","useEmploymentOnboardingReservesStatus","enabled","getShowCompanyEmploymentOnboardingReservesStatus"]}
@@ -1,2 +0,0 @@
1
- import{a as k}from"./chunk-C4MRFGQG.js";import{a as C,b as w,c as F,d as P}from"./chunk-MSBCYMSH.js";import{a as u,b as D}from"./chunk-MP3VDCI7.js";import{j as _,k as v,l as x,m as h,n as b}from"./chunk-CWAFRJAQ.js";import{a as t}from"./chunk-VIGKOVHP.js";import{a as o}from"./chunk-P37U34EQ.js";import{CalendarIcon as L}from"lucide-react";import{format as R}from"date-fns";import{ChevronLeft as I,ChevronRight as M}from"lucide-react";import{DayPicker as z}from"react-day-picker";import{jsx as p}from"react/jsx-runtime";function N({className:r,classNames:i,showOutsideDays:s=!0,...n}){return p(z,{showOutsideDays:s,className:t("p-3",r),classNames:{months:"flex flex-col sm:flex-row gap-2",month:"flex flex-col gap-4",caption:"flex justify-center pt-1 relative items-center w-full",caption_label:"text-sm font-medium",nav:"flex items-center gap-1",nav_button:t(u({variant:"outline"}),"size-7 bg-transparent p-0 opacity-50 hover:opacity-100"),nav_button_previous:"absolute left-1",nav_button_next:"absolute right-1",table:"w-full border-collapse space-x-1",head_row:"flex",head_cell:"text-muted-foreground rounded-md w-8 font-normal text-[0.8rem]",row:"flex w-full mt-2",cell:t("relative p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-accent [&:has([aria-selected].day-range-end)]:rounded-r-md",n.mode==="range"?"[&:has(>.day-range-end)]:rounded-r-md [&:has(>.day-range-start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md":"[&:has([aria-selected])]:rounded-md"),day:t(u({variant:"ghost"}),"size-8 p-0 font-normal aria-selected:opacity-100"),day_range_start:"day-range-start aria-selected:bg-primary aria-selected:text-primary-foreground",day_range_end:"day-range-end aria-selected:bg-primary aria-selected:text-primary-foreground",day_selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground",day_today:"bg-accent text-accent-foreground",day_outside:"day-outside text-muted-foreground aria-selected:text-muted-foreground",day_disabled:"text-muted-foreground opacity-50",day_range_middle:"aria-selected:bg-accent aria-selected:text-accent-foreground",day_hidden:"invisible",...i},components:{IconLeft:o(({className:d,...l})=>p(I,{className:t("size-4",d),...l}),"IconLeft"),IconRight:o(({className:d,...l})=>p(M,{className:t("size-4",d),...l}),"IconRight")},...n})}o(N,"Calendar");import{Fragment as V,jsx as e,jsxs as m}from"react/jsx-runtime";function X({field:r,fieldData:i,fieldState:s}){let{name:n,label:d,description:l,minDate:f,maxDate:g}=i,c=f?new Date(f):void 0,y=g?new Date(g):void 0;return m(_,{"data-field":n,className:`flex flex-col RemoteFlows__DatePickerField__Item__${n}`,children:[e(v,{className:"RemoteFlows__DatePickerField__Label",children:d}),m(w,{children:[e(F,{asChild:!0,children:e(x,{children:e("div",{children:m(D,{type:"button",variant:"outline",className:t("w-full pl-3 text-left font-normal",!r.value&&"text-muted-foreground"),"data-testid":`date-picker-button-${n}`,children:[r.value&&e(V,{children:R(r.value,"yyyy-MM-dd")}),e(L,{className:"ml-auto h-4 w-4 opacity-50"})]})})})}),e(P,{className:"w-auto p-0 RemoteFlows__DatepickerField__PopoverContent",align:"start",children:e(N,{mode:"single",className:"RemoteFlows__DatepickerField__Calendar",selected:r.value?new Date(r.value):void 0,onSelect:a=>{r.onChange(a?R(a,"yyyy-MM-dd"):null)},defaultMonth:c,components:{DayContent:o(a=>e(C,{children:a.date.getDate()}),"DayContent")},disabled:a=>!!(c&&a<c||y&&a>y)})})]}),l?m(h,{children:[l," ",e(k,{helpCenter:i.meta?.helpCenter})]}):null,s.error&&e(b,{className:"RemoteFlows__DatePickerField__Error"})]})}o(X,"DatePickerFieldDefault");export{X as a};
2
- //# sourceMappingURL=chunk-UOA5WU4S.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/form/fields/default/DatePickerFieldDefault.tsx","../src/components/ui/calendar.tsx"],"sourcesContent":["import { Button } from '@/src/components/ui/button';\nimport {\n FormControl,\n FormDescription,\n FormItem,\n FormLabel,\n FormMessage,\n} from '@/src/components/ui/form';\nimport { DatePickerComponentProps } from '@/src/types/fields';\nimport { CalendarIcon } from 'lucide-react';\nimport { format } from 'date-fns';\nimport {\n Popover,\n PopoverClose,\n PopoverContent,\n PopoverTrigger,\n} from '@/src/components/ui/popover';\nimport { cn } from '@/src/lib/utils';\nimport { Calendar } from '@/src/components/ui/calendar';\nimport { HelpCenter } from '@/src/components/shared/zendesk-drawer/HelpCenter';\n\nexport function DatePickerFieldDefault({\n field,\n fieldData,\n fieldState,\n}: DatePickerComponentProps) {\n const { name, label, description, minDate, maxDate } = fieldData;\n const minDateValue = minDate ? new Date(minDate) : undefined;\n const maxDateValue = maxDate ? new Date(maxDate) : undefined;\n return (\n <FormItem\n data-field={name}\n className={`flex flex-col RemoteFlows__DatePickerField__Item__${name}`}\n >\n <FormLabel className='RemoteFlows__DatePickerField__Label'>\n {label}\n </FormLabel>\n <Popover>\n <PopoverTrigger asChild>\n <FormControl>\n <div>\n <Button\n type='button'\n variant={'outline'}\n className={cn(\n 'w-full pl-3 text-left font-normal',\n !field.value && 'text-muted-foreground',\n )}\n data-testid={`date-picker-button-${name}`}\n >\n {field.value && <>{format(field.value, 'yyyy-MM-dd')}</>}\n <CalendarIcon className='ml-auto h-4 w-4 opacity-50' />\n </Button>\n </div>\n </FormControl>\n </PopoverTrigger>\n <PopoverContent\n className={`w-auto p-0 RemoteFlows__DatepickerField__PopoverContent`}\n align='start'\n >\n <Calendar\n mode='single'\n className='RemoteFlows__DatepickerField__Calendar'\n selected={field.value ? new Date(field.value) : undefined}\n onSelect={(date) => {\n field.onChange(date ? format(date, 'yyyy-MM-dd') : null);\n }}\n defaultMonth={minDateValue}\n components={{\n DayContent: (props) => {\n return <PopoverClose>{props.date.getDate()}</PopoverClose>;\n },\n }}\n disabled={(date: Date) => {\n if (minDateValue && date < minDateValue) return true;\n if (maxDateValue && date > maxDateValue) return true;\n return false;\n }}\n />\n </PopoverContent>\n </Popover>\n {description ? (\n <FormDescription>\n {description} <HelpCenter helpCenter={fieldData.meta?.helpCenter} />\n </FormDescription>\n ) : null}\n {fieldState.error && (\n <FormMessage className='RemoteFlows__DatePickerField__Error' />\n )}\n </FormItem>\n );\n}\n","import * as React from 'react';\nimport { ChevronLeft, ChevronRight } from 'lucide-react';\nimport { DayPicker } from 'react-day-picker';\n\nimport { cn } from '@/src/lib/utils';\nimport { buttonVariants } from '@/src/components/ui/button';\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n ...props\n}: React.ComponentProps<typeof DayPicker>) {\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn('p-3', className)}\n classNames={{\n months: 'flex flex-col sm:flex-row gap-2',\n month: 'flex flex-col gap-4',\n caption: 'flex justify-center pt-1 relative items-center w-full',\n caption_label: 'text-sm font-medium',\n nav: 'flex items-center gap-1',\n nav_button: cn(\n buttonVariants({ variant: 'outline' }),\n 'size-7 bg-transparent p-0 opacity-50 hover:opacity-100',\n ),\n nav_button_previous: 'absolute left-1',\n nav_button_next: 'absolute right-1',\n table: 'w-full border-collapse space-x-1',\n head_row: 'flex',\n head_cell:\n 'text-muted-foreground rounded-md w-8 font-normal text-[0.8rem]',\n row: 'flex w-full mt-2',\n cell: cn(\n 'relative p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-accent [&:has([aria-selected].day-range-end)]:rounded-r-md',\n props.mode === 'range'\n ? '[&:has(>.day-range-end)]:rounded-r-md [&:has(>.day-range-start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md'\n : '[&:has([aria-selected])]:rounded-md',\n ),\n day: cn(\n buttonVariants({ variant: 'ghost' }),\n 'size-8 p-0 font-normal aria-selected:opacity-100',\n ),\n day_range_start:\n 'day-range-start aria-selected:bg-primary aria-selected:text-primary-foreground',\n day_range_end:\n 'day-range-end aria-selected:bg-primary aria-selected:text-primary-foreground',\n day_selected:\n 'bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground',\n day_today: 'bg-accent text-accent-foreground',\n day_outside:\n 'day-outside text-muted-foreground aria-selected:text-muted-foreground',\n day_disabled: 'text-muted-foreground opacity-50',\n day_range_middle:\n 'aria-selected:bg-accent aria-selected:text-accent-foreground',\n day_hidden: 'invisible',\n ...classNames,\n }}\n components={{\n IconLeft: ({ className, ...props }) => (\n <ChevronLeft className={cn('size-4', className)} {...props} />\n ),\n IconRight: ({ className, ...props }) => (\n <ChevronRight className={cn('size-4', className)} {...props} />\n ),\n }}\n {...props}\n />\n );\n}\n\nexport { Calendar };\n"],"mappings":"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","names":["CalendarIcon","format","ChevronLeft","ChevronRight","DayPicker","jsx","Calendar","className","classNames","showOutsideDays","props","DayPicker","cn","buttonVariants","__name","ChevronLeft","ChevronRight","Fragment","jsx","jsxs","DatePickerFieldDefault","field","fieldData","fieldState","name","label","description","minDate","maxDate","minDateValue","maxDateValue","FormItem","FormLabel","Popover","PopoverTrigger","FormControl","Button","cn","format","CalendarIcon","PopoverContent","Calendar","date","__name","props","PopoverClose","FormDescription","HelpCenter","FormMessage"]}
@@ -1,2 +0,0 @@
1
- import{b as u}from"./chunk-X6ZAR7ZL.js";import{a as o}from"./chunk-P37U34EQ.js";import{clsx as p}from"clsx";import{twMerge as c}from"tailwind-merge";import s from"dompurify";function h(...r){return c(p(r))}o(h,"cn");function x(r,n="EUR"){if(r==null)return"-";let e=r/100;return new Intl.NumberFormat("en",{style:"currency",currency:n,currencyDisplay:"symbol"}).format(e)}o(x,"formatCurrency");var d=o(r=>{let n={};return r.inner.forEach(e=>{e.path!==void 0&&(n[e.path]={type:e.type,errors:e.errors,inner:e.inner.map(i=>d(i))})}),n},"transformYupErrorsIntoObject");function V(r){window.RemoteFlowsSDK={version:r}}o(V,"debug");var f=o(r=>{let n=new Set(r?r.toLowerCase().split(" "):[]);return n.add("noopener"),n.add("noreferrer"),Array.from(n).join(" ")},"appendSecureRelValue");s.isSupported&&s.addHook("afterSanitizeAttributes",r=>{let n=r.getAttribute("target");if(r.tagName==="A"&&(!n||n!=="_self")){let e=r.getAttribute("href");if(e&&!e.startsWith("#")&&/^https?:\/\//i.test(e)){r.setAttribute("target","_blank");let i=r.getAttribute("rel");r.setAttribute("rel",f(i))}}});var S=o(r=>s.sanitize(r,{ADD_ATTR:["target"]}),"sanitizeHtml"),R=o(r=>{let e=new DOMParser().parseFromString(r,"text/html");e.querySelectorAll("img").forEach(a=>{a.setAttribute("onerror","this.style.display='none'")});let t=e.body.innerHTML;return s.sanitize(t,{ADD_ATTR:["target","onerror"]})},"sanitizeHtmlWithImageErrorHandling"),T=o(r=>{if(!r)return"";let n=r.trim();return n.startsWith("data:application/pdf;base64,")||n.startsWith("data:")?n:`data:application/pdf;base64,${n}`},"clearBase64Data");function m(r,n){return n?Object.fromEntries(Object.entries(r).map(([e,i])=>{if(i===void 0)return[e,void 0];let t=n.find(a=>a.name===e);if(t?.isVisible===!1||t?.deprecated)return[e,void 0];if(t?.type==="radio"||t?.type==="select"){let a=t.options.find(l=>l.value===i);return a?[e,{prettyValue:a?.label,label:t?.label,inputType:t?.type}]:void 0}if(t?.type==="checkbox"&&t?.const)return[e,{prettyValue:!0,label:t.label,inputType:t?.type}];if(t?.type==="countries"&&Array.isArray(i))return[e,{prettyValue:i.join(),label:t.label,inputType:t?.type}];if(t?.type==="fieldset"){let a=m(i,t.fields);if(!a.label&&a.value){let l={...a.value,label:t.label,inputType:t?.type};return[e,l]}return[e,a]}if(t?.type==="money")return[e,{prettyValue:i,label:t.label,inputType:t?.type,currency:t?.currency}];if(t)return[e,{prettyValue:i,label:t.label,inputType:t?.type}]}).filter(Boolean)):{}}o(m,"prettifyFormValues");function y(r){return{error:new Error(r),rawError:{message:r},fieldErrors:[]}}o(y,"createStructuredError");function E(r){return typeof r=="object"&&r!==null&&"error"in r&&"rawError"in r&&"fieldErrors"in r}o(E,"isStructuredError");function z(r,n){if(E(r)){let i=u(r.fieldErrors||[],n);return{error:r.error,rawError:r.rawError,fieldErrors:i}}return{...y(r instanceof Error?r.message:"An unexpected error occurred"),fieldErrors:[]}}o(z,"handleStepError");export{h as a,x as b,d as c,V as d,S as e,R as f,T as g,m as h,y as i,E as j,z as k};
2
- //# sourceMappingURL=chunk-VIGKOVHP.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/lib/utils.ts"],"sourcesContent":["import { clsx, type ClassValue } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\nimport { ValidationError } from 'yup';\nimport DOMPurify from 'dompurify';\nimport { JSFFields, Meta } from '@/src/types/remoteFlows';\nimport {\n NormalizedFieldError,\n normalizeFieldErrors,\n} from '@/src/lib/mutations';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport function formatCurrency(\n amount: number | undefined | null,\n currencyCode = 'EUR',\n): string {\n if (amount == null) {\n return '-';\n }\n\n const value = amount / 100;\n\n return new Intl.NumberFormat('en', {\n style: 'currency',\n currency: currencyCode,\n currencyDisplay: 'symbol',\n }).format(value);\n}\n\ntype YupError = Pick<ValidationError, 'type' | 'errors'> & {\n inner: Record<string, YupError>[];\n};\n\n/**\n * Transforms a Yup ValidationError object into a more readable object. The format is as follows:\n * {\n * [fieldName]: {\n * type: string,\n * errors: string[],\n * inner: YupError[],\n * },\n * }\n * @param errors\n * @returns\n */\nexport const transformYupErrorsIntoObject = (errors: ValidationError) => {\n const validationErrors: Record<string, YupError> = {};\n\n errors.inner.forEach((error: ValidationError) => {\n if (error.path !== undefined) {\n validationErrors[error.path] = {\n type: error.type,\n errors: error.errors,\n inner: error.inner.map((innerError) =>\n transformYupErrorsIntoObject(innerError),\n ),\n };\n }\n });\n\n return validationErrors;\n};\n\n/**\n * Debug utility to add version to window object\n * @param version - The version of the SDK\n */\nexport function debug(version: string) {\n window.RemoteFlowsSDK = {\n version,\n };\n}\n\n// Deduplicates rel values if necessary and appends noopener and noreferrer\nconst appendSecureRelValue = (rel: string | null) => {\n const attributes = new Set(rel ? rel.toLowerCase().split(' ') : []);\n\n attributes.add('noopener');\n attributes.add('noreferrer');\n\n return Array.from(attributes).join(' ');\n};\n\nif (DOMPurify.isSupported) {\n DOMPurify.addHook('afterSanitizeAttributes', (node) => {\n const target = node.getAttribute('target');\n\n if (node.tagName === 'A' && (!target || target !== '_self')) {\n const href = node.getAttribute('href');\n\n // Skip internal anchors (#section), relative URLs, and non-http protocols\n if (href && !href.startsWith('#') && /^https?:\\/\\//i.test(href)) {\n node.setAttribute('target', '_blank');\n const rel = node.getAttribute('rel');\n node.setAttribute('rel', appendSecureRelValue(rel));\n }\n }\n });\n}\n\nexport const sanitizeHtml = (html: string) => {\n return DOMPurify.sanitize(html, { ADD_ATTR: ['target'] });\n};\n\nexport const sanitizeHtmlWithImageErrorHandling = (html: string) => {\n const parser = new DOMParser();\n const doc = parser.parseFromString(html, 'text/html');\n\n // Add onerror handler to all img tags to hide them if they fail to load\n const images = doc.querySelectorAll('img');\n images.forEach((img) => {\n img.setAttribute('onerror', \"this.style.display='none'\");\n });\n\n const modifiedHtml = doc.body.innerHTML;\n\n // Sanitize with DOMPurify, allowing onerror attribute\n // Note: The global afterSanitizeAttributes hook (defined above) will still apply\n // to add target=\"_blank\" and rel=\"noopener noreferrer\" to external links\n return DOMPurify.sanitize(modifiedHtml, {\n ADD_ATTR: ['target', 'onerror'],\n });\n};\n\n/**\n * Ensures base64 data has the correct data URI prefix for PDF content\n * @param base64Data - The base64 data string\n * @returns The base64 data with proper data URI prefix\n */\nexport const clearBase64Data = (base64Data: string) => {\n if (!base64Data) return '';\n\n const cleanedData = base64Data.trim();\n\n if (cleanedData.startsWith('data:application/pdf;base64,')) {\n return cleanedData;\n }\n\n if (cleanedData.startsWith('data:')) {\n return cleanedData;\n }\n\n return `data:application/pdf;base64,${cleanedData}`;\n};\n\n/**\n * Function to prettify form values. Returns a pretty value and label for each field.\n * @param values - Form values to prettify\n * @param fields - Form fields\n * @returns Prettified form values\n */\n// @ts-expect-error need to check function return type\nexport function prettifyFormValues(\n values: Record<string, unknown>,\n fields: JSFFields | undefined,\n) {\n if (!fields) {\n return {};\n }\n return Object.fromEntries(\n Object.entries(values)\n // @ts-expect-error need to check function return type\n .map(([key, value]) => {\n if (value === undefined) {\n return [key, undefined];\n }\n\n const field = fields.find((field) => field.name === key);\n\n if (field?.isVisible === false || field?.deprecated) {\n return [key, undefined];\n }\n\n if (field?.type === 'radio' || field?.type === 'select') {\n const option = (\n field.options as Array<{ value: string; label: string }>\n ).find((option) => option.value === value);\n\n if (option) {\n return [\n key,\n {\n prettyValue: option?.label,\n label: field?.label,\n inputType: field?.type,\n },\n ];\n }\n return;\n }\n\n if (field?.type === 'checkbox' && field?.const) {\n return [\n key,\n { prettyValue: true, label: field.label, inputType: field?.type },\n ];\n }\n\n if (field?.type === 'countries' && Array.isArray(value)) {\n return [\n key,\n {\n prettyValue: value.join(),\n label: field.label,\n inputType: field?.type,\n },\n ];\n }\n\n if (field?.type === 'fieldset') {\n // @ts-expect-error need to check function return type\n const prettiedFieldset = prettifyFormValues(\n value as Record<string, unknown>,\n field.fields as JSFFields,\n );\n\n // Handles benefits fieldset in specific\n if (!prettiedFieldset.label && prettiedFieldset.value) {\n const prettyValue: Record<string, unknown> = {\n ...prettiedFieldset.value,\n label: field.label,\n inputType: field?.type,\n };\n return [key, prettyValue];\n }\n\n return [key, prettiedFieldset];\n }\n\n if (field?.type === 'money') {\n return [\n key,\n {\n prettyValue: value,\n label: field.label,\n inputType: field?.type,\n currency: field?.currency,\n },\n ];\n }\n\n if (field) {\n return [\n key,\n { prettyValue: value, label: field.label, inputType: field?.type },\n ];\n }\n })\n .filter(Boolean),\n );\n}\n\n/**\n * Creates a structured error object with the error message and raw error object\n * @param message - The error message\n * @returns\n */\nexport function createStructuredError(message: string) {\n return {\n error: new Error(message),\n rawError: { message },\n fieldErrors: [],\n };\n}\n\n/**\n * Checks if the error is a structured error\n * @param err - The error\n * @returns True if the error is a structured error\n */\nexport function isStructuredError(err: unknown): err is {\n error: Error;\n rawError: Record<string, unknown>;\n fieldErrors: NormalizedFieldError[];\n} {\n return (\n typeof err === 'object' &&\n err !== null &&\n 'error' in err &&\n 'rawError' in err &&\n 'fieldErrors' in err\n );\n}\n\n/**\n * Handles the error for a step\n * @param err - The error\n * @param fieldsMeta - The fields metadata\n * @returns The structured error\n */\nexport function handleStepError(\n err: unknown,\n fieldsMeta?: Meta,\n): {\n error: Error;\n rawError: Record<string, unknown>;\n fieldErrors: NormalizedFieldError[];\n} {\n // If it's already a structured error from mutateAsyncOrThrow\n if (isStructuredError(err)) {\n const normalizedFieldErrors = normalizeFieldErrors(\n err.fieldErrors || [],\n fieldsMeta,\n );\n return {\n error: err.error,\n rawError: err.rawError,\n fieldErrors: normalizedFieldErrors,\n };\n }\n\n // For unexpected errors, create a structured error\n const fallbackError = createStructuredError(\n err instanceof Error ? err.message : 'An unexpected error occurred',\n );\n\n return {\n ...fallbackError,\n fieldErrors: [], // No field errors for unexpected errors\n };\n}\n"],"mappings":"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","names":["clsx","twMerge","DOMPurify","cn","inputs","twMerge","clsx","__name","formatCurrency","amount","currencyCode","value","transformYupErrorsIntoObject","errors","validationErrors","error","innerError","debug","version","appendSecureRelValue","rel","attributes","DOMPurify","node","target","href","sanitizeHtml","html","sanitizeHtmlWithImageErrorHandling","doc","img","modifiedHtml","clearBase64Data","base64Data","cleanedData","prettifyFormValues","values","fields","key","field","option","prettiedFieldset","prettyValue","createStructuredError","message","isStructuredError","err","handleStepError","fieldsMeta","normalizedFieldErrors","normalizeFieldErrors"]}
@@ -1,2 +0,0 @@
1
- import{b}from"./chunk-Q3ALCPJN.js";import{b as F}from"./chunk-LNV36S6D.js";import{a as S}from"./chunk-BI4RFXFL.js";import{f,h as p}from"./chunk-CWAFRJAQ.js";import{b as u}from"./chunk-X6ZAR7ZL.js";import{a as m}from"./chunk-P37U34EQ.js";import{useEffect as c,useRef as k}from"react";import{jsx as g}from"react/jsx-runtime";import{createElement as B}from"react";function D({defaultValues:l,onSubmit:y,components:h}){let{formId:P,contractorOnboardingBag:o,formRef:i}=b(),d=k(l),C=F(o.handleValidation),r=f({resolver:C,defaultValues:l,shouldUnregister:!1,mode:"onBlur"});c(()=>{i?.setValue&&(i.setValue.current=r.setValue)},[r.setValue,i]),c(()=>{o.employmentId&&o?.checkFieldUpdates(r.getValues())},[]),c(()=>{let n=r?.watch(e=>{Object.keys(e).some(a=>e[a]!==d.current[a])&&(o?.checkFieldUpdates(e),d.current={...e})});return()=>n?.unsubscribe()},[]);let E=m(async(n,e)=>{let s=e?.nativeEvent;if(s?.isDraftSubmission){let{onSuccess:a,onError:O}=s.draftCallbacks;try{await o.onSubmit(n),a?.()}catch(t){let V=o.stepState.currentStep.name,w=o.meta?.fields?.[V],R=u(t?.fieldErrors||[],w);O?.({error:t?.error||t,rawError:t?.rawError||t,fieldErrors:R})}}else await y(n)},"handleSubmit");return B(p,{...r,key:`form-${o.stepState.currentStep.name}`},g("form",{id:P,onSubmit:r.handleSubmit(E),className:"space-y-4 RemoteFlows__OnboardingForm",children:g(S,{components:h,fields:o.fields,fieldsets:o.meta.fieldsets,fieldValues:o.fieldValues})}))}m(D,"ContractorOnboardingForm");export{D as a};
2
- //# sourceMappingURL=chunk-WFZGKBFS.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/ContractorOnboarding/components/ContractorOnboardingForm.tsx"],"sourcesContent":["import { useEffect, useRef } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { $TSFixMe, JSFFields } from '@/src/types/remoteFlows';\nimport { JSONSchemaFormFields } from '@/src/components/form/JSONSchemaForm';\nimport { Form } from '@/src/components/ui/form';\nimport { useJsonSchemasValidationFormResolver } from '@/src/components/form/validationResolver';\nimport { BasicInformationFormPayload } from '@/src/flows/Onboarding/types';\nimport { Components } from '@/src/types/remoteFlows';\nimport { useContractorOnboardingContext } from '@/src/flows/ContractorOnboarding/context';\nimport {\n EligibilityQuestionnaireFormPayload,\n PricingPlanFormPayload,\n ContractorOnboardingContractDetailsFormPayload,\n} from '@/src/flows/ContractorOnboarding/types';\nimport { normalizeFieldErrors } from '@/src/lib/mutations';\n\ntype ContractorOnboardingFormProps = {\n onSubmit: (\n payload:\n | BasicInformationFormPayload\n | PricingPlanFormPayload\n | ContractorOnboardingContractDetailsFormPayload\n | EligibilityQuestionnaireFormPayload,\n ) => Promise<void>;\n components?: Components;\n fields?: JSFFields;\n defaultValues: Record<string, unknown>;\n};\n\nexport function ContractorOnboardingForm({\n defaultValues,\n onSubmit,\n components,\n}: ContractorOnboardingFormProps) {\n const { formId, contractorOnboardingBag, formRef } =\n useContractorOnboardingContext();\n const prevValuesRef = useRef(defaultValues);\n\n const resolver = useJsonSchemasValidationFormResolver(\n contractorOnboardingBag.handleValidation,\n );\n\n const form = useForm({\n resolver,\n defaultValues,\n shouldUnregister: false,\n mode: 'onBlur',\n });\n\n // Register the form's setValue method with the context so other components can access it\n useEffect(() => {\n if (formRef?.setValue) {\n formRef.setValue.current = form.setValue;\n }\n }, [form.setValue, formRef]);\n\n useEffect(() => {\n // When the employmentId is set,\n // we need to run the checkFieldUpdates to update fieldValues in useStepState\n if (contractorOnboardingBag.employmentId) {\n contractorOnboardingBag?.checkFieldUpdates(form.getValues());\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n const subscription = form?.watch((values) => {\n const hasChanged = Object.keys(values).some(\n (key) => values[key] !== prevValuesRef.current[key],\n );\n if (hasChanged) {\n contractorOnboardingBag?.checkFieldUpdates(values);\n prevValuesRef.current = { ...values };\n }\n });\n return () => subscription?.unsubscribe();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleSubmit = async (\n values: Record<string, unknown>,\n event?: React.BaseSyntheticEvent,\n ) => {\n const nativeEvent = event?.nativeEvent as $TSFixMe;\n\n if (nativeEvent?.isDraftSubmission) {\n const { onSuccess, onError } = nativeEvent.draftCallbacks;\n\n try {\n await contractorOnboardingBag.onSubmit(values);\n onSuccess?.();\n } catch (error: $TSFixMe) {\n const currentStepName =\n contractorOnboardingBag.stepState.currentStep.name;\n const currentStepFields =\n contractorOnboardingBag.meta?.fields?.[\n currentStepName as keyof typeof contractorOnboardingBag.meta.fields\n ];\n\n const normalizedFieldErrors = normalizeFieldErrors(\n error?.fieldErrors || [],\n currentStepFields,\n );\n onError?.({\n error: error?.error || (error as Error),\n rawError: error?.rawError || (error as Record<string, unknown>),\n fieldErrors: normalizedFieldErrors,\n });\n }\n } else {\n await onSubmit(values as $TSFixMe);\n }\n };\n\n return (\n <Form\n {...form}\n key={`form-${contractorOnboardingBag.stepState.currentStep.name}`}\n >\n <form\n id={formId}\n onSubmit={form.handleSubmit(handleSubmit)}\n className='space-y-4 RemoteFlows__OnboardingForm'\n >\n <JSONSchemaFormFields\n components={components}\n fields={contractorOnboardingBag.fields}\n fieldsets={contractorOnboardingBag.meta.fieldsets}\n fieldValues={contractorOnboardingBag.fieldValues}\n />\n </form>\n </Form>\n );\n}\n"],"mappings":"6OAAA,OAAS,aAAAA,EAAW,UAAAC,MAAc,QA4H1B,cAAAC,MAAA,oBATJ,wBAAAC,MAAA,QAtFG,SAASC,EAAyB,CACvC,cAAAC,EACA,SAAAC,EACA,WAAAC,CACF,EAAkC,CAChC,GAAM,CAAE,OAAAC,EAAQ,wBAAAC,EAAyB,QAAAC,CAAQ,EAC/CC,EAA+B,EAC3BC,EAAgBC,EAAOR,CAAa,EAEpCS,EAAWC,EACfN,EAAwB,gBAC1B,EAEMO,EAAOC,EAAQ,CACnB,SAAAH,EACA,cAAAT,EACA,iBAAkB,GAClB,KAAM,QACR,CAAC,EAGDa,EAAU,IAAM,CACVR,GAAS,WACXA,EAAQ,SAAS,QAAUM,EAAK,SAEpC,EAAG,CAACA,EAAK,SAAUN,CAAO,CAAC,EAE3BQ,EAAU,IAAM,CAGVT,EAAwB,cAC1BA,GAAyB,kBAAkBO,EAAK,UAAU,CAAC,CAG/D,EAAG,CAAC,CAAC,EAELE,EAAU,IAAM,CACd,IAAMC,EAAeH,GAAM,MAAOI,GAAW,CACxB,OAAO,KAAKA,CAAM,EAAE,KACpCC,GAAQD,EAAOC,CAAG,IAAMT,EAAc,QAAQS,CAAG,CACpD,IAEEZ,GAAyB,kBAAkBW,CAAM,EACjDR,EAAc,QAAU,CAAE,GAAGQ,CAAO,EAExC,CAAC,EACD,MAAO,IAAMD,GAAc,YAAY,CAEzC,EAAG,CAAC,CAAC,EAEL,IAAMG,EAAeC,EAAA,MACnBH,EACAI,IACG,CACH,IAAMC,EAAcD,GAAO,YAE3B,GAAIC,GAAa,kBAAmB,CAClC,GAAM,CAAE,UAAAC,EAAW,QAAAC,CAAQ,EAAIF,EAAY,eAE3C,GAAI,CACF,MAAMhB,EAAwB,SAASW,CAAM,EAC7CM,IAAY,CACd,OAASE,EAAiB,CACxB,IAAMC,EACJpB,EAAwB,UAAU,YAAY,KAC1CqB,EACJrB,EAAwB,MAAM,SAC5BoB,CACF,EAEIE,EAAwBC,EAC5BJ,GAAO,aAAe,CAAC,EACvBE,CACF,EACAH,IAAU,CACR,MAAOC,GAAO,OAAUA,EACxB,SAAUA,GAAO,UAAaA,EAC9B,YAAaG,CACf,CAAC,CACH,CACF,MACE,MAAMzB,EAASc,CAAkB,CAErC,EAjCqB,gBAmCrB,OACEjB,EAAC8B,EAAA,CACE,GAAGjB,EACJ,IAAK,QAAQP,EAAwB,UAAU,YAAY,IAAI,IAE/DP,EAAC,QACC,GAAIM,EACJ,SAAUQ,EAAK,aAAaM,CAAY,EACxC,UAAU,wCAEV,SAAApB,EAACgC,EAAA,CACC,WAAY3B,EACZ,OAAQE,EAAwB,OAChC,UAAWA,EAAwB,KAAK,UACxC,YAAaA,EAAwB,YACvC,EACF,CACF,CAEJ,CAxGgBc,EAAAnB,EAAA","names":["useEffect","useRef","jsx","createElement","ContractorOnboardingForm","defaultValues","onSubmit","components","formId","contractorOnboardingBag","formRef","useContractorOnboardingContext","prevValuesRef","useRef","resolver","useJsonSchemasValidationFormResolver","form","useForm","useEffect","subscription","values","key","handleSubmit","__name","event","nativeEvent","onSuccess","onError","error","currentStepName","currentStepFields","normalizedFieldErrors","normalizeFieldErrors","Form","JSONSchemaFormFields"]}
@@ -1,2 +0,0 @@
1
- import{a as n}from"./chunk-P37U34EQ.js";function u(o){let a=o.error||o;if(!a||!a.errors||typeof a.errors!="object")return[];let e=[];return Object.entries(a.errors).forEach(([i,r])=>{if(Array.isArray(r)){e.push({field:i,messages:r.map(t=>String(t))});return}r&&typeof r=="object"&&Object.entries(r).forEach(([t,s])=>{Array.isArray(s)&&e.push({field:t,messages:s.map(l=>String(l))})})}),e}n(u,"extractFieldErrors");function y(o){return{mutateAsyncOrThrow:n(a=>new Promise((e,i)=>{o.mutate(a,{onSuccess:n(r=>{if("data"in r&&r.data!==null&&!r.error)e(r.data);else{let t=u(r.error),s=r.error.error||r.error,{response:l}=r,d=typeof s?.message=="string"?s.message:"Something went wrong. Please try again later.";i({error:new Error(d),rawError:r.error,fieldErrors:t,response:l})}},"onSuccess"),onError:n(r=>{let t=u(r);i({error:r,rawError:r,fieldErrors:t,response:r?.response})},"onError")})}),"mutateAsyncOrThrow"),mutateAsync:n(a=>new Promise((e,i)=>{o.mutate(a,{onSuccess:n(r=>{if(r.data)e({data:r.data,error:null});else{let t=u(r.error),s=r.error.error||r.error,l=typeof s?.message=="string"?s.message:"Something went wrong. Please try again later.";e({data:null,error:new Error(l),rawError:r.error,fieldErrors:t})}},"onSuccess"),onError:n(r=>{let t=u(r);i({data:null,error:r,rawError:r,fieldErrors:t})},"onError")})}),"mutateAsync")}}n(y,"mutationToPromise");function c(o,a){return!o||o.length===0?[]:o.map(e=>{let r=a?.[e.field]?.label||e.field;return{...e,userFriendlyLabel:r,field:e.field,messages:e.messages}})}n(c,"normalizeFieldErrors");export{y as a,c as b};
2
- //# sourceMappingURL=chunk-X6ZAR7ZL.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/lib/mutations.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Meta } from '@/src/types/remoteFlows';\nimport { UseMutationResult } from '@tanstack/react-query';\n\ntype MutationData<T> =\n T extends UseMutationResult<infer R, any, any, any> ? R : never;\ntype MutationVariables<T> =\n T extends UseMutationResult<any, any, infer V, any> ? V : never;\ntype MutationError<T> =\n T extends UseMutationResult<any, infer E, any, any> ? E : never;\n\n/**\n * Unwraps the .data property from the response type\n * This matches the runtime behavior of mutateAsyncOrThrow which resolves with response.data\n */\ntype UnwrapData<T> = T extends { data: infer D } ? D : T;\n\nexport interface SuccessResponse<D> {\n data: D;\n error: null;\n}\n\nexport interface FieldError {\n field: string;\n messages: string[];\n}\n\nexport interface ErrorResponse<E> {\n data: null;\n error: E;\n rawError: Record<string, unknown>;\n fieldErrors: FieldError[];\n}\n\ntype PromiseResult<D, E> = SuccessResponse<D> | ErrorResponse<E>;\n\n/**\n * Extracts field errors from error response into a structured format\n * @param error - The error response object\n * @returns Array of field errors with field name and messages\n */\nexport function extractFieldErrors(error: any): FieldError[] {\n const errors = error.error || error;\n if (!errors || !errors.errors || typeof errors.errors !== 'object') return [];\n\n const fieldErrors: FieldError[] = [];\n\n Object.entries(errors.errors).forEach(([key, value]) => {\n if (Array.isArray(value)) {\n fieldErrors.push({\n field: key,\n messages: value.map((msg: any) => String(msg)),\n });\n return;\n }\n if (value && typeof value === 'object') {\n Object.entries(value).forEach(([nestedKey, nestedValue]) => {\n if (Array.isArray(nestedValue)) {\n fieldErrors.push({\n field: nestedKey,\n messages: nestedValue.map((msg: any) => String(msg)),\n });\n }\n });\n }\n });\n return fieldErrors;\n}\n/**\n * Converts a mutation to a promise-based API. We avoid using the\n * `mutateAsync` method from react-query for 2 reasons:\n * 1. We lose the isPending state of the mutation\n * 2. We want to return the data and error in a consistent way\n * (either data or error is null)\n * @param mutation\n * @returns\n */\nexport function mutationToPromise<\n T extends UseMutationResult<any, any, any, any>,\n>(mutation: T) {\n type Data = MutationData<T>;\n type Variables = MutationVariables<T>;\n type Error = MutationError<T>;\n\n return {\n mutateAsyncOrThrow: (values: Variables): Promise<UnwrapData<Data>> => {\n return new Promise((resolve, reject) => {\n mutation.mutate(values, {\n onSuccess: (response) => {\n if (\n 'data' in response &&\n response.data !== null &&\n !response.error\n ) {\n resolve(response.data as UnwrapData<Data>);\n } else {\n const fieldErrors = extractFieldErrors(response.error);\n const errorData = response.error.error || response.error;\n const { response: httpResponse } = response;\n const errorMessage =\n typeof errorData?.message === 'string'\n ? errorData.message\n : 'Something went wrong. Please try again later.';\n reject({\n error: new Error(errorMessage),\n rawError: response.error,\n fieldErrors,\n response: httpResponse,\n });\n }\n },\n onError: (error) => {\n const fieldErrors = extractFieldErrors(error);\n reject({\n error: error as Error,\n rawError: error,\n fieldErrors,\n response: error?.response,\n });\n },\n });\n });\n },\n /**\n * @deprecated Use mutateAsyncOrThrow instead, this method will be removed as the the one below handles errors better\n */\n mutateAsync: (values: Variables): Promise<PromiseResult<Data, Error>> => {\n return new Promise((resolve, reject) => {\n mutation.mutate(values, {\n onSuccess: (response) => {\n if (response.data) {\n resolve({\n data: response.data as Data,\n error: null,\n });\n } else {\n const fieldErrors = extractFieldErrors(response.error);\n // Unwrap the error if it is an object with an error property\n const errorData = response.error.error || response.error;\n const errorMessage =\n typeof errorData?.message === 'string'\n ? errorData.message\n : 'Something went wrong. Please try again later.';\n resolve({\n data: null,\n error: new Error(errorMessage) as unknown as Error,\n rawError: response.error,\n fieldErrors,\n });\n }\n },\n onError: (error) => {\n const fieldErrors = extractFieldErrors(error);\n reject({\n data: null,\n error: error as Error,\n rawError: error,\n fieldErrors,\n });\n },\n });\n });\n },\n };\n}\n\n/**\n * Enhanced FieldError interface with user-friendly labels\n */\nexport interface NormalizedFieldError extends FieldError {\n userFriendlyLabel: string;\n}\n\n/**\n * Utility function to normalize field errors using field metadata\n * @param fieldErrors - Array of field errors from API response\n * @param meta - Field metadata containing field names and labels\n * @returns Normalized field errors with user-friendly labels\n */\nexport function normalizeFieldErrors(\n fieldErrors: FieldError[],\n meta?: Meta,\n): NormalizedFieldError[] {\n if (!fieldErrors || fieldErrors.length === 0) {\n return [];\n }\n\n return fieldErrors.map((fieldError) => {\n const fieldMeta = meta?.[fieldError.field];\n const userFriendlyLabel = fieldMeta?.label || fieldError.field;\n\n return {\n ...fieldError,\n userFriendlyLabel,\n // Keep the original field name for form integration\n field: fieldError.field,\n messages: fieldError.messages,\n };\n });\n}\n"],"mappings":"wCAyCO,SAASA,EAAmBC,EAA0B,CAC3D,IAAMC,EAASD,EAAM,OAASA,EAC9B,GAAI,CAACC,GAAU,CAACA,EAAO,QAAU,OAAOA,EAAO,QAAW,SAAU,MAAO,CAAC,EAE5E,IAAMC,EAA4B,CAAC,EAEnC,cAAO,QAAQD,EAAO,MAAM,EAAE,QAAQ,CAAC,CAACE,EAAKC,CAAK,IAAM,CACtD,GAAI,MAAM,QAAQA,CAAK,EAAG,CACxBF,EAAY,KAAK,CACf,MAAOC,EACP,SAAUC,EAAM,IAAKC,GAAa,OAAOA,CAAG,CAAC,CAC/C,CAAC,EACD,MACF,CACID,GAAS,OAAOA,GAAU,UAC5B,OAAO,QAAQA,CAAK,EAAE,QAAQ,CAAC,CAACE,EAAWC,CAAW,IAAM,CACtD,MAAM,QAAQA,CAAW,GAC3BL,EAAY,KAAK,CACf,MAAOI,EACP,SAAUC,EAAY,IAAKF,GAAa,OAAOA,CAAG,CAAC,CACrD,CAAC,CAEL,CAAC,CAEL,CAAC,EACMH,CACT,CA1BgBM,EAAAT,EAAA,sBAoCT,SAASU,EAEdC,EAAa,CAKb,MAAO,CACL,mBAAoBF,EAACG,GACZ,IAAI,QAAQ,CAACC,EAASC,IAAW,CACtCH,EAAS,OAAOC,EAAQ,CACtB,UAAWH,EAACM,GAAa,CACvB,GACE,SAAUA,GACVA,EAAS,OAAS,MAClB,CAACA,EAAS,MAEVF,EAAQE,EAAS,IAAwB,MACpC,CACL,IAAMZ,EAAcH,EAAmBe,EAAS,KAAK,EAC/CC,EAAYD,EAAS,MAAM,OAASA,EAAS,MAC7C,CAAE,SAAUE,CAAa,EAAIF,EAC7BG,EACJ,OAAOF,GAAW,SAAY,SAC1BA,EAAU,QACV,gDACNF,EAAO,CACL,MAAO,IAAI,MAAMI,CAAY,EAC7B,SAAUH,EAAS,MACnB,YAAAZ,EACA,SAAUc,CACZ,CAAC,CACH,CACF,EAtBW,aAuBX,QAASR,EAACR,GAAU,CAClB,IAAME,EAAcH,EAAmBC,CAAK,EAC5Ca,EAAO,CACL,MAAOb,EACP,SAAUA,EACV,YAAAE,EACA,SAAUF,GAAO,QACnB,CAAC,CACH,EARS,UASX,CAAC,CACH,CAAC,EApCiB,sBAyCpB,YAAaQ,EAACG,GACL,IAAI,QAAQ,CAACC,EAASC,IAAW,CACtCH,EAAS,OAAOC,EAAQ,CACtB,UAAWH,EAACM,GAAa,CACvB,GAAIA,EAAS,KACXF,EAAQ,CACN,KAAME,EAAS,KACf,MAAO,IACT,CAAC,MACI,CACL,IAAMZ,EAAcH,EAAmBe,EAAS,KAAK,EAE/CC,EAAYD,EAAS,MAAM,OAASA,EAAS,MAC7CG,EACJ,OAAOF,GAAW,SAAY,SAC1BA,EAAU,QACV,gDACNH,EAAQ,CACN,KAAM,KACN,MAAO,IAAI,MAAMK,CAAY,EAC7B,SAAUH,EAAS,MACnB,YAAAZ,CACF,CAAC,CACH,CACF,EArBW,aAsBX,QAASM,EAACR,GAAU,CAClB,IAAME,EAAcH,EAAmBC,CAAK,EAC5Ca,EAAO,CACL,KAAM,KACN,MAAOb,EACP,SAAUA,EACV,YAAAE,CACF,CAAC,CACH,EARS,UASX,CAAC,CACH,CAAC,EAnCU,cAqCf,CACF,CAvFgBM,EAAAC,EAAA,qBAsGT,SAASS,EACdhB,EACAiB,EACwB,CACxB,MAAI,CAACjB,GAAeA,EAAY,SAAW,EAClC,CAAC,EAGHA,EAAY,IAAKkB,GAAe,CAErC,IAAMC,EADYF,IAAOC,EAAW,KAAK,GACJ,OAASA,EAAW,MAEzD,MAAO,CACL,GAAGA,EACH,kBAAAC,EAEA,MAAOD,EAAW,MAClB,SAAUA,EAAW,QACvB,CACF,CAAC,CACH,CApBgBZ,EAAAU,EAAA","names":["extractFieldErrors","error","errors","fieldErrors","key","value","msg","nestedKey","nestedValue","__name","mutationToPromise","mutation","values","resolve","reject","response","errorData","httpResponse","errorMessage","normalizeFieldErrors","meta","fieldError","userFriendlyLabel"]}
@@ -1,2 +0,0 @@
1
- import{a as M}from"./chunk-SNECOPBD.js";import{i as U,j as q}from"./chunk-D5AO6SOM.js";import{b as O,c as G,f as Z}from"./chunk-AS6KFUXS.js";import{a as L}from"./chunk-BYDQHL6O.js";import{a as I}from"./chunk-6H4634RG.js";import{b as E}from"./chunk-G5O2CM6V.js";import{c,i as C}from"./chunk-CWAFRJAQ.js";import{a as v,e as k}from"./chunk-VIGKOVHP.js";import{b as S}from"./chunk-KQPDXXG3.js";import{a as n}from"./chunk-P37U34EQ.js";import{Fragment as he,useEffect as Ee,useRef as ye}from"react";import{jsx as K}from"react/jsx-runtime";function Q({description:e,label:t,name:r,minDate:l,maxDate:m,onChange:a,component:i,...p}){let{components:g}=S(),{control:u}=c(),F;p.meta?.mot&&typeof p.meta.mot=="number"?F=U(p.meta.mot):typeof l=="string"&&(F=new Date(`${l}T00:00:00`));let d;return m&&(d=new Date(`${m}T23:59:59`)),K(C,{control:u,name:r,render:({field:f,fieldState:h})=>{let s=i||g?.date;if(!s)throw new Error(`Date picker component not found for field ${r}`);let y={description:e,label:t,name:r,onChange:a,...F&&{minDate:F.toISOString()},...d&&{maxDate:d.toISOString()},...p};return K(s,{field:{...f,onChange:n(x=>{f.onChange(x),a?.(x)},"onChange")},fieldState:h,fieldData:y})}})}n(Q,"DatePickerField");import{jsx as X}from"react/jsx-runtime";var _e=n((e,t)=>{if(!t)return null;for(let r of e)if(r.size>t){let l=Math.round(t/1048576),m=Math.round(r.size/(1024*1024));return`File "${r.name}" exceeds maximum size of ${l}MB (file is ${m}MB)`}return null},"validateFileSize");function Y({name:e,description:t,label:r,multiple:l,onChange:m,component:a,accept:i,maxSize:p,...g}){let{components:u}=S(),{control:F,setError:d,clearErrors:f}=c(),h=n(async(s,y)=>{let x=_e(s,p);if(x){d(e,{message:x});return}f(e),y.onChange(s),m?.(s)},"handleOnChange");return X(C,{control:F,name:e,render:({field:s,fieldState:y})=>{let x=a||u.file;if(!x)throw new Error(`File upload component not found for field ${e}`);let w={name:e,description:t,label:r,multiple:l,accept:i,maxFileSize:p,...g};return X(x,{field:{...s,value:s.value,onChange:n(async T=>h(T,s),"onChange")},fieldState:y,fieldData:w})}})}n(Y,"FileUploadField");import{jsx as j}from"react/jsx-runtime";function V(e){let{components:t}=S(),{control:r}=c(),l=e.component||t.number;if(!l)throw new Error(`Number component not found for field ${e.name}`);return j(C,{control:r,name:e.name,render:({field:m,fieldState:a})=>j(l,{field:{...m,onChange:n(i=>{m.onChange(i),e.onChange?.(i)},"onChange")},fieldState:a,fieldData:e})})}n(V,"NumberField");import{jsx as ee}from"react/jsx-runtime";function oe({name:e,defaultValue:t,description:r,label:l,options:m,onChange:a,component:i,...p}){let{components:g}=S(),{control:u}=c();return ee(C,{control:u,name:e,defaultValue:t,render:({field:F,fieldState:d})=>{let f=i||g?.radio;if(!f)throw new Error(`Radio group component not found for field ${e}`);let h={name:e,defaultValue:t,description:r,label:l,options:m,...p};return ee(f,{field:{...F,onChange:n(s=>{F.onChange(s),a?.(s)},"onChange")},fieldState:d,fieldData:h})}})}n(oe,"RadioGroupField");import{jsx as te}from"react/jsx-runtime";function ne({label:e,name:t,options:r,defaultValue:l,description:m,onChange:a,component:i,...p}){let{control:g}=c(),{components:u}=S();return te(C,{defaultValue:l,control:g,name:t,render:({field:F,fieldState:d})=>{let f=i||u?.select;if(!f)throw new Error(`Select component not found for field ${t}`);let h={label:e,name:t,options:r,defaultValue:l,description:m,onChange:a,...p};return te(f,{field:{...F,onChange:n(s=>{let x=(Array.isArray(p.jsonType)?p.jsonType.includes("number"):p.jsonType==="number")?Number(s):s;F.onChange(x),a?.(x)},"onChange")},fieldState:d,fieldData:h})}})}n(ne,"SelectField");import{jsx as re}from"react/jsx-runtime";function ie({label:e,name:t,options:r,defaultValue:l,description:m,onChange:a,$meta:i,component:p,...g}){let{control:u}=c(),{components:F}=S();return re(C,{defaultValue:l,control:u,name:t,render:({field:d,fieldState:f})=>{let h=p||F.countries;if(!h)throw new Error(`Country component not found for field ${t}`);let s={label:e,name:t,options:r,defaultValue:l,description:m,onChange:a,$meta:i,...g};return re(h,{field:{...d,onChange:n(y=>{d.onChange(y),a?.(y)},"onChange")},fieldState:f,fieldData:s})}})}n(ie,"CountryField");import{jsx as le}from"react/jsx-runtime";function me({name:e,description:t,label:r,onChange:l,maxLength:m,component:a,...i}){let{components:p}=S(),{control:g}=c();return le(C,{control:g,name:e,render:({field:u,fieldState:F})=>{let d=a||p.textarea;if(!d)throw new Error(`Text area component not found for field ${e}`);let f={name:e,description:t,label:r,maxLength:m,...i};return le(d,{field:{...u,onChange:n(h=>{u.onChange(h),l?.(h)},"onChange")},fieldState:F,fieldData:f})}})}n(me,"TextAreaField");import{jsx as se}from"react/jsx-runtime";function ae(e){let{components:t}=S(),{control:r}=c(),l=e.component||t.email;if(!l)throw new Error(`Email component not found for field ${e.name}`);return se(C,{control:r,name:e.name,render:({field:m,fieldState:a})=>se(l,{field:{...m,onChange:n(i=>{m.onChange(i),e.onChange?.(i)},"onChange")},fieldState:a,fieldData:e})})}n(ae,"EmailField");import{jsx as de}from"react/jsx-runtime";function pe(e){let{control:t}=c();return de(C,{control:t,name:e.name,render:({field:r})=>de("input",{...r,type:"hidden"})})}n(pe,"HiddenField");import{useEffect as ke,useState as we}from"react";import{jsx as ce}from"react/jsx-runtime";function ue(e){let{components:t}=S(),{setValue:r,control:l,watch:m}=c(),a=m(e.name),[i,p]=we(a),{workHoursSummary:g,breakSummary:u}=G(i),F=O(i);ke(()=>{r(e.name,i)},[i,e.name,r]);function d(s){p(s)}n(d,"onSubmit");let f=e.component||t["work-schedule"];if(!f)throw new Error(`Work schedule component not found for field ${e.name}`);let h={...e,onSubmit:d,currentSchedule:i,defaultFormattedValue:{workHoursSummary:g,breakSummary:u,totalWorkHours:F}};return ce(C,{control:l,name:e.name,render:({field:s,fieldState:y})=>ce(f,{field:{...s,onChange:n(x=>{s.onChange(x),e.onChange?.(x)},"onChange")},fieldState:y,fieldData:h})})}n(ue,"WorkScheduleField");import{jsx as Fe}from"react/jsx-runtime";function fe({label:e,name:t,options:r,defaultValue:l,description:m,onChange:a,component:i,...p}){let{control:g}=c(),{components:u}=S();return Fe(C,{defaultValue:l,control:g,name:t,render:({field:F,fieldState:d})=>{let f=i||u?.["multi-select"];if(!f)throw new Error(`Multi select component not found for field ${t}`);let h={label:e,name:t,options:r,defaultValue:l,description:m,onChange:a,...p};return Fe(f,{field:{...F,onChange:n(s=>{F.onChange(s),a?.(s)},"onChange")},fieldState:d,fieldData:h})}})}n(fe,"MultiSelectField");import{jsx as De}from"react/jsx-runtime";var ge=n(e=>De(V,{maxLength:15,...e}),"MoneyField");var H={checkbox:Z,text:I,email:ae,money:ge,select:ne,"multi-select":fe,radio:oe,number:V,file:Y,date:Q,textarea:me,countries:ie,hidden:pe,"work-schedule":ue};import{useEffect as Re}from"react";import{jsx as A,jsxs as Se}from"react/jsx-runtime";var ve=n(({name:e,description:t,helpCenter:r})=>Se("span",{children:[A("span",{className:`text-xs RemoteFlows__ForcedValue__Description__${e}`,dangerouslySetInnerHTML:{__html:k(t)}}),r?.callToAction&&r?.id&&A(E,{className:"RemoteFlows__ForcedValue__HelpCenterLink",zendeskId:r.id,children:r.callToAction})]}),"Description");function Ce({name:e,value:t,description:r,statement:l,label:m,helpCenter:a}){let{setValue:i}=c(),p=k(l?.description||r);Re(()=>{i(e,t)},[]);let g=l?.title?k(l?.title):k(m);return Se("div",{children:[g&&A("p",{className:`text-sm RemoteFlows__ForcedValue__Title__${e}`,dangerouslySetInnerHTML:{__html:g}}),A(ve,{name:e,description:p,helpCenter:a})]})}n(Ce,"ForcedValueField");import{Fragment as Ne,jsx as b,jsxs as P}from"react/jsx-runtime";function xe({label:e,name:t,fields:r,description:l,components:m,statement:a,isFlatFieldset:i,extra:p,variant:g="outset",features:u,meta:F}){let{helpCenter:d}=F||{},{watch:f,setValue:h,trigger:s,formState:y}=c(),{components:x}=S(),w=u?.toggle?.stateField,T=w?f(w):u?.toggle?.defaultExpanded??!0,be=r.map(({name:o})=>`${t}.${o}`),N=f(be),B=ye(N),R=ye(null),Te=n(()=>{w&&h(w,!T)},"toggleExpanded");Ee(()=>{let o=N,$=B.current,W=y.isSubmitted||y.submitCount>0,D=!1;for(let _=0;_<o.length;_++)if(o[_]!==void 0&&$[_]!==o[_]){D=!0;break}return D&&W&&(R.current&&clearTimeout(R.current),R.current=setTimeout(()=>{s()},50)),B.current=[...o],()=>{R.current&&clearTimeout(R.current)}},[N,s,y.isSubmitted,y.submitCount]);let $e=x?.fieldsetToggle||L,J=`${t}-content`,z=`${t}-header`;return P("fieldset",{className:v("border-1 border-input p-4 rounded-xl","RemoteFlows__FieldSetField",`RemoteFlows__FieldSetField__${t}`),children:[b("legend",{className:v("text-sm font-semibold px-2",g==="inset"&&"hidden"),children:e}),d?.callToAction&&d?.id&&g==="outset"&&b(E,{className:"RemoteFlows__FieldSetField__HelpCenterLink mb-3",zendeskId:d.id,children:d.callToAction}),g==="inset"&&P(Ne,{children:[P("div",{className:"RemoteFlows__FieldSetField__Header",id:z,"data-state":T?"expanded":"collapsed","aria-expanded":T,children:[b("h3",{className:v("RemoteFlows__FieldSetField__Title"),children:e}),u?.toggle?.enabled&&b($e,{isExpanded:T,onToggle:Te,"aria-expanded":T,"aria-controls":J,"aria-label":`${T?"Hide":"Show"} ${e}`,className:v("RemoteFlows__FieldSetField__Toggle",u.toggle?.className),children:T?u.toggle.labels?.collapse??"Remove":u.toggle.labels?.expand??"Define"})]}),d?.callToAction&&d?.id&&b(E,{className:"RemoteFlows__FieldSetField__HelpCenterLink mb-3",zendeskId:d.id,children:d.callToAction})]}),T&&P("div",{id:J,"aria-labelledby":z,role:"region",children:[l?b("div",{className:"mb-5 RemoteFlows__FieldSetField__Description",dangerouslySetInnerHTML:{__html:k(l)}}):null,P("div",{className:"grid gap-4",children:[r.map(o=>{if(o.calculateDynamicProperties&&(o={...o,...o.calculateDynamicProperties(N,o)||{}}),o.isVisible===!1||o.deprecated)return null;let $=o.type;if(q(o))return b(Ce,{name:`${i?o.name:`${t}.${o.name}`}`,description:o.description,value:o.const,statement:o.statement,label:o.label,helpCenter:o.meta?.helpCenter},`${i?o.name:`${t}.${o.name}`}`);if($==="fieldset")return b(xe,{...o,name:`${i?o.name:`${t}.${o.name}`}`,components:m},`${i?o.name:`${t}.${o.name}`}`);if($==="fieldset-flat")return b(xe,{...o,name:`${i?o.name:`${t}.${o.name}`}`,components:m,isFlatFieldset:!0},`${i?o.name:`${t}.${o.name}`}`);let D=H[$];if(o.Component){let{Component:_}=o;return P(he,{children:[b(_,{setValue:Pe=>h(i?o.name:`${t}.${o.name}`,Pe),...o}),o.statement?b(M,{...o.statement}):null,o.extra?o.extra:null]},`${i?o.name:`${t}.${o.name}`}`)}return D?($==="select"&&o.multiple&&(D=H["multi-select"]),P(he,{children:[b(D,{...o,name:`${i?o.name:`${t}.${o.name}`}`,component:m?.[$]}),o.statement?b(M,{...o.statement}):null,o.extra?o.extra:null]},`${i?o.name:`${t}.${o.name}`}`)):P("p",{className:"error",children:["Field type ",$," not supported"]})}),p||null,a?b(M,{...a}):null]})]})]})}n(xe,"FieldSetField");export{H as a,Ce as b,xe as c};
2
- //# sourceMappingURL=chunk-XGRFWXUU.js.map