@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
@@ -0,0 +1,2 @@
1
+ import{a as V,b as J,c as j,e as D}from"./chunk-RRZ2GPQS.js";import{e as q}from"./chunk-TXEONNPV.js";import{a as te}from"./chunk-FZVUO3UU.js";import{a as ae}from"./chunk-4EDPYN5F.js";import{a as P,c as E,d as M,e as I,f as _}from"./chunk-LBJAKZ6V.js";import{f as X,g as R,h as Q}from"./chunk-72RFYT5Y.js";import{c as S}from"./chunk-OSQ6VUDM.js";import{d as ee}from"./chunk-KQPDXXG3.js";import{a as c}from"./chunk-P37U34EQ.js";import*as A from"@radix-ui/react-collapsible";var be=A.Root,fe=A.CollapsibleTrigger,ge=A.CollapsibleContent;import*as F from"@radix-ui/react-tabs";import{jsx as H}from"react/jsx-runtime";function G({className:e,...t}){return H(F.Root,{"data-slot":"tabs",className:S("flex flex-col gap-2",e),...t})}c(G,"Tabs");function Y({className:e,...t}){return H(F.List,{"data-slot":"tabs-list",className:S("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-1",e),...t})}c(Y,"TabsList");function W({className:e,...t}){return H(F.Trigger,{"data-slot":"tabs-trigger",className:S("data-[state=active]:bg-background data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring inline-flex flex-1 items-center justify-center gap-1.5 rounded-md px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...t})}c(W,"TabsTrigger");function ye({className:e,...t}){return H(F.Content,{"data-slot":"tabs-content",className:S("flex-1 outline-none",e),...t})}c(ye,"TabsContent");import*as K from"react";import*as x from"@radix-ui/react-scroll-area";import{jsx as k,jsxs as he}from"react/jsx-runtime";var le=K.forwardRef(({className:e,children:t,...s},a)=>he(x.Root,{ref:a,className:S("relative overflow-hidden",e),...s,children:[k(x.Viewport,{className:"h-full w-full rounded-[inherit]",children:t}),k(se,{}),k(x.Corner,{})]}));le.displayName=x.Root.displayName;var se=K.forwardRef(({className:e,orientation:t="vertical",...s},a)=>k(x.ScrollAreaScrollbar,{ref:a,orientation:t,className:S("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...s,children:k(x.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));se.displayName=x.ScrollAreaScrollbar.displayName;import{useState as B,useEffect as Ce,useMemo as Fe}from"react";import{useQuery as we}from"@tanstack/react-query";import O from"fast-deep-equal";var ne=c(e=>e.name?e.type?!0:(console.warn(`Field "${e.name}" missing required "type" property`),!1):(console.warn('Field missing required "name" property:',e),!1),"validateField"),Le=c((e,t)=>{if(O(e,t))return;let s=new Map((e||[]).map(l=>[l.value,l])),a=new Map((t||[]).map(l=>[l.value,l])),o=[],y=[],f=[];if(a.forEach((l,v)=>{s.has(v)||o.push({value:l.value,label:l.label})}),s.forEach((l,v)=>{if(!a.has(v))y.push({value:l.value,label:l.label});else{let r=a.get(v);if(!O(l,r)){let p={};l.label!==r.label&&(p.label={old:l.label,new:r.label}),Object.keys(p).length>0&&f.push({value:v,changes:p})}}}),!(o.length===0&&y.length===0&&f.length===0))return{added:o,removed:y,modified:f}},"compareOptions"),xe=c((e,t)=>{let s=e.fields,a=t.fields;if(!s&&!a)return;let o=U(s||[],a||[]);if(o.added.length>0||o.removed.length>0||o.modified.length>0||o.reordered.length>0)return Array.from(o.fieldDiffs.values())},"compareNestedFields"),re=c((e,t,s,a)=>{if(s!==a)return!0;let o={label:e.label!==t.label,required:e.required!==t.required,inputType:e.inputType!==t.inputType,type:e.type!==t.type,jsonType:!O(e.jsonType,t.jsonType),name:e.name!==t.name,defaultValue:e.defaultValue!==t.defaultValue,minDate:e.minDate!==t.minDate,maxDate:e.maxDate!==t.maxDate,maxLength:e.maxLength!==t.maxLength,multiple:e.multiple!==t.multiple,isVisible:e.isVisible!==t.isVisible,options:!O(e.options,t.options)},y=(()=>{let l=e.fields,v=t.fields;if(!l&&!v)return!1;if(!l||!v)return!0;let r=U(l,v);return r.added.length>0||r.removed.length>0||r.modified.length>0||r.reordered.length>0})();return Object.values(o).some(l=>l)||y},"isFieldModified"),Ne=c((e,t)=>{let s={};e.label!==t.label&&(s.label={old:e.label,new:t.label}),e.required!==t.required&&(s.required={old:e.required,new:t.required}),e.type!==t.type&&(s.type={old:e.type,new:t.type}),e.inputType!==t.inputType&&(s.inputType={old:e.inputType,new:t.inputType}),O(e.jsonType,t.jsonType)||(s.jsonType={old:e.jsonType,new:t.jsonType}),O(e.defaultValue,t.defaultValue)||(s.defaultValue={old:e.defaultValue,new:t.defaultValue}),e.minDate!==t.minDate&&(s.minDate={old:e.minDate||"",new:t.minDate||""}),e.maxDate!==t.maxDate&&(s.maxDate={old:e.maxDate||"",new:t.maxDate||""}),e.maxLength!==t.maxLength&&(s.maxLength={old:e.maxLength||0,new:t.maxLength||0}),e.multiple!==t.multiple&&(s.multiple={old:e.multiple||!1,new:t.multiple||!1}),e.isVisible!==t.isVisible&&(s.isVisible={old:e.isVisible,new:t.isVisible});let a=Le(e.options,t.options);a&&(s.options=a);let o=xe(e,t);return o&&(s.nestedFields=o),Object.keys(s).length>0?s:void 0},"getFieldChanges"),U=c((e=[],t=[])=>{let s=e.filter(ne),a=t.filter(ne),o=new Map(s.map((b,u)=>[b.name,{field:b,index:u}])),y=new Map(a.map((b,u)=>[b.name,{field:b,index:u}])),f=[],l=[],v=[],r=[],p=[],h=new Map;return y.forEach((b,u)=>{o.has(u)||(f.push(u),h.set(u,{fieldName:u,diffType:"added"}))}),o.forEach(({field:b,index:u},g)=>{if(!y.has(g))l.push(g),h.set(g,{fieldName:g,diffType:"removed"});else{let{field:T,index:N}=y.get(g);re(b,T,u,N)?u!==N&&!re(b,T,u,u)?(p.push(g),h.set(g,{fieldName:g,diffType:"unchanged",orderChanged:{oldIndex:u,newIndex:N}})):(v.push(g),h.set(g,{fieldName:g,diffType:"modified",orderChanged:u!==N?{oldIndex:u,newIndex:N}:void 0,changes:Ne(b,T)})):(r.push(g),h.set(g,{fieldName:g,diffType:"unchanged"}))}}),{added:f,removed:l,modified:v,unchanged:r,reordered:p,fieldDiffs:h}},"compareFormFields"),oe=c((e,t)=>{if(t&&e==="unchanged")return"bg-blue-50 border-l-4 border-blue-500";switch(e){case"added":return"bg-green-50 border-l-4 border-green-500";case"removed":return"bg-red-50 border-l-4 border-red-500";case"modified":return"bg-yellow-50 border-l-4 border-yellow-500";default:return""}},"getDiffStyles");import{useMemo as de,useRef as $,useEffect as Se}from"react";import{jsx as n,jsxs as m}from"react/jsx-runtime";var Te=c(({children:e,diffType:t,orderChanged:s,changes:a})=>{let o=oe(t,!!s);if(t==="unchanged"&&!s)return n("div",{children:e});let l=s&&t==="unchanged"&&n("span",{className:"text-xs font-semibold text-blue-700 bg-blue-100 px-2 py-1 rounded",children:"MOVED"})||t!=="unchanged"&&{added:n("span",{className:"text-xs font-semibold text-green-700 bg-green-100 px-2 py-1 rounded",children:"NEW"}),removed:n("span",{className:"text-xs font-semibold text-red-700 bg-red-100 px-2 py-1 rounded",children:"REMOVED"}),modified:n("span",{className:"text-xs font-semibold text-yellow-700 bg-yellow-100 px-2 py-1 rounded",children:"MODIFIED"})}[t],v=c(()=>{if(!a||t!=="modified")return null;let r=[];if(a.label&&r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold",children:"Label:"})," ",n("span",{className:"line-through text-red-600",children:a.label.old})," ","\u2192 ",n("span",{className:"text-green-600",children:a.label.new})]},"label")),a.required&&r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold",children:"Required:"})," ",n("span",{className:"line-through text-red-600",children:a.required.old?"Yes":"No"})," ","\u2192"," ",n("span",{className:"text-green-600",children:a.required.new?"Yes":"No"})]},"required")),a.type&&r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold",children:"Type:"})," ",n("span",{className:"line-through text-red-600",children:a.type.old})," ","\u2192 ",n("span",{className:"text-green-600",children:a.type.new})]},"type")),a.inputType&&r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold",children:"Input Type:"})," ",n("span",{className:"line-through text-red-600",children:a.inputType.old})," ","\u2192 ",n("span",{className:"text-green-600",children:a.inputType.new})]},"inputType")),a.jsonType){let p=Array.isArray(a.jsonType.old)?a.jsonType.old.join(" | "):a.jsonType.old,h=Array.isArray(a.jsonType.new)?a.jsonType.new.join(" | "):a.jsonType.new;r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold",children:"JSON Type:"})," ",n("span",{className:"line-through text-red-600",children:p})," \u2192"," ",n("span",{className:"text-green-600",children:h})]},"jsonType"))}return a.defaultValue!==void 0&&r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold",children:"Default Value:"})," ",n("span",{className:"line-through text-red-600",children:JSON.stringify(a.defaultValue.old)})," ","\u2192"," ",n("span",{className:"text-green-600",children:JSON.stringify(a.defaultValue.new)})]},"defaultValue")),a.options&&(a.options.added.length>0&&r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold text-green-700",children:"Options Added:"})," ",a.options.added.map(p=>p.label).join(", ")]},"options-added")),a.options.removed.length>0&&r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold text-red-700",children:"Options Removed:"})," ",a.options.removed.map(p=>p.label).join(", ")]},"options-removed")),a.options.modified.length>0&&r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold",children:"Options Modified:"})," ",a.options.modified.length," option(s)"]},"options-modified"))),a.nestedFields&&a.nestedFields.length>0&&r.push(m("div",{className:"text-xs",children:[n("span",{className:"font-semibold",children:"Nested Fields:"})," ",a.nestedFields.length," field(s) changed"]},"nestedFields")),r.length===0?null:m("div",{className:"mt-2 p-2 bg-yellow-50 rounded border border-yellow-200 space-y-1",children:[n("div",{className:"text-xs font-semibold text-yellow-800 mb-1",children:"Changes:"}),r]})},"renderChanges");return m("div",{className:`p-3 mb-2 rounded ${o} relative`,children:[m("div",{className:"absolute top-2 right-2",children:[l,s&&t!=="unchanged"&&n("span",{className:"ml-2 text-xs text-gray-600",children:"(position changed)"})]}),e,v()]})},"FieldWrapper"),ie=c(({version:e,fields:t,fieldsets:s,diffMap:a,title:o,scrollRef:y})=>{let f=X({mode:"onBlur"}),l=de(()=>t.map(v=>{let r=a.get(v.name),p=r?.diffType||"unchanged",h=r?.orderChanged,b=r?.changes;return{...v,WrapperComponent:c(({children:u})=>n(Te,{diffType:p,fieldName:v.name,orderChanged:h,changes:b,children:u}),"WrapperComponent")}}),[t,a]);return m(V,{className:"h-full",children:[n(J,{children:m(j,{children:[o," - Version ",e]})}),n(D,{ref:y,className:"overflow-y-auto max-h-[600px]",children:n(Q,{...f,children:n("form",{className:"space-y-4",children:n(ae,{fields:l,fieldsets:s,fieldValues:{}})})})})]})},"FormPanel"),ue=c(({topVersion:e,bottomVersion:t,topFields:s,bottomFields:a,topFieldsets:o,bottomFieldsets:y,isLoading:f})=>{let l=de(()=>U(s,a),[s,a]),v=$(null),r=$(null),p=$(!1);if(Se(()=>{let b=v.current,u=r.current;if(!b||!u)return;let g=c(()=>{p.current||(p.current=!0,u.scrollTop=b.scrollTop,requestAnimationFrame(()=>{p.current=!1}))},"handleLeftScroll"),T=c(()=>{p.current||(p.current=!0,b.scrollTop=u.scrollTop,requestAnimationFrame(()=>{p.current=!1}))},"handleRightScroll");return b.addEventListener("scroll",g),u.addEventListener("scroll",T),()=>{b.removeEventListener("scroll",g),u.removeEventListener("scroll",T)}},[s,a]),f)return n("div",{className:"flex items-center justify-center h-96",children:m("div",{className:"text-center",children:[n("div",{className:"animate-spin rounded-full h-12 w-12 border-b-2 border-gray-900 mx-auto"}),n("p",{className:"mt-4 text-gray-600",children:"Loading schemas..."})]})});let h=l.added.length===0&&l.removed.length===0&&l.modified.length===0&&l.reordered.length===0;return m("div",{className:"space-y-6",children:[n(V,{children:n(D,{className:"pt-6",children:h?n("p",{className:"text-center text-gray-600",children:"No differences detected between the two versions"}):m("div",{className:"flex gap-6 justify-center",children:[l.added.length>0&&m("div",{className:"flex items-center gap-2",children:[n("span",{className:"w-4 h-4 bg-green-500 rounded"}),m("span",{className:"text-sm",children:[l.added.length," field",l.added.length>1?"s":""," ","added"]})]}),l.removed.length>0&&m("div",{className:"flex items-center gap-2",children:[n("span",{className:"w-4 h-4 bg-red-500 rounded"}),m("span",{className:"text-sm",children:[l.removed.length," field",l.removed.length>1?"s":""," removed"]})]}),l.modified.length>0&&m("div",{className:"flex items-center gap-2",children:[n("span",{className:"w-4 h-4 bg-yellow-500 rounded"}),m("span",{className:"text-sm",children:[l.modified.length," field",l.modified.length>1?"s":""," modified"]})]}),l.reordered.length>0&&m("div",{className:"flex items-center gap-2",children:[n("span",{className:"w-4 h-4 bg-blue-500 rounded"}),m("span",{className:"text-sm",children:[l.reordered.length," field",l.reordered.length>1?"s":""," reordered"]})]})]})})}),m("div",{className:"grid grid-cols-2 gap-6",children:[n(ie,{version:e,fields:s,fieldsets:o,diffMap:l.fieldDiffs,title:"Left",scrollRef:v}),n(ie,{version:t,fields:a,fieldsets:y,diffMap:l.fieldDiffs,title:"Right",scrollRef:r})]})]})},"SchemaFormComparison");var me=[{value:1,label:"v1 (Legacy)"},{value:3,label:"v3 (Recommended)"},{value:"latest",label:"Latest"}],z={ALB:[{value:"latest",label:"Latest"}],ARE:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],ARG:[{value:"latest",label:"Latest"}],ARM:[{value:"latest",label:"Latest"}],AUS:[{value:"latest",label:"Latest"}],AUT:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],BEL:[{value:"latest",label:"Latest"}],BGD:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],BGR:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],BIH:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],BLR:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],BOL:[{value:"latest",label:"Latest"}],BRA:[{value:"latest",label:"Latest"}],CAN:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],CHE:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],CHL:[{value:"latest",label:"Latest"}],CHN:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],COL:[{value:"latest",label:"Latest"}],CRI:[{value:"latest",label:"Latest"}],CYP:[{value:"latest",label:"Latest"}],CZE:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],DEU:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],DNK:[{value:"latest",label:"Latest"}],DOM:[{value:"latest",label:"Latest"}],ECU:[{value:"latest",label:"Latest"}],EGY:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],ESP:[{value:"latest",label:"Latest"}],EST:[{value:"latest",label:"Latest"}],FIN:[{value:"latest",label:"Latest"}],FRA:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],FRA_SAS:[{value:"latest",label:"Latest"}],GBR:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],GEO:[{value:"latest",label:"Latest"}],GRC:[{value:"latest",label:"Latest"}],GTM:[{value:"latest",label:"Latest"}],HKG:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],HND:[{value:"latest",label:"Latest"}],HRV:[{value:"latest",label:"Latest"}],HUN:[{value:"latest",label:"Latest"}],IDN:[{value:"latest",label:"Latest"}],IND:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],IRL:[{value:"latest",label:"Latest"}],ISL:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],ISR:[{value:"latest",label:"Latest"}],ITA:[{value:"latest",label:"Latest"}],ITA_APL:[{value:"latest",label:"Latest"}],JAM:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],JPN:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],KEN:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],KGZ:[{value:"latest",label:"Latest"}],KHM:[{value:"latest",label:"Latest"}],KOR:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],LBN:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],LKA:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],LTU:[{value:"latest",label:"Latest"}],LUX:[{value:"latest",label:"Latest"}],LVA:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],MAR:[{value:"latest",label:"Latest"}],MDA:[{value:"latest",label:"Latest"}],MEX:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],MKD:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],MLT:[{value:"latest",label:"Latest"}],MNG:[{value:"latest",label:"Latest"}],MUS:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],MYS:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],NGA:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],NIC:[{value:"latest",label:"Latest"}],NLD:[{value:"latest",label:"Latest"}],NOR:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],NZL:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],PAK:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],PAN:[{value:"latest",label:"Latest"}],PER:[{value:"latest",label:"Latest"}],PHL:[{value:"latest",label:"Latest"}],POL:[{value:"latest",label:"Latest"}],PRI:[{value:"latest",label:"Latest"}],PRT:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],PRY:[{value:"latest",label:"Latest"}],ROU:[{value:"latest",label:"Latest"}],SAU:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],SGP:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],SLV:[{value:"latest",label:"Latest"}],SRB:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],SVK:[{value:"latest",label:"Latest"}],SVN:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],SWE:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],THA:[{value:1,label:"v1"},{value:"latest",label:"Latest"}],TUN:[{value:1,label:"v1"},{value:2,label:"v2"},{value:"latest",label:"Latest"}],TUR:[{value:"latest",label:"Latest"}],TWN:[{value:"latest",label:"Latest"}],UGA:[{value:"latest",label:"Latest"}],UKR:[{value:"latest",label:"Latest"}],URY:[{value:"latest",label:"Latest"}],USA:[{value:"latest",label:"Latest"}],VNM:[{value:"latest",label:"Latest"}],XKX:[{value:"latest",label:"Latest"}],ZAF:[{value:"latest",label:"Latest"}],ZWE:[{value:"latest",label:"Latest"}]},pe=Object.fromEntries(Object.entries(z).filter(([,e])=>e.length>1)),ce=[{value:"employment_basic_information",label:"Basic Information"},{value:"contract_details",label:"Contract Details"}];import{jsx as i,jsxs as L}from"react/jsx-runtime";var ve=c(()=>{let[e,t]=B("employment_basic_information"),[s,a]=B(1),[o,y]=B(1),[f,l]=B("ARE"),{client:v}=ee(),{data:r}=we({...te(v,"schema-comparison"),select:c(d=>d.data?.data?.filter(C=>C.eor_onboarding).filter(C=>Object.keys(pe).includes(C.code)).map(C=>({label:C.name,value:C.code}))||[],"select")}),p=e==="contract_details",{data:h,isLoading:b}=q({countryCode:f,form:e,fieldValues:{},jsonSchemaVersion:s,options:{queryOptions:{enabled:!0}}}),{data:u,isLoading:g}=q({countryCode:f,form:e,fieldValues:{},jsonSchemaVersion:o,options:{queryOptions:{enabled:!0}}}),T=b||g,N=z[f],Z=N!==void 0,w=Fe(()=>e==="employment_basic_information"?me:N||[{value:"latest",label:"Latest"}],[e,N]);return Ce(()=>{let d=w.map(C=>C.value);d.includes(s)||a(w[0].value),d.includes(o)||y(w[0].value)},[e,f,w,s,o]),L("div",{className:"space-y-6",children:[L(V,{children:[i(J,{children:i(j,{children:"Configuration"})}),L(D,{className:"space-y-4",children:[L("div",{children:[i(R,{className:"mb-2 block",children:"Form Type"}),i(G,{value:e,onValueChange:d=>t(d),children:i(Y,{className:"grid w-full grid-cols-2",children:ce.map(d=>i(W,{value:d.value,children:d.label},d.value))})})]}),p&&!Z&&i("div",{className:"rounded-md bg-yellow-50 p-4 border border-yellow-200",children:L("div",{className:"flex",children:[i("div",{className:"flex-shrink-0",children:i("svg",{className:"h-5 w-5 text-yellow-400",viewBox:"0 0 20 20",fill:"currentColor",children:i("path",{fillRule:"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",clipRule:"evenodd"})})}),L("div",{className:"ml-3",children:[i("h3",{className:"text-sm font-medium text-yellow-800",children:"Version mappings not found"}),i("div",{className:"mt-2 text-sm text-yellow-700",children:L("p",{children:["Country"," ",i("span",{className:"font-semibold",children:f})," is not configured in COUNTRY_CONTRACT_VERSIONS. Using default (latest only)."]})})]})]})}),p&&L("div",{children:[i(R,{htmlFor:"country-select",className:"mb-2 block",children:"Country"}),L(P,{value:f,onValueChange:l,children:[i(M,{id:"country-select",children:i(E,{placeholder:"Select a country"})}),i(I,{children:r?.map(d=>i(_,{value:d.value,children:d.label},d.value))})]})]}),L("div",{className:"grid grid-cols-2 gap-4",children:[L("div",{children:[i(R,{htmlFor:"top-version",className:"mb-2 block",children:"Left Version"}),L(P,{value:String(s),onValueChange:d=>a(d==="latest"?"latest":Number(d)),children:[i(M,{id:"top-version",children:i(E,{placeholder:"Select version"})}),i(I,{children:w.map(d=>i(_,{value:String(d.value),children:d.label},String(d.value)))})]})]}),L("div",{children:[i(R,{htmlFor:"bottom-version",className:"mb-2 block",children:"Right Version"}),L(P,{value:String(o),onValueChange:d=>y(d==="latest"?"latest":Number(d)),children:[i(M,{id:"bottom-version",children:i(E,{placeholder:"Select version"})}),i(I,{children:w.map(d=>i(_,{value:String(d.value),children:d.label},String(d.value)))})]})]})]})]})]}),i(ue,{topVersion:s,bottomVersion:o,topFields:h?.fields||[],bottomFields:u?.fields||[],topFieldsets:h?.meta?.["x-jsf-fieldsets"],bottomFieldsets:u?.meta?.["x-jsf-fieldsets"],isLoading:T})]})},"JsonSchemaComparison");export{be as a,fe as b,ge as c,G as d,Y as e,W as f,ye as g,le as h,ve as i};
2
+ //# sourceMappingURL=chunk-ERY43GUW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ui/collapsible.tsx","../src/components/ui/tabs.tsx","../src/components/ui/scroll-area.tsx","../src/components/JsonSchemaComparison/JsonSchemaComparison.tsx","../src/components/JsonSchemaComparison/formDiffDetector.ts","../src/components/JsonSchemaComparison/SchemaFormComparison.tsx","../src/components/JsonSchemaComparison/schemaVersions.ts"],"sourcesContent":["import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';\n\nconst Collapsible = CollapsiblePrimitive.Root;\n\nconst CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger;\n\nconst CollapsibleContent = CollapsiblePrimitive.CollapsibleContent;\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent };\n","import * as React from 'react';\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\n\nimport { cn } from '@/src/lib/utils';\n\nfunction Tabs({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Root>) {\n return (\n <TabsPrimitive.Root\n data-slot='tabs'\n className={cn('flex flex-col gap-2', className)}\n {...props}\n />\n );\n}\n\nfunction TabsList({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.List>) {\n return (\n <TabsPrimitive.List\n data-slot='tabs-list'\n className={cn(\n 'bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-1',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction TabsTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Trigger>) {\n return (\n <TabsPrimitive.Trigger\n data-slot='tabs-trigger'\n className={cn(\n \"data-[state=active]:bg-background data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring inline-flex flex-1 items-center justify-center gap-1.5 rounded-md px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction TabsContent({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Content>) {\n return (\n <TabsPrimitive.Content\n data-slot='tabs-content'\n className={cn('flex-1 outline-none', className)}\n {...props}\n />\n );\n}\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };\n","import * as React from 'react';\nimport * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';\n\nimport { cn } from '@/src/lib/utils';\n\nconst ScrollArea = React.forwardRef<\n HTMLDivElement,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root>\n>(({ className, children, ...props }, ref) => (\n <ScrollAreaPrimitive.Root\n ref={ref}\n className={cn('relative overflow-hidden', className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport className='h-full w-full rounded-[inherit]'>\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n));\nScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;\n\nconst ScrollBar = React.forwardRef<\n HTMLDivElement,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>\n>(({ className, orientation = 'vertical', ...props }, ref) => (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n ref={ref}\n orientation={orientation}\n className={cn(\n 'flex touch-none select-none transition-colors',\n orientation === 'vertical' &&\n 'h-full w-2.5 border-l border-l-transparent p-[1px]',\n orientation === 'horizontal' &&\n 'h-2.5 flex-col border-t border-t-transparent p-[1px]',\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb className='relative flex-1 rounded-full bg-border' />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n));\nScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;\n\nexport { ScrollArea, ScrollBar };\n","import { useState, useEffect, useMemo } from 'react';\nimport { useQuery } from '@tanstack/react-query';\nimport {\n Card,\n CardContent,\n CardHeader,\n CardTitle,\n} from '@/src/components/ui/card';\nimport { Label } from '@/src/components/ui/label';\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from '@/src/components/ui/select';\nimport { Tabs, TabsList, TabsTrigger } from '@/src/components/ui/tabs';\nimport { useJSONSchemaForm } from '@/src/flows/Onboarding/api';\nimport { SchemaFormComparison } from './SchemaFormComparison';\nimport {\n BASIC_INFO_VERSIONS,\n COUNTRY_CONTRACT_VERSIONS,\n COUNTRY_CONTRACT_VERSIONS_WITH_MULTIPLE_VERSIONS,\n FORM_TYPES,\n type FormType,\n type SchemaVersion,\n} from './schemaVersions';\nimport { countriesOptions } from '@/src/common/api/countries';\nimport { useClient } from '@/src/context';\nimport type { Client } from '@/src/client/client';\nimport { JSFField } from '@/src/types/remoteFlows';\n\nexport const JsonSchemaComparison = () => {\n const [formType, setFormType] = useState<FormType>(\n 'employment_basic_information',\n );\n const [topVersion, setTopVersion] = useState<SchemaVersion>(1);\n const [bottomVersion, setBottomVersion] = useState<SchemaVersion>(1);\n const [countryCode, setCountryCode] = useState<string>('ARE');\n\n const { client } = useClient();\n\n const { data: countriesData } = useQuery({\n ...countriesOptions(client as Client, 'schema-comparison'),\n select: (response) =>\n response.data?.data\n ?.filter(\n (country: { eor_onboarding?: boolean }) => country.eor_onboarding,\n )\n .filter((country: { code: string }) =>\n Object.keys(\n COUNTRY_CONTRACT_VERSIONS_WITH_MULTIPLE_VERSIONS,\n ).includes(country.code),\n )\n .map((country: { name: string; code: string }) => ({\n label: country.name,\n value: country.code,\n })) || [],\n });\n\n const isContractDetails = formType === 'contract_details';\n\n const { data: topSchema, isLoading: isLoadingTop } = useJSONSchemaForm({\n countryCode: countryCode,\n form: formType,\n fieldValues: {},\n jsonSchemaVersion: topVersion,\n options: {\n queryOptions: {\n enabled: true,\n },\n },\n });\n\n const { data: bottomSchema, isLoading: isLoadingBottom } = useJSONSchemaForm({\n countryCode: countryCode,\n form: formType,\n fieldValues: {},\n jsonSchemaVersion: bottomVersion,\n options: {\n queryOptions: {\n enabled: true,\n },\n },\n });\n\n const isLoading = isLoadingTop || isLoadingBottom;\n\n const countryVersions = COUNTRY_CONTRACT_VERSIONS[countryCode];\n const hasCountryMapping = countryVersions !== undefined;\n\n const versionOptions = useMemo(() => {\n return formType === 'employment_basic_information'\n ? BASIC_INFO_VERSIONS\n : countryVersions || [{ value: 'latest', label: 'Latest' }];\n }, [formType, countryVersions]);\n\n useEffect(() => {\n const availableVersionValues = versionOptions.map((v) => v.value);\n\n if (!availableVersionValues.includes(topVersion)) {\n // WE NEED TO FIX: react-hooks/set-state-in-effect - Calling setState synchronously within an effect can trigger cascading renders\n // eslint-disable-next-line react-hooks/set-state-in-effect\n setTopVersion(versionOptions[0].value);\n }\n if (!availableVersionValues.includes(bottomVersion)) {\n setBottomVersion(versionOptions[0].value);\n }\n }, [formType, countryCode, versionOptions, topVersion, bottomVersion]);\n\n return (\n <div className='space-y-6'>\n <Card>\n <CardHeader>\n <CardTitle>Configuration</CardTitle>\n </CardHeader>\n <CardContent className='space-y-4'>\n <div>\n <Label className='mb-2 block'>Form Type</Label>\n <Tabs\n value={formType}\n onValueChange={(value) => setFormType(value as FormType)}\n >\n <TabsList className='grid w-full grid-cols-2'>\n {FORM_TYPES.map((type) => (\n <TabsTrigger key={type.value} value={type.value}>\n {type.label}\n </TabsTrigger>\n ))}\n </TabsList>\n </Tabs>\n </div>\n\n {isContractDetails && !hasCountryMapping && (\n <div className='rounded-md bg-yellow-50 p-4 border border-yellow-200'>\n <div className='flex'>\n <div className='flex-shrink-0'>\n <svg\n className='h-5 w-5 text-yellow-400'\n viewBox='0 0 20 20'\n fill='currentColor'\n >\n <path\n fillRule='evenodd'\n d='M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z'\n clipRule='evenodd'\n />\n </svg>\n </div>\n <div className='ml-3'>\n <h3 className='text-sm font-medium text-yellow-800'>\n Version mappings not found\n </h3>\n <div className='mt-2 text-sm text-yellow-700'>\n <p>\n Country{' '}\n <span className='font-semibold'>{countryCode}</span> is\n not configured in COUNTRY_CONTRACT_VERSIONS. Using default\n (latest only).\n </p>\n </div>\n </div>\n </div>\n </div>\n )}\n\n {isContractDetails && (\n <div>\n <Label htmlFor='country-select' className='mb-2 block'>\n Country\n </Label>\n <Select value={countryCode} onValueChange={setCountryCode}>\n <SelectTrigger id='country-select'>\n <SelectValue placeholder='Select a country' />\n </SelectTrigger>\n <SelectContent>\n {countriesData?.map(\n (country: { label: string; value: string }) => (\n <SelectItem key={country.value} value={country.value}>\n {country.label}\n </SelectItem>\n ),\n )}\n </SelectContent>\n </Select>\n </div>\n )}\n\n <div className='grid grid-cols-2 gap-4'>\n <div>\n <Label htmlFor='top-version' className='mb-2 block'>\n Left Version\n </Label>\n <Select\n value={String(topVersion)}\n onValueChange={(value) =>\n setTopVersion(value === 'latest' ? 'latest' : Number(value))\n }\n >\n <SelectTrigger id='top-version'>\n <SelectValue placeholder='Select version' />\n </SelectTrigger>\n <SelectContent>\n {versionOptions.map((version) => (\n <SelectItem\n key={String(version.value)}\n value={String(version.value)}\n >\n {version.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n\n <div>\n <Label htmlFor='bottom-version' className='mb-2 block'>\n Right Version\n </Label>\n <Select\n value={String(bottomVersion)}\n onValueChange={(value) =>\n setBottomVersion(\n value === 'latest' ? 'latest' : Number(value),\n )\n }\n >\n <SelectTrigger id='bottom-version'>\n <SelectValue placeholder='Select version' />\n </SelectTrigger>\n <SelectContent>\n {versionOptions.map((version) => (\n <SelectItem\n key={String(version.value)}\n value={String(version.value)}\n >\n {version.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n </div>\n </CardContent>\n </Card>\n\n <SchemaFormComparison\n topVersion={topVersion}\n bottomVersion={bottomVersion}\n topFields={(topSchema?.fields as JSFField[]) || []}\n bottomFields={(bottomSchema?.fields as JSFField[]) || []}\n topFieldsets={topSchema?.meta?.['x-jsf-fieldsets']}\n bottomFieldsets={bottomSchema?.meta?.['x-jsf-fieldsets']}\n isLoading={isLoading}\n />\n </div>\n );\n};\n","import type { $TSFixMe, JSFField } from '@/src/types/remoteFlows';\nimport equal from 'fast-deep-equal';\n\nexport type DiffType = 'added' | 'removed' | 'modified' | 'unchanged';\n\nexport interface FieldDiff {\n fieldName: string;\n diffType: DiffType;\n orderChanged?: { oldIndex: number; newIndex: number };\n changes?: {\n label?: { old: string; new: string };\n required?: { old: boolean; new: boolean };\n type?: { old: string; new: string };\n inputType?: { old: string; new: string };\n jsonType?: { old: string; new: string };\n defaultValue?: { old: unknown; new: unknown };\n minDate?: { old: string; new: string };\n maxDate?: { old: string; new: string };\n maxLength?: { old: number; new: number };\n multiple?: { old: boolean; new: boolean };\n isVisible?: { old: boolean; new: boolean };\n options?: {\n added: Array<{ value: string; label: string }>;\n removed: Array<{ value: string; label: string }>;\n modified: Array<{\n value: string;\n changes: { label?: { old: string; new: string } };\n }>;\n };\n nestedFields?: FieldDiff[];\n };\n}\n\nexport interface FormDiff {\n added: string[];\n removed: string[];\n modified: string[];\n unchanged: string[];\n reordered: string[];\n fieldDiffs: Map<string, FieldDiff>;\n}\n\nconst validateField = (field: JSFField): boolean => {\n if (!field.name) {\n console.warn('Field missing required \"name\" property:', field);\n return false;\n }\n if (!field.type) {\n console.warn(`Field \"${field.name}\" missing required \"type\" property`);\n return false;\n }\n return true;\n};\n\nconst compareOptions = (\n options1: JSFField['options'],\n options2: JSFField['options'],\n):\n | {\n added: Array<{ value: string; label: string }>;\n removed: Array<{ value: string; label: string }>;\n modified: Array<{\n value: string;\n changes: { label?: { old: string; new: string } };\n }>;\n }\n | undefined => {\n if (equal(options1, options2)) return undefined;\n\n const map1 = new Map((options1 || []).map((o) => [o.value, o]));\n const map2 = new Map((options2 || []).map((o) => [o.value, o]));\n\n const added: Array<{ value: string; label: string }> = [];\n const removed: Array<{ value: string; label: string }> = [];\n const modified: Array<{\n value: string;\n changes: { label?: { old: string; new: string } };\n }> = [];\n\n map2.forEach((option, value) => {\n if (!map1.has(value)) {\n added.push({ value: option.value, label: option.label });\n }\n });\n\n map1.forEach((option1, value) => {\n if (!map2.has(value)) {\n removed.push({ value: option1.value, label: option1.label });\n } else {\n const option2 = map2.get(value)!;\n if (!equal(option1, option2)) {\n const changes: { label?: { old: string; new: string } } = {};\n if (option1.label !== option2.label) {\n changes.label = { old: option1.label, new: option2.label };\n }\n if (Object.keys(changes).length > 0) {\n modified.push({ value, changes });\n }\n }\n }\n });\n\n if (added.length === 0 && removed.length === 0 && modified.length === 0) {\n return undefined;\n }\n\n return { added, removed, modified };\n};\n\nconst compareNestedFields = (\n field1: JSFField,\n field2: JSFField,\n): FieldDiff[] | undefined => {\n const nestedFields1 = (field1 as $TSFixMe).fields;\n\n const nestedFields2 = (field2 as $TSFixMe).fields;\n\n if (!nestedFields1 && !nestedFields2) return undefined;\n\n const nestedDiff = compareFormFields(\n nestedFields1 || [],\n nestedFields2 || [],\n );\n\n const hasChanges =\n nestedDiff.added.length > 0 ||\n nestedDiff.removed.length > 0 ||\n nestedDiff.modified.length > 0 ||\n nestedDiff.reordered.length > 0;\n\n if (!hasChanges) return undefined;\n\n return Array.from(nestedDiff.fieldDiffs.values());\n};\n\nconst isFieldModified = (\n field1: JSFField,\n field2: JSFField,\n index1: number,\n index2: number,\n): boolean => {\n if (index1 !== index2) {\n return true;\n }\n\n // Only compare user-facing schema properties, not internal/computed ones\n // Ignore: schema (Yup), computedAttributes, scopedJsonSchema, errorMessage, meta, description\n // Note: nested fields are checked via compareNestedFields to avoid deep equal with problematic properties\n const checks = {\n label: field1.label !== field2.label,\n required: field1.required !== field2.required,\n inputType: field1.inputType !== field2.inputType,\n type: field1.type !== field2.type,\n jsonType: !equal(field1.jsonType, field2.jsonType), // Use equal since jsonType can be an array like ['string', 'null']\n name: field1.name !== field2.name,\n defaultValue: field1.defaultValue !== field2.defaultValue,\n minDate: field1.minDate !== field2.minDate,\n maxDate: field1.maxDate !== field2.maxDate,\n maxLength: field1.maxLength !== field2.maxLength,\n multiple: field1.multiple !== field2.multiple,\n isVisible: field1.isVisible !== field2.isVisible,\n options: !equal(field1.options, field2.options),\n };\n\n // Check for nested field changes using compareNestedFields to avoid deep isEqual\n const hasNestedChanges = (() => {\n const nestedFields1 = (field1 as $TSFixMe).fields;\n const nestedFields2 = (field2 as $TSFixMe).fields;\n\n // If both undefined or null, no changes\n if (!nestedFields1 && !nestedFields2) return false;\n\n // If one is defined and the other isn't, there's a change\n if (!nestedFields1 || !nestedFields2) return true;\n\n // Recursively compare using our proper comparison logic\n const nestedDiff = compareFormFields(nestedFields1, nestedFields2);\n return (\n nestedDiff.added.length > 0 ||\n nestedDiff.removed.length > 0 ||\n nestedDiff.modified.length > 0 ||\n nestedDiff.reordered.length > 0\n );\n })();\n\n const isModified =\n Object.values(checks).some((check) => check) || hasNestedChanges;\n\n return isModified;\n};\n\nconst getFieldChanges = (field1: JSFField, field2: JSFField) => {\n const changes: FieldDiff['changes'] = {};\n\n if (field1.label !== field2.label) {\n changes.label = { old: field1.label, new: field2.label };\n }\n\n if (field1.required !== field2.required) {\n changes.required = { old: field1.required, new: field2.required };\n }\n\n if (field1.type !== field2.type) {\n changes.type = { old: field1.type, new: field2.type };\n }\n\n if (field1.inputType !== field2.inputType) {\n changes.inputType = {\n old: field1.inputType,\n new: field2.inputType,\n };\n }\n\n if (!equal(field1.jsonType, field2.jsonType)) {\n changes.jsonType = {\n old: field1.jsonType,\n new: field2.jsonType,\n };\n }\n\n if (!equal(field1.defaultValue, field2.defaultValue)) {\n changes.defaultValue = {\n old: field1.defaultValue,\n new: field2.defaultValue,\n };\n }\n\n if (field1.minDate !== field2.minDate) {\n changes.minDate = {\n old: field1.minDate || '',\n new: field2.minDate || '',\n };\n }\n\n if (field1.maxDate !== field2.maxDate) {\n changes.maxDate = {\n old: field1.maxDate || '',\n new: field2.maxDate || '',\n };\n }\n\n if (field1.maxLength !== field2.maxLength) {\n changes.maxLength = {\n old: field1.maxLength || 0,\n new: field2.maxLength || 0,\n };\n }\n\n if (field1.multiple !== field2.multiple) {\n changes.multiple = {\n old: field1.multiple || false,\n new: field2.multiple || false,\n };\n }\n\n if (field1.isVisible !== field2.isVisible) {\n changes.isVisible = {\n old: field1.isVisible,\n new: field2.isVisible,\n };\n }\n\n const optionsDiff = compareOptions(field1.options, field2.options);\n if (optionsDiff) {\n changes.options = optionsDiff;\n }\n\n const nestedFieldsDiff = compareNestedFields(field1, field2);\n if (nestedFieldsDiff) {\n changes.nestedFields = nestedFieldsDiff;\n }\n\n return Object.keys(changes).length > 0 ? changes : undefined;\n};\n\nexport const compareFormFields = (\n fields1: JSFField[] = [],\n fields2: JSFField[] = [],\n): FormDiff => {\n const validFields1 = fields1.filter(validateField);\n const validFields2 = fields2.filter(validateField);\n\n const fieldMap1 = new Map(\n validFields1.map((f, i) => [f.name, { field: f, index: i }]),\n );\n const fieldMap2 = new Map(\n validFields2.map((f, i) => [f.name, { field: f, index: i }]),\n );\n\n const added: string[] = [];\n const removed: string[] = [];\n const modified: string[] = [];\n const unchanged: string[] = [];\n const reordered: string[] = [];\n const fieldDiffs = new Map<string, FieldDiff>();\n\n fieldMap2.forEach((_, name) => {\n if (!fieldMap1.has(name)) {\n added.push(name);\n fieldDiffs.set(name, {\n fieldName: name,\n diffType: 'added',\n });\n }\n });\n\n fieldMap1.forEach(({ field: field1, index: index1 }, name) => {\n if (!fieldMap2.has(name)) {\n removed.push(name);\n fieldDiffs.set(name, {\n fieldName: name,\n diffType: 'removed',\n });\n } else {\n const { field: field2, index: index2 } = fieldMap2.get(name)!;\n\n if (isFieldModified(field1, field2, index1, index2)) {\n const onlyPositionChanged =\n index1 !== index2 && !isFieldModified(field1, field2, index1, index1);\n\n if (onlyPositionChanged) {\n reordered.push(name);\n fieldDiffs.set(name, {\n fieldName: name,\n diffType: 'unchanged',\n orderChanged: { oldIndex: index1, newIndex: index2 },\n });\n } else {\n modified.push(name);\n fieldDiffs.set(name, {\n fieldName: name,\n diffType: 'modified',\n orderChanged:\n index1 !== index2\n ? { oldIndex: index1, newIndex: index2 }\n : undefined,\n changes: getFieldChanges(field1, field2),\n });\n }\n } else {\n unchanged.push(name);\n fieldDiffs.set(name, {\n fieldName: name,\n diffType: 'unchanged',\n });\n }\n }\n });\n\n return {\n added,\n removed,\n modified,\n unchanged,\n reordered,\n fieldDiffs,\n };\n};\n\nexport const getDiffStyles = (\n diffType: DiffType,\n hasOrderChange?: boolean,\n): string => {\n if (hasOrderChange && diffType === 'unchanged') {\n return 'bg-blue-50 border-l-4 border-blue-500';\n }\n\n switch (diffType) {\n case 'added':\n return 'bg-green-50 border-l-4 border-green-500';\n case 'removed':\n return 'bg-red-50 border-l-4 border-red-500';\n case 'modified':\n return 'bg-yellow-50 border-l-4 border-yellow-500';\n case 'unchanged':\n default:\n return '';\n }\n};\n","import { JSONSchemaFormFields } from '@/src/components/form/JSONSchemaForm';\nimport { Form } from '@/src/components/ui/form';\nimport { useForm } from 'react-hook-form';\nimport {\n Card,\n CardContent,\n CardHeader,\n CardTitle,\n} from '@/src/components/ui/card';\nimport type { JSFField, JSFFieldset } from '@/src/types/remoteFlows';\nimport { compareFormFields, getDiffStyles } from './formDiffDetector';\nimport { useMemo, useRef, useEffect } from 'react';\n\ninterface SchemaFormComparisonProps {\n topVersion: string | number;\n bottomVersion: string | number;\n topFields: JSFField[];\n bottomFields: JSFField[];\n topFieldsets?: JSFFieldset | null;\n bottomFieldsets?: JSFFieldset | null;\n isLoading?: boolean;\n}\n\nconst FieldWrapper = ({\n children,\n diffType,\n orderChanged,\n changes,\n}: {\n children: React.ReactNode;\n diffType: 'added' | 'removed' | 'modified' | 'unchanged';\n fieldName: string;\n orderChanged?: { oldIndex: number; newIndex: number };\n changes?: {\n label?: { old: string; new: string };\n required?: { old: boolean; new: boolean };\n type?: { old: string; new: string };\n inputType?: { old: string; new: string };\n jsonType?: { old: string; new: string };\n defaultValue?: { old: unknown; new: unknown };\n minDate?: { old: string; new: string };\n maxDate?: { old: string; new: string };\n maxLength?: { old: number; new: number };\n multiple?: { old: boolean; new: boolean };\n isVisible?: { old: boolean; new: boolean };\n options?: {\n added: Array<{ value: string; label: string }>;\n removed: Array<{ value: string; label: string }>;\n modified: Array<{\n value: string;\n changes: { label?: { old: string; new: string } };\n }>;\n };\n nestedFields?: unknown[];\n };\n}) => {\n const styles = getDiffStyles(diffType, !!orderChanged);\n\n if (diffType === 'unchanged' && !orderChanged) {\n return <div>{children}</div>;\n }\n\n const badges = {\n added: (\n <span className='text-xs font-semibold text-green-700 bg-green-100 px-2 py-1 rounded'>\n NEW\n </span>\n ),\n removed: (\n <span className='text-xs font-semibold text-red-700 bg-red-100 px-2 py-1 rounded'>\n REMOVED\n </span>\n ),\n modified: (\n <span className='text-xs font-semibold text-yellow-700 bg-yellow-100 px-2 py-1 rounded'>\n MODIFIED\n </span>\n ),\n };\n\n const reorderedBadge = orderChanged && diffType === 'unchanged' && (\n <span className='text-xs font-semibold text-blue-700 bg-blue-100 px-2 py-1 rounded'>\n MOVED\n </span>\n );\n\n const badge =\n reorderedBadge || (diffType !== 'unchanged' && badges[diffType]);\n\n const renderChanges = () => {\n if (!changes || diffType !== 'modified') return null;\n\n const changesList: React.ReactNode[] = [];\n\n if (changes.label) {\n changesList.push(\n <div key='label' className='text-xs'>\n <span className='font-semibold'>Label:</span>{' '}\n <span className='line-through text-red-600'>{changes.label.old}</span>{' '}\n → <span className='text-green-600'>{changes.label.new}</span>\n </div>,\n );\n }\n\n if (changes.required) {\n changesList.push(\n <div key='required' className='text-xs'>\n <span className='font-semibold'>Required:</span>{' '}\n <span className='line-through text-red-600'>\n {changes.required.old ? 'Yes' : 'No'}\n </span>{' '}\n →{' '}\n <span className='text-green-600'>\n {changes.required.new ? 'Yes' : 'No'}\n </span>\n </div>,\n );\n }\n\n if (changes.type) {\n changesList.push(\n <div key='type' className='text-xs'>\n <span className='font-semibold'>Type:</span>{' '}\n <span className='line-through text-red-600'>{changes.type.old}</span>{' '}\n → <span className='text-green-600'>{changes.type.new}</span>\n </div>,\n );\n }\n\n if (changes.inputType) {\n changesList.push(\n <div key='inputType' className='text-xs'>\n <span className='font-semibold'>Input Type:</span>{' '}\n <span className='line-through text-red-600'>\n {changes.inputType.old}\n </span>{' '}\n → <span className='text-green-600'>{changes.inputType.new}</span>\n </div>,\n );\n }\n\n if (changes.jsonType) {\n const oldJsonType = Array.isArray(changes.jsonType.old)\n ? changes.jsonType.old.join(' | ')\n : changes.jsonType.old;\n const newJsonType = Array.isArray(changes.jsonType.new)\n ? changes.jsonType.new.join(' | ')\n : changes.jsonType.new;\n\n changesList.push(\n <div key='jsonType' className='text-xs'>\n <span className='font-semibold'>JSON Type:</span>{' '}\n <span className='line-through text-red-600'>{oldJsonType}</span> →{' '}\n <span className='text-green-600'>{newJsonType}</span>\n </div>,\n );\n }\n\n if (changes.defaultValue !== undefined) {\n changesList.push(\n <div key='defaultValue' className='text-xs'>\n <span className='font-semibold'>Default Value:</span>{' '}\n <span className='line-through text-red-600'>\n {JSON.stringify(changes.defaultValue.old)}\n </span>{' '}\n →{' '}\n <span className='text-green-600'>\n {JSON.stringify(changes.defaultValue.new)}\n </span>\n </div>,\n );\n }\n\n if (changes.options) {\n if (changes.options.added.length > 0) {\n changesList.push(\n <div key='options-added' className='text-xs'>\n <span className='font-semibold text-green-700'>Options Added:</span>{' '}\n {changes.options.added.map((opt) => opt.label).join(', ')}\n </div>,\n );\n }\n if (changes.options.removed.length > 0) {\n changesList.push(\n <div key='options-removed' className='text-xs'>\n <span className='font-semibold text-red-700'>Options Removed:</span>{' '}\n {changes.options.removed.map((opt) => opt.label).join(', ')}\n </div>,\n );\n }\n if (changes.options.modified.length > 0) {\n changesList.push(\n <div key='options-modified' className='text-xs'>\n <span className='font-semibold'>Options Modified:</span>{' '}\n {changes.options.modified.length} option(s)\n </div>,\n );\n }\n }\n\n if (changes.nestedFields && changes.nestedFields.length > 0) {\n changesList.push(\n <div key='nestedFields' className='text-xs'>\n <span className='font-semibold'>Nested Fields:</span>{' '}\n {changes.nestedFields.length} field(s) changed\n </div>,\n );\n }\n\n if (changesList.length === 0) return null;\n\n return (\n <div className='mt-2 p-2 bg-yellow-50 rounded border border-yellow-200 space-y-1'>\n <div className='text-xs font-semibold text-yellow-800 mb-1'>\n Changes:\n </div>\n {changesList}\n </div>\n );\n };\n\n return (\n <div className={`p-3 mb-2 rounded ${styles} relative`}>\n <div className='absolute top-2 right-2'>\n {badge}\n {orderChanged && diffType !== 'unchanged' && (\n <span className='ml-2 text-xs text-gray-600'>(position changed)</span>\n )}\n </div>\n {children}\n {renderChanges()}\n </div>\n );\n};\n\nconst FormPanel = ({\n version,\n fields,\n fieldsets,\n diffMap,\n title,\n scrollRef,\n}: {\n version: string | number;\n fields: JSFField[];\n fieldsets?: JSFFieldset | null;\n diffMap: Map<\n string,\n {\n diffType: 'added' | 'removed' | 'modified' | 'unchanged';\n orderChanged?: { oldIndex: number; newIndex: number };\n changes?: unknown;\n }\n >;\n title: string;\n scrollRef?: React.RefObject<HTMLDivElement | null>;\n}) => {\n const form = useForm({\n mode: 'onBlur',\n });\n\n const fieldsWithWrappers = useMemo(() => {\n return fields.map((field) => {\n const diff = diffMap.get(field.name);\n const diffType = diff?.diffType || 'unchanged';\n const orderChanged = diff?.orderChanged;\n const changes = diff?.changes;\n\n return {\n ...field,\n WrapperComponent: ({ children }: { children: React.ReactNode }) => (\n <FieldWrapper\n diffType={diffType}\n fieldName={field.name}\n orderChanged={orderChanged}\n changes={changes as never}\n >\n {children}\n </FieldWrapper>\n ),\n };\n });\n }, [fields, diffMap]);\n\n return (\n <Card className='h-full'>\n <CardHeader>\n <CardTitle>\n {title} - Version {version}\n </CardTitle>\n </CardHeader>\n <CardContent ref={scrollRef} className='overflow-y-auto max-h-[600px]'>\n <Form {...form}>\n <form className='space-y-4'>\n <JSONSchemaFormFields\n fields={fieldsWithWrappers}\n fieldsets={fieldsets}\n fieldValues={{}}\n />\n </form>\n </Form>\n </CardContent>\n </Card>\n );\n};\n\nexport const SchemaFormComparison = ({\n topVersion,\n bottomVersion,\n topFields,\n bottomFields,\n topFieldsets,\n bottomFieldsets,\n isLoading,\n}: SchemaFormComparisonProps) => {\n const diff = useMemo(\n () => compareFormFields(topFields, bottomFields),\n [topFields, bottomFields],\n );\n\n const leftScrollRef = useRef<HTMLDivElement>(null);\n const rightScrollRef = useRef<HTMLDivElement>(null);\n const isSyncing = useRef(false);\n\n useEffect(() => {\n const leftEl = leftScrollRef.current;\n const rightEl = rightScrollRef.current;\n\n if (!leftEl || !rightEl) return;\n\n const handleLeftScroll = () => {\n if (isSyncing.current) return;\n isSyncing.current = true;\n rightEl.scrollTop = leftEl.scrollTop;\n requestAnimationFrame(() => {\n isSyncing.current = false;\n });\n };\n\n const handleRightScroll = () => {\n if (isSyncing.current) return;\n isSyncing.current = true;\n leftEl.scrollTop = rightEl.scrollTop;\n requestAnimationFrame(() => {\n isSyncing.current = false;\n });\n };\n\n leftEl.addEventListener('scroll', handleLeftScroll);\n rightEl.addEventListener('scroll', handleRightScroll);\n\n return () => {\n leftEl.removeEventListener('scroll', handleLeftScroll);\n rightEl.removeEventListener('scroll', handleRightScroll);\n };\n }, [topFields, bottomFields]);\n\n if (isLoading) {\n return (\n <div className='flex items-center justify-center h-96'>\n <div className='text-center'>\n <div className='animate-spin rounded-full h-12 w-12 border-b-2 border-gray-900 mx-auto'></div>\n <p className='mt-4 text-gray-600'>Loading schemas...</p>\n </div>\n </div>\n );\n }\n\n const hasNoDifferences =\n diff.added.length === 0 &&\n diff.removed.length === 0 &&\n diff.modified.length === 0 &&\n diff.reordered.length === 0;\n\n return (\n <div className='space-y-6'>\n <Card>\n <CardContent className='pt-6'>\n {hasNoDifferences ? (\n <p className='text-center text-gray-600'>\n No differences detected between the two versions\n </p>\n ) : (\n <div className='flex gap-6 justify-center'>\n {diff.added.length > 0 && (\n <div className='flex items-center gap-2'>\n <span className='w-4 h-4 bg-green-500 rounded'></span>\n <span className='text-sm'>\n {diff.added.length} field{diff.added.length > 1 ? 's' : ''}{' '}\n added\n </span>\n </div>\n )}\n {diff.removed.length > 0 && (\n <div className='flex items-center gap-2'>\n <span className='w-4 h-4 bg-red-500 rounded'></span>\n <span className='text-sm'>\n {diff.removed.length} field\n {diff.removed.length > 1 ? 's' : ''} removed\n </span>\n </div>\n )}\n {diff.modified.length > 0 && (\n <div className='flex items-center gap-2'>\n <span className='w-4 h-4 bg-yellow-500 rounded'></span>\n <span className='text-sm'>\n {diff.modified.length} field\n {diff.modified.length > 1 ? 's' : ''} modified\n </span>\n </div>\n )}\n {diff.reordered.length > 0 && (\n <div className='flex items-center gap-2'>\n <span className='w-4 h-4 bg-blue-500 rounded'></span>\n <span className='text-sm'>\n {diff.reordered.length} field\n {diff.reordered.length > 1 ? 's' : ''} reordered\n </span>\n </div>\n )}\n </div>\n )}\n </CardContent>\n </Card>\n\n <div className='grid grid-cols-2 gap-6'>\n <FormPanel\n version={topVersion}\n fields={topFields}\n fieldsets={topFieldsets}\n diffMap={diff.fieldDiffs}\n title='Left'\n scrollRef={leftScrollRef}\n />\n <FormPanel\n version={bottomVersion}\n fields={bottomFields}\n fieldsets={bottomFieldsets}\n diffMap={diff.fieldDiffs}\n title='Right'\n scrollRef={rightScrollRef}\n />\n </div>\n </div>\n );\n};\n","export type SchemaVersion = number | 'latest';\n\nexport interface VersionOption {\n value: SchemaVersion;\n label: string;\n}\n\nexport const BASIC_INFO_VERSIONS: VersionOption[] = [\n { value: 1, label: 'v1 (Legacy)' },\n { value: 3, label: 'v3 (Recommended)' },\n { value: 'latest', label: 'Latest' },\n];\n\n// AI generated from tiger\nexport const COUNTRY_CONTRACT_VERSIONS: Record<string, VersionOption[]> = {\n ALB: [{ value: 'latest', label: 'Latest' }],\n ARE: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n ARG: [{ value: 'latest', label: 'Latest' }],\n ARM: [{ value: 'latest', label: 'Latest' }],\n AUS: [{ value: 'latest', label: 'Latest' }],\n AUT: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n BEL: [{ value: 'latest', label: 'Latest' }],\n BGD: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n BGR: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n BIH: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n BLR: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n BOL: [{ value: 'latest', label: 'Latest' }],\n BRA: [{ value: 'latest', label: 'Latest' }],\n CAN: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n CHE: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n CHL: [{ value: 'latest', label: 'Latest' }],\n CHN: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n COL: [{ value: 'latest', label: 'Latest' }],\n CRI: [{ value: 'latest', label: 'Latest' }],\n CYP: [{ value: 'latest', label: 'Latest' }],\n CZE: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n DEU: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n DNK: [{ value: 'latest', label: 'Latest' }],\n DOM: [{ value: 'latest', label: 'Latest' }],\n ECU: [{ value: 'latest', label: 'Latest' }],\n EGY: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n ESP: [{ value: 'latest', label: 'Latest' }],\n EST: [{ value: 'latest', label: 'Latest' }],\n FIN: [{ value: 'latest', label: 'Latest' }],\n FRA: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n FRA_SAS: [{ value: 'latest', label: 'Latest' }],\n GBR: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n GEO: [{ value: 'latest', label: 'Latest' }],\n GRC: [{ value: 'latest', label: 'Latest' }],\n GTM: [{ value: 'latest', label: 'Latest' }],\n HKG: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n HND: [{ value: 'latest', label: 'Latest' }],\n HRV: [{ value: 'latest', label: 'Latest' }],\n HUN: [{ value: 'latest', label: 'Latest' }],\n IDN: [{ value: 'latest', label: 'Latest' }],\n IND: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n IRL: [{ value: 'latest', label: 'Latest' }],\n ISL: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n ISR: [{ value: 'latest', label: 'Latest' }],\n ITA: [{ value: 'latest', label: 'Latest' }],\n ITA_APL: [{ value: 'latest', label: 'Latest' }],\n JAM: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n JPN: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n KEN: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n KGZ: [{ value: 'latest', label: 'Latest' }],\n KHM: [{ value: 'latest', label: 'Latest' }],\n KOR: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n LBN: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n LKA: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n LTU: [{ value: 'latest', label: 'Latest' }],\n LUX: [{ value: 'latest', label: 'Latest' }],\n LVA: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n MAR: [{ value: 'latest', label: 'Latest' }],\n MDA: [{ value: 'latest', label: 'Latest' }],\n MEX: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n MKD: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n MLT: [{ value: 'latest', label: 'Latest' }],\n MNG: [{ value: 'latest', label: 'Latest' }],\n MUS: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n MYS: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n NGA: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n NIC: [{ value: 'latest', label: 'Latest' }],\n NLD: [{ value: 'latest', label: 'Latest' }],\n NOR: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n NZL: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n PAK: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n PAN: [{ value: 'latest', label: 'Latest' }],\n PER: [{ value: 'latest', label: 'Latest' }],\n PHL: [{ value: 'latest', label: 'Latest' }],\n POL: [{ value: 'latest', label: 'Latest' }],\n PRI: [{ value: 'latest', label: 'Latest' }],\n PRT: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n PRY: [{ value: 'latest', label: 'Latest' }],\n ROU: [{ value: 'latest', label: 'Latest' }],\n SAU: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n SGP: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n SLV: [{ value: 'latest', label: 'Latest' }],\n SRB: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n SVK: [{ value: 'latest', label: 'Latest' }],\n SVN: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n SWE: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n THA: [\n { value: 1, label: 'v1' },\n { value: 'latest', label: 'Latest' },\n ],\n TUN: [\n { value: 1, label: 'v1' },\n { value: 2, label: 'v2' },\n { value: 'latest', label: 'Latest' },\n ],\n TUR: [{ value: 'latest', label: 'Latest' }],\n TWN: [{ value: 'latest', label: 'Latest' }],\n UGA: [{ value: 'latest', label: 'Latest' }],\n UKR: [{ value: 'latest', label: 'Latest' }],\n URY: [{ value: 'latest', label: 'Latest' }],\n USA: [{ value: 'latest', label: 'Latest' }],\n VNM: [{ value: 'latest', label: 'Latest' }],\n XKX: [{ value: 'latest', label: 'Latest' }],\n ZAF: [{ value: 'latest', label: 'Latest' }],\n ZWE: [{ value: 'latest', label: 'Latest' }],\n};\n\nexport const COUNTRY_CONTRACT_VERSIONS_WITH_MULTIPLE_VERSIONS =\n Object.fromEntries(\n Object.entries(COUNTRY_CONTRACT_VERSIONS).filter(\n ([, versions]) => versions.length > 1,\n ),\n ) as Record<string, VersionOption[]>;\n\nexport const FORM_TYPES = [\n { value: 'employment_basic_information', label: 'Basic Information' },\n { value: 'contract_details', label: 'Contract Details' },\n] as const;\n\nexport type FormType = (typeof FORM_TYPES)[number]['value'];\n"],"mappings":"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","names":["CollapsiblePrimitive","Collapsible","CollapsibleTrigger","CollapsibleContent","TabsPrimitive","jsx","Tabs","className","props","cn","__name","TabsList","TabsTrigger","TabsContent","React","ScrollAreaPrimitive","jsx","jsxs","ScrollArea","className","children","props","ref","cn","ScrollBar","orientation","useState","useEffect","useMemo","useQuery","equal","validateField","__name","field","compareOptions","options1","options2","equal","map1","o","map2","added","removed","modified","option","value","option1","option2","changes","compareNestedFields","field1","field2","nestedFields1","nestedFields2","nestedDiff","compareFormFields","isFieldModified","index1","index2","checks","hasNestedChanges","check","getFieldChanges","optionsDiff","nestedFieldsDiff","fields1","fields2","validFields1","validFields2","fieldMap1","f","i","fieldMap2","unchanged","reordered","fieldDiffs","_","name","getDiffStyles","diffType","hasOrderChange","useMemo","useRef","useEffect","jsx","jsxs","FieldWrapper","__name","children","diffType","orderChanged","changes","styles","getDiffStyles","badge","renderChanges","changesList","oldJsonType","newJsonType","opt","FormPanel","version","fields","fieldsets","diffMap","title","scrollRef","form","useForm","fieldsWithWrappers","useMemo","field","diff","Card","CardHeader","CardTitle","CardContent","Form","JSONSchemaFormFields","SchemaFormComparison","topVersion","bottomVersion","topFields","bottomFields","topFieldsets","bottomFieldsets","isLoading","compareFormFields","leftScrollRef","useRef","rightScrollRef","isSyncing","useEffect","leftEl","rightEl","handleLeftScroll","handleRightScroll","hasNoDifferences","BASIC_INFO_VERSIONS","COUNTRY_CONTRACT_VERSIONS","COUNTRY_CONTRACT_VERSIONS_WITH_MULTIPLE_VERSIONS","versions","FORM_TYPES","jsx","jsxs","JsonSchemaComparison","__name","formType","setFormType","useState","topVersion","setTopVersion","bottomVersion","setBottomVersion","countryCode","setCountryCode","client","useClient","countriesData","useQuery","countriesOptions","response","country","COUNTRY_CONTRACT_VERSIONS_WITH_MULTIPLE_VERSIONS","isContractDetails","topSchema","isLoadingTop","useJSONSchemaForm","bottomSchema","isLoadingBottom","isLoading","countryVersions","COUNTRY_CONTRACT_VERSIONS","hasCountryMapping","versionOptions","useMemo","BASIC_INFO_VERSIONS","useEffect","availableVersionValues","v","Card","CardHeader","CardTitle","CardContent","Label","Tabs","value","TabsList","FORM_TYPES","type","TabsTrigger","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","version","SchemaFormComparison"]}
@@ -0,0 +1,2 @@
1
+ import{n as f}from"./chunk-OSQ6VUDM.js";import{a}from"./chunk-P37U34EQ.js";var w=a(e=>new Promise((n,r)=>{let s=new FileReader;s.readAsDataURL(e),s.onload=()=>n(s.result),s.onerror=t=>r(t)}),"toBase64"),x=a(async e=>await Promise.all(e.map(async r=>{let s=await w(r);return{...r,name:r.name,size:r.size,type:r.type,content:s.split(",")[1]}})),"convertFilesToBase64");function _(e,n){let r=e.split(","),s=r[0].match(/:(.*?);/)?.[1],t=atob(r[1]),i=Uint8Array.from(t,o=>o.charCodeAt(0));return new File([i],n,{type:s})}a(_,"dataURLtoFile");import{addBusinessDays as P,isWeekend as h,nextMonday as k}from"date-fns";var N={TEXT:"text",TEXTAREA:"textarea",NUMBER:"number",SELECT:"select",COUNTRIES:"countries",TEL:"tel",EMAIL:"email",MONEY:"money",DATE:"date",DATE_RANGE:"date-range",CURRENCIES:"currencies",TIME:"time"},L={CHECKBOX:"checkbox",ACK_CHECK:"ack-check"},l={FILE:"file",RADIO:"radio",RADIO_CARD:"radio-card",GROUP_ARRAY:"group-array",EXTRA:"extra",STATEMENT:"statement",HIDDEN:"hidden",FIELDSET:"fieldset",FIELDSET_FLAT:"fieldset-flat",WORK_SCHEDULE:"work-schedule",WORK_WEEK_SCHEDULE:"work-week-schedule",BENEFITS:"benefits",SIGNATURE:"signature",SELECT_MULTIPLE:"select-multiple",...N,...L};function V(e){return Math.round((e+Number.EPSILON)*100)/100}a(V,"round");function A(e){return parseFloat(e.replace(/,/g,""))}a(A,"convertToValidCost");function C(e){if(e==null||e===""||Number.isNaN(e)||Array.isArray(e)||typeof e=="boolean")return null;let n;return typeof e=="string"?n=A(e):n=e,V(n*100)}a(C,"convertToCents");function j(e){if(e==null||Number.isNaN(e))return null;let n;return typeof e=="string"?n=A(e||"0"):n=e,V(n/100)}a(j,"convertFromCents");var g=a(e=>Object.entries(e||{}).reduce((n,[r,s])=>(Array.isArray(s)?n[r]=s.map(t=>typeof t=="object"&&t!==null?g(t):typeof t=="string"?t.trim():t):typeof s=="object"&&s!==null?n[r]=g(s):n[r]=typeof s=="string"?s.trim():s,n),{}),"trimStringValues");function R(e,n){let r={};return n.forEach(s=>{let t=s.name;if(!(!Object.prototype.hasOwnProperty.call(e,t)&&!(s.type===l.FIELDSET&&s.valueGroupingDisabled))){if(s.type===l.FIELDSET&&s.valueGroupingDisabled){Object.assign(r,R(e,s.fields));return}s.readOnly&&s.defaultValue?r[t]=s.defaultValue:r[t]=e[t]}}),r}a(R,"prefillReadOnlyFields");function M(e,n){return e.reduce((r,s)=>(s.type===l.FIELDSET&&s.valueGroupingDisabled?Object.assign(r,M(s.fields,n)):Object.prototype.hasOwnProperty.call(n,s.name)&&(r[s.name]=n[s.name]),r),{})}a(M,"extractFieldsetFieldsValues");var b={[l.COUNTRIES]:{transformValueToAPI:a(e=>n=>!e.multiple||typeof n=="string"?n:n.map(r=>typeof r=="string"?r:r.name),"transformValueToAPI"),transformValue:a(e=>{let n=a(r=>r?.name||r?.value||r?.label,"getCountryValue");return Array.isArray(e)?e.map(n):n(e)||""},"transformValue")},[l.NUMBER]:{transformValueToAPI:a(()=>e=>{let n=Number(e);return Number.isNaN(n)?e:n},"transformValueToAPI")},[l.MONEY]:{transformValueFromAPI:a(()=>e=>j(e)??"","transformValueFromAPI"),transformValueToAPI:a(()=>C,"transformValueToAPI")},[l.RADIO]:{transformValueToAPI:a(e=>n=>e.transformToBool?n==="yes":n,"transformValueToAPI")},[l.CHECKBOX]:{transformValueToAPI:a(e=>n=>n===void 0?!1:e.const&&n===!0?e.const:n,"transformValueToAPI")},[l.SELECT]:{transformValue:a(e=>Array.isArray(e)?e.map(n=>n.value):e?.value??"","transformValue")},[l.FILE]:{transformValueToAPI:a(()=>async e=>e?await x(e):null,"transformValueToAPI")}};async function F(e={},n){let r=n.filter(t=>e[t.name]||t.type===l.FIELDSET&&t.valueGroupingDisabled);return(await Promise.all(r.map(async t=>{let i={};switch(t.type){case l.FIELDSET:{let o=t;if(o.valueGroupingDisabled){let u=M(o.fields,e);Object.assign(i,await F(u,o.fields))}else{let u=e[t.name];if(u&&typeof u=="object"&&!Array.isArray(u)){let c=Object.fromEntries(Object.entries(u).filter(([,m])=>m!==""&&m!==null&&m!==void 0));i[t.name]=Object.keys(c).length>0?await F(c,o.fields):void 0}else i[t.name]=await F(u,o.fields)}break}case l.TEXTAREA:case l.TEXT:i[t.name]=e[t.name].replace(/\0/g,"");break;case l.GROUP_ARRAY:{let o=t?.fields?.().map(c=>({...c,name:c.nameKey||""})),u=await Promise.all(e[t.name]?.map(c=>F(c,o))||[]);i[t.name]=u;break}case l.EXTRA:{let o=t;if(o.includeValueToApi!==!1){let u=e[o.name],c=o?.transformValueToAPI||b[o.type]?.transformValueToAPI;if(c){let m=c(t)(u);i[o.name]=m instanceof Promise?await m:m;break}i[o.name]=u;break}i[o.name]=void 0;break}default:{let o=e[t.name],u=t?.transformValueToAPI||b[t.type]?.transformValueToAPI;if(u){let c=u(t)(o);i[t.name]=c instanceof Promise?await c:c;break}i[t.name]=o;break}}return t.forcedValue!==void 0&&(i[t.name]=t.forcedValue),i}))).reduce((t,i)=>({...t,...i}),{...e})}a(F,"parseFormValuesToAPI");function I(e,n){return e.visibilityCondition?e.visibilityCondition(n):typeof e.isVisible<"u"?!!e.isVisible:!0}a(I,"isFieldVisible");function E(e,n){return e.calculateDynamicProperties?{...e,...e.calculateDynamicProperties(n)||{}}:e}a(E,"applyFieldDynamicProperties");function y(e,n,r,s){let t={};return n.map(i=>E(i,e)).forEach(i=>{let o=i.name;s&&(o=o?`${s}.${i.name}`:s);let u=f(e,o);if(!(!I(i,e)&&!(r&&u))&&!i.meta?.ignoreValue)if(i.type==="fieldset"&&i.valueGroupingDisabled)Object.assign(t,y(e,i.fields,r,o));else if(Array.isArray(i.fields))t[i.name]=y(e,i.fields,r,o);else{if(u===void 0)return;t[i.name]=u}}),t}a(y,"excludeValuesInvisible");function U(e){return Object.fromEntries(Object.entries(e).filter(([,n])=>n!=null&&n!==""))}a(U,"removeEmptyValues");function S(e){return Array.isArray(e)?e.map(S):e&&typeof e=="object"?Object.entries(e).reduce((n,[r,s])=>(r.startsWith("_")||(n[r]=S(s)),n),{}):e}a(S,"cleanUnderscoreFields");async function B(e,n,r){let s=r?.keepInvisibleValues?e:y(e,n),t=await F(s,n),i=g(t),o=U(i),u=R(o,n);return S(u)}a(B,"parseSubmitValues");async function Y(e,n,r={isPartialValidation:!1}){return await B(e,n,{keepInvisibleValues:r?.isPartialValidation})}a(Y,"parseJSFToValidate");function G(e){if(e!==l.FILE)return""}a(G,"getDefaultValueForType");function $(e,n){let r=f(e,n.name),s=n?.transformValueFromAPI||b[n.type]?.transformValueFromAPI;if(s)return s(n)(r);let t=typeof n.value=="function"?n.value(r,e):null,i=typeof n.value!="function"?n.value:null,o=n.checkboxValue===!0?r||!1:null,u=a(c=>c===""?void 0:c,"excludeString");return u(t)??u(r)??u(i)??u(n.default)??o??G(n.type)}a($,"getInitialDefaultValue");function D(e,n,r){let s={},t=e.name;r&&(t=t?`${r}.${t}`:r);let i=e.fields;if(Array.isArray(i)){let o={};i.forEach(u=>{Object.assign(o,D(u,n,t))}),e.type===l.FIELDSET&&e.valueGroupingDisabled?Object.assign(s,o):s[e.name]=o}else s[e.name]=$(n,{...e,name:t});return s}a(D,"getInitialSubFieldValues");function W(e,n){let r={},s=n;return e.map(t=>E(t,s)).forEach(t=>{switch(t.type){case l.FIELDSET:{if(t.valueGroupingDisabled)Object.assign(r,W(t.fields,s));else{let i=D(t,s);Object.assign(r,i)}break}default:{r[t.name]||(r[t.name]=$(s,t));break}}}),r}a(W,"getInitialValues");function z({fields:e=[],fieldsets:n={},values:r}){let s=Object.keys(n);if(!s?.length)return e;let t=new Set(s.flatMap(c=>n[c]?.propertiesByName??[]));return s.map(c=>{let{propertiesByName:m=[],...p}=n[c],T=m.map(d=>e.find(O=>O.name===d)).filter(d=>!!d);return{...p,name:c,type:"fieldset-flat",inputType:"fieldset-flat",fields:T,label:n[c].title,isVisible:T.map(d=>E(d,r)).some(d=>I(d,r))}}).reduce((c,m)=>{let p=[...c],T=m.fields[0]?c.findIndex(d=>d.name===m.fields[0].name):c.length;return p.splice(T,0,m),p},e).filter(c=>c.type==="fieldset-flat"?!0:!t.has(c.name))}a(z,"getFieldsWithFlatFieldsets");function q(e,n){let r=n;return e.forEach(s=>{"const"in s&&(r=Object.fromEntries(Object.entries(n).map(([t,i])=>t===s.name?[t,s.const]:[t,i])))}),r}a(q,"enableAckFields");function Q(e){let n=new Date;n.setDate(n.getUTCDate()),n.setHours(0,0,0,0);let r=P(n,e+1);return h(r)?k(r):r}a(Q,"getMinStartDate");function Z(e){return e.const!==void 0&&e.const===e.default&&e.type!=="checkbox"&&e.type!=="hidden"}a(Z,"checkFieldHasForcedValue");export{_ as a,V as b,C as c,j as d,Y as e,W as f,z as g,q as h,Q as i,Z as j};
2
+ //# sourceMappingURL=chunk-FFVTWWGX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/lib/files.ts","../src/components/form/utils.ts"],"sourcesContent":["const toBase64 = (file: File): Promise<string> => {\n return new Promise<string>((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => resolve(reader.result as string);\n reader.onerror = (error) => reject(error);\n });\n};\n\nexport const convertFilesToBase64 = async (files: File[]) => {\n const base64Files = await Promise.all(\n files.map(async (file) => {\n const base64 = await toBase64(file);\n return {\n ...file,\n name: file.name,\n size: file.size,\n type: file.type,\n content: base64.split(',')[1],\n };\n }),\n );\n return base64Files;\n};\n\n/**\n * Convert a data URL to a File object\n * @param dataURL - The data URL to convert\n * @param filename - The name of the file\n * @returns The File object\n */\nexport function dataURLtoFile(dataURL: string, filename: string): File {\n const arr = dataURL.split(',');\n const mime = arr[0].match(/:(.*?);/)?.[1];\n const bstr = atob(arr[1]);\n\n const u8arr = Uint8Array.from(bstr, (char) => char.charCodeAt(0));\n\n return new File([u8arr], filename, { type: mime });\n}\n","import { Field } from '@/src/flows/types';\nimport { $TSFixMe } from '@/src/types/remoteFlows';\nimport { JSFFields } from '@/src/types/remoteFlows';\nimport { convertFilesToBase64 } from '@/src/lib/files';\nimport { addBusinessDays, isWeekend, nextMonday } from 'date-fns';\nimport { getNestedValue } from '@/src/lib/utils';\n\nconst textInputTypes = {\n TEXT: 'text',\n TEXTAREA: 'textarea',\n NUMBER: 'number',\n SELECT: 'select',\n COUNTRIES: 'countries',\n TEL: 'tel',\n EMAIL: 'email',\n MONEY: 'money',\n DATE: 'date',\n DATE_RANGE: 'date-range',\n CURRENCIES: 'currencies',\n TIME: 'time',\n} as const;\n\nconst checkboxTypes = {\n CHECKBOX: 'checkbox',\n ACK_CHECK: 'ack-check',\n} as const;\n\nconst supportedTypes = {\n FILE: 'file',\n RADIO: 'radio',\n /** @deprecated */\n RADIO_CARD: 'radio-card',\n GROUP_ARRAY: 'group-array',\n EXTRA: 'extra',\n STATEMENT: 'statement',\n HIDDEN: 'hidden',\n FIELDSET: 'fieldset',\n FIELDSET_FLAT: 'fieldset-flat',\n WORK_SCHEDULE: 'work-schedule',\n WORK_WEEK_SCHEDULE: 'work-week-schedule',\n /** @deprecated we still display benefits in read-only contract details view, but never in any form */\n BENEFITS: 'benefits',\n SIGNATURE: 'signature',\n SELECT_MULTIPLE: 'select-multiple',\n ...textInputTypes,\n ...checkboxTypes,\n} as const;\n\nexport function round(value: number): number {\n return Math.round((value + Number.EPSILON) * 100) / 100;\n}\n\nfunction convertToValidCost(value: string) {\n return parseFloat(value.replace(/,/g, ''));\n}\n\nexport function convertToCents(\n amount?: number | string | string[] | null | boolean,\n) {\n if (\n amount == null ||\n amount === '' ||\n Number.isNaN(amount) ||\n Array.isArray(amount) ||\n typeof amount === 'boolean'\n ) {\n return null;\n }\n\n let validAmount: number;\n\n if (typeof amount === 'string') {\n validAmount = convertToValidCost(amount);\n } else {\n validAmount = amount;\n }\n\n return round(validAmount * 100);\n}\n\nexport function convertFromCents(amount?: number | string | null) {\n if (amount == null || Number.isNaN(amount)) return null;\n\n let normalizedValue: number;\n\n if (typeof amount === 'string') {\n normalizedValue = convertToValidCost(amount || '0');\n } else {\n normalizedValue = amount;\n }\n\n return round(normalizedValue / 100);\n}\n\nconst trimStringValues = (values: Record<string, $TSFixMe>) =>\n Object.entries(values || {}).reduce<Record<string, $TSFixMe>>(\n (result, [key, value]) => {\n if (Array.isArray(value)) {\n // If the value is an array, recursively process each element\n result[key] = value.map((item) =>\n typeof item === 'object' && item !== null\n ? trimStringValues(item)\n : typeof item === 'string'\n ? item.trim()\n : item,\n );\n } else if (typeof value === 'object' && value !== null) {\n // If the value is an object, recursively process it\n result[key] = trimStringValues(value);\n } else {\n // Otherwise, trim the string or keep the value as is\n result[key] = typeof value === 'string' ? value.trim() : value;\n }\n return result;\n },\n {},\n );\n\n/**\n * Given a list of form values, modify the ones that are readOnly,\n * based on their field config, by adding its defaultValue.\n * This is needed to support readOnly fields that are also conditional\n * based on the \"pivotName\" workaround.\n * @param {Object} values - List with form values { name: value }.\n * @param {Array} fields - Respective form fields configuration.\n */\nfunction prefillReadOnlyFields(\n values: Record<string, $TSFixMe>,\n fields: $TSFixMe[],\n) {\n const newValues: Record<string, $TSFixMe> = {};\n\n fields.forEach((field) => {\n const fieldName = field.name;\n\n if (\n !Object.prototype.hasOwnProperty.call(values, fieldName!) &&\n !(field.type === supportedTypes.FIELDSET && field.valueGroupingDisabled)\n )\n return;\n\n if (field.type === supportedTypes.FIELDSET && field.valueGroupingDisabled) {\n Object.assign(newValues, prefillReadOnlyFields(values, field.fields));\n return;\n }\n\n if (field.readOnly && field.defaultValue) {\n newValues[fieldName!] = field.defaultValue;\n } else {\n newValues[fieldName!] = values[fieldName!];\n }\n });\n\n return newValues;\n}\n/**\n * Recursively extracts fieldsets' fields values and maps them to the field name\n * For nested fields that are fieldsets with valueGroupingDisabled, the values\n * are extracted one level up\n *\n * @param {Array} fields - Fieldset fields configuration.\n * @param {Object} formValues - List with form values { name: value }.\n * @return {Object} – Raw form values mapped to the field name\n */\nfunction extractFieldsetFieldsValues(\n fields: $TSFixMe[],\n formValues: Record<string, unknown>,\n) {\n return fields.reduce<Record<string, $TSFixMe>>((nestedAcc, subField) => {\n const isFieldsetValueGroupingDisabled =\n subField.type === supportedTypes.FIELDSET &&\n subField.valueGroupingDisabled;\n\n if (isFieldsetValueGroupingDisabled) {\n Object.assign(\n nestedAcc,\n extractFieldsetFieldsValues(subField.fields, formValues),\n );\n } else if (\n Object.prototype.hasOwnProperty.call(formValues, subField.name!)\n ) {\n nestedAcc[subField.name!] = formValues[subField.name!];\n }\n\n return nestedAcc;\n }, {});\n}\n\nexport const fieldTypesTransformations: Record<string, $TSFixMe> = {\n [supportedTypes.COUNTRIES]: {\n /**\n * @param {String[] | { name: String }[]} value\n * - Excepted: array of strings.\n * - Edge cases: array of objects. (when using dangerousTransformValue)\n * @returns {String[]} - List of countries\n * @example expected: ['Peru', 'Germany'] -> ['Peru', 'Germany']\n * @example edge cases: [{name: 'Peru'}, {name: 'Germany'}] -> ['Peru', 'Germany']\n */\n transformValueToAPI:\n (field: $TSFixMe) =>\n (selectedCountries: string[] | { name: string }[]) => {\n if (!field.multiple || typeof selectedCountries === 'string') {\n return selectedCountries;\n }\n // NOTE: The value should be an array of strings, however legacy data can come as\n // an array of country objects. So, we always send an array of strings to normalize\n // the data (eg old form values being modified) until DB migration is done !5667\n return selectedCountries.map((option) =>\n typeof option === 'string' ? option : option.name,\n );\n },\n /**\n * Used for react-select, where the country selected is transformed\n * before saving on Formik state. Supports both solo and multi select\n * @param {Object|Object[]} selectedCountry[] - Current selected options\n * @param {String} selectedCountry[].value\n * @param {String} selectedCountry[].name\n * @param {String} selectedCountry[].label\n * @returns {String[]} - List of countries selected\n * @example\n * [{ value: 'Hungria' }] -> ['Hungria']\n */\n transformValue: (selectedCountry: $TSFixMe | $TSFixMe[]) => {\n // name or label are used in dragon. value is used in json-schema-form\n // TODO: it should be the same everywhere — read more at !5667\n const getCountryValue = (opt: $TSFixMe) =>\n opt?.name || opt?.value || opt?.label;\n return Array.isArray(selectedCountry)\n ? selectedCountry.map(getCountryValue) // support multi countries\n : getCountryValue(selectedCountry) || ''; // Fallback to '' in case user removes all countries\n },\n },\n [supportedTypes.NUMBER]: {\n transformValueToAPI: () => (value: string) => {\n // this prevents values with letters such as \"2r\" from being considered valid\n // if the input is invalid, number().cast will return NaN\n const castValue = Number(value);\n\n if (Number.isNaN(castValue)) {\n return value;\n }\n\n return castValue;\n },\n },\n [supportedTypes.MONEY]: {\n transformValueFromAPI: () => (value: string | number) =>\n convertFromCents(value) ?? '',\n transformValueToAPI: () => convertToCents,\n },\n [supportedTypes.RADIO]: {\n transformValueToAPI: (field: $TSFixMe) => (value: string) => {\n if (field.transformToBool) {\n return value === 'yes';\n }\n return value;\n },\n },\n [supportedTypes.CHECKBOX]: {\n transformValueToAPI: (field: $TSFixMe) => (value: string | boolean) => {\n if (value === undefined) {\n return false;\n }\n\n if (field.const && value === true) {\n return field.const;\n }\n return value;\n },\n },\n [supportedTypes.SELECT]: {\n /**\n * Used for react-select, where the value is transformed\n * before saving on Formik state.\n * @param {Object | Object[]} option - Object structure with options config\n * @param {String} option[].value - Key for the API\n * @param {Array} this.options[].label - Friendly label\n * @example\n * [{ value: '1', label: 'One' }, { value: '2', label: 'Two' }] -> [\"One\", \"Two\"]\n * { value: '1', label: 'One' } -> \"One\"\n * {} -> \"\"\n */\n transformValue: (option: $TSFixMe | $TSFixMe[]) =>\n Array.isArray(option)\n ? option.map((opt) => opt.value) // multi-options\n : (option?.value ?? ''), // Fallback to '' in case user removes all options,\n },\n [supportedTypes.FILE]: {\n transformValueToAPI: () => async (files: File[]) => {\n if (!files) {\n return null;\n }\n\n return await convertFilesToBase64(files);\n },\n },\n};\nexport async function parseFormValuesToAPI(\n formValues: Record<string, $TSFixMe> = {},\n fields: $TSFixMe[],\n) {\n const filteredFields = fields.filter(\n (field) =>\n formValues[field.name!] ||\n (field.type === supportedTypes.FIELDSET && field.valueGroupingDisabled),\n );\n\n const parsedFieldsWithValues = await Promise.all(\n filteredFields.map(async (field) => {\n const acc: Record<string, $TSFixMe> = {};\n\n switch (field.type) {\n case supportedTypes.FIELDSET: {\n const fieldset = field;\n if (fieldset.valueGroupingDisabled) {\n const nestedFormValues = extractFieldsetFieldsValues(\n fieldset.fields,\n formValues,\n );\n\n Object.assign(\n acc,\n await parseFormValuesToAPI(nestedFormValues, fieldset.fields),\n );\n } else {\n const fieldsetValue = formValues[field.name!];\n\n // Filter out empty properties from fieldset objects\n // this code avoids sending department: {id: '1234', name: ''} or even department: {id: undefined, name: undefined}\n if (\n fieldsetValue &&\n typeof fieldsetValue === 'object' &&\n !Array.isArray(fieldsetValue)\n ) {\n const cleanedValue = Object.fromEntries(\n Object.entries(fieldsetValue).filter(([, value]) => {\n // Keep the property if it has a meaningful value\n return value !== '' && value !== null && value !== undefined;\n }),\n );\n\n acc[field.name!] =\n Object.keys(cleanedValue).length > 0\n ? await parseFormValuesToAPI(cleanedValue, fieldset.fields)\n : undefined;\n } else {\n acc[field.name!] = await parseFormValuesToAPI(\n fieldsetValue,\n fieldset.fields,\n );\n }\n }\n break;\n }\n\n case supportedTypes.TEXTAREA:\n case supportedTypes.TEXT:\n // Attempt to remove null bytes from form values - https://gitlab.com/remote-com/employ-starbase/tracker/-/issues/10670\n acc[field.name] = formValues[field.name].replace(/\\0/g, '');\n break;\n\n case supportedTypes.GROUP_ARRAY: {\n // NOTE: The field `name` in group arrays represents a path, but we only\n // need the last part of it which is represented by `nameKey`.\n const transformedFields = field\n ?.fields?.()\n .map((subField: $TSFixMe) => ({\n ...subField,\n name: subField.nameKey || '',\n }));\n\n const parsedFieldValues = await Promise.all(\n formValues[field.name]?.map(\n (fieldValues: Record<string, $TSFixMe>) =>\n parseFormValuesToAPI(fieldValues, transformedFields),\n ) || [],\n );\n\n acc[field.name] = parsedFieldValues;\n break;\n }\n\n case supportedTypes.EXTRA: {\n const extraField = field;\n if (extraField.includeValueToApi !== false) {\n const formValue = formValues[extraField.name];\n const fieldTransformValueToAPI =\n extraField?.transformValueToAPI ||\n fieldTypesTransformations[extraField.type]?.transformValueToAPI;\n\n if (fieldTransformValueToAPI) {\n const result = fieldTransformValueToAPI(field)(formValue);\n // Await if it's a promise\n acc[extraField.name] =\n result instanceof Promise ? await result : result;\n break;\n }\n\n acc[extraField.name] = formValue;\n break;\n }\n acc[extraField.name] = undefined;\n break;\n }\n\n default: {\n const formValue = formValues[field.name];\n const fieldTransformValueToAPI =\n field?.transformValueToAPI ||\n fieldTypesTransformations[field.type]?.transformValueToAPI;\n\n if (fieldTransformValueToAPI) {\n const result = fieldTransformValueToAPI(field)(formValue);\n // Await if it's a promise - THIS IS THE KEY FIX\n acc[field.name] = result instanceof Promise ? await result : result;\n break;\n }\n acc[field.name] = formValue;\n break;\n }\n }\n\n if (field.forcedValue !== undefined) {\n acc[field.name!] = field.forcedValue;\n }\n\n return acc;\n }),\n );\n\n // Merge all accumulated objects\n return parsedFieldsWithValues.reduce(\n (acc, current) => ({ ...acc, ...current }),\n { ...formValues },\n );\n}\n\nfunction isFieldVisible(field: $TSFixMe, formValues: Record<string, unknown>) {\n if (field.visibilityCondition) {\n return field.visibilityCondition(formValues);\n }\n\n if (typeof field.isVisible !== 'undefined') {\n return Boolean(field.isVisible);\n }\n\n return true;\n}\n\nfunction applyFieldDynamicProperties(\n field: $TSFixMe,\n values: Record<string, unknown> | Record<string, unknown>[],\n) {\n if (field.calculateDynamicProperties) {\n return {\n ...field,\n ...(field.calculateDynamicProperties(values) || {}),\n };\n }\n\n return field;\n}\n\nfunction excludeValuesInvisible(\n values: $TSFixMe,\n fields: $TSFixMe[],\n keepTruthyInvisibleValues?: boolean,\n parentFieldKeyPath?: string,\n) {\n const valuesAsked: Record<string, $TSFixMe> = {};\n\n fields\n .map((field) => applyFieldDynamicProperties(field, values))\n .forEach((field) => {\n let fieldKeyPath = field.name;\n if (parentFieldKeyPath) {\n fieldKeyPath = fieldKeyPath\n ? `${parentFieldKeyPath}.${field.name}`\n : parentFieldKeyPath;\n }\n\n const valueOfField = getNestedValue(values, fieldKeyPath!);\n\n // keepTruthyInvisibleValues: false/undefined -> remove invisible field\n // keepTruthyInvisibleValues: true -> keep invisible field if it has a value\n if (\n !isFieldVisible(field, values) &&\n !(keepTruthyInvisibleValues && !!valueOfField)\n ) {\n return;\n }\n\n if (field.meta?.ignoreValue) {\n return;\n }\n\n if (field.type === 'fieldset' && field.valueGroupingDisabled) {\n Object.assign(\n valuesAsked,\n excludeValuesInvisible(\n values,\n field.fields,\n keepTruthyInvisibleValues,\n fieldKeyPath,\n ),\n );\n } else if (Array.isArray(field.fields)) {\n valuesAsked[field.name!] = excludeValuesInvisible(\n values,\n field.fields,\n keepTruthyInvisibleValues,\n fieldKeyPath,\n );\n } else {\n if (valueOfField === undefined) {\n return;\n }\n valuesAsked[field.name!] = valueOfField;\n }\n });\n\n return valuesAsked;\n}\n\nfunction removeEmptyValues<T extends Record<string, $TSFixMe>>(\n obj: T,\n): Record<string, $TSFixMe> {\n return Object.fromEntries(\n Object.entries(obj).filter(\n ([, value]) => value !== undefined && value !== null && value !== '',\n ),\n );\n}\n\nfunction cleanUnderscoreFields(\n obj: Record<string, $TSFixMe>,\n): Record<string, $TSFixMe> {\n if (Array.isArray(obj)) {\n return obj.map(cleanUnderscoreFields);\n }\n if (obj && typeof obj === 'object') {\n return Object.entries(obj).reduce(\n (acc, [key, value]) => {\n if (!key.startsWith('_')) {\n acc[key] = cleanUnderscoreFields(value);\n }\n return acc;\n },\n {} as Record<string, $TSFixMe>,\n );\n }\n return obj;\n}\n\nexport async function parseSubmitValues(\n formValues: Record<string, $TSFixMe>,\n fields: $TSFixMe[],\n config?: { keepInvisibleValues?: boolean },\n) {\n const visibleFormValues = config?.keepInvisibleValues\n ? formValues\n : excludeValuesInvisible(formValues, fields);\n const convertedFormValues = await parseFormValuesToAPI(\n visibleFormValues,\n fields,\n );\n const formValuesWithTrimmedStrings = trimStringValues(convertedFormValues);\n\n const formValuesWithUndefined = removeEmptyValues(\n formValuesWithTrimmedStrings,\n );\n\n const valuesWithReadOnly = prefillReadOnlyFields(\n formValuesWithUndefined,\n fields,\n );\n return cleanUnderscoreFields(valuesWithReadOnly);\n}\n\nexport async function parseJSFToValidate(\n formValues: Record<string, $TSFixMe>,\n fields: JSFFields,\n config: { isPartialValidation: boolean } = {\n isPartialValidation: false,\n },\n) {\n const valuesParsed = await parseSubmitValues(formValues, fields, {\n /* We cannot exclude invisible fields (excludeValuesInvisible) because\n they are needed for conditional fields validations */\n keepInvisibleValues: config?.isPartialValidation,\n });\n return valuesParsed;\n}\n\nfunction castFieldTo<T>(field: Field) {\n return field as unknown as T;\n}\n\nfunction getDefaultValueForType(type: string) {\n switch (type) {\n case supportedTypes.FILE:\n return undefined; // Allows fallback values in function declarations to be used\n default:\n return '';\n }\n}\n\nfunction getInitialDefaultValue(\n defaultValues: Record<string, $TSFixMe>,\n field: Field,\n) {\n // getNestedValue is needed because some values could be nested object, like billing address\n // use camelCase to support forms with fields in snake_case or kebab_case.\n const defaultFieldValue = getNestedValue(defaultValues, field.name);\n const fieldTransformValueFromAPI =\n field?.transformValueFromAPI ||\n fieldTypesTransformations[field.type]?.transformValueFromAPI;\n\n if (fieldTransformValueFromAPI) {\n return fieldTransformValueFromAPI(field)(defaultFieldValue);\n }\n\n // TODO: We need to get rid of value as fn for json-schema. Related !5560\n const generatedValue =\n typeof field.value === 'function'\n ? field.value(defaultFieldValue, defaultValues)\n : null;\n\n // field.value is deprecated. should use \"default\" instead.\n const defaultValueDeprecated =\n typeof field.value !== 'function' ? field.value : null;\n const initialValueForCheckboxAsBool =\n castFieldTo<$TSFixMe>(field).checkboxValue === true\n ? defaultFieldValue || false\n : null;\n\n // nullish coalescing but excluding empty strings. (to support 0 (zero) as valid numbers)\n const excludeString = (val: $TSFixMe) => (val === '' ? undefined : val);\n\n return (\n excludeString(generatedValue) ??\n excludeString(defaultFieldValue) ??\n excludeString(defaultValueDeprecated) ??\n excludeString(field.default) ??\n initialValueForCheckboxAsBool ??\n getDefaultValueForType(field.type)\n );\n}\n\n/**\n * Get initial values for sub fields within fieldsets\n * @param {Object} field The form field\n * @param {Object} defaultValues The form default values\n * @param {String=} parentFieldKeyPath The path to the parent field using dot-notation\n * @returns {Object} The initial values for a fieldset\n */\nfunction getInitialSubFieldValues(\n field: $TSFixMe,\n defaultValues: Record<string, unknown>,\n parentFieldKeyPath?: string,\n) {\n const initialValue: Record<string, Record<string, unknown>> = {};\n\n let fieldKeyPath = field.name;\n\n if (parentFieldKeyPath) {\n fieldKeyPath = fieldKeyPath\n ? `${parentFieldKeyPath}.${fieldKeyPath}`\n : parentFieldKeyPath;\n }\n\n const subFields = field.fields;\n\n if (Array.isArray(subFields)) {\n const subFieldValues = {};\n\n subFields.forEach((subField) => {\n Object.assign(\n subFieldValues,\n getInitialSubFieldValues(subField, defaultValues, fieldKeyPath),\n );\n });\n\n if (field.type === supportedTypes.FIELDSET && field.valueGroupingDisabled) {\n Object.assign(initialValue, subFieldValues);\n } else {\n initialValue[field.name!] = subFieldValues;\n }\n } else {\n initialValue[field.name!] = getInitialDefaultValue(defaultValues, {\n ...field,\n // NOTE: To utilize the `get` function from `lodash` in `getInitialDefaultValue` correctly\n // we need to use the field path instead of just its name.\n name: fieldKeyPath,\n });\n }\n\n return initialValue;\n}\n\nexport function getInitialValues(\n fields: JSFFields,\n defaultValues: Record<string, unknown>,\n) {\n const initialValues: Record<string, unknown> = {};\n const defaultFieldValues = defaultValues;\n\n // loop over fields array\n // if prop does not exit in the initialValues object,\n // pluck off the name and value props and add it to the initialValues object;\n fields\n .map((field) => applyFieldDynamicProperties(field, defaultFieldValues))\n .forEach((field) => {\n switch (field.type) {\n case supportedTypes.FIELDSET: {\n if (field.valueGroupingDisabled) {\n Object.assign(\n initialValues,\n getInitialValues(field.fields, defaultFieldValues),\n );\n } else {\n const subFieldValues = getInitialSubFieldValues(\n field,\n defaultFieldValues,\n );\n Object.assign(initialValues, subFieldValues);\n }\n break;\n }\n default: {\n if (!initialValues[field.name]) {\n initialValues[field.name] = getInitialDefaultValue(\n defaultFieldValues,\n field,\n );\n }\n break;\n }\n }\n });\n\n return initialValues;\n}\n\n/**\n * Wraps fields listed in fieldsets with a fieldset field.\n * @param fields - Complete fields list.\n * @param fieldsets - fields list to be wrapped in a fieldset field.\n * @param values - Values for each field.\n * @returns The fields with the fieldsets wrapped.\n */\nexport function getFieldsWithFlatFieldsets({\n fields = [],\n fieldsets = {},\n values,\n}: {\n fields: $TSFixMe[];\n fieldsets: Record<string, { propertiesByName: string[]; title: string }>;\n values: Record<string, unknown>;\n}) {\n const flatFieldsetsKeys = Object.keys(fieldsets);\n\n if (!flatFieldsetsKeys?.length) {\n return fields;\n }\n\n const flatFieldsetsFieldNames = new Set(\n flatFieldsetsKeys.flatMap(\n (flatFieldsetKey) => fieldsets[flatFieldsetKey]?.propertiesByName ?? [],\n ),\n );\n\n const flatFieldsetsWithFields = flatFieldsetsKeys.map((flatFieldsetKey) => {\n const { propertiesByName: flatFieldsetFields = [], ...rest } =\n fieldsets[flatFieldsetKey];\n\n const childFields = flatFieldsetFields\n .map((name) => fields.find((f) => f.name === name))\n .filter((field): field is $TSFixMe => !!field);\n\n return {\n ...rest,\n name: flatFieldsetKey,\n type: 'fieldset-flat',\n inputType: 'fieldset-flat',\n fields: childFields,\n label: fieldsets[flatFieldsetKey].title,\n // Hide the fieldset if none of the children fields are visible.\n isVisible: childFields\n .map((childField) => applyFieldDynamicProperties(childField, values))\n .some((childField) => isFieldVisible(childField, values)),\n };\n });\n\n const sortedFields = flatFieldsetsWithFields.reduce((accumulator, field) => {\n const accumulatedFieldsSorted = [...accumulator];\n\n /**\n * We place the flat fieldset at the original position of its first field.\n * If no field is found, we move it to the end.\n */\n const fieldsetPosition = field.fields[0]\n ? accumulator.findIndex(\n (accumulatorItem) => accumulatorItem.name === field.fields[0].name,\n )\n : accumulator.length;\n\n accumulatedFieldsSorted.splice(\n fieldsetPosition,\n 0,\n field as unknown as $TSFixMe,\n );\n\n return accumulatedFieldsSorted;\n }, fields);\n\n const filteredFields = sortedFields.filter((field) => {\n // Always keep the fieldset wrapper\n if (field.type === 'fieldset-flat') {\n return true;\n }\n return !flatFieldsetsFieldNames.has(field.name!);\n });\n\n return filteredFields;\n}\n\nexport function enableAckFields(\n fields: JSFFields,\n values: Record<string, unknown>,\n) {\n let result = values;\n fields.forEach((field) => {\n if ('const' in field) {\n result = Object.fromEntries(\n Object.entries(values).map(([k, v]) => {\n if (k === field.name) {\n return [k, field.const];\n }\n return [k, v];\n }),\n );\n }\n });\n return result;\n}\n\n/**\n * Get the minimum start date for the onboarding process.\n * @param minOnBoardingTime\n * @returns Date\n */\nexport function getMinStartDate(minOnBoardingTime: number) {\n const today = new Date();\n\n // Make sure our base date is UTC and set the time to 00:00:00\n today.setDate(today.getUTCDate());\n today.setHours(0, 0, 0, 0);\n\n // The + 1 ensures you get the full preparation time before the employee can actually start working.\n // It's the difference between \"preparation completes on this day\" vs \"earliest possible start date after preparation\".\n const minDate = addBusinessDays(today, minOnBoardingTime + 1);\n return isWeekend(minDate) ? nextMonday(minDate) : minDate;\n}\n\n/**\n * Check if a field has a forced value.\n * @param field - The field to check.\n * @returns True if the field has a forced value, false otherwise.\n */\nexport function checkFieldHasForcedValue(field: $TSFixMe) {\n // A field to be considered \"forced value\" must:\n return (\n field.const !== undefined && // Only accepts a specific value\n field.const === field.default && // It can be prefilled, meaning it's not critical\n field.type !== 'checkbox' && // Because checkbox must always be visible\n field.type !== 'hidden' // Because hidden inputs shouldn't be visible\n );\n}\n"],"mappings":"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","names":["toBase64","__name","file","resolve","reject","reader","error","convertFilesToBase64","files","base64","dataURLtoFile","dataURL","filename","arr","mime","bstr","u8arr","char","addBusinessDays","isWeekend","nextMonday","textInputTypes","checkboxTypes","supportedTypes","round","value","__name","convertToValidCost","convertToCents","amount","validAmount","convertFromCents","normalizedValue","trimStringValues","values","result","key","item","prefillReadOnlyFields","fields","newValues","field","fieldName","extractFieldsetFieldsValues","formValues","nestedAcc","subField","fieldTypesTransformations","selectedCountries","option","selectedCountry","getCountryValue","opt","castValue","files","convertFilesToBase64","parseFormValuesToAPI","filteredFields","acc","fieldset","nestedFormValues","fieldsetValue","cleanedValue","transformedFields","parsedFieldValues","fieldValues","extraField","formValue","fieldTransformValueToAPI","current","isFieldVisible","applyFieldDynamicProperties","excludeValuesInvisible","keepTruthyInvisibleValues","parentFieldKeyPath","valuesAsked","fieldKeyPath","valueOfField","getNestedValue","removeEmptyValues","obj","cleanUnderscoreFields","parseSubmitValues","config","visibleFormValues","convertedFormValues","formValuesWithTrimmedStrings","formValuesWithUndefined","valuesWithReadOnly","parseJSFToValidate","getDefaultValueForType","type","supportedTypes","__name","getInitialDefaultValue","defaultValues","field","defaultFieldValue","getNestedValue","fieldTransformValueFromAPI","fieldTypesTransformations","generatedValue","defaultValueDeprecated","initialValueForCheckboxAsBool","excludeString","val","getInitialSubFieldValues","parentFieldKeyPath","initialValue","fieldKeyPath","subFields","subFieldValues","subField","getInitialValues","fields","initialValues","defaultFieldValues","applyFieldDynamicProperties","getFieldsWithFlatFieldsets","fieldsets","values","flatFieldsetsKeys","flatFieldsetsFieldNames","flatFieldsetKey","flatFieldsetFields","rest","childFields","name","f","childField","isFieldVisible","accumulator","accumulatedFieldsSorted","fieldsetPosition","accumulatorItem","enableAckFields","result","k","v","getMinStartDate","minOnBoardingTime","today","minDate","addBusinessDays","isWeekend","nextMonday","checkFieldHasForcedValue"]}
@@ -1,2 +1,2 @@
1
- import{a as i}from"./chunk-AS77PXWM.js";import{b as e}from"./chunk-MRYRNB7Y.js";import{a as m}from"./chunk-P37U34EQ.js";import{jsx as u}from"react/jsx-runtime";function p({onSubmit:n}){let{terminationBag:o}=e(),a=m(async t=>{let r=await o?.parseFormValues(t);await n?.(r),o?.next()},"handleSubmit");return u(i,{defaultValues:o.fieldValues,onSubmit:a})}m(p,"EmployeeCommunicationForm");export{p as a};
2
- //# sourceMappingURL=chunk-SADMJJDB.js.map
1
+ import{a as i}from"./chunk-AXGWQVCT.js";import{b as e}from"./chunk-MRYRNB7Y.js";import{a as m}from"./chunk-P37U34EQ.js";import{jsx as u}from"react/jsx-runtime";function p({onSubmit:n}){let{terminationBag:o}=e(),a=m(async t=>{let r=await o?.parseFormValues(t);await n?.(r),o?.next()},"handleSubmit");return u(i,{defaultValues:o.fieldValues,onSubmit:a})}m(p,"EmployeeCommunicationForm");export{p as a};
2
+ //# sourceMappingURL=chunk-FIM36WNY.js.map
@@ -1,2 +1,2 @@
1
- import{a as r}from"./chunk-VIGKOVHP.js";import{a as e}from"./chunk-P37U34EQ.js";import{cva as i}from"class-variance-authority";import{jsx as d}from"react/jsx-runtime";var o=i("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-badge text-badge-foreground rounded-full [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground rounded-full [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white rounded-full [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40",outline:"text-foreground rounded-full [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"}},defaultVariants:{variant:"default"}});function c({className:t,variant:a,...n}){return d("span",{"data-slot":"badge",className:r(o({variant:a}),t),...n})}e(c,"Badge");export{o as a,c as b};
2
- //# sourceMappingURL=chunk-6JTHV4QS.js.map
1
+ import{c as r}from"./chunk-OSQ6VUDM.js";import{a as e}from"./chunk-P37U34EQ.js";import{cva as i}from"class-variance-authority";import{jsx as d}from"react/jsx-runtime";var o=i("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-badge text-badge-foreground rounded-full [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground rounded-full [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white rounded-full [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40",outline:"text-foreground rounded-full [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"}},defaultVariants:{variant:"default"}});function c({className:t,variant:a,...n}){return d("span",{"data-slot":"badge",className:r(o({variant:a}),t),...n})}e(c,"Badge");export{o as a,c as b};
2
+ //# sourceMappingURL=chunk-FOBUW3RN.js.map
@@ -1,2 +1,2 @@
1
- import{a as l}from"./chunk-VIGKOVHP.js";import{a as d}from"./chunk-P37U34EQ.js";import*as r from"react";import{jsx as o}from"react/jsx-runtime";var i=r.forwardRef(({className:a,...e},t)=>o("div",{className:"relative w-full overflow-auto",children:o("table",{ref:t,className:l("w-full caption-bottom text-sm",a),...e})}));i.displayName="Table";var c=r.forwardRef(({className:a,...e},t)=>o("thead",{ref:t,className:l("[&_tr]:border-b",a),...e}));c.displayName="TableHeader";var n=r.forwardRef(({className:a,...e},t)=>o("tbody",{ref:t,className:l("[&_tr:last-child]:border-0",a),...e}));n.displayName="TableBody";var M=r.forwardRef(({className:a,...e},t)=>o("tfoot",{ref:t,className:l("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",a),...e}));M.displayName="TableFooter";var m=r.forwardRef(({className:a,...e},t)=>o("tr",{ref:t,className:l("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",a),...e}));m.displayName="TableRow";var f=r.forwardRef(({className:a,...e},t)=>o("th",{ref:t,className:l("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...e}));f.displayName="TableHead";var p=r.forwardRef(({className:a,...e},t)=>o("td",{ref:t,className:l("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...e}));p.displayName="TableCell";var L=r.forwardRef(({className:a,...e},t)=>o("caption",{ref:t,className:l("mt-4 text-sm text-muted-foreground",a),...e}));L.displayName="TableCaption";import{jsx as s,jsxs as N}from"react/jsx-runtime";var g=d(({data:a,columns:e,className:t,ref:H})=>N(i,{ref:H,className:l("RemoteFlows__Table",t),children:[s(c,{children:s(m,{children:e.map(b=>s(f,{className:l("RemoteFlows__TableHead",b.className),children:b.label},String(b.id)))})}),s(n,{children:a?.map((b,R)=>s(m,{children:e.map(T=>s(p,{className:l("RemoteFlows__TableCell",T.className,T.cellClassName),children:T.render?T.render(b[T.id],b,R):b[T.id]},String(T.id)))},y(b,R)))})]}),"TableFieldDefault");function y(a,e){return String(a.id??e)}d(y,"getRowKey");export{g as a};
2
- //# sourceMappingURL=chunk-TQXCLXWH.js.map
1
+ import{c as l}from"./chunk-OSQ6VUDM.js";import{a as d}from"./chunk-P37U34EQ.js";import*as r from"react";import{jsx as o}from"react/jsx-runtime";var i=r.forwardRef(({className:a,...e},t)=>o("div",{className:"relative w-full overflow-auto",children:o("table",{ref:t,className:l("w-full caption-bottom text-sm",a),...e})}));i.displayName="Table";var c=r.forwardRef(({className:a,...e},t)=>o("thead",{ref:t,className:l("[&_tr]:border-b",a),...e}));c.displayName="TableHeader";var n=r.forwardRef(({className:a,...e},t)=>o("tbody",{ref:t,className:l("[&_tr:last-child]:border-0",a),...e}));n.displayName="TableBody";var M=r.forwardRef(({className:a,...e},t)=>o("tfoot",{ref:t,className:l("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",a),...e}));M.displayName="TableFooter";var m=r.forwardRef(({className:a,...e},t)=>o("tr",{ref:t,className:l("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",a),...e}));m.displayName="TableRow";var f=r.forwardRef(({className:a,...e},t)=>o("th",{ref:t,className:l("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...e}));f.displayName="TableHead";var p=r.forwardRef(({className:a,...e},t)=>o("td",{ref:t,className:l("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...e}));p.displayName="TableCell";var L=r.forwardRef(({className:a,...e},t)=>o("caption",{ref:t,className:l("mt-4 text-sm text-muted-foreground",a),...e}));L.displayName="TableCaption";import{jsx as s,jsxs as N}from"react/jsx-runtime";var g=d(({data:a,columns:e,className:t,ref:H})=>N(i,{ref:H,className:l("RemoteFlows__Table",t),children:[s(c,{children:s(m,{children:e.map(b=>s(f,{className:l("RemoteFlows__TableHead",b.className),children:b.label},String(b.id)))})}),s(n,{children:a?.map((b,R)=>s(m,{children:e.map(T=>s(p,{className:l("RemoteFlows__TableCell",T.className,T.cellClassName),children:T.render?T.render(b[T.id],b,R):b[T.id]},String(T.id)))},y(b,R)))})]}),"TableFieldDefault");function y(a,e){return String(a.id??e)}d(y,"getRowKey");export{g as a};
2
+ //# sourceMappingURL=chunk-FTC4EFBO.js.map
@@ -1,2 +1,2 @@
1
- import{a as m}from"./chunk-RDYN6W2A.js";import{b as s}from"./chunk-PGWKJ6FK.js";import{b as t}from"./chunk-X6ZAR7ZL.js";import{a}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function b({onSubmit:d,onSuccess:l,onError:n}){let{onboardingBag:r}=s(),f=a(async e=>{try{let i=await r.parseFormValues(e);await d?.(i);let o=await r.onSubmit(e);if(o?.data){await l?.(o?.data),r?.next();return}if(o?.error){let c=t(o?.fieldErrors||[],r.meta?.fields?.basic_information);n?.({error:o?.error,rawError:o?.rawError,fieldErrors:c})}}catch(i){n?.({error:i,rawError:i,fieldErrors:[]})}},"handleSubmit"),p=r.stepState.values?.basic_information||r.initialValues.basic_information;return E(m,{defaultValues:p,onSubmit:f})}a(b,"BasicInformationStep");export{b as a};
2
- //# sourceMappingURL=chunk-NKMO2WW3.js.map
1
+ import{a as m}from"./chunk-JWP4HAIS.js";import{b as s}from"./chunk-PGWKJ6FK.js";import{b as t}from"./chunk-OSQ6VUDM.js";import{a}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function b({onSubmit:d,onSuccess:l,onError:n}){let{onboardingBag:r}=s(),f=a(async e=>{try{let i=await r.parseFormValues(e);await d?.(i);let o=await r.onSubmit(e);if(o?.data){await l?.(o?.data),r?.next();return}if(o?.error){let c=t(o?.fieldErrors||[],r.meta?.fields?.basic_information);n?.({error:o?.error,rawError:o?.rawError,fieldErrors:c})}}catch(i){n?.({error:i,rawError:i,fieldErrors:[]})}},"handleSubmit"),p=r.stepState.values?.basic_information||r.initialValues.basic_information;return E(m,{defaultValues:p,onSubmit:f})}a(b,"BasicInformationStep");export{b as a};
2
+ //# sourceMappingURL=chunk-FZO24P53.js.map
@@ -1,2 +1,2 @@
1
- import{K as e}from"./chunk-H2RAK6F7.js";import{a as t}from"./chunk-P37U34EQ.js";import{queryOptions as i}from"@tanstack/react-query";var a=t((o,n="default")=>i({queryKey:["countries",n],retry:!1,queryFn:t(async()=>{let r=await e({client:o,headers:{Authorization:""}});if(r.error||!r.data)throw new Error("Failed to fetch supported countries");return r},"queryFn")}),"countriesOptions");export{a};
2
- //# sourceMappingURL=chunk-C32W6TCT.js.map
1
+ import{K as e}from"./chunk-R47Q7R6C.js";import{a as t}from"./chunk-P37U34EQ.js";import{queryOptions as i}from"@tanstack/react-query";var a=t((o,n="default")=>i({queryKey:["countries",n],retry:!1,queryFn:t(async()=>{let r=await e({client:o,headers:{Authorization:""}});if(r.error||!r.data)throw new Error("Failed to fetch supported countries");return r},"queryFn")}),"countriesOptions");export{a};
2
+ //# sourceMappingURL=chunk-FZVUO3UU.js.map
@@ -0,0 +1,2 @@
1
+ import{a as g,b as k,c as b}from"./chunk-6SDLOAEO.js";import{a as P}from"./chunk-3VWXALRD.js";import{b as F}from"./chunk-XADVV6OP.js";import{j as D,k as w,l as v,m as x,n as h}from"./chunk-72RFYT5Y.js";import{c as m}from"./chunk-OSQ6VUDM.js";import{a}from"./chunk-P37U34EQ.js";import{CalendarIcon as B}from"lucide-react";import{format as N}from"date-fns";import{ChevronLeft as I,ChevronRight as L}from"lucide-react";import{DayPicker as O}from"react-day-picker";import{jsx as f}from"react/jsx-runtime";function c({className:t,classNames:n,showOutsideDays:i=!0,...o}){return f(O,{showOutsideDays:i,className:m("p-3",t),classNames:{months:"flex flex-col sm:flex-row gap-4",month:"flex flex-col gap-y-4",month_caption:"flex h-8 w-full items-center justify-center relative",caption_label:"font-medium text-sm mt-1",nav:"flex items-center justify-between absolute left-0 right-0 z-10",month_grid:"w-full border-collapse mt-1",weekdays:"flex",weekday:"text-muted-foreground rounded-md w-9 font-normal text-[0.8rem]",week:"flex w-full mt-2",day:"h-9 w-9 text-center text-sm p-0 relative",...n},components:{Chevron:a(({orientation:s,...r})=>s==="left"?f(I,{...r}):f(L,{...r}),"Chevron")},...o})}a(c,"Calendar");c.displayName="Calendar";import{useState as T}from"react";import{Fragment as V,jsx as e,jsxs as d}from"react/jsx-runtime";function Y({field:t,fieldData:n,fieldState:i}){let{name:o,label:s,description:r,minDate:u,maxDate:C}=n,p=u?new Date(u):void 0,_=C?new Date(C):void 0,[R,y]=T(!1);return d(D,{"data-field":o,className:`flex flex-col RemoteFlows__DatePickerField__Item__${o}`,children:[e(w,{className:"RemoteFlows__DatePickerField__Label",children:s}),d(g,{open:R,onOpenChange:y,children:[e(k,{asChild:!0,children:e(v,{children:e("div",{children:d(F,{type:"button",variant:"outline",className:m("w-full pl-3 text-left font-normal",!t.value&&"text-muted-foreground"),"data-testid":`date-picker-button-${o}`,children:[t.value&&e(V,{children:N(t.value,"yyyy-MM-dd")}),e(B,{className:"ml-auto h-4 w-4 opacity-50"})]})})})}),e(b,{className:"w-auto p-0 RemoteFlows__DatepickerField__PopoverContent",align:"start",children:e(c,{mode:"single",className:"RemoteFlows__DatepickerField__Calendar",selected:t.value?new Date(t.value):void 0,onDayClick:l=>{let M=N(l,"yyyy-MM-dd");t.onChange(M),y(!1)},defaultMonth:p,disabled:l=>!!(p&&l<p||_&&l>_)})})]}),r?e(x,{helpCenter:e(P,{helpCenter:n.meta?.helpCenter}),children:r}):null,i.error&&e(h,{className:"RemoteFlows__DatePickerField__Error"})]})}a(Y,"DatePickerFieldDefault");export{Y as a};
2
+ //# sourceMappingURL=chunk-GCPDTL2M.js.map
@@ -0,0 +1 @@
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 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';\nimport { useState } from 'react';\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 const [open, setOpen] = useState(false);\n\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 open={open} onOpenChange={setOpen}>\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 onDayClick={(day) => {\n const formattedDate = format(day, 'yyyy-MM-dd');\n field.onChange(formattedDate);\n setOpen(false);\n }}\n defaultMonth={minDateValue}\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 helpCenter={<HelpCenter helpCenter={fieldData.meta?.helpCenter} />}\n >\n {description}\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';\n\nexport type CalendarProps = React.ComponentProps<typeof DayPicker>;\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n ...props\n}: CalendarProps) {\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn('p-3', className)}\n classNames={{\n months: 'flex flex-col sm:flex-row gap-4',\n month: 'flex flex-col gap-y-4',\n month_caption: 'flex h-8 w-full items-center justify-center relative',\n caption_label: 'font-medium text-sm mt-1',\n nav: 'flex items-center justify-between absolute left-0 right-0 z-10',\n month_grid: 'w-full border-collapse mt-1',\n weekdays: 'flex',\n weekday:\n 'text-muted-foreground rounded-md w-9 font-normal text-[0.8rem]',\n week: 'flex w-full mt-2',\n day: 'h-9 w-9 text-center text-sm p-0 relative',\n ...classNames,\n }}\n components={{\n Chevron: ({ orientation, ...props }) => {\n if (orientation === 'left') {\n return <ChevronLeft {...props} />;\n }\n return <ChevronRight {...props} />;\n },\n }}\n {...props}\n />\n );\n}\nCalendar.displayName = 'Calendar';\n\nexport { Calendar };\n"],"mappings":"qRASA,OAAS,gBAAAA,MAAoB,eAC7B,OAAS,UAAAC,MAAc,WCTvB,OAAS,eAAAC,EAAa,gBAAAC,MAAoB,eAC1C,OAAS,aAAAC,MAAiB,mBAiCP,cAAAC,MAAA,oBA3BnB,SAASC,EAAS,CAChB,UAAAC,EACA,WAAAC,EACA,gBAAAC,EAAkB,GAClB,GAAGC,CACL,EAAkB,CAChB,OACEL,EAACM,EAAA,CACC,gBAAiBF,EACjB,UAAWG,EAAG,MAAOL,CAAS,EAC9B,WAAY,CACV,OAAQ,kCACR,MAAO,wBACP,cAAe,uDACf,cAAe,2BACf,IAAK,iEACL,WAAY,8BACZ,SAAU,OACV,QACE,iEACF,KAAM,mBACN,IAAK,2CACL,GAAGC,CACL,EACA,WAAY,CACV,QAASK,EAAA,CAAC,CAAE,YAAAC,EAAa,GAAGJ,CAAM,IAC5BI,IAAgB,OACXT,EAACU,EAAA,CAAa,GAAGL,EAAO,EAE1BL,EAACW,EAAA,CAAc,GAAGN,EAAO,EAJzB,UAMX,EACC,GAAGA,EACN,CAEJ,CAnCSG,EAAAP,EAAA,YAoCTA,EAAS,YAAc,WDzBvB,OAAS,YAAAW,MAAgB,QAiBnB,OAgB0B,YAAAC,EAhB1B,OAAAC,EAOQ,QAAAC,MAPR,oBAfC,SAASC,EAAuB,CACrC,MAAAC,EACA,UAAAC,EACA,WAAAC,CACF,EAA6B,CAC3B,GAAM,CAAE,KAAAC,EAAM,MAAAC,EAAO,YAAAC,EAAa,QAAAC,EAAS,QAAAC,CAAQ,EAAIN,EACjDO,EAAeF,EAAU,IAAI,KAAKA,CAAO,EAAI,OAC7CG,EAAeF,EAAU,IAAI,KAAKA,CAAO,EAAI,OAC7C,CAACG,EAAMC,CAAO,EAAIC,EAAS,EAAK,EAEtC,OACEd,EAACe,EAAA,CACC,aAAYV,EACZ,UAAW,qDAAqDA,CAAI,GAEpE,UAAAN,EAACiB,EAAA,CAAU,UAAU,sCAClB,SAAAV,EACH,EACAN,EAACiB,EAAA,CAAQ,KAAML,EAAM,aAAcC,EACjC,UAAAd,EAACmB,EAAA,CAAe,QAAO,GACrB,SAAAnB,EAACoB,EAAA,CACC,SAAApB,EAAC,OACC,SAAAC,EAACoB,EAAA,CACC,KAAK,SACL,QAAS,UACT,UAAWC,EACT,oCACA,CAACnB,EAAM,OAAS,uBAClB,EACA,cAAa,sBAAsBG,CAAI,GAEtC,UAAAH,EAAM,OAASH,EAAAD,EAAA,CAAG,SAAAwB,EAAOpB,EAAM,MAAO,YAAY,EAAE,EACrDH,EAACwB,EAAA,CAAa,UAAU,6BAA6B,GACvD,EACF,EACF,EACF,EACAxB,EAACyB,EAAA,CACC,UAAW,0DACX,MAAM,QAEN,SAAAzB,EAAC0B,EAAA,CACC,KAAK,SACL,UAAU,yCACV,SAAUvB,EAAM,MAAQ,IAAI,KAAKA,EAAM,KAAK,EAAI,OAChD,WAAawB,GAAQ,CACnB,IAAMC,EAAgBL,EAAOI,EAAK,YAAY,EAC9CxB,EAAM,SAASyB,CAAa,EAC5Bd,EAAQ,EAAK,CACf,EACA,aAAcH,EACd,SAAWkB,GACL,GAAAlB,GAAgBkB,EAAOlB,GACvBC,GAAgBiB,EAAOjB,GAG/B,EACF,GACF,EACCJ,EACCR,EAAC8B,EAAA,CACC,WAAY9B,EAAC+B,EAAA,CAAW,WAAY3B,EAAU,MAAM,WAAY,EAE/D,SAAAI,EACH,EACE,KACHH,EAAW,OACVL,EAACgC,EAAA,CAAY,UAAU,sCAAsC,GAEjE,CAEJ,CAvEgBC,EAAA/B,EAAA","names":["CalendarIcon","format","ChevronLeft","ChevronRight","DayPicker","jsx","Calendar","className","classNames","showOutsideDays","props","DayPicker","cn","__name","orientation","ChevronLeft","ChevronRight","useState","Fragment","jsx","jsxs","DatePickerFieldDefault","field","fieldData","fieldState","name","label","description","minDate","maxDate","minDateValue","maxDateValue","open","setOpen","useState","FormItem","FormLabel","Popover","PopoverTrigger","FormControl","Button","cn","format","CalendarIcon","PopoverContent","Calendar","day","formattedDate","date","FormDescription","HelpCenter","FormMessage","__name"]}
@@ -1,2 +1,2 @@
1
- import{a as l}from"./chunk-RDYN6W2A.js";import{b as s}from"./chunk-PGWKJ6FK.js";import{b as n}from"./chunk-X6ZAR7ZL.js";import{a as t}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function S({onSubmit:d,onError:a,onSuccess:m}){let{onboardingBag:r}=s(),c=t(async i=>{try{let e=await r.parseFormValues(i);await d?.(e);let o=await r.onSubmit(i);if(o?.data){await m?.(o.data),r?.next();return}if(o?.error){let p=n(o?.fieldErrors||[],r.meta?.fields?.contract_details);a?.({error:o.error,rawError:o.rawError,fieldErrors:p})}}catch(e){a?.({error:e,rawError:e,fieldErrors:[]})}},"handleSubmit");return E(l,{defaultValues:r.stepState.values?.contract_details||r.initialValues.contract_details,onSubmit:c})}t(S,"ContractDetailsStep");export{S as a};
2
- //# sourceMappingURL=chunk-VY6W6W6F.js.map
1
+ import{a as l}from"./chunk-JWP4HAIS.js";import{b as s}from"./chunk-PGWKJ6FK.js";import{b as n}from"./chunk-OSQ6VUDM.js";import{a as t}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function S({onSubmit:d,onError:a,onSuccess:m}){let{onboardingBag:r}=s(),c=t(async i=>{try{let e=await r.parseFormValues(i);await d?.(e);let o=await r.onSubmit(i);if(o?.data){await m?.(o.data),r?.next();return}if(o?.error){let p=n(o?.fieldErrors||[],r.meta?.fields?.contract_details);a?.({error:o.error,rawError:o.rawError,fieldErrors:p})}}catch(e){a?.({error:e,rawError:e,fieldErrors:[]})}},"handleSubmit");return E(l,{defaultValues:r.stepState.values?.contract_details||r.initialValues.contract_details,onSubmit:c})}t(S,"ContractDetailsStep");export{S as a};
2
+ //# sourceMappingURL=chunk-GHYCSTSK.js.map
@@ -1,2 +1,2 @@
1
- import{a as y}from"./chunk-OK2NP3L5.js";import{a as l,b as m}from"./chunk-G5O2CM6V.js";import{c}from"./chunk-CWAFRJAQ.js";import{a as t}from"./chunk-P37U34EQ.js";import{useEffect as N}from"react";import{Fragment as b,jsx as v,jsxs as C}from"react/jsx-runtime";var R=t(({currencies:{from:d,to:F},shouldSwapOrder:s,salary_conversion_properties:a,conversionType:_="no_spread",defaultValue:r,...e})=>{let{setValue:n,getValues:i}=c(),f={label:a?.label||"Salary conversion",description:a?.description||C(b,{children:["The conversion is based on the Remote FX rate."," ",v(m,{className:"text-sm",zendeskId:l.remoteFxRate,children:"Learn more \u2197"})]})},g=s?"salary_conversion":e.name,u=s?e.name:"salary_conversion";return N(()=>{if(s){let o=i(e.name);o?(n("salary_conversion",o),n("salary_converted","salary_conversion")):r&&(n("salary_conversion",r),n("salary_converted","salary_conversion"))}else{let o=i("salary_conversion");o?(n(e.name,o),n("salary_converted",e.name)):r&&(n(e.name,r),n("salary_converted",e.name))}},[s,r,n,i,e.name]),v(y,{...e,sourceCurrency:d,targetCurrency:F,mainFieldName:g,conversionFieldName:u,conversionProperties:f,classNamePrefix:"RemoteFlows-Salary",conversionType:_})},"SalaryField");export{R as a};
2
- //# sourceMappingURL=chunk-SXM3GJ5M.js.map
1
+ import{a as y}from"./chunk-VLVKKSJP.js";import{a as l,b as m}from"./chunk-AMSYQQG7.js";import{c}from"./chunk-72RFYT5Y.js";import{a as t}from"./chunk-P37U34EQ.js";import{useEffect as N}from"react";import{Fragment as b,jsx as v,jsxs as C}from"react/jsx-runtime";var R=t(({currencies:{from:d,to:F},shouldSwapOrder:s,salary_conversion_properties:a,conversionType:_="no_spread",defaultValue:r,...e})=>{let{setValue:n,getValues:i}=c(),f={label:a?.label||"Salary conversion",description:a?.description||C(b,{children:["The conversion is based on the Remote FX rate."," ",v(m,{className:"text-sm",zendeskId:l.remoteFxRate,children:"Learn more \u2197"})]})},g=s?"salary_conversion":e.name,u=s?e.name:"salary_conversion";return N(()=>{if(s){let o=i(e.name);o?(n("salary_conversion",o),n("salary_converted","salary_conversion")):r&&(n("salary_conversion",r),n("salary_converted","salary_conversion"))}else{let o=i("salary_conversion");o?(n(e.name,o),n("salary_converted",e.name)):r&&(n(e.name,r),n("salary_converted",e.name))}},[s,r,n,i,e.name]),v(y,{...e,sourceCurrency:d,targetCurrency:F,mainFieldName:g,conversionFieldName:u,conversionProperties:f,classNamePrefix:"RemoteFlows-Salary",conversionType:_})},"SalaryField");export{R as a};
2
+ //# sourceMappingURL=chunk-HMVU7HJL.js.map
@@ -1,2 +1,2 @@
1
- import{b as f}from"./chunk-76ZDXC2T.js";import{b as p}from"./chunk-LNV36S6D.js";import{a as c}from"./chunk-BI4RFXFL.js";import{f as a,h as d}from"./chunk-CWAFRJAQ.js";import{a as t}from"./chunk-P37U34EQ.js";import{useEffect as y,useRef as b}from"react";import{jsx as l}from"react/jsx-runtime";import{createElement as g}from"react";function B({defaultValues:s,onSubmit:u,components:F}){let{formId:C,createCompanyBag:o}=f(),m=b(s),h=p(o.handleValidation),r=a({resolver:h,defaultValues:s,shouldUnregister:!1,mode:"onBlur"});y(()=>{let n=r?.watch(e=>{Object.keys(e).some(i=>e[i]!==m.current[i])&&(o?.checkFieldUpdates(e),m.current={...e})});return()=>n?.unsubscribe()},[]);let S=t(async n=>{await u(n)},"handleSubmit");return g(d,{...r,key:`form-${o.stepState.currentStep.name}`},l("form",{id:C,onSubmit:r.handleSubmit(S),className:"space-y-4 RemoteFlows__OnboardingForm",children:l(c,{components:F,fields:o.fields,fieldsets:o.meta.fieldsets,fieldValues:o.fieldValues})}))}t(B,"CreateCompanyForm");export{B as a};
2
- //# sourceMappingURL=chunk-QLYFMDLB.js.map
1
+ import{b as f}from"./chunk-76ZDXC2T.js";import{b as p}from"./chunk-KFYWUBRS.js";import{a as c}from"./chunk-4EDPYN5F.js";import{f as a,h as d}from"./chunk-72RFYT5Y.js";import{a as t}from"./chunk-P37U34EQ.js";import{useEffect as y,useRef as b}from"react";import{jsx as l}from"react/jsx-runtime";import{createElement as g}from"react";function B({defaultValues:s,onSubmit:u,components:F}){let{formId:C,createCompanyBag:o}=f(),m=b(s),h=p(o.handleValidation),r=a({resolver:h,defaultValues:s,shouldUnregister:!1,mode:"onBlur"});y(()=>{let n=r?.watch(e=>{Object.keys(e).some(i=>e[i]!==m.current[i])&&(o?.checkFieldUpdates(e),m.current={...e})});return()=>n?.unsubscribe()},[]);let S=t(async n=>{await u(n)},"handleSubmit");return g(d,{...r,key:`form-${o.stepState.currentStep.name}`},l("form",{id:C,onSubmit:r.handleSubmit(S),className:"space-y-4 RemoteFlows__OnboardingForm",children:l(c,{components:F,fields:o.fields,fieldsets:o.meta.fieldsets,fieldValues:o.fieldValues})}))}t(B,"CreateCompanyForm");export{B as a};
2
+ //# sourceMappingURL=chunk-I2DXGO23.js.map
@@ -1,2 +1,2 @@
1
- import{a as m}from"./chunk-KRJETP7I.js";import{a}from"./chunk-6QEF52IP.js";import{a as i}from"./chunk-W7YC2IO2.js";import{a as c}from"./chunk-FHYOWPXB.js";import{a as S}from"./chunk-YIMWF5GR.js";import{a as f}from"./chunk-KKMW7Q42.js";import{a as n}from"./chunk-NKMO2WW3.js";import{a as p}from"./chunk-7SO6WCYM.js";import{a as s}from"./chunk-VY6W6W6F.js";import{c as e}from"./chunk-HDH5PEOK.js";import{a as r}from"./chunk-PGWKJ6FK.js";import{a as t}from"./chunk-P37U34EQ.js";import{useId as D,useState as P}from"react";import{jsx as R}from"react/jsx-runtime";var L=t(({employmentId:d,companyId:u,countryCode:b,type:l="employee",externalId:v,skipSteps:g,initialValues:B,render:I,options:O})=>{let w=D(),o=e({companyId:u,countryCode:b,employmentId:d,type:l,options:O,skipSteps:g,externalId:v,initialValues:B}),[C,h]=P({showReserveInvoice:!1,showInviteSuccessful:!1});return R(r.Provider,{value:{formId:w,onboardingBag:o,creditScore:C,setCreditScore:h},children:I({onboardingBag:o,components:{BasicInformationStep:n,ContractDetailsStep:s,BenefitsStep:p,SubmitButton:i,SaveDraftButton:S,BackButton:m,OnboardingInvite:a,SelectCountryStep:f,ReviewStep:c}})})},"OnboardingFlow");export{L as a};
2
- //# sourceMappingURL=chunk-K4YQQMHD.js.map
1
+ import{a as m}from"./chunk-KRJETP7I.js";import{a}from"./chunk-5EHJ5HTV.js";import{a as i}from"./chunk-W7YC2IO2.js";import{a as c}from"./chunk-FHYOWPXB.js";import{a as S}from"./chunk-YIMWF5GR.js";import{a as f}from"./chunk-DEVQ2NNK.js";import{a as n}from"./chunk-FZO24P53.js";import{a as p}from"./chunk-IY3ASS7L.js";import{a as s}from"./chunk-GHYCSTSK.js";import{c as e}from"./chunk-TIJRONPS.js";import{a as r}from"./chunk-PGWKJ6FK.js";import{a as t}from"./chunk-P37U34EQ.js";import{useId as D,useState as P}from"react";import{jsx as R}from"react/jsx-runtime";var L=t(({employmentId:d,companyId:u,countryCode:b,type:l="employee",externalId:v,skipSteps:g,initialValues:B,render:I,options:O})=>{let w=D(),o=e({companyId:u,countryCode:b,employmentId:d,type:l,options:O,skipSteps:g,externalId:v,initialValues:B}),[C,h]=P({showReserveInvoice:!1,showInviteSuccessful:!1});return R(r.Provider,{value:{formId:w,onboardingBag:o,creditScore:C,setCreditScore:h},children:I({onboardingBag:o,components:{BasicInformationStep:n,ContractDetailsStep:s,BenefitsStep:p,SubmitButton:i,SaveDraftButton:S,BackButton:m,OnboardingInvite:a,SelectCountryStep:f,ReviewStep:c}})})},"OnboardingFlow");export{L as a};
2
+ //# sourceMappingURL=chunk-IK27ZFUU.js.map
@@ -1,2 +1,2 @@
1
- import{a as d,b as S,c as p,d as u,e as g,f as b}from"./chunk-DXIJUMLU.js";import{j as c,k as i,l as n,m as _,n as F}from"./chunk-CWAFRJAQ.js";import{a as s}from"./chunk-P37U34EQ.js";import{jsx as e,jsxs as v}from"react/jsx-runtime";function R({field:t,fieldState:a,fieldData:C}){let{name:r,label:o,description:m,options:N}=C;return v(c,{"data-field":r,className:`RemoteFlows__SelectField__Item__${r}`,children:[e(i,{className:"RemoteFlows__SelectField__Label",children:o}),e(n,{children:e("div",{className:"relative",children:v(d,{value:t.value||"",onValueChange:l=>{t.onChange(l)},children:[e(u,{className:"RemoteFlows__SelectField__Trigger","aria-invalid":!!a.error,"aria-label":o,children:e("span",{className:"absolute",children:e(p,{placeholder:o})})}),e(g,{className:"RemoteFlows__SelectField__Content",children:e(S,{className:"RemoteFlows__SelectField__Group",children:N?.map(l=>e(b,{value:l.value,className:"RemoteFlows__SelectField__SelectItem",disabled:l.disabled,children:l.label},l.value))})})]})})}),m&&e(_,{children:m}),a.error&&e(F,{})]})}s(R,"SelectFieldDefault");export{R as a};
2
- //# sourceMappingURL=chunk-CKVI2UDU.js.map
1
+ import{a as d,b as S,c as p,d as u,e as g,f as b}from"./chunk-LBJAKZ6V.js";import{j as c,k as i,l as n,m as _,n as F}from"./chunk-72RFYT5Y.js";import{a as s}from"./chunk-P37U34EQ.js";import{jsx as e,jsxs as v}from"react/jsx-runtime";function R({field:t,fieldState:a,fieldData:C}){let{name:r,label:o,description:m,options:N}=C;return v(c,{"data-field":r,className:`RemoteFlows__SelectField__Item__${r}`,children:[e(i,{className:"RemoteFlows__SelectField__Label",children:o}),e(n,{children:e("div",{className:"relative",children:v(d,{value:t.value||"",onValueChange:l=>{t.onChange(l)},children:[e(u,{className:"RemoteFlows__SelectField__Trigger","aria-invalid":!!a.error,"aria-label":o,children:e("span",{className:"absolute",children:e(p,{placeholder:o})})}),e(g,{className:"RemoteFlows__SelectField__Content",children:e(S,{className:"RemoteFlows__SelectField__Group",children:N?.map(l=>e(b,{value:l.value,className:"RemoteFlows__SelectField__SelectItem",disabled:l.disabled,children:l.label},l.value))})})]})})}),m&&e(_,{children:m}),a.error&&e(F,{})]})}s(R,"SelectFieldDefault");export{R as a};
2
+ //# sourceMappingURL=chunk-INV4YWPR.js.map
@@ -1,2 +1,2 @@
1
- import{a as m}from"./chunk-RDYN6W2A.js";import{b as a}from"./chunk-PGWKJ6FK.js";import{f as t}from"./chunk-D5AO6SOM.js";import{b as s}from"./chunk-X6ZAR7ZL.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function P({components:d,onSubmit:l,onError:i,onSuccess:f}){let{onboardingBag:o}=a(),p=o.fields??[],c=t(p,o.initialValues.benefits);return E(m,{defaultValues:c,components:d,onSubmit:e(async n=>{try{await l?.(n);let r=await o.onSubmit(n);if(r?.data){await f?.(r.data),o?.next();return}if(r?.error){let u=s(r?.fieldErrors||[],o.meta?.fields?.benefits);i?.({error:r.error,rawError:r.rawError,fieldErrors:u})}}catch(r){i?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit")})}e(P,"BenefitsStep");export{P as a};
2
- //# sourceMappingURL=chunk-7SO6WCYM.js.map
1
+ import{a as m}from"./chunk-JWP4HAIS.js";import{b as a}from"./chunk-PGWKJ6FK.js";import{f as t}from"./chunk-FFVTWWGX.js";import{b as s}from"./chunk-OSQ6VUDM.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function P({components:d,onSubmit:l,onError:i,onSuccess:f}){let{onboardingBag:o}=a(),p=o.fields??[],c=t(p,o.initialValues.benefits);return E(m,{defaultValues:c,components:d,onSubmit:e(async n=>{try{await l?.(n);let r=await o.onSubmit(n);if(r?.data){await f?.(r.data),o?.next();return}if(r?.error){let u=s(r?.fieldErrors||[],o.meta?.fields?.benefits);i?.({error:r.error,rawError:r.rawError,fieldErrors:u})}}catch(r){i?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit")})}e(P,"BenefitsStep");export{P as a};
2
+ //# sourceMappingURL=chunk-IY3ASS7L.js.map
@@ -1,2 +1,2 @@
1
- import{a as _}from"./chunk-5WIBTOCI.js";import{a as C}from"./chunk-C32W6TCT.js";import{a as l}from"./chunk-NAF6LRSS.js";import{A as y,R as f,Z as h,y as p}from"./chunk-H2RAK6F7.js";import{d as c}from"./chunk-KQPDXXG3.js";import{a as n}from"./chunk-P37U34EQ.js";import{useMutation as F}from"@tanstack/react-query";import{useQuery as u}from"@tanstack/react-query";var b=n(e=>{let{client:t}=c();return u({...e,queryKey:["company-currencies"],retry:!1,queryFn:n(async()=>{let r=await f({client:t});if(r.error||!r.data)throw new Error("Failed to fetch company currencies");return r},"queryFn"),select:n(({data:r})=>r?.data?.company_currencies.map(a=>({value:a.code,label:a.code}))||[],"select")})},"useCompanyCurrencies"),A=n(()=>{let{client:e}=c();return F({mutationFn:n(t=>h({client:e,headers:{Authorization:""},body:t,query:{action:"send_create_password_email"}}),"mutationFn")})},"useCreateCompanyRequest"),I=n(()=>{let{client:e}=c();return F({mutationFn:n(({companyId:t,payload:r,jsonSchemaVersion:a})=>p({client:e,headers:{Authorization:""},path:{company_id:t},body:r,query:{address_details_json_schema_version:a}}),"mutationFn")})},"useUpdateCompanyRequest"),P=n(e=>{let{client:t}=c(),{data:r,isLoading:a}=u({...C(t,"create-company-countries"),select:n(i=>i.data?.data?.filter(s=>s.eor_onboarding).map(s=>({label:s.name,value:s.code}))||[],"select"),enabled:e?.queryOptions?.enabled}),{data:o,isLoading:m}=b(e?.queryOptions),d=l(_.data.schema,{},e);if(r){let i=d.fields.find(s=>s.name==="country_code");i&&(i.options=r)}if(o){let i=d.fields.find(s=>s.name==="desired_currency");i&&(i.options=o)}return{isLoading:a||m,companyBasicInformationForm:d}},"useCountriesSchemaField"),U=n(({countryCode:e,fieldValues:t,options:r})=>{let{client:a}=c();return u({queryKey:["company-address-details-schema",e],retry:!1,queryFn:n(async()=>{if(!e)throw new Error("Country code is required");let o=await y({client:a,headers:{Authorization:""},path:{country_code:e,form:"address_details"},query:{json_schema_version:r?.jsonSchemaVersion?.form_schema?.address_details||"latest"}});if(o.error||!o.data)throw new Error("Failed to fetch address details schema");return o},"queryFn"),enabled:r?.queryOptions?.enabled&&!!e,select:n(({data:o})=>{let m=o?.data||{};return l(m,t,r)},"select")})},"useAddressDetailsSchema");export{A as a,I as b,P as c,U as d};
2
- //# sourceMappingURL=chunk-JF3KLAB5.js.map
1
+ import{a as _}from"./chunk-5WIBTOCI.js";import{a as C}from"./chunk-FZVUO3UU.js";import{a as l}from"./chunk-JMDINYDB.js";import{A as y,R as f,Z as h,y as p}from"./chunk-R47Q7R6C.js";import{d as c}from"./chunk-KQPDXXG3.js";import{a as n}from"./chunk-P37U34EQ.js";import{useMutation as F}from"@tanstack/react-query";import{useQuery as u}from"@tanstack/react-query";var b=n(e=>{let{client:t}=c();return u({...e,queryKey:["company-currencies"],retry:!1,queryFn:n(async()=>{let r=await f({client:t});if(r.error||!r.data)throw new Error("Failed to fetch company currencies");return r},"queryFn"),select:n(({data:r})=>r?.data?.company_currencies.map(a=>({value:a.code,label:a.code}))||[],"select")})},"useCompanyCurrencies"),A=n(()=>{let{client:e}=c();return F({mutationFn:n(t=>h({client:e,headers:{Authorization:""},body:t,query:{action:"send_create_password_email"}}),"mutationFn")})},"useCreateCompanyRequest"),I=n(()=>{let{client:e}=c();return F({mutationFn:n(({companyId:t,payload:r,jsonSchemaVersion:a})=>p({client:e,headers:{Authorization:""},path:{company_id:t},body:r,query:{address_details_json_schema_version:a}}),"mutationFn")})},"useUpdateCompanyRequest"),P=n(e=>{let{client:t}=c(),{data:r,isLoading:a}=u({...C(t,"create-company-countries"),select:n(i=>i.data?.data?.filter(s=>s.eor_onboarding).map(s=>({label:s.name,value:s.code}))||[],"select"),enabled:e?.queryOptions?.enabled}),{data:o,isLoading:m}=b(e?.queryOptions),d=l(_.data.schema,{},e);if(r){let i=d.fields.find(s=>s.name==="country_code");i&&(i.options=r)}if(o){let i=d.fields.find(s=>s.name==="desired_currency");i&&(i.options=o)}return{isLoading:a||m,companyBasicInformationForm:d}},"useCountriesSchemaField"),U=n(({countryCode:e,fieldValues:t,options:r})=>{let{client:a}=c();return u({queryKey:["company-address-details-schema",e],retry:!1,queryFn:n(async()=>{if(!e)throw new Error("Country code is required");let o=await y({client:a,headers:{Authorization:""},path:{country_code:e,form:"address_details"},query:{json_schema_version:r?.jsonSchemaVersion?.form_schema?.address_details||"latest"}});if(o.error||!o.data)throw new Error("Failed to fetch address details schema");return o},"queryFn"),enabled:r?.queryOptions?.enabled&&!!e,select:n(({data:o})=>{let m=o?.data||{};return l(m,t,r)},"select")})},"useAddressDetailsSchema");export{A as a,I as b,P as c,U as d};
2
+ //# sourceMappingURL=chunk-JFD2OJ6L.js.map
@@ -1,2 +1,2 @@
1
- import{c as m}from"./chunk-D5AO6SOM.js";import{b as f}from"./chunk-Z5WMKCRJ.js";import{a as n}from"./chunk-P37U34EQ.js";import{createHeadlessForm as a,modify as u}from"@remoteoss/remote-json-schema-form-kit";var c=n((e,o,t)=>{if(t&&t.jsfModify){let{required:i,allOf:r,...s}=t.jsfModify,{schema:l}=u(e,s);e=l,i&&(e.required=[...l.required,...i]),r&&(e.allOf=[...l.allOf||[],...r])}let d={};o&&(d=f(e.properties||{},"money").reduce((r,s)=>(r[s]=m(o[s]),r),{}));let F=JSON.parse(JSON.stringify({...o,...d}));return{meta:{"x-jsf-fieldsets":e["x-jsf-fieldsets"]},...a(e,{initialValues:F})}},"createHeadlessForm");export{c as a};
2
- //# sourceMappingURL=chunk-NAF6LRSS.js.map
1
+ import{c as m}from"./chunk-FFVTWWGX.js";import{b as f}from"./chunk-626FTNKA.js";import{a as n}from"./chunk-P37U34EQ.js";import{createHeadlessForm as a,modify as u}from"@remoteoss/remote-json-schema-form-kit";var c=n((e,o,t)=>{if(t&&t.jsfModify){let{required:i,allOf:r,...s}=t.jsfModify,{schema:l}=u(e,s);e=l,i&&(e.required=[...l.required,...i]),r&&(e.allOf=[...l.allOf||[],...r])}let d={};o&&(d=f(e.properties||{},"money").reduce((r,s)=>(r[s]=m(o[s]),r),{}));let F=JSON.parse(JSON.stringify({...o,...d}));return{meta:{"x-jsf-fieldsets":e["x-jsf-fieldsets"]},...a(e,{initialValues:F})}},"createHeadlessForm");export{c as a};
2
+ //# sourceMappingURL=chunk-JMDINYDB.js.map