@remoteoss/remote-flows 1.49.1 → 1.51.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 (679) hide show
  1. package/README.md +1 -0
  2. package/dist/CheckboxFieldDefault-23VE43PP.js +2 -0
  3. package/dist/CountryFieldDefault-FVAAL55P.js +2 -0
  4. package/dist/DatePickerFieldDefault-KXEMGK5B.js +2 -0
  5. package/dist/EmailFieldDefault-OFHDLOOT.js +2 -0
  6. package/dist/FileUploadFieldDefault-GX22C22E.js +2 -0
  7. package/dist/ForcedValueFieldDefault-ESITCZWK.js +2 -0
  8. package/dist/MultiSelectFieldDefault-DAUBH5JV.js +2 -0
  9. package/dist/NumberFieldDefault-MXZD7YVE.js +2 -0
  10. package/dist/PDFPreviewDefault-T6YPWXGY.js +2 -0
  11. package/dist/RadioGroupFieldDefault-QFUUJGSR.js +2 -0
  12. package/dist/SelectFieldDefault-3QTJE222.js +2 -0
  13. package/dist/TelFieldDefault-5U5X37LI.js +2 -0
  14. package/dist/TextAreaFieldDefault-JX2MVJVY.js +2 -0
  15. package/dist/TextFieldDefault-WCUD6XYS.js +2 -0
  16. package/dist/TimeFieldDefault-UNF7PKLT.js +2 -0
  17. package/dist/WorkScheduleFieldDefault-2A2RCDXV.js +2 -0
  18. package/dist/{chunk-C2HZNBMZ.js → chunk-235XZBTZ.js} +2 -2
  19. package/dist/chunk-2EXX7BNU.js +2 -0
  20. package/dist/{chunk-PUK2TIQX.js.map → chunk-2EXX7BNU.js.map} +1 -1
  21. package/dist/chunk-2KA6NZOQ.js +2 -0
  22. package/dist/chunk-2KA6NZOQ.js.map +1 -0
  23. package/dist/chunk-2L6AB46E.js +2 -0
  24. package/dist/{chunk-A7U3KJIP.js.map → chunk-2L6AB46E.js.map} +1 -1
  25. package/dist/{chunk-IRUWMZVH.js → chunk-2SD75ZFL.js} +2 -2
  26. package/dist/{chunk-3RQSRU7O.js → chunk-335N2CVQ.js} +2 -2
  27. package/dist/chunk-36DZMQHH.js +2 -0
  28. package/dist/chunk-36DZMQHH.js.map +1 -0
  29. package/dist/{chunk-5MH23AST.js → chunk-3BDWVNHX.js} +2 -2
  30. package/dist/chunk-3CGFAN3F.js +2 -0
  31. package/dist/{chunk-C5T75DEZ.js.map → chunk-3CGFAN3F.js.map} +1 -1
  32. package/dist/{chunk-BYTVIOOL.js → chunk-3DOSHTJS.js} +2 -2
  33. package/dist/{chunk-3VTHNE4H.js → chunk-3HMBTPH7.js} +2 -2
  34. package/dist/{chunk-6S5Q2OKC.js → chunk-3NC2JJM3.js} +2 -2
  35. package/dist/{chunk-5TOSVOLY.js → chunk-3OHORFIX.js} +2 -2
  36. package/dist/{chunk-FT4ZNBTA.js → chunk-3WRO57UF.js} +2 -2
  37. package/dist/{chunk-VYAJQ25J.js → chunk-4AQMMGXK.js} +2 -2
  38. package/dist/{chunk-JLM4O7ZW.js → chunk-4BFGSBOK.js} +2 -2
  39. package/dist/{chunk-R2D32OB6.js → chunk-57QHHIWL.js} +2 -2
  40. package/dist/{chunk-UU2IFOXR.js → chunk-57Y5XQ3D.js} +2 -2
  41. package/dist/{chunk-3LMZ3SOP.js → chunk-5DPOL3DT.js} +2 -2
  42. package/dist/{chunk-7XDU2VWN.js → chunk-5FST4WDH.js} +2 -2
  43. package/dist/chunk-5NN5RWBG.js +2 -0
  44. package/dist/chunk-5NN5RWBG.js.map +1 -0
  45. package/dist/{chunk-ANZ2YYUE.js → chunk-6OLV37C2.js} +2 -2
  46. package/dist/{chunk-RKP7EEAB.js → chunk-6UCTTR3O.js} +2 -2
  47. package/dist/{chunk-CHIWBD6E.js → chunk-6X4SQPQF.js} +2 -2
  48. package/dist/{chunk-F3DZUA7W.js → chunk-72EMS5WI.js} +2 -2
  49. package/dist/chunk-72ZOHLOK.js +2 -0
  50. package/dist/chunk-72ZOHLOK.js.map +1 -0
  51. package/dist/chunk-74ZX4KQG.js +2 -0
  52. package/dist/chunk-74ZX4KQG.js.map +1 -0
  53. package/dist/{chunk-JKHJR6HK.js → chunk-753FEV2S.js} +2 -2
  54. package/dist/{chunk-JKHJR6HK.js.map → chunk-753FEV2S.js.map} +1 -1
  55. package/dist/{chunk-3BQVEYHE.js → chunk-77LDJPXF.js} +2 -2
  56. package/dist/chunk-7UVH4WE2.js +2 -0
  57. package/dist/chunk-7UVH4WE2.js.map +1 -0
  58. package/dist/{chunk-BWM2MYPE.js → chunk-7Y4NHODP.js} +2 -2
  59. package/dist/{chunk-F3UUYQGY.js → chunk-AAHPOX44.js} +2 -2
  60. package/dist/{chunk-GBVBMT3H.js → chunk-ADL2ZH54.js} +2 -2
  61. package/dist/{chunk-UZFEJMO6.js → chunk-AFTFDGSD.js} +2 -2
  62. package/dist/chunk-ANPNVWCB.js +2 -0
  63. package/dist/{chunk-TC7EQZJK.js → chunk-AOE6FXVP.js} +2 -2
  64. package/dist/{chunk-TC7EQZJK.js.map → chunk-AOE6FXVP.js.map} +1 -1
  65. package/dist/{chunk-ORP6DY5I.js → chunk-APSKAXM2.js} +2 -2
  66. package/dist/chunk-AXZ4IDY7.js +2 -0
  67. package/dist/chunk-AXZ4IDY7.js.map +1 -0
  68. package/dist/chunk-BHHK7QQZ.js +2 -0
  69. package/dist/chunk-BHHK7QQZ.js.map +1 -0
  70. package/dist/chunk-BQGTMOIQ.js +2 -0
  71. package/dist/{chunk-PYNHR7NL.js.map → chunk-BQGTMOIQ.js.map} +1 -1
  72. package/dist/chunk-BQVCM5DQ.js +2 -0
  73. package/dist/chunk-BQVCM5DQ.js.map +1 -0
  74. package/dist/{chunk-TLJXBZII.js → chunk-BYD4TSDD.js} +2 -2
  75. package/dist/{chunk-F2SGCGXL.js → chunk-C3MUUZC6.js} +2 -2
  76. package/dist/chunk-C7KVPEVX.js +2 -0
  77. package/dist/chunk-C7KVPEVX.js.map +1 -0
  78. package/dist/{chunk-D737GUYZ.js → chunk-CWKXQZRT.js} +2 -2
  79. package/dist/chunk-D7F3QKN5.js +2 -0
  80. package/dist/chunk-D7F3QKN5.js.map +1 -0
  81. package/dist/{chunk-VNMUML3T.js → chunk-DAUDKN32.js} +5 -5
  82. package/dist/chunk-DAUDKN32.js.map +1 -0
  83. package/dist/{chunk-QHJ3BYJN.js → chunk-DIPYFRXX.js} +2 -2
  84. package/dist/chunk-DSJXT5ZP.js +2 -0
  85. package/dist/chunk-DSJXT5ZP.js.map +1 -0
  86. package/dist/{chunk-WGDZTF7Y.js → chunk-E7Y3YBZH.js} +2 -2
  87. package/dist/chunk-EOV3JMUQ.js +2 -0
  88. package/dist/chunk-EOV3JMUQ.js.map +1 -0
  89. package/dist/chunk-EP3BNRH3.js +2 -0
  90. package/dist/chunk-EP3BNRH3.js.map +1 -0
  91. package/dist/{chunk-BTZ57COZ.js → chunk-EQOOVJ7K.js} +2 -2
  92. package/dist/{chunk-IAR6BWUY.js → chunk-ESXBCNJM.js} +2 -2
  93. package/dist/chunk-EUQLCVA5.js +2 -0
  94. package/dist/chunk-EUQLCVA5.js.map +1 -0
  95. package/dist/chunk-F37FQXEZ.js +2 -0
  96. package/dist/chunk-F37FQXEZ.js.map +1 -0
  97. package/dist/{chunk-ZQVVHVAG.js → chunk-FF5OB2GF.js} +2 -2
  98. package/dist/{chunk-WYIU74JN.js → chunk-FFRROEPQ.js} +2 -2
  99. package/dist/chunk-FYCOEJEZ.js +2 -0
  100. package/dist/chunk-FYCOEJEZ.js.map +1 -0
  101. package/dist/{chunk-UAEQLFPK.js → chunk-G3BWBRCE.js} +2 -2
  102. package/dist/{chunk-LCUYP6VW.js → chunk-GGTV6IQ3.js} +2 -2
  103. package/dist/chunk-GGVW6SG6.js +2 -0
  104. package/dist/chunk-GGVW6SG6.js.map +1 -0
  105. package/dist/{chunk-6IDUDCVS.js → chunk-GIBD2ZCJ.js} +2 -2
  106. package/dist/{chunk-LCUURLXS.js → chunk-GNVGW65D.js} +2 -2
  107. package/dist/{chunk-QSF4XFSV.js → chunk-GRLZH65T.js} +2 -2
  108. package/dist/chunk-GSUGHAHA.js +2 -0
  109. package/dist/{chunk-4BHEQMZV.js.map → chunk-GSUGHAHA.js.map} +1 -1
  110. package/dist/{chunk-WDPJIOLG.js → chunk-H4NJGAN4.js} +2 -2
  111. package/dist/chunk-H6XROFQT.js +2 -0
  112. package/dist/chunk-H6XROFQT.js.map +1 -0
  113. package/dist/{chunk-EYZVDP6A.js → chunk-HRVJCCWJ.js} +2 -2
  114. package/dist/{chunk-2LSLWFZS.js → chunk-I53YCEOC.js} +2 -2
  115. package/dist/{chunk-SUVBETJS.js → chunk-I5NW7AQZ.js} +2 -2
  116. package/dist/{chunk-PJTMFMRJ.js → chunk-I65OXH33.js} +2 -2
  117. package/dist/chunk-IBQVGZMF.js +2 -0
  118. package/dist/{chunk-XFD3ULUF.js.map → chunk-IBQVGZMF.js.map} +1 -1
  119. package/dist/{chunk-WHDUZGVW.js → chunk-IJS67A57.js} +2 -2
  120. package/dist/{chunk-B3ESNTKY.js → chunk-ILPI4AFS.js} +2 -2
  121. package/dist/chunk-J244N33S.js +2 -0
  122. package/dist/chunk-J244N33S.js.map +1 -0
  123. package/dist/chunk-JKNE2D47.js +2 -0
  124. package/dist/{chunk-XTLTKB3S.js.map → chunk-JKNE2D47.js.map} +1 -1
  125. package/dist/{chunk-7NDAFJXR.js → chunk-JUSQGITN.js} +2 -2
  126. package/dist/{chunk-GMSYO53D.js → chunk-KD7UBTZG.js} +2 -2
  127. package/dist/chunk-KF52YXGI.js +2 -0
  128. package/dist/chunk-KF52YXGI.js.map +1 -0
  129. package/dist/{chunk-SNGQ2MKL.js → chunk-KFIUXU6I.js} +2 -2
  130. package/dist/chunk-KJRHRVFI.js +2 -0
  131. package/dist/chunk-KJRHRVFI.js.map +1 -0
  132. package/dist/chunk-KSSQR2CS.js +2 -0
  133. package/dist/chunk-KSSQR2CS.js.map +1 -0
  134. package/dist/{chunk-YUUUI4FY.js → chunk-L7FN3XPX.js} +2 -2
  135. package/dist/{chunk-4Y2INBAI.js → chunk-LJ32QPJF.js} +2 -2
  136. package/dist/chunk-LXABE3VR.js +2 -0
  137. package/dist/chunk-LXABE3VR.js.map +1 -0
  138. package/dist/chunk-LY5PCHQ2.js +2 -0
  139. package/dist/{chunk-B4O5YUYL.js.map → chunk-LY5PCHQ2.js.map} +1 -1
  140. package/dist/{chunk-5FGYC2RF.js → chunk-M7PZAJTR.js} +2 -2
  141. package/dist/{chunk-KZ5ZQTBF.js → chunk-NVOUXFGX.js} +2 -2
  142. package/dist/chunk-OEKL7QGO.js +2 -0
  143. package/dist/{chunk-V3C32X6R.js.map → chunk-OEKL7QGO.js.map} +1 -1
  144. package/dist/{chunk-5FJ64F6D.js → chunk-OFFUVHQJ.js} +2 -2
  145. package/dist/chunk-OHVXJXF4.js +1 -0
  146. package/dist/chunk-OHVXJXF4.js.map +1 -0
  147. package/dist/{chunk-WZOVZYNI.js → chunk-OJ4TXF6G.js} +2 -2
  148. package/dist/{chunk-5WTCN4WO.js → chunk-OT5JE2SM.js} +2 -2
  149. package/dist/{chunk-6L77BWCI.js → chunk-P3TTGECC.js} +2 -2
  150. package/dist/{chunk-2LR5N626.js → chunk-PAYZRCKY.js} +2 -2
  151. package/dist/{chunk-CFPKRLGM.js → chunk-PJAHLEOR.js} +2 -2
  152. package/dist/{chunk-Z7VNXKWB.js → chunk-PKORRCMX.js} +2 -2
  153. package/dist/chunk-QATHYZUV.js +2 -0
  154. package/dist/chunk-QATHYZUV.js.map +1 -0
  155. package/dist/chunk-QIV5OKOI.js +2 -0
  156. package/dist/chunk-QIV5OKOI.js.map +1 -0
  157. package/dist/{chunk-QEHEOSJT.js → chunk-QUJBIRNY.js} +2 -2
  158. package/dist/{chunk-POWC7LZN.js → chunk-R23HFBV4.js} +2 -2
  159. package/dist/{chunk-3LELUHRO.js → chunk-R2XDTYPZ.js} +2 -2
  160. package/dist/chunk-R4E37FVX.js +2 -0
  161. package/dist/chunk-R4E37FVX.js.map +1 -0
  162. package/dist/{chunk-FDTOQHOJ.js → chunk-R6VNUDBK.js} +2 -2
  163. package/dist/{chunk-WB52GW3H.js → chunk-ROVMQ5NT.js} +2 -2
  164. package/dist/{chunk-6IQJJCQ3.js → chunk-SDPYDCS7.js} +2 -2
  165. package/dist/chunk-SRLBVFNQ.js +2 -0
  166. package/dist/chunk-SRLBVFNQ.js.map +1 -0
  167. package/dist/{chunk-5WIBTOCI.js → chunk-SRNXXOUH.js} +2 -2
  168. package/dist/{chunk-5WIBTOCI.js.map → chunk-SRNXXOUH.js.map} +1 -1
  169. package/dist/{chunk-JRRPMAUO.js → chunk-SUGZPBET.js} +2 -2
  170. package/dist/{chunk-ZXGAFQXW.js → chunk-SYZIGZ2F.js} +2 -2
  171. package/dist/{chunk-ZXGAFQXW.js.map → chunk-SYZIGZ2F.js.map} +1 -1
  172. package/dist/chunk-TDKKCSKV.js +2 -0
  173. package/dist/{chunk-7IIQUZTH.js.map → chunk-TDKKCSKV.js.map} +1 -1
  174. package/dist/{chunk-J4CHUIPC.js → chunk-UNBTPLJ6.js} +2 -2
  175. package/dist/{chunk-TXOCMI5I.js → chunk-URNFXEOZ.js} +2 -2
  176. package/dist/{chunk-WH3QR2W5.js → chunk-UWIUECXU.js} +2 -2
  177. package/dist/{chunk-BFXBFGBH.js → chunk-UYOKK4QW.js} +2 -2
  178. package/dist/{chunk-BFXBFGBH.js.map → chunk-UYOKK4QW.js.map} +1 -1
  179. package/dist/{chunk-IJCTN52C.js → chunk-VDJJEIOD.js} +2 -2
  180. package/dist/{chunk-IJCTN52C.js.map → chunk-VDJJEIOD.js.map} +1 -1
  181. package/dist/{chunk-LMYJ6V44.js → chunk-VEQWK7QQ.js} +2 -2
  182. package/dist/{chunk-LMYJ6V44.js.map → chunk-VEQWK7QQ.js.map} +1 -1
  183. package/dist/chunk-VKORYYED.js +2 -0
  184. package/dist/{chunk-DLIVHNTT.js.map → chunk-VKORYYED.js.map} +1 -1
  185. package/dist/chunk-VSK4KV55.js +2 -0
  186. package/dist/chunk-VSK4KV55.js.map +1 -0
  187. package/dist/{chunk-PNNOU6BC.js → chunk-WHY2WNWH.js} +2 -2
  188. package/dist/{chunk-YRC6EEM3.js → chunk-WNOQNNRR.js} +2 -2
  189. package/dist/{chunk-YRC6EEM3.js.map → chunk-WNOQNNRR.js.map} +1 -1
  190. package/dist/{chunk-IUBHVGVV.js → chunk-WU66SHVJ.js} +2 -2
  191. package/dist/{chunk-MZK2U65W.js → chunk-XLHTMWJ3.js} +2 -2
  192. package/dist/{chunk-5J7DLDLW.js → chunk-XPLWBO73.js} +2 -2
  193. package/dist/{chunk-OTBCLDGR.js → chunk-XS5NKKW4.js} +2 -2
  194. package/dist/chunk-XTZJKL3C.js +2 -0
  195. package/dist/chunk-XTZJKL3C.js.map +1 -0
  196. package/dist/chunk-XWCE5BU6.js +2 -0
  197. package/dist/{chunk-4YFJOHSM.js.map → chunk-XWCE5BU6.js.map} +1 -1
  198. package/dist/{chunk-A5XRBDDO.js → chunk-XXBQQH47.js} +2 -2
  199. package/dist/{chunk-AP56UUME.js → chunk-Y2NCUO3F.js} +2 -2
  200. package/dist/{chunk-AP56UUME.js.map → chunk-Y2NCUO3F.js.map} +1 -1
  201. package/dist/{chunk-JQ3SLOUP.js → chunk-Y6FOZXIU.js} +2 -2
  202. package/dist/{chunk-K67Q5476.js → chunk-YANQP45B.js} +2 -2
  203. package/dist/{chunk-NX7MM6XR.js → chunk-YE6NRJ2L.js} +2 -2
  204. package/dist/{chunk-NX7MM6XR.js.map → chunk-YE6NRJ2L.js.map} +1 -1
  205. package/dist/{chunk-JMFCG5KA.js → chunk-YWLAZIIO.js} +2 -2
  206. package/dist/{chunk-S2QXSX4Q.js → chunk-YYIAA47F.js} +2 -2
  207. package/dist/{chunk-2GTY2DMO.js → chunk-ZHFGV2GB.js} +2 -2
  208. package/dist/{chunk-2GTY2DMO.js.map → chunk-ZHFGV2GB.js.map} +1 -1
  209. package/dist/{chunk-EQIWABAZ.js → chunk-ZJ55AKB6.js} +2 -2
  210. package/dist/{chunk-ILX6RI7K.js → chunk-ZRD3M74X.js} +2 -2
  211. package/dist/{chunk-H5OZSXSY.js → chunk-ZULOHKU6.js} +2 -2
  212. package/dist/default-components.d.ts +2 -2
  213. package/dist/default-components.js +1 -1
  214. package/dist/default-components.js.map +1 -1
  215. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.d.ts +1 -1
  216. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.js +1 -1
  217. package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +3 -3
  218. package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
  219. package/dist/flows/ContractAmendment/ContractAmendmentForm.d.ts +1 -1
  220. package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
  221. package/dist/flows/ContractAmendment/context.d.ts +4 -4
  222. package/dist/flows/ContractAmendment/hooks.d.ts +3 -3
  223. package/dist/flows/ContractAmendment/hooks.js +1 -1
  224. package/dist/flows/ContractAmendment/index.d.ts +3 -3
  225. package/dist/flows/ContractAmendment/index.js +1 -1
  226. package/dist/flows/ContractAmendment/types.d.ts +3 -3
  227. package/dist/flows/ContractAmendment/utils.d.ts +2 -2
  228. package/dist/flows/ContractorOnboarding/ContractorOnboarding.d.ts +8 -5
  229. package/dist/flows/ContractorOnboarding/ContractorOnboarding.js +1 -1
  230. package/dist/flows/ContractorOnboarding/api.d.ts +180 -123
  231. package/dist/flows/ContractorOnboarding/api.js +1 -1
  232. package/dist/flows/ContractorOnboarding/components/BasicInformationStep.d.ts +4 -4
  233. package/dist/flows/ContractorOnboarding/components/BasicInformationStep.js +1 -1
  234. package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.d.ts +8 -5
  235. package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.js +1 -1
  236. package/dist/flows/ContractorOnboarding/components/ContractOriginStep.d.ts +3 -3
  237. package/dist/flows/ContractorOnboarding/components/ContractOriginStep.js +1 -1
  238. package/dist/flows/ContractorOnboarding/components/ContractPreviewHeader.d.ts +2 -2
  239. package/dist/flows/ContractorOnboarding/components/ContractPreviewStatement.d.ts +2 -2
  240. package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.d.ts +8 -5
  241. package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.js +1 -1
  242. package/dist/flows/ContractorOnboarding/components/ContractReviewButton.js +1 -1
  243. package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.d.ts +8 -5
  244. package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.js +1 -1
  245. package/dist/flows/ContractorOnboarding/components/CreateInvoiceScheduleStep.d.ts +3 -3
  246. package/dist/flows/ContractorOnboarding/components/CreateInvoiceScheduleStep.js +1 -1
  247. package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.d.ts +8 -5
  248. package/dist/flows/ContractorOnboarding/components/EligibilityQuestionnaireStep.js +1 -1
  249. package/dist/flows/ContractorOnboarding/components/InvoiceScheduleStep.d.ts +8 -5
  250. package/dist/flows/ContractorOnboarding/components/InvoiceScheduleStep.js +1 -1
  251. package/dist/flows/ContractorOnboarding/components/OnboardingInvite.d.ts +3 -3
  252. package/dist/flows/ContractorOnboarding/components/OnboardingInvite.js +1 -1
  253. package/dist/flows/ContractorOnboarding/components/PreviewInvoiceButton.d.ts +31 -0
  254. package/dist/flows/ContractorOnboarding/components/PreviewInvoiceButton.js +2 -0
  255. package/dist/flows/ContractorOnboarding/components/PreviewInvoiceButton.js.map +1 -0
  256. package/dist/flows/ContractorOnboarding/components/PricingPlan.d.ts +8 -5
  257. package/dist/flows/ContractorOnboarding/components/PricingPlan.js +1 -1
  258. package/dist/flows/ContractorOnboarding/components/SaveDraftButton.d.ts +3 -3
  259. package/dist/flows/ContractorOnboarding/components/SelectCountryStep.d.ts +4 -4
  260. package/dist/flows/ContractorOnboarding/components/SelectCountryStep.js +1 -1
  261. package/dist/flows/ContractorOnboarding/components/SkipInvoiceScheduleButton.d.ts +24 -0
  262. package/dist/flows/ContractorOnboarding/components/SkipInvoiceScheduleButton.js +2 -0
  263. package/dist/flows/ContractorOnboarding/components/SkipInvoiceScheduleButton.js.map +1 -0
  264. package/dist/flows/ContractorOnboarding/context.d.ts +16 -5
  265. package/dist/flows/ContractorOnboarding/hooks.d.ts +8 -5
  266. package/dist/flows/ContractorOnboarding/hooks.js +1 -1
  267. package/dist/flows/ContractorOnboarding/index.d.ts +8 -5
  268. package/dist/flows/ContractorOnboarding/index.js +1 -1
  269. package/dist/flows/ContractorOnboarding/invoiceScheduleConstants.d.ts +1 -0
  270. package/dist/flows/ContractorOnboarding/invoiceScheduleConstants.js +1 -1
  271. package/dist/flows/ContractorOnboarding/jsfModify.d.ts +8 -5
  272. package/dist/flows/ContractorOnboarding/jsfModify.js +1 -1
  273. package/dist/flows/ContractorOnboarding/json-schemas/contractOrigin.d.ts +3 -0
  274. package/dist/flows/ContractorOnboarding/json-schemas/contractOrigin.js +1 -1
  275. package/dist/flows/ContractorOnboarding/json-schemas/createInvoiceSchedule.d.ts +80 -6
  276. package/dist/flows/ContractorOnboarding/json-schemas/createInvoiceSchedule.js +1 -1
  277. package/dist/flows/ContractorOnboarding/json-schemas/invoiceSchedule.d.ts +3 -0
  278. package/dist/flows/ContractorOnboarding/json-schemas/invoiceSchedule.js +1 -1
  279. package/dist/flows/ContractorOnboarding/json-schemas/selectContractorSubscriptionStep.d.ts +3 -0
  280. package/dist/flows/ContractorOnboarding/json-schemas/selectContractorSubscriptionStep.js +1 -1
  281. package/dist/flows/ContractorOnboarding/json-schemas/signature.d.ts +3 -0
  282. package/dist/flows/ContractorOnboarding/json-schemas/signature.js +1 -1
  283. package/dist/flows/ContractorOnboarding/types.d.ts +8 -5
  284. package/dist/flows/ContractorOnboarding/utils.d.ts +31 -21
  285. package/dist/flows/ContractorOnboarding/utils.js +1 -1
  286. package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +3 -3
  287. package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
  288. package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +3 -3
  289. package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
  290. package/dist/flows/CostCalculator/EstimationResults/EstimationResults.d.ts +3 -3
  291. package/dist/flows/CostCalculator/EstimationResults/EstimationResults.js +1 -1
  292. package/dist/flows/CostCalculator/SummaryResults/SummaryResults.d.ts +3 -3
  293. package/dist/flows/CostCalculator/api.d.ts +3 -3
  294. package/dist/flows/CostCalculator/api.js +1 -1
  295. package/dist/flows/CostCalculator/components/SalaryField.d.ts +2 -2
  296. package/dist/flows/CostCalculator/components/SalaryField.js +1 -1
  297. package/dist/flows/CostCalculator/context.d.ts +3 -3
  298. package/dist/flows/CostCalculator/hooks.d.ts +3 -3
  299. package/dist/flows/CostCalculator/hooks.js +1 -1
  300. package/dist/flows/CostCalculator/index.d.ts +3 -3
  301. package/dist/flows/CostCalculator/index.js +1 -1
  302. package/dist/flows/CostCalculator/jsonSchema.d.ts +3 -0
  303. package/dist/flows/CostCalculator/jsonSchema.js +1 -1
  304. package/dist/flows/CostCalculator/types.d.ts +3 -3
  305. package/dist/flows/CostCalculator/utils.d.ts +3 -3
  306. package/dist/flows/CostCalculator/utils.js +1 -1
  307. package/dist/flows/CreateCompany/CreateCompany.d.ts +4 -4
  308. package/dist/flows/CreateCompany/CreateCompany.js +1 -1
  309. package/dist/flows/CreateCompany/api.d.ts +3 -3
  310. package/dist/flows/CreateCompany/api.js +1 -1
  311. package/dist/flows/CreateCompany/components/AddressDetailsStep.d.ts +4 -4
  312. package/dist/flows/CreateCompany/components/AddressDetailsStep.js +1 -1
  313. package/dist/flows/CreateCompany/components/CompanyBasicInformationStep.d.ts +4 -4
  314. package/dist/flows/CreateCompany/components/CompanyBasicInformationStep.js +1 -1
  315. package/dist/flows/CreateCompany/components/CreateCompanyForm.d.ts +2 -2
  316. package/dist/flows/CreateCompany/components/CreateCompanyForm.js +1 -1
  317. package/dist/flows/CreateCompany/context.d.ts +4 -4
  318. package/dist/flows/CreateCompany/hooks.d.ts +4 -4
  319. package/dist/flows/CreateCompany/hooks.js +1 -1
  320. package/dist/flows/CreateCompany/index.d.ts +4 -4
  321. package/dist/flows/CreateCompany/index.js +1 -1
  322. package/dist/flows/CreateCompany/json-schemas/companyBasicInformationStep.d.ts +3 -0
  323. package/dist/flows/CreateCompany/json-schemas/companyBasicInformationStep.js +1 -1
  324. package/dist/flows/CreateCompany/types.d.ts +4 -4
  325. package/dist/flows/InvoiceSchedule/InvoiceScheduleFlow.d.ts +36 -0
  326. package/dist/flows/InvoiceSchedule/InvoiceScheduleFlow.js +2 -0
  327. package/dist/flows/InvoiceSchedule/InvoiceScheduleFlow.js.map +1 -0
  328. package/dist/flows/InvoiceSchedule/InvoiceScheduleForm.d.ts +31 -0
  329. package/dist/flows/InvoiceSchedule/InvoiceScheduleForm.js +2 -0
  330. package/dist/flows/InvoiceSchedule/InvoiceScheduleForm.js.map +1 -0
  331. package/dist/flows/InvoiceSchedule/InvoiceSchedulePreviewButton.d.ts +33 -0
  332. package/dist/flows/InvoiceSchedule/InvoiceSchedulePreviewButton.js +2 -0
  333. package/dist/flows/InvoiceSchedule/InvoiceSchedulePreviewButton.js.map +1 -0
  334. package/dist/flows/InvoiceSchedule/InvoiceScheduleSubmitButton.d.ts +6 -0
  335. package/dist/flows/InvoiceSchedule/InvoiceScheduleSubmitButton.js +2 -0
  336. package/dist/flows/InvoiceSchedule/InvoiceScheduleSubmitButton.js.map +1 -0
  337. package/dist/flows/InvoiceSchedule/context.d.ts +51 -0
  338. package/dist/flows/InvoiceSchedule/context.js +2 -0
  339. package/dist/flows/InvoiceSchedule/context.js.map +1 -0
  340. package/dist/flows/InvoiceSchedule/hooks.d.ts +100 -0
  341. package/dist/flows/InvoiceSchedule/hooks.js +2 -0
  342. package/dist/flows/InvoiceSchedule/hooks.js.map +1 -0
  343. package/dist/flows/InvoiceSchedule/index.d.ts +16 -0
  344. package/dist/flows/InvoiceSchedule/index.js +2 -0
  345. package/dist/flows/InvoiceSchedule/index.js.map +1 -0
  346. package/dist/flows/InvoiceSchedule/types.d.ts +51 -0
  347. package/dist/flows/InvoiceSchedule/types.js +1 -0
  348. package/dist/flows/InvoiceSchedule/types.js.map +1 -0
  349. package/dist/flows/JsonSchemaPlayground/JsonSchemaPlaygroundFlow.d.ts +3 -3
  350. package/dist/flows/JsonSchemaPlayground/JsonSchemaPlaygroundFlow.js +1 -1
  351. package/dist/flows/JsonSchemaPlayground/JsonSchemaPlaygroundForm.d.ts +3 -3
  352. package/dist/flows/JsonSchemaPlayground/JsonSchemaPlaygroundForm.js +1 -1
  353. package/dist/flows/JsonSchemaPlayground/context.d.ts +3 -3
  354. package/dist/flows/JsonSchemaPlayground/hooks.d.ts +3 -3
  355. package/dist/flows/JsonSchemaPlayground/hooks.js +1 -1
  356. package/dist/flows/JsonSchemaPlayground/index.d.ts +3 -3
  357. package/dist/flows/JsonSchemaPlayground/index.js +1 -1
  358. package/dist/flows/JsonSchemaPlayground/types.d.ts +3 -3
  359. package/dist/flows/Onboarding/OnboardingFlow.d.ts +4 -4
  360. package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
  361. package/dist/flows/Onboarding/api.d.ts +4 -4
  362. package/dist/flows/Onboarding/api.js +1 -1
  363. package/dist/flows/Onboarding/components/AnnualGrossSalary.d.ts +2 -2
  364. package/dist/flows/Onboarding/components/AnnualGrossSalary.js +1 -1
  365. package/dist/flows/Onboarding/components/BasicInformationStep.d.ts +4 -4
  366. package/dist/flows/Onboarding/components/BasicInformationStep.js +1 -1
  367. package/dist/flows/Onboarding/components/BenefitsStep.d.ts +4 -4
  368. package/dist/flows/Onboarding/components/BenefitsStep.js +1 -1
  369. package/dist/flows/Onboarding/components/ContractDetailsStep.d.ts +4 -4
  370. package/dist/flows/Onboarding/components/ContractDetailsStep.js +1 -1
  371. package/dist/flows/Onboarding/components/DailySchedule/DailySchedule.d.ts +11 -0
  372. package/dist/flows/Onboarding/components/DailySchedule/DailySchedule.js +2 -0
  373. package/dist/flows/Onboarding/components/DailySchedule/DailySchedule.js.map +1 -0
  374. package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleContainer.d.ts +16 -0
  375. package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleContainer.js +2 -0
  376. package/dist/flows/Onboarding/components/DailySchedule/DailyScheduleContainer.js.map +1 -0
  377. package/dist/flows/Onboarding/components/DailySchedule/types.d.ts +68 -0
  378. package/dist/flows/Onboarding/components/DailySchedule/types.js +1 -0
  379. package/dist/flows/Onboarding/components/DailySchedule/types.js.map +1 -0
  380. package/dist/flows/Onboarding/components/DailySchedule/utils.d.ts +21 -0
  381. package/dist/flows/Onboarding/components/DailySchedule/utils.js +2 -0
  382. package/dist/flows/Onboarding/components/DailySchedule/utils.js.map +1 -0
  383. package/dist/flows/Onboarding/components/EmploymentAgreementInfoContent.js +1 -1
  384. package/dist/flows/Onboarding/components/EngagementAgreementDetailsStep.d.ts +4 -4
  385. package/dist/flows/Onboarding/components/EngagementAgreementDetailsStep.js +1 -1
  386. package/dist/flows/Onboarding/components/OnboardingForm.d.ts +4 -4
  387. package/dist/flows/Onboarding/components/OnboardingForm.js +1 -1
  388. package/dist/flows/Onboarding/components/OnboardingInvite.d.ts +3 -3
  389. package/dist/flows/Onboarding/components/OnboardingInvite.js +1 -1
  390. package/dist/flows/Onboarding/components/PreOnboardingRequirements.d.ts +4 -4
  391. package/dist/flows/Onboarding/components/PreOnboardingRequirements.js +1 -1
  392. package/dist/flows/Onboarding/components/PreviewEmploymentAgreementStep.js +1 -1
  393. package/dist/flows/Onboarding/components/ReviewStep.d.ts +4 -4
  394. package/dist/flows/Onboarding/components/SaveDraftButton.d.ts +3 -3
  395. package/dist/flows/Onboarding/components/SelectCountryStep.d.ts +4 -4
  396. package/dist/flows/Onboarding/components/SelectCountryStep.js +1 -1
  397. package/dist/flows/Onboarding/context.d.ts +6 -6
  398. package/dist/flows/Onboarding/hooks.d.ts +4 -4
  399. package/dist/flows/Onboarding/hooks.js +1 -1
  400. package/dist/flows/Onboarding/index.d.ts +4 -4
  401. package/dist/flows/Onboarding/index.js +1 -1
  402. package/dist/flows/Onboarding/json-schemas/selectCountryStep.d.ts +3 -0
  403. package/dist/flows/Onboarding/json-schemas/selectCountryStep.js +1 -1
  404. package/dist/flows/Onboarding/types.d.ts +4 -4
  405. package/dist/flows/Onboarding/utils.d.ts +4 -4
  406. package/dist/flows/PayrollAdminOnboarding/PayrollAdminOnboardingFlow.d.ts +4 -4
  407. package/dist/flows/PayrollAdminOnboarding/PayrollAdminOnboardingFlow.js +1 -1
  408. package/dist/flows/PayrollAdminOnboarding/api.d.ts +2 -2
  409. package/dist/flows/PayrollAdminOnboarding/api.js +1 -1
  410. package/dist/flows/PayrollAdminOnboarding/components/AdministrativeDetailsStep.d.ts +3 -3
  411. package/dist/flows/PayrollAdminOnboarding/components/AdministrativeDetailsStep.js +1 -1
  412. package/dist/flows/PayrollAdminOnboarding/components/ContractDetailsStep.d.ts +3 -3
  413. package/dist/flows/PayrollAdminOnboarding/components/ContractDetailsStep.js +1 -1
  414. package/dist/flows/PayrollAdminOnboarding/components/InvitationStep.d.ts +3 -3
  415. package/dist/flows/PayrollAdminOnboarding/components/InvitationStep.js +1 -1
  416. package/dist/flows/PayrollAdminOnboarding/components/PayrollAdminForm.d.ts +2 -2
  417. package/dist/flows/PayrollAdminOnboarding/components/PayrollAdminForm.js +1 -1
  418. package/dist/flows/PayrollAdminOnboarding/components/SelectCountryStep.d.ts +3 -3
  419. package/dist/flows/PayrollAdminOnboarding/components/SelectCountryStep.js +1 -1
  420. package/dist/flows/PayrollAdminOnboarding/components/useStepSubmitHandler.d.ts +3 -3
  421. package/dist/flows/PayrollAdminOnboarding/context.d.ts +4 -4
  422. package/dist/flows/PayrollAdminOnboarding/hooks.d.ts +5 -5
  423. package/dist/flows/PayrollAdminOnboarding/hooks.js +1 -1
  424. package/dist/flows/PayrollAdminOnboarding/index.d.ts +4 -4
  425. package/dist/flows/PayrollAdminOnboarding/index.js +1 -1
  426. package/dist/flows/PayrollAdminOnboarding/json-schemas/selectCountryStep.d.ts +3 -0
  427. package/dist/flows/PayrollAdminOnboarding/json-schemas/selectCountryStep.js +1 -1
  428. package/dist/flows/PayrollAdminOnboarding/types.d.ts +4 -4
  429. package/dist/flows/PayrollEmployeeOnboarding/PayrollEmployeeOnboardingFlow.d.ts +4 -4
  430. package/dist/flows/PayrollEmployeeOnboarding/PayrollEmployeeOnboardingFlow.js +1 -1
  431. package/dist/flows/PayrollEmployeeOnboarding/api.d.ts +3 -3
  432. package/dist/flows/PayrollEmployeeOnboarding/api.js +1 -1
  433. package/dist/flows/PayrollEmployeeOnboarding/components/BankAccountStep.d.ts +3 -3
  434. package/dist/flows/PayrollEmployeeOnboarding/components/BankAccountStep.js +1 -1
  435. package/dist/flows/PayrollEmployeeOnboarding/components/FederalTaxesStep.d.ts +3 -3
  436. package/dist/flows/PayrollEmployeeOnboarding/components/FederalTaxesStep.js +1 -1
  437. package/dist/flows/PayrollEmployeeOnboarding/components/HomeAddressStep.d.ts +3 -3
  438. package/dist/flows/PayrollEmployeeOnboarding/components/HomeAddressStep.js +1 -1
  439. package/dist/flows/PayrollEmployeeOnboarding/components/PayrollEmployeeForm.d.ts +2 -2
  440. package/dist/flows/PayrollEmployeeOnboarding/components/PayrollEmployeeForm.js +1 -1
  441. package/dist/flows/PayrollEmployeeOnboarding/components/PersonalDetailsStep.d.ts +3 -3
  442. package/dist/flows/PayrollEmployeeOnboarding/components/PersonalDetailsStep.js +1 -1
  443. package/dist/flows/PayrollEmployeeOnboarding/components/StateTaxesStep.d.ts +3 -3
  444. package/dist/flows/PayrollEmployeeOnboarding/components/StateTaxesStep.js +1 -1
  445. package/dist/flows/PayrollEmployeeOnboarding/components/useEmployeeStepSubmitHandler.d.ts +3 -3
  446. package/dist/flows/PayrollEmployeeOnboarding/context.d.ts +4 -4
  447. package/dist/flows/PayrollEmployeeOnboarding/hooks.d.ts +5 -5
  448. package/dist/flows/PayrollEmployeeOnboarding/hooks.js +1 -1
  449. package/dist/flows/PayrollEmployeeOnboarding/index.d.ts +4 -4
  450. package/dist/flows/PayrollEmployeeOnboarding/index.js +1 -1
  451. package/dist/flows/PayrollEmployeeOnboarding/types.d.ts +4 -4
  452. package/dist/flows/Termination/AdditionalDetailsForm.d.ts +4 -4
  453. package/dist/flows/Termination/AdditionalDetailsForm.js +1 -1
  454. package/dist/flows/Termination/EmployeeComunicationForm.d.ts +4 -4
  455. package/dist/flows/Termination/EmployeeComunicationForm.js +1 -1
  456. package/dist/flows/Termination/PaidTimeOffForm.d.ts +4 -4
  457. package/dist/flows/Termination/PaidTimeOffForm.js +1 -1
  458. package/dist/flows/Termination/TerminationDetailsForm.d.ts +4 -4
  459. package/dist/flows/Termination/TerminationDetailsForm.js +1 -1
  460. package/dist/flows/Termination/TerminationFlow.d.ts +4 -4
  461. package/dist/flows/Termination/TerminationFlow.js +1 -1
  462. package/dist/flows/Termination/TerminationForm.d.ts +4 -4
  463. package/dist/flows/Termination/TerminationForm.js +1 -1
  464. package/dist/flows/Termination/api.d.ts +5 -5
  465. package/dist/flows/Termination/api.js +1 -1
  466. package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInformationFees.js +1 -1
  467. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOff.d.ts +6 -6
  468. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.d.ts +6 -6
  469. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.js +1 -1
  470. package/dist/flows/Termination/components/PaidTimeOff/types.d.ts +6 -6
  471. package/dist/flows/Termination/components/TerminationDialogInfoContent/TerminationDialogInfoContent.js +1 -1
  472. package/dist/flows/Termination/context.d.ts +4 -4
  473. package/dist/flows/Termination/hooks.d.ts +4 -4
  474. package/dist/flows/Termination/hooks.js +1 -1
  475. package/dist/flows/Termination/index.d.ts +6 -6
  476. package/dist/flows/Termination/index.js +1 -1
  477. package/dist/flows/Termination/json-schemas/additionalInformation.d.ts +3 -0
  478. package/dist/flows/Termination/json-schemas/additionalInformation.js +1 -1
  479. package/dist/flows/Termination/json-schemas/defaultSchema.d.ts +3 -0
  480. package/dist/flows/Termination/json-schemas/defaultSchema.js +1 -1
  481. package/dist/flows/Termination/json-schemas/employeeComunication.d.ts +3 -0
  482. package/dist/flows/Termination/json-schemas/employeeComunication.js +1 -1
  483. package/dist/flows/Termination/json-schemas/jsonSchema.d.ts +3 -0
  484. package/dist/flows/Termination/json-schemas/jsonSchema.js +1 -1
  485. package/dist/flows/Termination/json-schemas/paidTimeOff.d.ts +3 -0
  486. package/dist/flows/Termination/json-schemas/paidTimeOff.js +1 -1
  487. package/dist/flows/Termination/json-schemas/schema.d.ts +4 -4
  488. package/dist/flows/Termination/json-schemas/schema.js +1 -1
  489. package/dist/flows/Termination/json-schemas/terminationDetails.d.ts +3 -0
  490. package/dist/flows/Termination/json-schemas/terminationDetails.js +1 -1
  491. package/dist/flows/Termination/types.d.ts +4 -4
  492. package/dist/flows/Termination/utils.d.ts +4 -4
  493. package/dist/flows/types.d.ts +3 -3
  494. package/dist/flows/utils.d.ts +2 -2
  495. package/dist/index.css +1 -1
  496. package/dist/index.css.map +1 -1
  497. package/dist/index.d.ts +23 -14
  498. package/dist/index.js +2 -2
  499. package/dist/index.js.map +1 -1
  500. package/dist/internals.d.ts +4 -4
  501. package/dist/internals.js +1 -1
  502. package/dist/{mutations-DQjVuza-.d.ts → mutations-BGNKrV99.d.ts} +1 -1
  503. package/dist/{remoteFlows-B_JbhzWp.d.ts → remoteFlows-2MK_3sLb.d.ts} +2 -2
  504. package/dist/styles.css +1 -1
  505. package/dist/styles.css.map +1 -1
  506. package/dist/{types-D3U8Wi3X.d.ts → types-B2bPNE86.d.ts} +3 -3
  507. package/dist/{types-1mH_uuoA.d.ts → types-BOB-WNJe.d.ts} +2 -2
  508. package/dist/{types-CdC2MYpf.d.ts → types-BPLbQPfI.d.ts} +3 -3
  509. package/dist/{types-B0iYt6RL.d.ts → types-BZ58yiMu.d.ts} +37 -4
  510. package/dist/{types-Clzf4xjV.d.ts → types-CJocMMvX.d.ts} +6 -8
  511. package/dist/{types-CoYsxVTI.d.ts → types-DvJ4fXde.d.ts} +1 -1
  512. package/dist/types-DvsjrBmu.d.ts +15 -0
  513. package/dist/{types-BFzhRUSU.d.ts → types-Ke3uSWQH.d.ts} +3 -3
  514. package/dist/{types-B93nzmoE.d.ts → types-g4Cxg_cb.d.ts} +1 -1
  515. package/dist/{types.gen-BmtA4XNd.d.ts → types.gen-ByX93X_n.d.ts} +216 -17
  516. package/dist/{utils-DJgzqxq4.d.ts → utils-Douv08HR.d.ts} +1 -1
  517. package/package.json +6 -5
  518. package/dist/CheckboxFieldDefault-JXNMWIRK.js +0 -2
  519. package/dist/CountryFieldDefault-SO4WS7KE.js +0 -2
  520. package/dist/DatePickerFieldDefault-AZHJN2U6.js +0 -2
  521. package/dist/EmailFieldDefault-QVKXB67I.js +0 -2
  522. package/dist/FileUploadFieldDefault-K6PF6RP7.js +0 -2
  523. package/dist/ForcedValueFieldDefault-BEOC4MYU.js +0 -2
  524. package/dist/MultiSelectFieldDefault-QKXVTGF2.js +0 -2
  525. package/dist/NumberFieldDefault-O7OKTFG4.js +0 -2
  526. package/dist/PDFPreviewDefault-HSSMYKV5.js +0 -2
  527. package/dist/RadioGroupFieldDefault-ZHHXDUUU.js +0 -2
  528. package/dist/SelectFieldDefault-FWQ7D6DU.js +0 -2
  529. package/dist/TelFieldDefault-RA7IBELJ.js +0 -2
  530. package/dist/TextAreaFieldDefault-NEFWXEE2.js +0 -2
  531. package/dist/TextFieldDefault-RXNU36AX.js +0 -2
  532. package/dist/TimeFieldDefault-KIJNBWYF.js +0 -2
  533. package/dist/WorkScheduleFieldDefault-23WY3SVD.js +0 -2
  534. package/dist/chunk-4BHEQMZV.js +0 -2
  535. package/dist/chunk-4YFJOHSM.js +0 -2
  536. package/dist/chunk-7IIQUZTH.js +0 -2
  537. package/dist/chunk-A7U3KJIP.js +0 -2
  538. package/dist/chunk-ALHHN2LG.js +0 -2
  539. package/dist/chunk-ALHHN2LG.js.map +0 -1
  540. package/dist/chunk-AUPAAQUT.js +0 -2
  541. package/dist/chunk-AUPAAQUT.js.map +0 -1
  542. package/dist/chunk-B4O5YUYL.js +0 -2
  543. package/dist/chunk-C5T75DEZ.js +0 -2
  544. package/dist/chunk-DLIVHNTT.js +0 -2
  545. package/dist/chunk-FGYOG6XG.js +0 -2
  546. package/dist/chunk-FGYOG6XG.js.map +0 -1
  547. package/dist/chunk-G3KQCVQQ.js +0 -2
  548. package/dist/chunk-G3KQCVQQ.js.map +0 -1
  549. package/dist/chunk-HMJ4PIDI.js +0 -2
  550. package/dist/chunk-HMJ4PIDI.js.map +0 -1
  551. package/dist/chunk-IHGCXP2X.js +0 -2
  552. package/dist/chunk-IHGCXP2X.js.map +0 -1
  553. package/dist/chunk-IXS65MGJ.js +0 -2
  554. package/dist/chunk-IXS65MGJ.js.map +0 -1
  555. package/dist/chunk-KPDYUFCB.js +0 -2
  556. package/dist/chunk-KPDYUFCB.js.map +0 -1
  557. package/dist/chunk-NPVSJYM6.js +0 -2
  558. package/dist/chunk-NPVSJYM6.js.map +0 -1
  559. package/dist/chunk-PUK2TIQX.js +0 -2
  560. package/dist/chunk-PYNHR7NL.js +0 -2
  561. package/dist/chunk-QQPF2DUF.js +0 -2
  562. package/dist/chunk-QQPF2DUF.js.map +0 -1
  563. package/dist/chunk-QSBXRKYE.js +0 -2
  564. package/dist/chunk-SVVZOMLQ.js +0 -2
  565. package/dist/chunk-SVVZOMLQ.js.map +0 -1
  566. package/dist/chunk-UOJOO2DM.js +0 -2
  567. package/dist/chunk-UOJOO2DM.js.map +0 -1
  568. package/dist/chunk-V3C32X6R.js +0 -2
  569. package/dist/chunk-VFRHMNLJ.js +0 -2
  570. package/dist/chunk-VFRHMNLJ.js.map +0 -1
  571. package/dist/chunk-VNMUML3T.js.map +0 -1
  572. package/dist/chunk-VQRE3YLW.js +0 -2
  573. package/dist/chunk-VQRE3YLW.js.map +0 -1
  574. package/dist/chunk-WVJDCDGZ.js +0 -2
  575. package/dist/chunk-WVJDCDGZ.js.map +0 -1
  576. package/dist/chunk-XFD3ULUF.js +0 -2
  577. package/dist/chunk-XTLTKB3S.js +0 -2
  578. package/dist/chunk-XXQBX7ND.js +0 -2
  579. package/dist/chunk-XXQBX7ND.js.map +0 -1
  580. /package/dist/{CheckboxFieldDefault-JXNMWIRK.js.map → CheckboxFieldDefault-23VE43PP.js.map} +0 -0
  581. /package/dist/{CountryFieldDefault-SO4WS7KE.js.map → CountryFieldDefault-FVAAL55P.js.map} +0 -0
  582. /package/dist/{DatePickerFieldDefault-AZHJN2U6.js.map → DatePickerFieldDefault-KXEMGK5B.js.map} +0 -0
  583. /package/dist/{EmailFieldDefault-QVKXB67I.js.map → EmailFieldDefault-OFHDLOOT.js.map} +0 -0
  584. /package/dist/{FileUploadFieldDefault-K6PF6RP7.js.map → FileUploadFieldDefault-GX22C22E.js.map} +0 -0
  585. /package/dist/{ForcedValueFieldDefault-BEOC4MYU.js.map → ForcedValueFieldDefault-ESITCZWK.js.map} +0 -0
  586. /package/dist/{MultiSelectFieldDefault-QKXVTGF2.js.map → MultiSelectFieldDefault-DAUBH5JV.js.map} +0 -0
  587. /package/dist/{NumberFieldDefault-O7OKTFG4.js.map → NumberFieldDefault-MXZD7YVE.js.map} +0 -0
  588. /package/dist/{PDFPreviewDefault-HSSMYKV5.js.map → PDFPreviewDefault-T6YPWXGY.js.map} +0 -0
  589. /package/dist/{RadioGroupFieldDefault-ZHHXDUUU.js.map → RadioGroupFieldDefault-QFUUJGSR.js.map} +0 -0
  590. /package/dist/{SelectFieldDefault-FWQ7D6DU.js.map → SelectFieldDefault-3QTJE222.js.map} +0 -0
  591. /package/dist/{TelFieldDefault-RA7IBELJ.js.map → TelFieldDefault-5U5X37LI.js.map} +0 -0
  592. /package/dist/{TextAreaFieldDefault-NEFWXEE2.js.map → TextAreaFieldDefault-JX2MVJVY.js.map} +0 -0
  593. /package/dist/{TextFieldDefault-RXNU36AX.js.map → TextFieldDefault-WCUD6XYS.js.map} +0 -0
  594. /package/dist/{TimeFieldDefault-KIJNBWYF.js.map → TimeFieldDefault-UNF7PKLT.js.map} +0 -0
  595. /package/dist/{WorkScheduleFieldDefault-23WY3SVD.js.map → WorkScheduleFieldDefault-2A2RCDXV.js.map} +0 -0
  596. /package/dist/{chunk-C2HZNBMZ.js.map → chunk-235XZBTZ.js.map} +0 -0
  597. /package/dist/{chunk-IRUWMZVH.js.map → chunk-2SD75ZFL.js.map} +0 -0
  598. /package/dist/{chunk-3RQSRU7O.js.map → chunk-335N2CVQ.js.map} +0 -0
  599. /package/dist/{chunk-5MH23AST.js.map → chunk-3BDWVNHX.js.map} +0 -0
  600. /package/dist/{chunk-BYTVIOOL.js.map → chunk-3DOSHTJS.js.map} +0 -0
  601. /package/dist/{chunk-3VTHNE4H.js.map → chunk-3HMBTPH7.js.map} +0 -0
  602. /package/dist/{chunk-6S5Q2OKC.js.map → chunk-3NC2JJM3.js.map} +0 -0
  603. /package/dist/{chunk-5TOSVOLY.js.map → chunk-3OHORFIX.js.map} +0 -0
  604. /package/dist/{chunk-FT4ZNBTA.js.map → chunk-3WRO57UF.js.map} +0 -0
  605. /package/dist/{chunk-VYAJQ25J.js.map → chunk-4AQMMGXK.js.map} +0 -0
  606. /package/dist/{chunk-JLM4O7ZW.js.map → chunk-4BFGSBOK.js.map} +0 -0
  607. /package/dist/{chunk-R2D32OB6.js.map → chunk-57QHHIWL.js.map} +0 -0
  608. /package/dist/{chunk-UU2IFOXR.js.map → chunk-57Y5XQ3D.js.map} +0 -0
  609. /package/dist/{chunk-3LMZ3SOP.js.map → chunk-5DPOL3DT.js.map} +0 -0
  610. /package/dist/{chunk-7XDU2VWN.js.map → chunk-5FST4WDH.js.map} +0 -0
  611. /package/dist/{chunk-ANZ2YYUE.js.map → chunk-6OLV37C2.js.map} +0 -0
  612. /package/dist/{chunk-RKP7EEAB.js.map → chunk-6UCTTR3O.js.map} +0 -0
  613. /package/dist/{chunk-CHIWBD6E.js.map → chunk-6X4SQPQF.js.map} +0 -0
  614. /package/dist/{chunk-F3DZUA7W.js.map → chunk-72EMS5WI.js.map} +0 -0
  615. /package/dist/{chunk-3BQVEYHE.js.map → chunk-77LDJPXF.js.map} +0 -0
  616. /package/dist/{chunk-BWM2MYPE.js.map → chunk-7Y4NHODP.js.map} +0 -0
  617. /package/dist/{chunk-F3UUYQGY.js.map → chunk-AAHPOX44.js.map} +0 -0
  618. /package/dist/{chunk-GBVBMT3H.js.map → chunk-ADL2ZH54.js.map} +0 -0
  619. /package/dist/{chunk-UZFEJMO6.js.map → chunk-AFTFDGSD.js.map} +0 -0
  620. /package/dist/{chunk-QSBXRKYE.js.map → chunk-ANPNVWCB.js.map} +0 -0
  621. /package/dist/{chunk-ORP6DY5I.js.map → chunk-APSKAXM2.js.map} +0 -0
  622. /package/dist/{chunk-TLJXBZII.js.map → chunk-BYD4TSDD.js.map} +0 -0
  623. /package/dist/{chunk-F2SGCGXL.js.map → chunk-C3MUUZC6.js.map} +0 -0
  624. /package/dist/{chunk-D737GUYZ.js.map → chunk-CWKXQZRT.js.map} +0 -0
  625. /package/dist/{chunk-QHJ3BYJN.js.map → chunk-DIPYFRXX.js.map} +0 -0
  626. /package/dist/{chunk-WGDZTF7Y.js.map → chunk-E7Y3YBZH.js.map} +0 -0
  627. /package/dist/{chunk-BTZ57COZ.js.map → chunk-EQOOVJ7K.js.map} +0 -0
  628. /package/dist/{chunk-IAR6BWUY.js.map → chunk-ESXBCNJM.js.map} +0 -0
  629. /package/dist/{chunk-ZQVVHVAG.js.map → chunk-FF5OB2GF.js.map} +0 -0
  630. /package/dist/{chunk-WYIU74JN.js.map → chunk-FFRROEPQ.js.map} +0 -0
  631. /package/dist/{chunk-UAEQLFPK.js.map → chunk-G3BWBRCE.js.map} +0 -0
  632. /package/dist/{chunk-LCUYP6VW.js.map → chunk-GGTV6IQ3.js.map} +0 -0
  633. /package/dist/{chunk-6IDUDCVS.js.map → chunk-GIBD2ZCJ.js.map} +0 -0
  634. /package/dist/{chunk-LCUURLXS.js.map → chunk-GNVGW65D.js.map} +0 -0
  635. /package/dist/{chunk-QSF4XFSV.js.map → chunk-GRLZH65T.js.map} +0 -0
  636. /package/dist/{chunk-WDPJIOLG.js.map → chunk-H4NJGAN4.js.map} +0 -0
  637. /package/dist/{chunk-EYZVDP6A.js.map → chunk-HRVJCCWJ.js.map} +0 -0
  638. /package/dist/{chunk-2LSLWFZS.js.map → chunk-I53YCEOC.js.map} +0 -0
  639. /package/dist/{chunk-SUVBETJS.js.map → chunk-I5NW7AQZ.js.map} +0 -0
  640. /package/dist/{chunk-PJTMFMRJ.js.map → chunk-I65OXH33.js.map} +0 -0
  641. /package/dist/{chunk-WHDUZGVW.js.map → chunk-IJS67A57.js.map} +0 -0
  642. /package/dist/{chunk-B3ESNTKY.js.map → chunk-ILPI4AFS.js.map} +0 -0
  643. /package/dist/{chunk-7NDAFJXR.js.map → chunk-JUSQGITN.js.map} +0 -0
  644. /package/dist/{chunk-GMSYO53D.js.map → chunk-KD7UBTZG.js.map} +0 -0
  645. /package/dist/{chunk-SNGQ2MKL.js.map → chunk-KFIUXU6I.js.map} +0 -0
  646. /package/dist/{chunk-YUUUI4FY.js.map → chunk-L7FN3XPX.js.map} +0 -0
  647. /package/dist/{chunk-4Y2INBAI.js.map → chunk-LJ32QPJF.js.map} +0 -0
  648. /package/dist/{chunk-5FGYC2RF.js.map → chunk-M7PZAJTR.js.map} +0 -0
  649. /package/dist/{chunk-KZ5ZQTBF.js.map → chunk-NVOUXFGX.js.map} +0 -0
  650. /package/dist/{chunk-5FJ64F6D.js.map → chunk-OFFUVHQJ.js.map} +0 -0
  651. /package/dist/{chunk-WZOVZYNI.js.map → chunk-OJ4TXF6G.js.map} +0 -0
  652. /package/dist/{chunk-5WTCN4WO.js.map → chunk-OT5JE2SM.js.map} +0 -0
  653. /package/dist/{chunk-6L77BWCI.js.map → chunk-P3TTGECC.js.map} +0 -0
  654. /package/dist/{chunk-2LR5N626.js.map → chunk-PAYZRCKY.js.map} +0 -0
  655. /package/dist/{chunk-CFPKRLGM.js.map → chunk-PJAHLEOR.js.map} +0 -0
  656. /package/dist/{chunk-Z7VNXKWB.js.map → chunk-PKORRCMX.js.map} +0 -0
  657. /package/dist/{chunk-QEHEOSJT.js.map → chunk-QUJBIRNY.js.map} +0 -0
  658. /package/dist/{chunk-POWC7LZN.js.map → chunk-R23HFBV4.js.map} +0 -0
  659. /package/dist/{chunk-3LELUHRO.js.map → chunk-R2XDTYPZ.js.map} +0 -0
  660. /package/dist/{chunk-FDTOQHOJ.js.map → chunk-R6VNUDBK.js.map} +0 -0
  661. /package/dist/{chunk-WB52GW3H.js.map → chunk-ROVMQ5NT.js.map} +0 -0
  662. /package/dist/{chunk-6IQJJCQ3.js.map → chunk-SDPYDCS7.js.map} +0 -0
  663. /package/dist/{chunk-JRRPMAUO.js.map → chunk-SUGZPBET.js.map} +0 -0
  664. /package/dist/{chunk-J4CHUIPC.js.map → chunk-UNBTPLJ6.js.map} +0 -0
  665. /package/dist/{chunk-TXOCMI5I.js.map → chunk-URNFXEOZ.js.map} +0 -0
  666. /package/dist/{chunk-WH3QR2W5.js.map → chunk-UWIUECXU.js.map} +0 -0
  667. /package/dist/{chunk-PNNOU6BC.js.map → chunk-WHY2WNWH.js.map} +0 -0
  668. /package/dist/{chunk-IUBHVGVV.js.map → chunk-WU66SHVJ.js.map} +0 -0
  669. /package/dist/{chunk-MZK2U65W.js.map → chunk-XLHTMWJ3.js.map} +0 -0
  670. /package/dist/{chunk-5J7DLDLW.js.map → chunk-XPLWBO73.js.map} +0 -0
  671. /package/dist/{chunk-OTBCLDGR.js.map → chunk-XS5NKKW4.js.map} +0 -0
  672. /package/dist/{chunk-A5XRBDDO.js.map → chunk-XXBQQH47.js.map} +0 -0
  673. /package/dist/{chunk-JQ3SLOUP.js.map → chunk-Y6FOZXIU.js.map} +0 -0
  674. /package/dist/{chunk-K67Q5476.js.map → chunk-YANQP45B.js.map} +0 -0
  675. /package/dist/{chunk-JMFCG5KA.js.map → chunk-YWLAZIIO.js.map} +0 -0
  676. /package/dist/{chunk-S2QXSX4Q.js.map → chunk-YYIAA47F.js.map} +0 -0
  677. /package/dist/{chunk-EQIWABAZ.js.map → chunk-ZJ55AKB6.js.map} +0 -0
  678. /package/dist/{chunk-ILX6RI7K.js.map → chunk-ZRD3M74X.js.map} +0 -0
  679. /package/dist/{chunk-H5OZSXSY.js.map → chunk-ZULOHKU6.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{a as b}from"./chunk-WGDZTF7Y.js";import{j as _,k as d,l as x,n as u,o as f}from"./chunk-AUPAAQUT.js";import{n as a}from"./chunk-C4HFMTSB.js";import{a as c}from"./chunk-P37U34EQ.js";import*as g from"react";import{jsx as h}from"react/jsx-runtime";var s=g.forwardRef(({className:e,...r},t)=>h("textarea",{className:a("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:t,...r}));s.displayName="Textarea";import{jsx as o,jsxs as l}from"react/jsx-runtime";function y({field:e,fieldState:r,fieldData:t}){let{name:i,label:p,description:n,maxLength:m}=t,F=e.value?.length??0;return l(_,{"data-field":i,className:`RemoteFlows__TextArea__Item__${i}`,children:[o(d,{className:"RemoteFlows__TextArea__Label",children:p}),o(x,{children:o(s,{...e,value:e.value??"",onChange:T=>{e.onChange(T)},className:a(r.error&&"border-red-500 focus-visible:ring-red-500","RemoteFlows__TextArea__Input"),placeholder:p})}),(n||m)&&l("div",{className:"flex items-center justify-between",children:[n&&o(u,{className:"RemoteFlows__TextArea__Description",helpCenter:o(b,{helpCenter:t.meta?.helpCenter}),children:n}),m&&l("span",{className:"text-sm ml-auto RemoteFlows__TextArea__MaxLength",children:[F,"/",m]})]}),r.error&&o(f,{className:"RemoteFlows__TextArea__Error"})]})}c(y,"TextAreaFieldDefault");export{y as a};
2
- //# sourceMappingURL=chunk-QHJ3BYJN.js.map
1
+ import{a as b}from"./chunk-E7Y3YBZH.js";import{e as _,f as d,g as x,i as u,j as f}from"./chunk-C7KVPEVX.js";import{n as a}from"./chunk-C4HFMTSB.js";import{a as c}from"./chunk-P37U34EQ.js";import*as g from"react";import{jsx as h}from"react/jsx-runtime";var s=g.forwardRef(({className:e,...r},t)=>h("textarea",{className:a("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:t,...r}));s.displayName="Textarea";import{jsx as o,jsxs as l}from"react/jsx-runtime";function y({field:e,fieldState:r,fieldData:t}){let{name:i,label:p,description:n,maxLength:m}=t,F=e.value?.length??0;return l(_,{"data-field":i,className:`RemoteFlows__TextArea__Item__${i}`,children:[o(d,{className:"RemoteFlows__TextArea__Label",children:p}),o(x,{children:o(s,{...e,value:e.value??"",onChange:T=>{e.onChange(T)},className:a(r.error&&"border-red-500 focus-visible:ring-red-500","RemoteFlows__TextArea__Input"),placeholder:p})}),(n||m)&&l("div",{className:"flex items-center justify-between",children:[n&&o(u,{className:"RemoteFlows__TextArea__Description",helpCenter:o(b,{helpCenter:t.meta?.helpCenter}),children:n}),m&&l("span",{className:"text-sm ml-auto RemoteFlows__TextArea__MaxLength",children:[F,"/",m]})]}),r.error&&o(f,{className:"RemoteFlows__TextArea__Error"})]})}c(y,"TextAreaFieldDefault");export{y as a};
2
+ //# sourceMappingURL=chunk-DIPYFRXX.js.map
@@ -0,0 +1,2 @@
1
+ import{b as r,c,f as o,h as p}from"./chunk-H6XROFQT.js";import{a as i}from"./chunk-P37U34EQ.js";function u(){let t={};for(let e=1;e<=r;e++)t[`item_${e}_description`]={title:`Item ${e} description`,type:"string","x-jsf-presentation":{inputType:"text"}},t[`item_${e}_amount`]={title:`Item ${e} amount`,type:"integer","x-jsf-presentation":{inputType:"money"},"x-jsf-logic-computedAttrs":{"x-jsf-presentation":{additionalProps:{currency:"currency_selected"}}}};return t}i(u,"invoiceItemProperties");function d(){let t=[];for(let e=2;e<=r;e++){let n=e-1;t.push({if:{properties:{[`item_${n}_description`]:{type:"string",minLength:1},[`item_${n}_amount`]:{type:"integer",minimum:1}},required:[`item_${n}_description`,`item_${n}_amount`]},then:{},else:{properties:{[`item_${e}_description`]:!1,[`item_${e}_amount`]:!1}}})}return t}i(d,"invoiceItemRevealConditionals");function l(){return{custom_day_1:{description:"First day of the month an invoice is generated. Leave both days blank to use the cycle derived from the start date. One of the two days must be the start date\u2019s day.",title:"First invoice day",type:"integer",minimum:1,maximum:31,"x-jsf-presentation":{inputType:"number"}},custom_day_2:{description:"Second day of the month an invoice is generated.",title:"Second invoice day",type:"integer",minimum:1,maximum:31,"x-jsf-presentation":{inputType:"number"}}}}i(l,"semiMonthlyDayProperties");function m(){return{if:{properties:{periodicity:{const:"semi_monthly"}},required:["periodicity"]},then:{},else:{properties:{custom_day_1:!1,custom_day_2:!1}}}}i(m,"semiMonthlyConditional");function y(){return{if:{properties:{periodicity:{const:o.const}},required:["periodicity"]},then:{properties:{nr_occurrences:!1}},else:{}}}i(y,"occurrencesConditional");var f=Array.from({length:r},(t,e)=>e+1).flatMap(t=>[`item_${t}_description`,`item_${t}_amount`]);function _({includeOneTime:t,isContractorOfRecord:e}){return e?[o]:t?[o,...c]:[...c]}i(_,"periodicityOptions");function h({currencies:t,includeOneTime:e=!1,isContractorOfRecord:n=!1,includeCustomDays:s=!1}={}){return{type:"object","x-jsf-presentation":{title:"Create invoice schedule",description:"Fill out the invoice details and specify the recurrence options."},properties:{currency:{description:"The currency this invoice schedule will be issued in.",title:"Invoice currency",type:"string",oneOf:t?.length?t.map(a=>({const:a,title:a})):[{const:p,title:t?"No currencies available":"Loading currencies\u2026",disabled:!0}],"x-jsf-presentation":{inputType:"select"}},periodicity:{description:"How often invoices are generated for this schedule.",title:"Frequency",type:"string",oneOf:_({includeOneTime:e,isContractorOfRecord:n}),"x-jsf-presentation":{inputType:"select"}},start_date:{description:"Date the first invoice will be generated.",title:"Start date",type:"string",format:"date","x-jsf-presentation":{inputType:"date"}},...s?l():{},...u(),number:{description:"Optional identifier shown on generated invoices.",title:"Invoice number",type:"string",maxLength:10,"x-jsf-presentation":{inputType:"text"}},note:{description:"Shown on generated invoices.",title:"Additional notes",type:"string","x-jsf-presentation":{inputType:"textarea"}},nr_occurrences:{description:"Number of invoices to generate. Leave blank for the schedule to repeat indefinitely.",title:"Number of occurrences",type:"integer",minimum:1,"x-jsf-presentation":{inputType:"number"}}},required:["currency","periodicity","start_date","item_1_description","item_1_amount"],"x-jsf-order":["currency","periodicity","start_date",...s?["custom_day_1","custom_day_2"]:[],...f,"number","note","nr_occurrences"],"x-jsf-logic":{computedValues:{currency_selected:{rule:{var:"currency"}}}},"x-rmt-meta":{jsfVersion:"1"},allOf:[...d(),...s?[m()]:[],...e||n?[y()]:[]]}}i(h,"buildCreateInvoiceScheduleSchema");var v=h();export{h as a,v as b};
2
+ //# sourceMappingURL=chunk-DSJXT5ZP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/common/invoice-schedules/json-schema.ts"],"sourcesContent":["import {\n INVOICE_ITEM_SLOTS,\n ONE_TIME_PERIODICITY_OPTION,\n PLACEHOLDER_OPTION,\n RECURRING_PERIODICITY_OPTIONS,\n} from '@/src/common/invoice-schedules/constants';\n\nfunction invoiceItemProperties() {\n const properties: Record<string, object> = {};\n\n for (let slot = 1; slot <= INVOICE_ITEM_SLOTS; slot++) {\n properties[`item_${slot}_description`] = {\n title: `Item ${slot} description`,\n type: 'string',\n 'x-jsf-presentation': {\n inputType: 'text',\n },\n };\n properties[`item_${slot}_amount`] = {\n title: `Item ${slot} amount`,\n type: 'integer',\n 'x-jsf-presentation': {\n inputType: 'money',\n },\n 'x-jsf-logic-computedAttrs': {\n 'x-jsf-presentation': {\n additionalProps: {\n currency: 'currency_selected',\n },\n },\n },\n };\n }\n\n return properties;\n}\n\n// Slot 1 is required (see the base required array below).\n// Slots 2..N are optional and only revealed once the previous slot has been filled in,\n// since the form-kit has no built-in \"add another row\" renderer for a true items array.\nfunction invoiceItemRevealConditionals() {\n const conditionals = [];\n\n for (let slot = 2; slot <= INVOICE_ITEM_SLOTS; slot++) {\n const previousSlot = slot - 1;\n\n conditionals.push({\n if: {\n properties: {\n [`item_${previousSlot}_description`]: {\n type: 'string',\n minLength: 1,\n },\n // Integer cents, like the slot itself — `createHeadlessForm` converts the money\n // input's major units before the conditionals are evaluated. `minimum: 1` is\n // therefore one cent, so any non-zero amount reveals the next row.\n [`item_${previousSlot}_amount`]: { type: 'integer', minimum: 1 },\n },\n required: [\n `item_${previousSlot}_description`,\n `item_${previousSlot}_amount`,\n ],\n },\n then: {},\n else: {\n properties: {\n [`item_${slot}_description`]: false,\n [`item_${slot}_amount`]: false,\n },\n },\n });\n }\n\n return conditionals;\n}\n\n// Only offered when asked for, so the in-flow onboarding step keeps the field set it\n// shipped with — the same reason `includeOneTime` is opt-in.\nfunction semiMonthlyDayProperties() {\n return {\n custom_day_1: {\n description:\n 'First day of the month an invoice is generated. Leave both days blank to use the cycle derived from the start date. One of the two days must be the start date\\u2019s day.',\n title: 'First invoice day',\n type: 'integer',\n minimum: 1,\n maximum: 31,\n 'x-jsf-presentation': {\n inputType: 'number',\n },\n },\n custom_day_2: {\n description: 'Second day of the month an invoice is generated.',\n title: 'Second invoice day',\n type: 'integer',\n minimum: 1,\n maximum: 31,\n 'x-jsf-presentation': {\n inputType: 'number',\n },\n },\n };\n}\n\n// The two custom-day fields only mean anything for a semi-monthly schedule; the API rejects\n// them for any other periodicity. Hide them unless semi-monthly is selected.\nfunction semiMonthlyConditional() {\n return {\n if: {\n properties: { periodicity: { const: 'semi_monthly' } },\n required: ['periodicity'],\n },\n then: {},\n else: {\n properties: {\n custom_day_1: false,\n custom_day_2: false,\n },\n },\n };\n}\n\n// `nr_occurrences` is meaningless for a one-off — the payload builder pins it to 1 — so\n// hide the field rather than letting a user contradict their own choice.\nfunction occurrencesConditional() {\n return {\n if: {\n properties: {\n periodicity: { const: ONE_TIME_PERIODICITY_OPTION.const },\n },\n required: ['periodicity'],\n },\n then: {\n properties: {\n nr_occurrences: false,\n },\n },\n else: {},\n };\n}\n\nconst itemFieldOrder = Array.from(\n { length: INVOICE_ITEM_SLOTS },\n (_, index) => index + 1,\n).flatMap((slot) => [`item_${slot}_description`, `item_${slot}_amount`]);\n\n/**\n * Options offered for `periodicity`.\n *\n * Contractor of Record only supports one-off invoicing, so a CoR contractor is offered\n * nothing else — matching the Remote platform. See the \"How invoice scheduling works for\n * Contractor of Record\" help centre article.\n *\n * Note this is a client-side restriction only: the public API does not currently reject a\n * recurring schedule for a CoR employment on the single-create path (the bulk CSV importer\n * does). Surfacing it here matches the platform; it is not a substitute for the API check.\n */\nfunction periodicityOptions({\n includeOneTime,\n isContractorOfRecord,\n}: {\n includeOneTime: boolean;\n isContractorOfRecord: boolean;\n}) {\n if (isContractorOfRecord) {\n return [ONE_TIME_PERIODICITY_OPTION];\n }\n\n return includeOneTime\n ? [ONE_TIME_PERIODICITY_OPTION, ...RECURRING_PERIODICITY_OPTIONS]\n : [...RECURRING_PERIODICITY_OPTIONS];\n}\n\ntype CreateInvoiceScheduleSchemaOptions = {\n /**\n * Currency codes the contractor can be invoiced in. Replaces the placeholder `oneOf`.\n */\n currencies?: string[];\n /**\n * Offer \"One time\" alongside the recurring cadences. Off by default so the in-flow\n * onboarding step keeps the field set it shipped with.\n */\n includeOneTime?: boolean;\n /**\n * Restrict to one-off only. Derive from the employment's `contractor_type === 'cor'`.\n */\n isContractorOfRecord?: boolean;\n /**\n * Offer the two semi-monthly day fields, which map to `custom_days`. Off by default so\n * the in-flow onboarding step keeps the field set it shipped with.\n */\n includeCustomDays?: boolean;\n};\n\n/**\n * Builds the create-invoice-schedule JSON schema.\n *\n * Hardcoded rather than fetched: there is no JSON-schema endpoint for invoice schedules,\n * so this mirrors the shape the platform renders and the fields\n * `POST /v1/contractor-invoice-schedules` accepts.\n */\nexport function buildCreateInvoiceScheduleSchema({\n currencies,\n includeOneTime = false,\n isContractorOfRecord = false,\n includeCustomDays = false,\n}: CreateInvoiceScheduleSchemaOptions = {}) {\n return {\n type: 'object',\n 'x-jsf-presentation': {\n title: 'Create invoice schedule',\n description:\n 'Fill out the invoice details and specify the recurrence options.',\n },\n properties: {\n currency: {\n description: 'The currency this invoice schedule will be issued in.',\n title: 'Invoice currency',\n type: 'string',\n oneOf: currencies?.length\n ? currencies.map((code) => ({ const: code, title: code }))\n : [\n {\n const: PLACEHOLDER_OPTION,\n // An empty list is an answer — this contractor has no currencies to be\n // invoiced in — where no list at all means the fetch has not resolved. Both\n // states exist: the flows build the schema once currencies arrive, but the\n // static `createInvoiceScheduleSchema` fallback is built without any.\n // Labelling the empty case \"loading\" left it looking stuck forever.\n title: currencies\n ? 'No currencies available'\n : 'Loading currencies…',\n // Unselectable, so it cannot be submitted as a real currency. Nothing is\n // then selected, so the field's `required` rule reports a normal error on\n // submit.\n disabled: true,\n },\n ],\n 'x-jsf-presentation': {\n inputType: 'select',\n },\n },\n periodicity: {\n description: 'How often invoices are generated for this schedule.',\n title: 'Frequency',\n type: 'string',\n oneOf: periodicityOptions({ includeOneTime, isContractorOfRecord }),\n 'x-jsf-presentation': {\n inputType: 'select',\n },\n },\n start_date: {\n description: 'Date the first invoice will be generated.',\n title: 'Start date',\n type: 'string',\n format: 'date',\n 'x-jsf-presentation': {\n inputType: 'date',\n },\n },\n ...(includeCustomDays ? semiMonthlyDayProperties() : {}),\n ...invoiceItemProperties(),\n number: {\n description: 'Optional identifier shown on generated invoices.',\n title: 'Invoice number',\n type: 'string',\n maxLength: 10,\n 'x-jsf-presentation': {\n inputType: 'text',\n },\n },\n note: {\n description: 'Shown on generated invoices.',\n title: 'Additional notes',\n type: 'string',\n 'x-jsf-presentation': {\n inputType: 'textarea',\n },\n },\n nr_occurrences: {\n description:\n 'Number of invoices to generate. Leave blank for the schedule to repeat indefinitely.',\n title: 'Number of occurrences',\n type: 'integer',\n minimum: 1,\n 'x-jsf-presentation': {\n inputType: 'number',\n },\n },\n },\n required: [\n 'currency',\n 'periodicity',\n 'start_date',\n 'item_1_description',\n 'item_1_amount',\n ],\n 'x-jsf-order': [\n 'currency',\n 'periodicity',\n 'start_date',\n ...(includeCustomDays ? ['custom_day_1', 'custom_day_2'] : []),\n ...itemFieldOrder,\n 'number',\n 'note',\n 'nr_occurrences',\n ],\n 'x-jsf-logic': {\n computedValues: {\n currency_selected: {\n rule: { var: 'currency' },\n },\n },\n },\n // Carried over when this schema moved here: the static ContractorOnboarding schemas\n // were migrated to JSF v1 on main.\n 'x-rmt-meta': {\n jsfVersion: '1',\n },\n allOf: [\n ...invoiceItemRevealConditionals(),\n ...(includeCustomDays ? [semiMonthlyConditional()] : []),\n ...(includeOneTime || isContractorOfRecord\n ? [occurrencesConditional()]\n : []),\n ],\n };\n}\n\n/**\n * The schema as the in-flow onboarding step renders it (no one-off option).\n * Currencies are substituted at runtime — see `useGetCreateInvoiceScheduleSchema`.\n */\nexport const createInvoiceScheduleSchema = buildCreateInvoiceScheduleSchema();\n"],"mappings":"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","names":["invoiceItemProperties","properties","slot","INVOICE_ITEM_SLOTS","__name","invoiceItemRevealConditionals","conditionals","previousSlot","semiMonthlyDayProperties","semiMonthlyConditional","occurrencesConditional","ONE_TIME_PERIODICITY_OPTION","itemFieldOrder","_","index","periodicityOptions","includeOneTime","isContractorOfRecord","RECURRING_PERIODICITY_OPTIONS","buildCreateInvoiceScheduleSchema","currencies","includeCustomDays","code","PLACEHOLDER_OPTION","createInvoiceScheduleSchema"]}
@@ -1,2 +1,2 @@
1
- import{a as o}from"./chunk-5TOSVOLY.js";import{a as r}from"./chunk-P37U34EQ.js";import{jsx as n}from"react/jsx-runtime";function i({helpCenter:e,className:t}){return!e||!e.id||!e.callToAction?null:n(o,{zendeskId:e.id,className:t,children:e.callToAction})}r(i,"HelpCenter");export{i as a};
2
- //# sourceMappingURL=chunk-WGDZTF7Y.js.map
1
+ import{a as o}from"./chunk-3OHORFIX.js";import{a as r}from"./chunk-P37U34EQ.js";import{jsx as n}from"react/jsx-runtime";function i({helpCenter:e,className:t}){return!e||!e.id||!e.callToAction?null:n(o,{zendeskId:e.id,className:t,children:e.callToAction})}r(i,"HelpCenter");export{i as a};
2
+ //# sourceMappingURL=chunk-E7Y3YBZH.js.map
@@ -0,0 +1,2 @@
1
+ import{a as e}from"./chunk-P37U34EQ.js";import{jsx as l}from"react/jsx-runtime";var d=e(o=>(console.log({props:o}),l("div",{children:l("h1",{children:"Daily Schedule"})})),"DailySchedule");export{d as a};
2
+ //# sourceMappingURL=chunk-EOV3JMUQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/Onboarding/components/DailySchedule/DailySchedule.tsx"],"sourcesContent":["import { DailyScheduleRenderProps } from '@/src/flows/Onboarding/components/DailySchedule/types';\n\ntype DailyScheduleProps = DailyScheduleRenderProps;\n\nexport const DailySchedule = (props: DailyScheduleProps) => {\n console.log({ props });\n return (\n <div>\n <h1>Daily Schedule</h1>\n </div>\n );\n};\n"],"mappings":"wCAQM,cAAAA,MAAA,oBAJC,IAAMC,EAAgBC,EAACC,IAC5B,QAAQ,IAAI,CAAE,MAAAA,CAAM,CAAC,EAEnBH,EAAC,OACC,SAAAA,EAAC,MAAG,0BAAc,EACpB,GALyB","names":["jsx","DailySchedule","__name","props"]}
@@ -0,0 +1,2 @@
1
+ var e={data:{version:7,schema:{"x-rmt-meta":{jsfOldVersion:!0},additionalProperties:!1,properties:{country:{title:"Country",description:"",type:"string",oneOf:[],"x-jsf-presentation":{inputType:"select"}}},required:["country"],type:"object","x-jsf-order":["country"]}}};export{e as a};
2
+ //# sourceMappingURL=chunk-EP3BNRH3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/Onboarding/json-schemas/selectCountryStep.ts"],"sourcesContent":["export const selectCountryStepSchema = {\n data: {\n version: 7,\n schema: {\n 'x-rmt-meta': { jsfOldVersion: true },\n additionalProperties: false,\n properties: {\n country: {\n title: 'Country',\n description: '',\n type: 'string',\n oneOf: [],\n 'x-jsf-presentation': {\n inputType: 'select',\n },\n },\n },\n required: ['country'],\n type: 'object',\n 'x-jsf-order': ['country'],\n },\n },\n};\n"],"mappings":"AAAO,IAAMA,EAA0B,CACrC,KAAM,CACJ,QAAS,EACT,OAAQ,CACN,aAAc,CAAE,cAAe,EAAK,EACpC,qBAAsB,GACtB,WAAY,CACV,QAAS,CACP,MAAO,UACP,YAAa,GACb,KAAM,SACN,MAAO,CAAC,EACR,qBAAsB,CACpB,UAAW,QACb,CACF,CACF,EACA,SAAU,CAAC,SAAS,EACpB,KAAM,SACN,cAAe,CAAC,SAAS,CAC3B,CACF,CACF","names":["selectCountryStepSchema"]}
@@ -1,2 +1,2 @@
1
- import{a as d}from"./chunk-HI6GH4J7.js";import{a as c}from"./chunk-WYIU74JN.js";import{b as s}from"./chunk-Q3ALCPJN.js";import{c as l}from"./chunk-7IIQUZTH.js";import{x as n}from"./chunk-C4HFMTSB.js";import{a}from"./chunk-P37U34EQ.js";import{jsx as m,jsxs as g}from"react/jsx-runtime";function x({onSubmit:p,onSuccess:u,onError:S}){let{contractorOnboardingBag:r}=s(),f=a(async(e,F)=>{try{let t=await r.parseFormValues(e);await p?.(t);let o=await r.onSubmit(e);if(o?.data){await u?.(o?.data),r?.next();return}}catch(t){let o=n(t,r.meta?.fields?.contract_details,F);S?.(o)}},"handleSubmit"),C=r.stepState.values?.contract_details||r.initialValues.contract_details,i=r.stepState.values?.pricing_plan?.subscription,b=l(i);return g("div",{className:"space-y-4",children:[m(c,{defaultValues:C,onSubmit:f}),b&&m(d,{subscription:i})]})}a(x,"ContractDetailsStep");export{x as a};
2
- //# sourceMappingURL=chunk-BTZ57COZ.js.map
1
+ import{a as d}from"./chunk-HI6GH4J7.js";import{a as c}from"./chunk-FFRROEPQ.js";import{b as s}from"./chunk-Q3ALCPJN.js";import{c as l}from"./chunk-TDKKCSKV.js";import{x as n}from"./chunk-C4HFMTSB.js";import{a}from"./chunk-P37U34EQ.js";import{jsx as m,jsxs as g}from"react/jsx-runtime";function x({onSubmit:p,onSuccess:u,onError:S}){let{contractorOnboardingBag:r}=s(),f=a(async(e,F)=>{try{let t=await r.parseFormValues(e);await p?.(t);let o=await r.onSubmit(e);if(o?.data){await u?.(o?.data),r?.next();return}}catch(t){let o=n(t,r.meta?.fields?.contract_details,F);S?.(o)}},"handleSubmit"),C=r.stepState.values?.contract_details||r.initialValues.contract_details,i=r.stepState.values?.pricing_plan?.subscription,b=l(i);return g("div",{className:"space-y-4",children:[m(c,{defaultValues:C,onSubmit:f}),b&&m(d,{subscription:i})]})}a(x,"ContractDetailsStep");export{x as a};
2
+ //# sourceMappingURL=chunk-EQOOVJ7K.js.map
@@ -1,2 +1,2 @@
1
- import{a as k}from"./chunk-XFD3ULUF.js";import{a as S}from"./chunk-QSBXRKYE.js";import{a as m,b as u,c as h,d as _}from"./chunk-DFJNVGK4.js";import{a as y}from"./chunk-NW3D7CPK.js";import{a as g}from"./chunk-XFVXRCMH.js";import{Q as T,c as D,na as b}from"./chunk-VNMUML3T.js";import{e as i}from"./chunk-H2O4CVKF.js";import{a as n}from"./chunk-P37U34EQ.js";import{useQuery as v}from"@tanstack/react-query";var c=n(({employmentId:e,status:t,timeoffType:a,options:o})=>{let{client:r}=i();return v({queryKey:["timeoff",e,t],retry:!1,queryFn:n(()=>b({client:r,headers:{Authorization:""},query:{employment_id:e,status:t,timeoff_type:a}}),"queryFn"),select:n(({data:s})=>o?.select?.(s)??s,"select"),enabled:o?.enabled})},"useTimeOffQuery"),R=n((e,t)=>{let a=y(e).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"}),o=y(t).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"});return`${a} \u2192 ${o}`},"formatDateRange"),N=n(({employmentId:e,options:t})=>c({employmentId:e,timeoffType:"paid_time_off",options:{enabled:t?.enabled,select:n(a=>({bookedDays:a?.data?.timeoffs?.reduce((o,r)=>o+(r?.timeoff_days?.filter(s=>s.hours!=null&&s.hours>0).length||0),0)||0,timeoffs:a?.data?.timeoffs?.map(o=>{let r=o?.timeoff_days?.filter(s=>s.hours>0).length||0;return{status:o?.status,duration:r,startDate:o?.start_date,endDate:o?.end_date,formattedDate:R(o?.start_date,o?.end_date)}})||[]}),"select")}}),"usePaidTimeoffBreakdownQuery"),A=n(({employmentId:e})=>{let{client:t}=i();return v({queryKey:["timeoff-balance",e],retry:!1,queryFn:n(()=>T({client:t,headers:{Authorization:""},path:{employment_id:e}}),"queryFn"),select:n(({data:a})=>a,"select")})},"useTimeOffLeavePoliciesSummaryQuery");import{useMutation as x,useQuery as Q}from"@tanstack/react-query";function V(e){return Object.entries(e).reduce((t,[a,o])=>({...t,[a]:h(o)}),{})}n(V,"formatTimeoffValues");function F(e){let t=e?.contract_details?.available_pto,a=e?.contract_details?.available_pto_type;return e?.country?.code==="USA"&&a==="unlimited"?{value:t===0?20:t}:a==="unlimited"&&t>0?{value:t}:{value:t}}n(F,"getMinimumStatutoryDays");function q(e,t){let a=0,o=0;return e.forEach(r=>{r.timeoff_days?.forEach(s=>{new Date(s.day)<=t?a+=s.hours||0:o+=s.hours||0})}),{before:a,after:o}}n(q,"getAllTimeoffHoursBeforeDate");var U=n(({employmentId:e,date:t,options:a})=>c({employmentId:e,timeoffType:"paid_time_off",status:"approved",options:{enabled:a?.enabled,select:n(o=>{let{before:r,after:s}=q(o?.data?.timeoffs||[],new Date(t));return{bookedDaysBeforeTermination:u(r),bookedDaysAfterTermination:u(s)}},"select")}}),"useBookedTimeoffBeforeAndAfterTerminationQuery"),me=n(({employmentId:e,proposedTerminationDate:t,employment:a})=>{let{value:o=0}=F(a),r=A({employmentId:e}),s=U({employmentId:e,date:t}),p=r.data?.data?.[0].annual_entitlement.type==="limited"?{days:r.data?.data?.[0].annual_entitlement.days,hours:r.data?.data?.[0].annual_entitlement.hours}:{days:o,hours:0},d={days:r.data?.data?.[0].booked.days||0,hours:r.data?.data?.[0].booked.hours||0},f=r.data?.data?.[0].current_entitlement.type==="limited"?{days:r.data?.data?.[0].current_entitlement.days||0,hours:r.data?.data?.[0].current_entitlement.hours||0}:{days:o,hours:0},l={days:r.data?.data?.[0].used.days||0,hours:r.data?.data?.[0].used.hours||0},B=s.data?.bookedDaysBeforeTermination||{days:0,hours:0},C=s.data?.bookedDaysAfterTermination||{days:0,hours:0},H=m(f.days,f.hours),P=m(l.days,l.hours),E=m(d.days,d.hours),L=H-P-E,O=_(u(L));return{data:{...V({entitledDays:p,bookedDays:d,usedDays:l,approvedDaysBeforeTermination:B,approvedDaysAfterTermination:C,remainingDays:O,currentEntitlementDays:f}),isUnlimitedPto:a?.contract_details?.available_pto_type==="unlimited"},isLoading:r.isLoading||s.isLoading,isError:r.isError||s.isError,error:r.error||s.error}},"useSummaryTimeOffDataQuery"),ue=n(()=>{let{client:e}=i();return x({mutationFn:n(t=>D({client:e,body:t}),"mutationFn")})},"useCreateTermination"),de=n(({formValues:e,jsfModify:t,step:a})=>Q({queryKey:["rmt-flows-termination-schema",a],queryFn:n(()=>S[a]??k,"queryFn"),select:n(({data:o})=>{let r=o?.schema||{};return g(r,e||{},{jsfModify:t})},"select")}),"useTerminationSchema");export{c as a,N as b,A as c,U as d,me as e,ue as f,de as g};
2
- //# sourceMappingURL=chunk-IAR6BWUY.js.map
1
+ import{a as S}from"./chunk-ANPNVWCB.js";import{a as k}from"./chunk-IBQVGZMF.js";import{a as m,b as u,c as h,d as _}from"./chunk-DFJNVGK4.js";import{a as y}from"./chunk-NW3D7CPK.js";import{a as g}from"./chunk-XFVXRCMH.js";import{Q as T,c as D,na as b}from"./chunk-DAUDKN32.js";import{e as i}from"./chunk-H2O4CVKF.js";import{a as n}from"./chunk-P37U34EQ.js";import{useQuery as v}from"@tanstack/react-query";var c=n(({employmentId:e,status:t,timeoffType:a,options:o})=>{let{client:r}=i();return v({queryKey:["timeoff",e,t],retry:!1,queryFn:n(()=>b({client:r,headers:{Authorization:""},query:{employment_id:e,status:t,timeoff_type:a}}),"queryFn"),select:n(({data:s})=>o?.select?.(s)??s,"select"),enabled:o?.enabled})},"useTimeOffQuery"),R=n((e,t)=>{let a=y(e).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"}),o=y(t).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"});return`${a} \u2192 ${o}`},"formatDateRange"),N=n(({employmentId:e,options:t})=>c({employmentId:e,timeoffType:"paid_time_off",options:{enabled:t?.enabled,select:n(a=>({bookedDays:a?.data?.timeoffs?.reduce((o,r)=>o+(r?.timeoff_days?.filter(s=>s.hours!=null&&s.hours>0).length||0),0)||0,timeoffs:a?.data?.timeoffs?.map(o=>{let r=o?.timeoff_days?.filter(s=>s.hours>0).length||0;return{status:o?.status,duration:r,startDate:o?.start_date,endDate:o?.end_date,formattedDate:R(o?.start_date,o?.end_date)}})||[]}),"select")}}),"usePaidTimeoffBreakdownQuery"),A=n(({employmentId:e})=>{let{client:t}=i();return v({queryKey:["timeoff-balance",e],retry:!1,queryFn:n(()=>T({client:t,headers:{Authorization:""},path:{employment_id:e}}),"queryFn"),select:n(({data:a})=>a,"select")})},"useTimeOffLeavePoliciesSummaryQuery");import{useMutation as x,useQuery as Q}from"@tanstack/react-query";function V(e){return Object.entries(e).reduce((t,[a,o])=>({...t,[a]:h(o)}),{})}n(V,"formatTimeoffValues");function F(e){let t=e?.contract_details?.available_pto,a=e?.contract_details?.available_pto_type;return e?.country?.code==="USA"&&a==="unlimited"?{value:t===0?20:t}:a==="unlimited"&&t>0?{value:t}:{value:t}}n(F,"getMinimumStatutoryDays");function q(e,t){let a=0,o=0;return e.forEach(r=>{r.timeoff_days?.forEach(s=>{new Date(s.day)<=t?a+=s.hours||0:o+=s.hours||0})}),{before:a,after:o}}n(q,"getAllTimeoffHoursBeforeDate");var U=n(({employmentId:e,date:t,options:a})=>c({employmentId:e,timeoffType:"paid_time_off",status:"approved",options:{enabled:a?.enabled,select:n(o=>{let{before:r,after:s}=q(o?.data?.timeoffs||[],new Date(t));return{bookedDaysBeforeTermination:u(r),bookedDaysAfterTermination:u(s)}},"select")}}),"useBookedTimeoffBeforeAndAfterTerminationQuery"),me=n(({employmentId:e,proposedTerminationDate:t,employment:a})=>{let{value:o=0}=F(a),r=A({employmentId:e}),s=U({employmentId:e,date:t}),p=r.data?.data?.[0].annual_entitlement.type==="limited"?{days:r.data?.data?.[0].annual_entitlement.days,hours:r.data?.data?.[0].annual_entitlement.hours}:{days:o,hours:0},d={days:r.data?.data?.[0].booked.days||0,hours:r.data?.data?.[0].booked.hours||0},f=r.data?.data?.[0].current_entitlement.type==="limited"?{days:r.data?.data?.[0].current_entitlement.days||0,hours:r.data?.data?.[0].current_entitlement.hours||0}:{days:o,hours:0},l={days:r.data?.data?.[0].used.days||0,hours:r.data?.data?.[0].used.hours||0},B=s.data?.bookedDaysBeforeTermination||{days:0,hours:0},C=s.data?.bookedDaysAfterTermination||{days:0,hours:0},H=m(f.days,f.hours),P=m(l.days,l.hours),E=m(d.days,d.hours),L=H-P-E,O=_(u(L));return{data:{...V({entitledDays:p,bookedDays:d,usedDays:l,approvedDaysBeforeTermination:B,approvedDaysAfterTermination:C,remainingDays:O,currentEntitlementDays:f}),isUnlimitedPto:a?.contract_details?.available_pto_type==="unlimited"},isLoading:r.isLoading||s.isLoading,isError:r.isError||s.isError,error:r.error||s.error}},"useSummaryTimeOffDataQuery"),ue=n(()=>{let{client:e}=i();return x({mutationFn:n(t=>D({client:e,body:t}),"mutationFn")})},"useCreateTermination"),de=n(({formValues:e,jsfModify:t,step:a})=>Q({queryKey:["rmt-flows-termination-schema",a],queryFn:n(()=>S[a]??k,"queryFn"),select:n(({data:o})=>{let r=o?.schema||{};return g(r,e||{},{jsfModify:t})},"select")}),"useTerminationSchema");export{c as a,N as b,A as c,U as d,me as e,ue as f,de as g};
2
+ //# sourceMappingURL=chunk-ESXBCNJM.js.map
@@ -0,0 +1,2 @@
1
+ import{a as t}from"./chunk-P37U34EQ.js";import{jsx as e,jsxs as o}from"react/jsx-runtime";function a({base64Data:l,fileName:r="document.pdf"}){return l?o("div",{className:"w-full h-full flex flex-col gap-4",children:[e("iframe",{src:l,className:"w-full flex-1 min-h-[600px] border rounded",title:r}),o("div",{className:"flex justify-between items-center text-sm",children:[e("p",{className:"text-gray-600",children:r}),e("a",{href:l,download:r,className:"text-blue-600 hover:underline",children:"Download PDF"})]})]}):e("div",{className:"w-full border rounded p-8 text-center bg-gray-50",children:e("p",{className:"text-gray-500",children:"No PDF data available"})})}t(a,"PDFPreviewDefault");export{a};
2
+ //# sourceMappingURL=chunk-EUQLCVA5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/shared/pdf-preview/PDFPreviewDefault.tsx"],"sourcesContent":["import { PDFPreviewComponentProps } from '@/src/types/remoteFlows';\n\nexport function PDFPreviewDefault({\n base64Data,\n fileName = 'document.pdf',\n}: PDFPreviewComponentProps) {\n if (!base64Data) {\n return (\n <div className='w-full border rounded p-8 text-center bg-gray-50'>\n <p className='text-gray-500'>No PDF data available</p>\n </div>\n );\n }\n\n return (\n // Fills its container when given one — in a drawer the viewer should use the height it\n // has rather than a fixed slab with dead space under it. `min-h` keeps the previous\n // rendering wherever the parent's height is unconstrained, since an iframe has no\n // intrinsic height to grow from.\n <div className='w-full h-full flex flex-col gap-4'>\n <iframe\n src={base64Data}\n className='w-full flex-1 min-h-[600px] border rounded'\n title={fileName}\n />\n <div className='flex justify-between items-center text-sm'>\n <p className='text-gray-600'>{fileName}</p>\n <a\n href={base64Data}\n download={fileName}\n className='text-blue-600 hover:underline'\n >\n Download PDF\n </a>\n </div>\n </div>\n );\n}\n"],"mappings":"wCASQ,cAAAA,EAgBF,QAAAC,MAhBE,oBAPD,SAASC,EAAkB,CAChC,WAAAC,EACA,SAAAC,EAAW,cACb,EAA6B,CAC3B,OAAKD,EAaHF,EAAC,OAAI,UAAU,oCACb,UAAAD,EAAC,UACC,IAAKG,EACL,UAAU,6CACV,MAAOC,EACT,EACAH,EAAC,OAAI,UAAU,4CACb,UAAAD,EAAC,KAAE,UAAU,gBAAiB,SAAAI,EAAS,EACvCJ,EAAC,KACC,KAAMG,EACN,SAAUC,EACV,UAAU,gCACX,wBAED,GACF,GACF,EA3BEJ,EAAC,OAAI,UAAU,mDACb,SAAAA,EAAC,KAAE,UAAU,gBAAgB,iCAAqB,EACpD,CA2BN,CAnCgBK,EAAAH,EAAA","names":["jsx","jsxs","PDFPreviewDefault","base64Data","fileName","__name"]}
@@ -0,0 +1,2 @@
1
+ import{a as o}from"./chunk-P37U34EQ.js";import{createContext as n,useContext as r}from"react";var t=n({form:null,formId:void 0,invoiceScheduleBag:void 0}),c=o(()=>{let e=r(t);if(!e.form)throw new Error("useInvoiceScheduleContext must be used within an InvoiceScheduleFlow");return{form:e.form,formId:e.formId,invoiceScheduleBag:e.invoiceScheduleBag}},"useInvoiceScheduleContext");export{t as a,c as b};
2
+ //# sourceMappingURL=chunk-F37FQXEZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/InvoiceSchedule/context.ts"],"sourcesContent":["import { createContext, useContext } from 'react';\nimport { UseFormReturn } from 'react-hook-form';\nimport { useInvoiceSchedule } from '@/src/flows/InvoiceSchedule/hooks';\nimport { $TSFixMe } from '@/src/types/remoteFlows';\n\nexport const InvoiceScheduleContext = createContext<{\n form: UseFormReturn<$TSFixMe> | null;\n formId: string | undefined;\n invoiceScheduleBag?: ReturnType<typeof useInvoiceSchedule>;\n}>({\n form: null,\n formId: undefined,\n invoiceScheduleBag: undefined,\n});\n\nexport const useInvoiceScheduleContext = () => {\n const context = useContext(InvoiceScheduleContext);\n if (!context.form) {\n throw new Error(\n 'useInvoiceScheduleContext must be used within an InvoiceScheduleFlow',\n );\n }\n\n return {\n form: context.form,\n formId: context.formId,\n invoiceScheduleBag: context.invoiceScheduleBag,\n } as const;\n};\n"],"mappings":"wCAAA,OAAS,iBAAAA,EAAe,cAAAC,MAAkB,QAKnC,IAAMC,EAAyBC,EAInC,CACD,KAAM,KACN,OAAQ,OACR,mBAAoB,MACtB,CAAC,EAEYC,EAA4BC,EAAA,IAAM,CAC7C,IAAMC,EAAUC,EAAWL,CAAsB,EACjD,GAAI,CAACI,EAAQ,KACX,MAAM,IAAI,MACR,sEACF,EAGF,MAAO,CACL,KAAMA,EAAQ,KACd,OAAQA,EAAQ,OAChB,mBAAoBA,EAAQ,kBAC9B,CACF,EAbyC","names":["createContext","useContext","InvoiceScheduleContext","createContext","useInvoiceScheduleContext","__name","context","useContext"]}
@@ -1,2 +1,2 @@
1
- import{a as h}from"./chunk-3UDRMQNE.js";import{a as E}from"./chunk-36JXX3VA.js";import{a as g}from"./chunk-VDRNNOVA.js";import{b as p}from"./chunk-HBONR7VY.js";import{a as y}from"./chunk-NW3D7CPK.js";import{d as w}from"./chunk-7IIQUZTH.js";import{a as b,h as S,i as C}from"./chunk-PB6UQ4A4.js";import{a as v}from"./chunk-5TOSVOLY.js";import{a as f}from"./chunk-GPWQPJQ7.js";import{a as t}from"./chunk-P37U34EQ.js";import{addYears as I,format as u}from"date-fns";import{Fragment as D,jsx as _,jsxs as F}from"react/jsx-runtime";var x=t(n=>n===b,"isStandardPricingPlan"),M=t((n,i)=>{let e=i&&i<u(new Date,"yyyy-MM-dd");if(!n&&e)return p({severity:"warning",description:"Backdating the service start date is not supported in the selected Contractor Management plan."})},"showBackDateWarning");function R(n,i,e){e({...i,services_and_deliverables_ai_warning:"",services_and_deliverables_error_skippable:!1})}t(R,"onServicesAndDeliverablesChange");var $=t((n,i,e,r,a)=>{let d=x(e),c=r?.service_duration?.provisional_start_date,l=M(d,c),o=p({severity:"warning",title:"Possible misclassification risk",description:a?C:S});return{...n,create:{...n?.create,services_and_deliverables_ai_warning:{type:"string","x-jsf-presentation":{inputType:"hidden"}},services_and_deliverables_error_skippable:{type:"boolean","x-jsf-presentation":{inputType:"hidden"}}},fields:{...n?.fields,"service_duration.provisional_start_date":{description:i,"x-jsf-presentation":{minDate:d?void 0:u(new Date,"yyyy-MM-dd"),...l}},"service_duration.expiration_date":{"x-jsf-presentation":{calculateDynamicProperties:t(s=>{let m=a&&s.service_duration?.provisional_start_date?I(y(s.service_duration.provisional_start_date),1):void 0;return{maxDate:m?u(m,"yyyy-MM-dd"):void 0}},"calculateDynamicProperties")}},services_and_deliverables:{onChange:R,"x-jsf-presentation":{calculateDynamicProperties:t(s=>({statement:s.services_and_deliverables_ai_warning?o.statement:void 0}),"calculateDynamicProperties")}}}}},"buildContractDetailsJsfModify"),z=t((n,i,e)=>{let r=n==="SAU",a=n==="GBR",d=w(n);if(!r&&!a&&!d)return e?.jsfModify?.basic_information;if(a)return{...e?.jsfModify?.basic_information,create:{...e?.jsfModify?.basic_information?.create,ir35:{title:"IR35 Status",description:t(()=>F(D,{children:["What's your contractor's employment status?"," ",_(v,{zendeskId:f.ir35Status,children:"Learn more about IR35"})]}),"description"),oneOf:[{const:"inside",title:"Inside IR35 (deemed employee)"},{const:"outside",title:"Outside IR35"},{const:"exempt",title:"Exempt from IR35"}],"x-jsf-presentation":{inputType:"select"}},ir35_sds_file:{title:"Upload SDS",description:"Status determination statement",type:"string","x-jsf-presentation":{inputType:"file",accept:g.document,multiple:!1,maxSize:20971520,calculateDynamicProperties:t(o=>{let s=o.ir35;return{isVisible:s==="inside"||s==="outside"}},"calculateDynamicProperties")}}},allOf:[{if:{properties:{ir35:{enum:["inside","outside"]}}},then:{required:["ir35_sds_file"]},else:{properties:{ir35_sds_file:!1}}}],required:["ir35"],orderRoot:t(o=>[...o,"ir35","ir35_sds_file"],"orderRoot")};let c=r?"Is your contractor a Saudi Arabia national, or a non-Saudi national contracting via a local business entity or under a Special Privilege Iqama visa?":`Is the contractor a ${i??"selected country"} national, or a non-${i??"selected country"} national contracting through their local business entity?`,l=r?"Please be aware that contracting with non-Saudi Arabia nationals that are not operating as a company or under a Special Privilege Iqama visa can lead to fines for operating without proper work authorization. If you are concerned, please speak with the Contractor and/or local Saudi Arabia counsel to ensure compliance.":`Be aware that the Contractor must be a ${i??"selected country"} national, or a non-${i??"selected country"} national operating through their company to comply with the legal requirements for performing services and deliverables as a contractor in ${i??"selected country"}. If you are concerned, speak with the Contractor and/or local counsel to ensure compliance.`;return{...e?.jsfModify?.basic_information,create:{...e?.jsfModify?.basic_information?.create,nationality_status:{title:c,description:"",type:"string",oneOf:[{const:"national",description:"",title:"Yes"},{const:"non_national",description:l,title:"No"}],"x-jsf-presentation":{inputType:"radio"}}},required:["nationality_status"],orderRoot:t(o=>[...o,"nationality_status"],"orderRoot")}},"buildBasicInformationJsfModify"),G=t((n,i)=>{let e=n?.jsfModify?.contract_preview?.fields;return{fields:{contract_preview_header:{...e?.contract_preview_header,"x-jsf-presentation":{Component:t(r=>{let a=e?.contract_preview_header?.["x-jsf-presentation"]?.Component||h;return _(a,{...r})},"Component")}},contract_preview_statement:{...e?.contract_preview_statement,"x-jsf-presentation":{Component:t(r=>{let a=e?.contract_preview_statement?.["x-jsf-presentation"]?.Component||E;return _(a,{reviewCompleted:!!i?.review_completed,...r})},"Component")}},signature:{...e?.signature,"x-jsf-presentation":{calculateDynamicProperties:t(r=>({isVisible:!!r.review_completed}),"calculateDynamicProperties"),...e?.signature?.["x-jsf-presentation"]}}}}},"buildContractPreviewJsfModify");export{$ as a,z as b,G as c};
2
- //# sourceMappingURL=chunk-ZQVVHVAG.js.map
1
+ import{a as h}from"./chunk-3UDRMQNE.js";import{a as E}from"./chunk-36JXX3VA.js";import{a as g}from"./chunk-VDRNNOVA.js";import{b as p}from"./chunk-HBONR7VY.js";import{a as y}from"./chunk-NW3D7CPK.js";import{d as w}from"./chunk-TDKKCSKV.js";import{a as b,h as S,i as C}from"./chunk-PB6UQ4A4.js";import{a as v}from"./chunk-3OHORFIX.js";import{a as f}from"./chunk-GPWQPJQ7.js";import{a as t}from"./chunk-P37U34EQ.js";import{addYears as I,format as u}from"date-fns";import{Fragment as D,jsx as _,jsxs as F}from"react/jsx-runtime";var x=t(n=>n===b,"isStandardPricingPlan"),M=t((n,i)=>{let e=i&&i<u(new Date,"yyyy-MM-dd");if(!n&&e)return p({severity:"warning",description:"Backdating the service start date is not supported in the selected Contractor Management plan."})},"showBackDateWarning");function R(n,i,e){e({...i,services_and_deliverables_ai_warning:"",services_and_deliverables_error_skippable:!1})}t(R,"onServicesAndDeliverablesChange");var $=t((n,i,e,r,a)=>{let d=x(e),c=r?.service_duration?.provisional_start_date,l=M(d,c),o=p({severity:"warning",title:"Possible misclassification risk",description:a?C:S});return{...n,create:{...n?.create,services_and_deliverables_ai_warning:{type:"string","x-jsf-presentation":{inputType:"hidden"}},services_and_deliverables_error_skippable:{type:"boolean","x-jsf-presentation":{inputType:"hidden"}}},fields:{...n?.fields,"service_duration.provisional_start_date":{description:i,"x-jsf-presentation":{minDate:d?void 0:u(new Date,"yyyy-MM-dd"),...l}},"service_duration.expiration_date":{"x-jsf-presentation":{calculateDynamicProperties:t(s=>{let m=a&&s.service_duration?.provisional_start_date?I(y(s.service_duration.provisional_start_date),1):void 0;return{maxDate:m?u(m,"yyyy-MM-dd"):void 0}},"calculateDynamicProperties")}},services_and_deliverables:{onChange:R,"x-jsf-presentation":{calculateDynamicProperties:t(s=>({statement:s.services_and_deliverables_ai_warning?o.statement:void 0}),"calculateDynamicProperties")}}}}},"buildContractDetailsJsfModify"),z=t((n,i,e)=>{let r=n==="SAU",a=n==="GBR",d=w(n);if(!r&&!a&&!d)return e?.jsfModify?.basic_information;if(a)return{...e?.jsfModify?.basic_information,create:{...e?.jsfModify?.basic_information?.create,ir35:{title:"IR35 Status",description:t(()=>F(D,{children:["What's your contractor's employment status?"," ",_(v,{zendeskId:f.ir35Status,children:"Learn more about IR35"})]}),"description"),oneOf:[{const:"inside",title:"Inside IR35 (deemed employee)"},{const:"outside",title:"Outside IR35"},{const:"exempt",title:"Exempt from IR35"}],"x-jsf-presentation":{inputType:"select"}},ir35_sds_file:{title:"Upload SDS",description:"Status determination statement",type:"string","x-jsf-presentation":{inputType:"file",accept:g.document,multiple:!1,maxSize:20971520,calculateDynamicProperties:t(o=>{let s=o.ir35;return{isVisible:s==="inside"||s==="outside"}},"calculateDynamicProperties")}}},allOf:[{if:{properties:{ir35:{enum:["inside","outside"]}}},then:{required:["ir35_sds_file"]},else:{properties:{ir35_sds_file:!1}}}],required:["ir35"],orderRoot:t(o=>[...o,"ir35","ir35_sds_file"],"orderRoot")};let c=r?"Is your contractor a Saudi Arabia national, or a non-Saudi national contracting via a local business entity or under a Special Privilege Iqama visa?":`Is the contractor a ${i??"selected country"} national, or a non-${i??"selected country"} national contracting through their local business entity?`,l=r?"Please be aware that contracting with non-Saudi Arabia nationals that are not operating as a company or under a Special Privilege Iqama visa can lead to fines for operating without proper work authorization. If you are concerned, please speak with the Contractor and/or local Saudi Arabia counsel to ensure compliance.":`Be aware that the Contractor must be a ${i??"selected country"} national, or a non-${i??"selected country"} national operating through their company to comply with the legal requirements for performing services and deliverables as a contractor in ${i??"selected country"}. If you are concerned, speak with the Contractor and/or local counsel to ensure compliance.`;return{...e?.jsfModify?.basic_information,create:{...e?.jsfModify?.basic_information?.create,nationality_status:{title:c,description:"",type:"string",oneOf:[{const:"national",description:"",title:"Yes"},{const:"non_national",description:l,title:"No"}],"x-jsf-presentation":{inputType:"radio"}}},required:["nationality_status"],orderRoot:t(o=>[...o,"nationality_status"],"orderRoot")}},"buildBasicInformationJsfModify"),G=t((n,i)=>{let e=n?.jsfModify?.contract_preview?.fields;return{fields:{contract_preview_header:{...e?.contract_preview_header,"x-jsf-presentation":{Component:t(r=>{let a=e?.contract_preview_header?.["x-jsf-presentation"]?.Component||h;return _(a,{...r})},"Component")}},contract_preview_statement:{...e?.contract_preview_statement,"x-jsf-presentation":{Component:t(r=>{let a=e?.contract_preview_statement?.["x-jsf-presentation"]?.Component||E;return _(a,{reviewCompleted:!!i?.review_completed,...r})},"Component")}},signature:{...e?.signature,"x-jsf-presentation":{calculateDynamicProperties:t(r=>({isVisible:!!r.review_completed}),"calculateDynamicProperties"),...e?.signature?.["x-jsf-presentation"]}}}}},"buildContractPreviewJsfModify");export{$ as a,z as b,G as c};
2
+ //# sourceMappingURL=chunk-FF5OB2GF.js.map
@@ -1,2 +1,2 @@
1
- import{b as c}from"./chunk-Q3ALCPJN.js";import{a as d}from"./chunk-UZFEJMO6.js";import{a as l}from"./chunk-VQRE3YLW.js";import{h as m}from"./chunk-AUPAAQUT.js";import{c as s}from"./chunk-C4HFMTSB.js";import{a}from"./chunk-P37U34EQ.js";import{useEffect as f}from"react";import{jsx as F}from"react/jsx-runtime";import{createElement as V}from"react";function B({defaultValues:p,onSubmit:u,components:S}){let{formId:y,contractorOnboardingBag:o,formRef:t}=c(),r=d({handleValidation:o.handleValidation,defaultValues:p,checkFieldUpdates:o.checkFieldUpdates});f(()=>{t?.setValue&&(t.setValue.current=r.setValue)},[r.setValue,t]),f(()=>{o.employmentId&&o?.checkFieldUpdates(r.getValues())},[]);let g=a(async(n,b)=>{let i=b?.nativeEvent;if(i?.isDraftSubmission){let{onSuccess:P,onError:E}=i.draftCallbacks;try{await o.onSubmit(n),P?.()}catch(e){let C=o.stepState.currentStep.name,h=o.meta?.fields?.[C],O=s(e?.fieldErrors||[],h);E?.({error:e?.error||e,rawError:e?.rawError||e,fieldErrors:O})}}else await u(n,r)},"handleSubmit");return V(m,{...r,key:`form-${o.stepState.currentStep.name}`},F("form",{id:y,onSubmit:r.handleSubmit(g),className:"space-y-4 RemoteFlows__OnboardingForm",children:F(l,{components:S,fields:o.fields,fieldsets:o.meta.fieldsets,fieldValues:o.fieldValues})}))}a(B,"ContractorOnboardingForm");export{B as a};
2
- //# sourceMappingURL=chunk-WYIU74JN.js.map
1
+ import{b as c}from"./chunk-Q3ALCPJN.js";import{a as d}from"./chunk-AFTFDGSD.js";import{a as l}from"./chunk-5NN5RWBG.js";import{b as m}from"./chunk-C7KVPEVX.js";import{c as s}from"./chunk-C4HFMTSB.js";import{a}from"./chunk-P37U34EQ.js";import{useEffect as f}from"react";import{jsx as F}from"react/jsx-runtime";import{createElement as V}from"react";function B({defaultValues:p,onSubmit:u,components:S}){let{formId:y,contractorOnboardingBag:o,formRef:t}=c(),r=d({handleValidation:o.handleValidation,defaultValues:p,checkFieldUpdates:o.checkFieldUpdates});f(()=>{t?.setValue&&(t.setValue.current=r.setValue)},[r.setValue,t]),f(()=>{o.employmentId&&o?.checkFieldUpdates(r.getValues())},[]);let g=a(async(n,b)=>{let i=b?.nativeEvent;if(i?.isDraftSubmission){let{onSuccess:P,onError:E}=i.draftCallbacks;try{await o.onSubmit(n),P?.()}catch(e){let C=o.stepState.currentStep.name,h=o.meta?.fields?.[C],O=s(e?.fieldErrors||[],h);E?.({error:e?.error||e,rawError:e?.rawError||e,fieldErrors:O})}}else await u(n,r)},"handleSubmit");return V(m,{...r,key:`form-${o.stepState.currentStep.name}`},F("form",{id:y,onSubmit:r.handleSubmit(g),className:"space-y-4 RemoteFlows__OnboardingForm",children:F(l,{components:S,fields:o.fields,fieldsets:o.meta.fieldsets,fieldValues:o.fieldValues})}))}a(B,"ContractorOnboardingForm");export{B as a};
2
+ //# sourceMappingURL=chunk-FFRROEPQ.js.map
@@ -0,0 +1,2 @@
1
+ import{a as _}from"./chunk-DSJXT5ZP.js";import{b as S,c as q}from"./chunk-AXZ4IDY7.js";import{a as y}from"./chunk-H6XROFQT.js";import{a as p}from"./chunk-XFVXRCMH.js";import{B as h,h as v,qa as b,ua as g,va as O,z as F}from"./chunk-DAUDKN32.js";import{e as a}from"./chunk-H2O4CVKF.js";import{a as o}from"./chunk-P37U34EQ.js";import{useMemo as V}from"react";import{useQuery as P}from"@tanstack/react-query";var f=o(({employmentId:e,options:t})=>{let{client:r}=a();return P({queryKey:["contractor-currencies",e],queryFn:o(async()=>F({client:r,path:{employment_id:e},query:{restrict_to_guaranteed_pay_out_currencies:!1}}),"queryFn"),enabled:t?.queryOptions?.enabled,select:o(({data:n})=>n?.data,"select")})},"useContractorCurrencies"),x=o(({countryCode:e,employmentId:t,fieldValues:r,options:n})=>{let{client:s}=a();return P({queryKey:["contractor-onboarding-details-schema",e,t],retry:!1,queryFn:o(async()=>v({client:s,path:{country_code:e},query:{json_schema_version:1,employment_id:t}}),"queryFn"),enabled:n?.queryOptions?.enabled,select:o(({data:i})=>{let c=i?.data?.schema||{};return p(c,r,n)},"select")})},"useContractorOnboardingDetailsSchema"),J=o(({countryCode:e,employmentId:t,fieldValues:r,options:n})=>{let s=x({countryCode:e,employmentId:t,fieldValues:r,options:n}),{data:i,isLoading:c}=f({employmentId:t,options:{queryOptions:{enabled:n?.queryOptions?.enabled}}}),u=V(()=>!s.data||!i?s.data:{...s.data,fields:s.data.fields.map(l=>l.name!=="payment_terms"?l:{...l,fields:l.fields?.map(d=>d.name!=="compensation_currency_code"?d:{...d,options:i.map(m=>({label:m.code,value:m.code,meta:{source:m.source}}))})})},[s.data,i]);return{...s,data:u,isLoading:s.isLoading||c}},"useContractorContractDetailsSchema");import{useMemo as N}from"react";import{useMutation as C,useQuery as w,queryOptions as E}from"@tanstack/react-query";var oe=o(({enabled:e,employmentId:t,jsfModify:r,includeOneTime:n,isContractorOfRecord:s,includeCustomDays:i,fieldValues:c})=>{let{data:u,isLoading:I}=f({employmentId:t,options:{queryOptions:{enabled:e&&!!t}}});return{data:N(()=>{if(!e||!u)return null;let d=_({currencies:u?.map(m=>m.code),includeOneTime:n,isContractorOfRecord:s,includeCustomDays:i});return p(d,c,{jsfModify:r,transformMoneyFields:!0})},[e,u,r,n,s,i,c]),isLoading:I}},"useGetCreateInvoiceScheduleSchema"),M=o((e,t)=>E({queryKey:["contractor-invoice-schedules",t],queryFn:o(async()=>{let r=await g({client:e,query:{employment_id:t}});if(r.error||!r.data)throw new Error("Failed to fetch invoice schedules");return r},"queryFn")}),"invoiceSchedulesOptions"),re=o(({employmentId:e,options:t})=>{let{client:r}=a();return w({...M(r,e),enabled:t?.queryOptions?.enabled,select:o(n=>n.data?.data?.contractor_invoice_schedules?.find(s=>s.status===y.PENDING_CONTRACTOR_ACTION||s.status===y.PROCESSING||s.status===y.PENDING_COMPANY_ACTION),"select")})},"useGetExistingInvoiceSchedule"),ne=o(()=>{let{client:e}=a();return C({mutationFn:o(async({employmentId:t,values:r})=>{let n={contractor_invoice_schedules:[{employment_id:t,...S(r)}]};return O({client:e,body:n})},"mutationFn")})},"useCreateInvoiceSchedule"),se=o(()=>{let{client:e}=a();return C({mutationFn:o(async({scheduleId:t,values:r})=>{let n=S(r);return h({client:e,path:{id:t},body:n})},"mutationFn")})},"useUpdateInvoiceSchedule"),ae=o(()=>{let{client:e}=a();return C({mutationFn:o(async({scheduleId:t})=>h({client:e,path:{id:t},body:{status:"deleted"}}),"mutationFn")})},"useSkipInvoiceSchedule"),ie=o(()=>{let{client:e}=a();return C({mutationFn:o(async({employmentId:t,values:r})=>{let n=q(r);return b({client:e,path:{employment_id:t},body:n})},"mutationFn")})},"usePreviewContractorInvoice");export{J as a,oe as b,M as c,re as d,ne as e,se as f,ae as g,ie as h};
2
+ //# sourceMappingURL=chunk-FYCOEJEZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/common/api/contractor-contract-details.ts","../src/common/invoice-schedules/api.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useQuery, UseQueryResult } from '@tanstack/react-query';\nimport { FieldValues } from 'react-hook-form';\nimport {\n getV1CountriesCountryCodeContractorContractDetails,\n getV1ContractorsEmploymentsEmploymentIdContractorCurrencies,\n} from '@/src/client';\nimport { useClient } from '@/src/context';\nimport { Client } from '@/src/client/client';\nimport { createHeadlessForm } from '@/src/common/createHeadlessForm';\nimport {\n FlowOptions,\n JSONSchemaFormResultWithFieldsets,\n} from '@/src/flows/types';\nimport { $TSFixMe } from '@/src/types/remoteFlows';\n\nexport const useContractorCurrencies = ({\n employmentId,\n options,\n}: {\n employmentId: string;\n options?: { queryOptions?: { enabled?: boolean } };\n}) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['contractor-currencies', employmentId],\n queryFn: async () => {\n return getV1ContractorsEmploymentsEmploymentIdContractorCurrencies({\n client: client as Client,\n path: { employment_id: employmentId },\n query: {\n restrict_to_guaranteed_pay_out_currencies: false,\n },\n });\n },\n enabled: options?.queryOptions?.enabled,\n select: ({ data }) => {\n return data?.data;\n },\n });\n};\n\n/**\n * Get the contractor onboarding details schema for a given country\n * @param countryCode - The country code\n * @param fieldValues - The field values\n * @param options - The options\n * @returns The contractor onboarding details schema\n */\nconst useContractorOnboardingDetailsSchema = ({\n countryCode,\n employmentId,\n fieldValues,\n options,\n}: {\n countryCode: string;\n fieldValues: FieldValues;\n employmentId: string;\n options?: FlowOptions & { queryOptions?: { enabled?: boolean } };\n}): UseQueryResult<JSONSchemaFormResultWithFieldsets> => {\n const { client } = useClient();\n return useQuery({\n queryKey: [\n 'contractor-onboarding-details-schema',\n countryCode,\n employmentId,\n ],\n retry: false,\n queryFn: async () => {\n return getV1CountriesCountryCodeContractorContractDetails({\n client: client as Client,\n path: { country_code: countryCode },\n query: {\n json_schema_version: 1,\n employment_id: employmentId,\n },\n });\n },\n enabled: options?.queryOptions?.enabled,\n select: ({ data }) => {\n const jsfSchema = data?.data?.schema || {};\n return createHeadlessForm(jsfSchema, fieldValues, options);\n },\n });\n};\n\n/**\n * Get contractor onboarding details schema with currency options overridden\n * from the getIndexContractorCurrency endpoint\n */\nexport const useContractorContractDetailsSchema = ({\n countryCode,\n employmentId,\n fieldValues,\n options,\n}: {\n countryCode: string;\n fieldValues: FieldValues;\n employmentId: string;\n options?: FlowOptions & { queryOptions?: { enabled?: boolean } };\n}) => {\n const schemaQuery = useContractorOnboardingDetailsSchema({\n countryCode,\n employmentId,\n fieldValues,\n options,\n });\n\n const { data: currencies, isLoading: isLoadingCurrencies } =\n useContractorCurrencies({\n employmentId,\n options: {\n queryOptions: { enabled: options?.queryOptions?.enabled },\n },\n });\n\n const dataWithCurrencies = useMemo(() => {\n if (!schemaQuery.data || !currencies) {\n return schemaQuery.data;\n }\n\n const form = {\n ...schemaQuery.data,\n fields: schemaQuery.data.fields.map((field) => {\n if (field.name !== 'payment_terms') {\n return field;\n }\n\n return {\n ...field,\n fields: (field.fields as $TSFixMe[])?.map((nestedField: $TSFixMe) => {\n if (nestedField.name !== 'compensation_currency_code') {\n return nestedField;\n }\n\n // Return a new object with overridden options\n return {\n ...nestedField,\n options: currencies.map((currency) => ({\n label: currency.code,\n value: currency.code,\n meta: { source: currency.source },\n })),\n };\n }),\n };\n }),\n };\n\n return form;\n }, [schemaQuery.data, currencies]);\n\n return {\n ...schemaQuery,\n data: dataWithCurrencies as $TSFixMe,\n isLoading: schemaQuery.isLoading || isLoadingCurrencies,\n };\n};\n","import { useMemo } from 'react';\nimport { useMutation, useQuery, queryOptions } from '@tanstack/react-query';\nimport { FieldValues } from 'react-hook-form';\nimport {\n BulkContractorInvoiceScheduleCreateParams,\n ContractorInvoiceScheduleCreateParams,\n getV1ContractorInvoiceSchedules,\n patchV1ContractorInvoiceSchedulesId2,\n postV1ContractorInvoiceSchedules,\n postV1EmploymentsEmploymentIdContractorInvoicesPreview,\n PreviewContractorInvoiceParams,\n UpdateScheduleContractorInvoiceParams,\n} from '@/src/client';\nimport { Client } from '@/src/client/client';\nimport { useClient } from '@/src/context';\nimport { createHeadlessForm } from '@/src/common/createHeadlessForm';\nimport { useContractorCurrencies } from '@/src/common/api/contractor-contract-details';\nimport { INVOICE_SCHEDULE_STATUS } from '@/src/common/invoice-schedules/constants';\nimport { buildCreateInvoiceScheduleSchema } from '@/src/common/invoice-schedules/json-schema';\nimport {\n buildInvoicePreviewPayload,\n buildInvoiceSchedulePayload,\n} from '@/src/common/invoice-schedules/utils';\nimport {\n JSONSchemaFormResultWithFieldsets,\n JSFModify,\n} from '@/src/flows/types';\n\n/**\n * Get the create invoice schedule schema with currency options from the contractor currencies endpoint.\n * React Query caches the result, so multiple calls share the same data.\n */\nexport const useGetCreateInvoiceScheduleSchema = ({\n enabled,\n employmentId,\n jsfModify,\n includeOneTime,\n isContractorOfRecord,\n includeCustomDays,\n fieldValues,\n}: {\n enabled?: boolean;\n employmentId?: string;\n jsfModify?: JSFModify;\n /**\n * Offer \"One time\" alongside the recurring cadences. Off by default so the in-flow\n * onboarding step keeps the field set it shipped with.\n */\n includeOneTime?: boolean;\n /**\n * Restrict to one-off only, as the platform does for Contractor of Record.\n */\n isContractorOfRecord?: boolean;\n /**\n * Offer the two semi-monthly day fields, which map to `custom_days`.\n */\n includeCustomDays?: boolean;\n /**\n * Current form values. Passed to `createHeadlessForm` so the schema's conditionals — the\n * item-row reveal, and the semi-monthly day fields — re-evaluate as the user fills the\n * form. Without this the form is built once against empty values and nothing ever reveals.\n */\n fieldValues?: Record<string, unknown>;\n}): { data: JSONSchemaFormResultWithFieldsets | null; isLoading: boolean } => {\n const { data: currencies, isLoading: isLoadingCurrencies } =\n useContractorCurrencies({\n employmentId: employmentId as string,\n options: {\n queryOptions: { enabled: enabled && Boolean(employmentId) },\n },\n });\n\n const schemaWithCurrencies = useMemo(() => {\n if (!enabled) return null;\n\n // Both callers know their employment up front, so there is always a currency list on the\n // way — render nothing until it arrives rather than a currency field with no options.\n if (!currencies) return null;\n\n const schema = buildCreateInvoiceScheduleSchema({\n currencies: currencies?.map(\n (currency: { code: string; source: string }) => currency.code,\n ),\n includeOneTime,\n isContractorOfRecord,\n includeCustomDays,\n });\n\n // `transformMoneyFields` has to be explicit: `createHeadlessForm` only defaults it on\n // when no options object is passed at all, so passing `jsfModify` alone silently opted\n // out. Without it the item amounts stay in the money input's major units — a decimal as\n // soon as an amount has cents — and never satisfy the `integer` the row-reveal\n // conditional matches on, which froze the form at a single item for any such amount.\n return createHeadlessForm(schema, fieldValues, {\n jsfModify,\n transformMoneyFields: true,\n });\n }, [\n enabled,\n currencies,\n jsfModify,\n includeOneTime,\n isContractorOfRecord,\n includeCustomDays,\n fieldValues,\n ]);\n\n return {\n data: schemaWithCurrencies,\n isLoading: isLoadingCurrencies,\n };\n};\n\n/**\n * Query options factory for fetching invoice schedules by employment id\n * @param client - The API client\n * @param employmentId - The employment ID\n * @returns Query options for contractor invoice schedules\n */\nexport const invoiceSchedulesOptions = (\n client: Client,\n employmentId: string,\n) => {\n return queryOptions({\n queryKey: ['contractor-invoice-schedules', employmentId] as const,\n queryFn: async () => {\n const response = await getV1ContractorInvoiceSchedules({\n client,\n query: { employment_id: employmentId },\n });\n\n if (response.error || !response.data) {\n throw new Error('Failed to fetch invoice schedules');\n }\n\n return response;\n },\n });\n};\n\n/**\n * Get the last invoice schedule for an employment that matches specific statuses.\n * This is used to determine if a schedule was previously created during onboarding.\n *\n * @param employmentId - The employment ID\n * @param options - Query options\n * @returns The last matching invoice schedule or undefined\n */\nexport const useGetExistingInvoiceSchedule = ({\n employmentId,\n options,\n}: {\n employmentId: string;\n options?: { queryOptions?: { enabled?: boolean } };\n}) => {\n const { client } = useClient();\n return useQuery({\n ...invoiceSchedulesOptions(client as Client, employmentId),\n enabled: options?.queryOptions?.enabled,\n select: (response) => {\n // Find the first invoice schedule that matches the editing criteria\n return response.data?.data?.contractor_invoice_schedules?.find(\n (invoice) =>\n invoice.status ===\n INVOICE_SCHEDULE_STATUS.PENDING_CONTRACTOR_ACTION ||\n invoice.status === INVOICE_SCHEDULE_STATUS.PROCESSING ||\n invoice.status === INVOICE_SCHEDULE_STATUS.PENDING_COMPANY_ACTION,\n );\n },\n });\n};\n\n/**\n * Creates contractor invoice schedules\n * @param employmentId - The employment ID\n * @param values - The form values containing invoice schedule data\n * @returns The created invoice schedules\n */\nexport const useCreateInvoiceSchedule = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n values,\n }: {\n employmentId: string;\n values: FieldValues;\n }) => {\n const payload: BulkContractorInvoiceScheduleCreateParams = {\n contractor_invoice_schedules: [\n {\n employment_id: employmentId,\n ...buildInvoiceSchedulePayload(values),\n } as ContractorInvoiceScheduleCreateParams,\n ],\n };\n\n return postV1ContractorInvoiceSchedules({\n client: client as Client,\n body: payload,\n });\n },\n });\n};\n\n/**\n * Updates an existing contractor invoice schedule\n * @param scheduleId - The invoice schedule ID\n * @param values - The form values containing invoice schedule data\n * @returns The updated invoice schedule\n */\nexport const useUpdateInvoiceSchedule = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n scheduleId,\n values,\n }: {\n scheduleId: string;\n values: FieldValues;\n }) => {\n const payload: UpdateScheduleContractorInvoiceParams =\n buildInvoiceSchedulePayload(values);\n\n return patchV1ContractorInvoiceSchedulesId2({\n client: client as Client,\n path: { id: scheduleId },\n body: payload,\n });\n },\n });\n};\n\n/**\n * Skips (cancels) an existing contractor invoice schedule by marking it as deleted.\n * @param scheduleId - The invoice schedule ID\n * @returns The updated invoice schedule\n */\nexport const useSkipInvoiceSchedule = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({ scheduleId }: { scheduleId: string }) => {\n const payload: UpdateScheduleContractorInvoiceParams = {\n status: 'deleted',\n };\n\n return patchV1ContractorInvoiceSchedulesId2({\n client: client as Client,\n path: { id: scheduleId },\n body: payload,\n });\n },\n });\n};\n\n/**\n * Previews a contractor invoice as a draft PDF, without persisting it.\n * @param employmentId - The employment ID\n * @param values - The form values containing invoice details\n * @returns The base64-encoded PDF preview\n */\nexport const usePreviewContractorInvoice = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n values,\n }: {\n employmentId: string;\n values: FieldValues;\n }) => {\n const payload = buildInvoicePreviewPayload(\n values,\n ) as PreviewContractorInvoiceParams;\n\n return postV1EmploymentsEmploymentIdContractorInvoicesPreview({\n client: client as Client,\n path: { employment_id: employmentId },\n body: payload,\n });\n },\n });\n};\n"],"mappings":"qUAAA,OAAS,WAAAA,MAAe,QACxB,OAAS,YAAAC,MAAgC,wBAelC,IAAMC,EAA0BC,EAAA,CAAC,CACtC,aAAAC,EACA,QAAAC,CACF,IAGM,CACJ,GAAM,CAAE,OAAAC,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAS,CACd,SAAU,CAAC,wBAAyBJ,CAAY,EAChD,QAASD,EAAA,SACAM,EAA4D,CACjE,OAAQH,EACR,KAAM,CAAE,cAAeF,CAAa,EACpC,MAAO,CACL,0CAA2C,EAC7C,CACF,CAAC,EAPM,WAST,QAASC,GAAS,cAAc,QAChC,OAAQF,EAAA,CAAC,CAAE,KAAAO,CAAK,IACPA,GAAM,KADP,SAGV,CAAC,CACH,EAxBuC,2BAiCjCC,EAAuCR,EAAA,CAAC,CAC5C,YAAAS,EACA,aAAAR,EACA,YAAAS,EACA,QAAAR,CACF,IAKyD,CACvD,GAAM,CAAE,OAAAC,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAS,CACd,SAAU,CACR,uCACAI,EACAR,CACF,EACA,MAAO,GACP,QAASD,EAAA,SACAW,EAAmD,CACxD,OAAQR,EACR,KAAM,CAAE,aAAcM,CAAY,EAClC,MAAO,CACL,oBAAqB,EACrB,cAAeR,CACjB,CACF,CAAC,EARM,WAUT,QAASC,GAAS,cAAc,QAChC,OAAQF,EAAA,CAAC,CAAE,KAAAO,CAAK,IAAM,CACpB,IAAMK,EAAYL,GAAM,MAAM,QAAU,CAAC,EACzC,OAAOM,EAAmBD,EAAWF,EAAaR,CAAO,CAC3D,EAHQ,SAIV,CAAC,CACH,EAnC6C,wCAyChCY,EAAqCd,EAAA,CAAC,CACjD,YAAAS,EACA,aAAAR,EACA,YAAAS,EACA,QAAAR,CACF,IAKM,CACJ,IAAMa,EAAcP,EAAqC,CACvD,YAAAC,EACA,aAAAR,EACA,YAAAS,EACA,QAAAR,CACF,CAAC,EAEK,CAAE,KAAMc,EAAY,UAAWC,CAAoB,EACvDlB,EAAwB,CACtB,aAAAE,EACA,QAAS,CACP,aAAc,CAAE,QAASC,GAAS,cAAc,OAAQ,CAC1D,CACF,CAAC,EAEGgB,EAAqBC,EAAQ,IAC7B,CAACJ,EAAY,MAAQ,CAACC,EACjBD,EAAY,KAGR,CACX,GAAGA,EAAY,KACf,OAAQA,EAAY,KAAK,OAAO,IAAKK,GAC/BA,EAAM,OAAS,gBACVA,EAGF,CACL,GAAGA,EACH,OAASA,EAAM,QAAuB,IAAKC,GACrCA,EAAY,OAAS,6BAChBA,EAIF,CACL,GAAGA,EACH,QAASL,EAAW,IAAKM,IAAc,CACrC,MAAOA,EAAS,KAChB,MAAOA,EAAS,KAChB,KAAM,CAAE,OAAQA,EAAS,MAAO,CAClC,EAAE,CACJ,CACD,CACH,CACD,CACH,EAGC,CAACP,EAAY,KAAMC,CAAU,CAAC,EAEjC,MAAO,CACL,GAAGD,EACH,KAAMG,EACN,UAAWH,EAAY,WAAaE,CACtC,CACF,EAnEkD,sCC1FlD,OAAS,WAAAM,MAAe,QACxB,OAAS,eAAAC,EAAa,YAAAC,EAAU,gBAAAC,MAAoB,wBA+B7C,IAAMC,GAAoCC,EAAA,CAAC,CAChD,QAAAC,EACA,aAAAC,EACA,UAAAC,EACA,eAAAC,EACA,qBAAAC,EACA,kBAAAC,EACA,YAAAC,CACF,IAuB8E,CAC5E,GAAM,CAAE,KAAMC,EAAY,UAAWC,CAAoB,EACvDC,EAAwB,CACtB,aAAcR,EACd,QAAS,CACP,aAAc,CAAE,QAASD,GAAW,EAAQC,CAAc,CAC5D,CACF,CAAC,EAqCH,MAAO,CACL,KApC2BS,EAAQ,IAAM,CAKzC,GAJI,CAACV,GAID,CAACO,EAAY,OAAO,KAExB,IAAMI,EAASC,EAAiC,CAC9C,WAAYL,GAAY,IACrBM,GAA+CA,EAAS,IAC3D,EACA,eAAAV,EACA,qBAAAC,EACA,kBAAAC,CACF,CAAC,EAOD,OAAOS,EAAmBH,EAAQL,EAAa,CAC7C,UAAAJ,EACA,qBAAsB,EACxB,CAAC,CACH,EAAG,CACDF,EACAO,EACAL,EACAC,EACAC,EACAC,EACAC,CACF,CAAC,EAIC,UAAWE,CACb,CACF,EA/EiD,qCAuFpCO,EAA0BhB,EAAA,CACrCiB,EACAf,IAEOgB,EAAa,CAClB,SAAU,CAAC,+BAAgChB,CAAY,EACvD,QAASF,EAAA,SAAY,CACnB,IAAMmB,EAAW,MAAMC,EAAgC,CACrD,OAAAH,EACA,MAAO,CAAE,cAAef,CAAa,CACvC,CAAC,EAED,GAAIiB,EAAS,OAAS,CAACA,EAAS,KAC9B,MAAM,IAAI,MAAM,mCAAmC,EAGrD,OAAOA,CACT,EAXS,UAYX,CAAC,EAlBoC,2BA6B1BE,GAAgCrB,EAAA,CAAC,CAC5C,aAAAE,EACA,QAAAoB,CACF,IAGM,CACJ,GAAM,CAAE,OAAAL,CAAO,EAAIM,EAAU,EAC7B,OAAOC,EAAS,CACd,GAAGR,EAAwBC,EAAkBf,CAAY,EACzD,QAASoB,GAAS,cAAc,QAChC,OAAQtB,EAACmB,GAEAA,EAAS,MAAM,MAAM,8BAA8B,KACvDM,GACCA,EAAQ,SACNC,EAAwB,2BAC1BD,EAAQ,SAAWC,EAAwB,YAC3CD,EAAQ,SAAWC,EAAwB,sBAC/C,EARM,SAUV,CAAC,CACH,EAtB6C,iCA8BhCC,GAA2B3B,EAAA,IAAM,CAC5C,GAAM,CAAE,OAAAiB,CAAO,EAAIM,EAAU,EAC7B,OAAOK,EAAY,CACjB,WAAY5B,EAAA,MAAO,CACjB,aAAAE,EACA,OAAA2B,CACF,IAGM,CACJ,IAAMC,EAAqD,CACzD,6BAA8B,CAC5B,CACE,cAAe5B,EACf,GAAG6B,EAA4BF,CAAM,CACvC,CACF,CACF,EAEA,OAAOG,EAAiC,CACtC,OAAQf,EACR,KAAMa,CACR,CAAC,CACH,EApBY,aAqBd,CAAC,CACH,EAzBwC,4BAiC3BG,GAA2BjC,EAAA,IAAM,CAC5C,GAAM,CAAE,OAAAiB,CAAO,EAAIM,EAAU,EAC7B,OAAOK,EAAY,CACjB,WAAY5B,EAAA,MAAO,CACjB,WAAAkC,EACA,OAAAL,CACF,IAGM,CACJ,IAAMC,EACJC,EAA4BF,CAAM,EAEpC,OAAOM,EAAqC,CAC1C,OAAQlB,EACR,KAAM,CAAE,GAAIiB,CAAW,EACvB,KAAMJ,CACR,CAAC,CACH,EAfY,aAgBd,CAAC,CACH,EApBwC,4BA2B3BM,GAAyBpC,EAAA,IAAM,CAC1C,GAAM,CAAE,OAAAiB,CAAO,EAAIM,EAAU,EAC7B,OAAOK,EAAY,CACjB,WAAY5B,EAAA,MAAO,CAAE,WAAAkC,CAAW,IAKvBC,EAAqC,CAC1C,OAAQlB,EACR,KAAM,CAAE,GAAIiB,CAAW,EACvB,KAPqD,CACrD,OAAQ,SACV,CAMA,CAAC,EATS,aAWd,CAAC,CACH,EAfsC,0BAuBzBG,GAA8BrC,EAAA,IAAM,CAC/C,GAAM,CAAE,OAAAiB,CAAO,EAAIM,EAAU,EAC7B,OAAOK,EAAY,CACjB,WAAY5B,EAAA,MAAO,CACjB,aAAAE,EACA,OAAA2B,CACF,IAGM,CACJ,IAAMC,EAAUQ,EACdT,CACF,EAEA,OAAOU,EAAuD,CAC5D,OAAQtB,EACR,KAAM,CAAE,cAAef,CAAa,EACpC,KAAM4B,CACR,CAAC,CACH,EAhBY,aAiBd,CAAC,CACH,EArB2C","names":["useMemo","useQuery","useContractorCurrencies","__name","employmentId","options","client","useClient","useQuery","getV1ContractorsEmploymentsEmploymentIdContractorCurrencies","data","useContractorOnboardingDetailsSchema","countryCode","fieldValues","getV1CountriesCountryCodeContractorContractDetails","jsfSchema","createHeadlessForm","useContractorContractDetailsSchema","schemaQuery","currencies","isLoadingCurrencies","dataWithCurrencies","useMemo","field","nestedField","currency","useMemo","useMutation","useQuery","queryOptions","useGetCreateInvoiceScheduleSchema","__name","enabled","employmentId","jsfModify","includeOneTime","isContractorOfRecord","includeCustomDays","fieldValues","currencies","isLoadingCurrencies","useContractorCurrencies","useMemo","schema","buildCreateInvoiceScheduleSchema","currency","createHeadlessForm","invoiceSchedulesOptions","client","queryOptions","response","getV1ContractorInvoiceSchedules","useGetExistingInvoiceSchedule","options","useClient","useQuery","invoice","INVOICE_SCHEDULE_STATUS","useCreateInvoiceSchedule","useMutation","values","payload","buildInvoiceSchedulePayload","postV1ContractorInvoiceSchedules","useUpdateInvoiceSchedule","scheduleId","patchV1ContractorInvoiceSchedulesId2","useSkipInvoiceSchedule","usePreviewContractorInvoice","buildInvoicePreviewPayload","postV1EmploymentsEmploymentIdContractorInvoicesPreview"]}
@@ -1,2 +1,2 @@
1
- import{a}from"./chunk-D737GUYZ.js";import{a as i}from"./chunk-G6F6ZZES.js";import{b as d}from"./chunk-R2D32OB6.js";import{a as l}from"./chunk-SNGQ2MKL.js";import{a as S}from"./chunk-FHYOWPXB.js";import{a as c}from"./chunk-QXW2MAFG.js";import{a as f}from"./chunk-YUUUI4FY.js";import{a as n}from"./chunk-UU2IFOXR.js";import{a as s}from"./chunk-BYTVIOOL.js";import{a as p}from"./chunk-EQIWABAZ.js";import{a as g}from"./chunk-ANZ2YYUE.js";import{a as m}from"./chunk-B7BJXPGT.js";import{a as r}from"./chunk-PGWKJ6FK.js";import{a as t}from"./chunk-G3KQCVQQ.js";import{a as o}from"./chunk-P37U34EQ.js";import{useId as h,useState as A}from"react";import{jsx as E}from"react/jsx-runtime";var V=o(({employmentId:u,companyId:b,countryCode:v,type:O="employee",externalId:w,skipSteps:B,initialValues:I,render:C,options:P})=>{let D=h(),e=t({companyId:b,countryCode:v,employmentId:u,type:O,options:P,skipSteps:B,externalId:w,initialValues:I}),[R,y]=A({showReserveInvoice:!1,showInviteSuccessful:!1});return E(r.Provider,{value:{formId:D,onboardingBag:e,creditScore:R,setCreditScore:y},children:C({onboardingBag:e,components:{BasicInformationStep:n,EngagementAgreementDetailsStep:g,ContractDetailsStep:p,BenefitsStep:s,SubmitButton:i,SaveDraftButton:c,BackButton:m,OnboardingInvite:a,SelectCountryStep:f,ReviewStep:S,PreOnboardingRequirements:d,PreviewEmploymentAgreementStep:l}})})},"OnboardingFlow");export{V as a};
2
- //# sourceMappingURL=chunk-UAEQLFPK.js.map
1
+ import{a as f}from"./chunk-L7FN3XPX.js";import{a as m}from"./chunk-B7BJXPGT.js";import{a}from"./chunk-CWKXQZRT.js";import{a as i}from"./chunk-G6F6ZZES.js";import{b as d}from"./chunk-57QHHIWL.js";import{a as l}from"./chunk-KFIUXU6I.js";import{a as S}from"./chunk-FHYOWPXB.js";import{a as c}from"./chunk-QXW2MAFG.js";import{a as n}from"./chunk-57Y5XQ3D.js";import{a as s}from"./chunk-3DOSHTJS.js";import{a as p}from"./chunk-ZJ55AKB6.js";import{a as g}from"./chunk-6OLV37C2.js";import{a as r}from"./chunk-PGWKJ6FK.js";import{a as t}from"./chunk-2KA6NZOQ.js";import{a as o}from"./chunk-P37U34EQ.js";import{useId as h,useState as A}from"react";import{jsx as E}from"react/jsx-runtime";var V=o(({employmentId:u,companyId:b,countryCode:v,type:O="employee",externalId:w,skipSteps:B,initialValues:I,render:C,options:P})=>{let D=h(),e=t({companyId:b,countryCode:v,employmentId:u,type:O,options:P,skipSteps:B,externalId:w,initialValues:I}),[R,y]=A({showReserveInvoice:!1,showInviteSuccessful:!1});return E(r.Provider,{value:{formId:D,onboardingBag:e,creditScore:R,setCreditScore:y},children:C({onboardingBag:e,components:{BasicInformationStep:n,EngagementAgreementDetailsStep:g,ContractDetailsStep:p,BenefitsStep:s,SubmitButton:i,SaveDraftButton:c,BackButton:m,OnboardingInvite:a,SelectCountryStep:f,ReviewStep:S,PreOnboardingRequirements:d,PreviewEmploymentAgreementStep:l}})})},"OnboardingFlow");export{V as a};
2
+ //# sourceMappingURL=chunk-G3BWBRCE.js.map
@@ -1,2 +1,2 @@
1
- import{a as s}from"./chunk-DLIVHNTT.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as a}from"react/jsx-runtime";var c=e(({currency:n,desiredCurrency:o,annual_gross_salary_conversion_properties:r,splitDescription:i,...t})=>a(s,{...t,sourceCurrency:n,targetCurrency:o,splitDescription:i,conversionFieldName:"annual_gross_salary_conversion",conversionProperties:{...r,description:r?.description||"Estimated amount. This is an estimation. We calculate conversions based on spot rates that are subject to fluctuation over time."},classNamePrefix:"RemoteFlows-AnnualGrossSalary",conversionType:"no_spread"}),"AnnualGrossSalary");export{c as a};
2
- //# sourceMappingURL=chunk-LCUYP6VW.js.map
1
+ import{a as s}from"./chunk-VKORYYED.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as a}from"react/jsx-runtime";var c=e(({currency:n,desiredCurrency:o,annual_gross_salary_conversion_properties:r,splitDescription:i,...t})=>a(s,{...t,sourceCurrency:n,targetCurrency:o,splitDescription:i,conversionFieldName:"annual_gross_salary_conversion",conversionProperties:{...r,description:r?.description||"Estimated amount. This is an estimation. We calculate conversions based on spot rates that are subject to fluctuation over time."},classNamePrefix:"RemoteFlows-AnnualGrossSalary",conversionType:"no_spread"}),"AnnualGrossSalary");export{c as a};
2
+ //# sourceMappingURL=chunk-GGTV6IQ3.js.map
@@ -0,0 +1,2 @@
1
+ import{a as te}from"./chunk-753FEV2S.js";import{a as ne}from"./chunk-Y2NCUO3F.js";import{a as Z}from"./chunk-VDJJEIOD.js";import{a as ee}from"./chunk-UYOKK4QW.js";import{e as P}from"./chunk-TDKKCSKV.js";import{a as O,b as oe,c as q,d as S,f as F,m as re}from"./chunk-PB6UQ4A4.js";import{a as W}from"./chunk-EP3BNRH3.js";import{a as X}from"./chunk-3HMBTPH7.js";import{a as p}from"./chunk-XFVXRCMH.js";import{M as U,S as j,_ as L,ba as J,ea as G,f as w,ga as K,ja as N,ka as k,la as B,ma as $,oa as H,ra as Y,s as v,sa as z,v as A,w as Q}from"./chunk-DAUDKN32.js";import{b as _,g as I,t as V}from"./chunk-C4HFMTSB.js";import{e as s}from"./chunk-H2O4CVKF.js";import{a as n}from"./chunk-P37U34EQ.js";import{useMemo as le}from"react";import{useMutation as y,useQuery as d}from"@tanstack/react-query";import{useMutation as ge,useQuery as ie}from"@tanstack/react-query";var Re=n(()=>{let{client:e}=s();return ge({mutationFn:n(t=>K({client:e,body:t,headers:{Authorization:""}}),"mutationFn")})},"useUploadFile"),se=n(e=>{let{client:t}=s();return ie({queryKey:["download-file",e],queryFn:n(async()=>{let o=await U({client:t,path:{id:e}});if(o.error)throw o.error;return o.data},"queryFn"),select:n(({data:o})=>o?.file,"select"),enabled:!!e})},"useDownloadFile"),ae=n((e,t,o)=>{let{client:r}=s();return ie({queryKey:["employment-files",e],queryFn:n(async()=>{let i=await G({client:r,path:{employment_id:e},query:t});if(i.error)throw i.error;return i.data},"queryFn"),...o})},"useEmploymentFiles");import{useQuery as Fe}from"@tanstack/react-query";import{useQuery as Se}from"@tanstack/react-query";var h=n(()=>{let{client:e}=s();return Se({queryKey:["identity"],queryFn:n(()=>k({client:e,headers:{Authorization:""}}),"queryFn"),select:n(t=>t.data?.data,"select")})},"useIdentity");function M(e){return e!=null&&"company"in e}n(M,"hasCompany");var ce=n((e={enabled:!0})=>{let{data:t}=h(),o=M(t)?t?.company?.id??"":"",{client:r}=s();return Fe({queryKey:["pricing-plans",o],queryFn:n(()=>w({client:r,path:{company_id:o}}),"queryFn"),select:n(i=>i.data?.data?.pricing_plans,"select"),enabled:!!e?.enabled&&!!o})},"useCompanyPricingPlans");var xt=n(({fieldValues:e,options:t})=>d({queryKey:["contract-document-signature",e.review_completed,t?.jsfModify],queryFn:n(async()=>p(Z,e,{jsfModify:t?.jsfModify}),"queryFn"),enabled:t?.queryOptions?.enabled}),"useGetContractDocumentSignatureSchema"),Tt=n(()=>{let{client:e}=s();return y({mutationFn:n(async({employmentId:t,contractDocumentId:o,payload:r})=>N({client:e,body:r,path:{employment_id:t,contract_document_id:o}}),"mutationFn")})},"useSignContractDocument"),he=n(({employmentId:e,contractDocumentId:t,options:o})=>{let{client:r}=s();return d({queryKey:["contract-document",e,t],queryFn:n(async()=>A({client:r,path:{employment_id:e,id:t}}),"queryFn"),enabled:o?.queryOptions?.enabled,select:n(({data:i})=>({...i?.data,contract_document:{...i?.data?.contract_document,content:V(i?.data?.contract_document?.content)}}),"select")})},"useGetShowContractDocument"),Dt=n(({employmentId:e,contractDocumentId:t,options:o})=>{let{data:r}=he({employmentId:e,contractDocumentId:t,options:{queryOptions:{enabled:o?.queryOptions?.enabled}}});return{hasCompanySignedContract:r?.contract_document?.signatories?.some(a=>a.type==="company"&&a.status==="signed")}},"useHasCompanySignedContract"),Ee=n(({employmentId:e,options:t})=>{let{client:o}=s();return d({queryKey:["contractor-subscriptions",e],queryFn:n(async()=>v({client:o,path:{employment_id:e}}),"queryFn"),enabled:t?.queryOptions?.enabled,select:n(({data:r})=>r?.data,"select")})},"useGetContractorSubscriptions"),Rt=n(()=>{let{client:e}=s();return y({mutationFn:n(async({employmentId:t,payload:o})=>$({client:e,body:o,path:{employment_id:t}}),"mutationFn")})},"usePostManageContractorSubscriptions"),Vt=n(()=>{let{client:e}=s();return y({mutationFn:n(async({employmentId:t,payload:o})=>J({client:e,body:o,path:{employment_id:t}}),"mutationFn")})},"useCreateContractorContractDocument"),_e={[O]:"Contractor Management",[oe]:"Contractor Management Plus",[q]:"Contractor of Record"},Ie=n(e=>{let{data:t,isLoading:o}=ce({enabled:e?.enabled}),r=t?.find(a=>a.product.name==="EOR Monthly");return{eorSubscription:r?{product:{identifier:S,short_name:"EOR"},currency:r.price.currency,price:{amount:I(r.price.amount)},features:["Contract between Remote and employee","Remote manages onboarding, payroll, and compliance","Manages taxes, benefits, and time-off tracking","Handles contracts, transfers, and terminations"],description:"Enables hiring in countries without a local entity",label:"Employer of Record",value:S}:null,isLoading:o}},"useEorSubscription"),Oe=n((e,t,o)=>(t&&P(S,o)&&e.push({label:t.label,value:t.value,description:t.description,meta:{features:t.features,price:{amount:t.price.amount,currencyCode:t.currency?.code??""}},disabled:!1}),e),"addEorToFieldOptions"),wt=n((e,t,o)=>{let{data:r,isLoading:i,refetch:a}=Ee({employmentId:e,options:{queryOptions:o?.queryOptions}}),c=le(()=>r?.filter(u=>P(u.product.identifier??"",o?.excludeProducts))??[],[r,o?.excludeProducts]),g=r?r?.length<3:!1,C=r?.find(u=>u.product.identifier===q)?.eligibility_questionnaire?.is_blocking,E=(g||C)&&t?.eor_onboarding&&!o?.excludeProducts?.includes("eor"),{eorSubscription:T,isLoading:ue}=Ie({enabled:E}),de=c.length>0||E&&T!==null,D=p(ne.data.schema,{},{...o,jsfModify:{...o?.jsfModify,required:de?o?.jsfModify?.required:u=>u.filter(m=>m!=="subscription")}}),R=D.fields.find(u=>u.name==="subscription");if(R){let u=c.map(b=>{let l=b.product,me=b.price.amount,pe=b.currency.code,ye=_e[l.identifier]??"",fe=l.identifier??"",Ce=l.description??"";l.description||console.error(`[Data Integrity] Missing description for product: ${l.identifier}`,{product:l});let be={features:l.features??re[l.identifier]??[],price:{amount:I(me),currencyCode:pe}};return{label:ye,value:fe,description:Ce,meta:be,disabled:C&&l.identifier!==O}});u.sort((b,l)=>b.label.localeCompare(l.label));let m=[];E&&(Oe(m,T,o?.excludeProducts),m.length>0&&(m[0].meta={...m[0].meta,groupSeparator:{show:!0}})),R.options=[...u,...m]}return{isLoading:i||ue,form:D,contractorSubscriptions:r,filteredContractorSubscriptions:c,refetch:a,isEligibilityQuestionnaireBlocked:C}},"useContractorSubscriptionSchemaField"),vt=n((e,t,o)=>{let{mutateAsyncOrThrow:r}=_(t),{mutateAsyncOrThrow:i}=_(e);return{mutateAsync:n(async({employmentId:a})=>{let{nationality_status:c,ir35:f,ir35_sds_file:g}=o,x={contract_document:{ir_35:f}},C={contract_document:{nationality:c}};return f?(await i({employmentId:a,payload:x}),g?r({employment_id:a,file:g,sub_type:F}):Promise.resolve()):c?i({employmentId:a,payload:C}):Promise.resolve()},"mutateAsync")}},"useUpdateUKandSaudiFields"),At=n((e,t)=>{let{data:o,isLoading:r}=ae(e,{sub_type:F},{...t,select:n(({data:c})=>c?.files?.filter(f=>f.sub_type===F),"select")}),i=o?.[0]?.id,a=se(i);return{...a,isLoading:r||a.isLoading}},"useGetIR35File"),Qt=n((e,t)=>{let{client:o}=s();return d({queryKey:["contract-documents",e],queryFn:n(async()=>Q({client:o,path:{employment_id:e}}),"queryFn"),enabled:t?.enabled,select:n(({data:r})=>r?.data?.contract_documents,"select")})},"useGetContractDocuments"),Ut=n(({options:e,fieldValues:t})=>{let{client:o}=s();return d({queryKey:["eligibility-questionnaire"],queryFn:n(async()=>{let r=await B({client:o,query:{type:"contractor_of_record",json_schema_version:1}});if(r.error)throw new Error("Failed to fetch eligibility questionnaire");return r.data.data},"queryFn"),select:n(r=>{let i=r?.schema||{};return p(i,t,{jsfModify:e?.jsfModify})},"select"),enabled:e?.queryOptions?.enabled})},"useGetEligibilityQuestionnaire"),jt=n(()=>{let{client:e}=s();return y({mutationFn:n(async({employmentId:t,payload:o})=>j({client:e,body:{employment_slug:t,responses:o,type:"contractor_of_record"},query:{json_schema_version:1}}),"mutationFn")})},"usePostCreateEligibilityQuestionnaire"),Lt=n(()=>{let{client:e}=s();return y({mutationFn:n(async({employmentId:t})=>z({client:e,path:{employment_id:t}}),"mutationFn")})},"usePostManageContractorCorSubscription"),Jt=n(()=>{let{client:e}=s();return y({mutationFn:n(async({employmentId:t})=>Y({client:e,path:{employment_id:t}}),"mutationFn")})},"useDeleteContractorCorSubscription"),Gt=n(()=>{let{client:e}=s();return y({mutationFn:n(async({employmentId:t,contractOrigin:o,templateType:r})=>L({client:e,path:{employment_id:t},body:{contract_origin:o,template_type:r}}),"mutationFn")})},"useSetContractOrigin"),Kt=n(({fieldValues:e,options:t})=>d({queryKey:["contract-origin-schema",t?.jsfModify],queryFn:n(async()=>p(ee,e,{jsfModify:t?.jsfModify}),"queryFn"),enabled:t?.queryOptions?.enabled}),"useGetContractOriginSchema"),Nt=n(({enabled:e,jsfModify:t})=>le(()=>e?p(te,{},{jsfModify:t}):null,[e,t]),"useGetInvoiceScheduleSchema"),kt=n(e=>{let{client:t}=s(),{data:o,isLoading:r}=d({...X(t,"contractor-onboarding-countries"),select:n(a=>a.data?.data?.map(c=>({label:c.name,value:c.code,eor_onboarding:c.eor_onboarding,contractor_products_available:c.contractor_products_available}))||[],"select"),enabled:e?.queryOptions?.enabled}),i=p(W.data.schema,{},e);if(o){let a=i.fields.find(c=>c.name==="country");a&&(a.options=o)}return{isLoading:r,selectCountryForm:i,countries:o}},"useCountriesSchemaField"),Bt=n(({options:e}={})=>{let{data:t}=h(),o=M(t)?t?.company?.id??"":"",{client:r}=s();return d({queryKey:["company-open-tasks",o],queryFn:n(()=>H({client:r,path:{company_id:o}}),"queryFn"),select:n(({data:i})=>i?.data?.actions??[],"select"),enabled:(e?.queryOptions?.enabled??!0)&&!!o})},"useCompanyOpenTasks");export{Re as a,h as b,M as c,xt as d,Tt as e,he as f,Dt as g,Ee as h,Rt as i,Vt as j,_e as k,wt as l,vt as m,At as n,Qt as o,Ut as p,jt as q,Lt as r,Jt as s,Gt as t,Kt as u,Nt as v,kt as w,Bt as x};
2
+ //# sourceMappingURL=chunk-GGVW6SG6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/ContractorOnboarding/api.ts","../src/common/api/files.ts","../src/common/api/companies.ts","../src/common/api/identity.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport {\n CompanyAction,\n CreateContractDocument,\n getV1CompaniesCompanyIdActions,\n getV1ContractorsEmploymentsEmploymentIdContractDocumentsId,\n getV1ContractorsEmploymentsEmploymentIdContractorSubscriptions,\n ManageContractorPlusSubscriptionOperationsParams,\n postV1ContractorsEmploymentsEmploymentIdContractDocuments,\n postV1ContractorsEmploymentsEmploymentIdContractorPlusSubscription,\n postV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSign,\n SignContractDocument,\n getV1EmploymentsEmploymentIdContractDocuments,\n EligibilityQuestionnaireJsonSchemaResponse,\n getV1ContractorsSchemasEligibilityQuestionnaire,\n SubmitEligibilityQuestionnaireRequest,\n postV1ContractorsEligibilityQuestionnaire,\n postV1ContractorsEmploymentsEmploymentIdContractorCorSubscription,\n postV1EmploymentsEmploymentIdContractOrigin,\n deleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscription,\n Country,\n PostV1EmploymentsEmploymentIdContractOriginData,\n} from '@/src/client';\nimport { useClient } from '@/src/context';\nimport { signatureSchema } from '@/src/flows/ContractorOnboarding/json-schemas/signature';\nimport { contractOriginSchema } from '@/src/flows/ContractorOnboarding/json-schemas/contractOrigin';\nimport { invoiceScheduleSchema } from '@/src/flows/ContractorOnboarding/json-schemas/invoiceSchedule';\nimport { selectContractorSubscriptionStepSchema } from '@/src/flows/ContractorOnboarding/json-schemas/selectContractorSubscriptionStep';\nimport {\n JSONSchemaFormResultWithFieldsets,\n FlowOptions,\n JSFModify,\n} from '@/src/flows/types';\nimport { clearBase64Data } from '@/src/lib/utils';\nimport { Client } from '@/src/client/client';\nimport { createHeadlessForm } from '@/src/common/createHeadlessForm';\nimport { useMutation, useQuery } from '@tanstack/react-query';\nimport { FieldValues } from 'react-hook-form';\nimport {\n contractorPlusProductIdentifier,\n contractorStandardProductIdentifier,\n corProductIdentifier,\n eorProductIdentifier,\n FEATURES_BY_IDENTIFIER,\n IR35_FILE_SUBTYPE,\n ProductType,\n} from '@/src/flows/ContractorOnboarding/constants';\nimport { $TSFixMe, JSFField } from '@/src/types/remoteFlows';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport {\n useDownloadFile,\n useEmploymentFiles,\n useUploadFile,\n} from '@/src/common/api/files';\nimport { convertFromCents } from '@/src/components/form/utils';\nimport { countriesOptions } from '@/src/common/api/countries';\nimport { selectCountryStepSchema } from '@/src/flows/Onboarding/json-schemas/selectCountryStep';\nimport { shouldIncludeProduct } from '@/src/flows/ContractorOnboarding/utils';\nimport { useCompanyPricingPlans, hasCompany } from '@/src/common/api/companies';\nimport { useIdentity } from '@/src/common/api/identity';\n\n/**\n * Get the contract document signature schema\n * @param fieldValues - The field values\n * @param options - The options\n * @returns The contract document signature schema\n */\nexport const useGetContractDocumentSignatureSchema = ({\n fieldValues,\n options,\n}: {\n fieldValues: FieldValues;\n options?: { queryOptions?: { enabled?: boolean }; jsfModify?: JSFModify };\n}) => {\n return useQuery({\n queryKey: [\n 'contract-document-signature',\n fieldValues.review_completed,\n options?.jsfModify,\n ],\n queryFn: async () => {\n return createHeadlessForm(signatureSchema, fieldValues, {\n jsfModify: options?.jsfModify,\n });\n },\n enabled: options?.queryOptions?.enabled,\n });\n};\n\n/**\n * Signs the contract document\n * @param employmentId - The employment ID\n * @param contractDocumentId - The contract document ID\n * @param payload - The payload\n * @returns The signed contract document\n */\nexport const useSignContractDocument = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n contractDocumentId,\n payload,\n }: {\n employmentId: string;\n contractDocumentId: string;\n payload: SignContractDocument;\n }) => {\n return postV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSign(\n {\n client: client as Client,\n body: payload,\n path: {\n employment_id: employmentId,\n contract_document_id: contractDocumentId,\n },\n },\n );\n },\n });\n};\n\n/**\n * Get the contract document for a given employment and contract document ID\n * @param employmentId - The employment ID\n * @param contractDocumentId - The contract document ID\n * @returns The contract document\n */\nexport const useGetShowContractDocument = ({\n employmentId,\n contractDocumentId,\n options,\n}: {\n employmentId: string;\n contractDocumentId: string;\n options?: { queryOptions?: { enabled?: boolean }; jsfModify?: JSFModify };\n}) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['contract-document', employmentId, contractDocumentId],\n queryFn: async () => {\n return getV1ContractorsEmploymentsEmploymentIdContractDocumentsId({\n client: client as Client,\n path: { employment_id: employmentId, id: contractDocumentId },\n });\n },\n enabled: options?.queryOptions?.enabled,\n select: ({ data }) => {\n return {\n ...data?.data,\n contract_document: {\n ...data?.data?.contract_document,\n content: clearBase64Data(\n data?.data?.contract_document?.content as $TSFixMe,\n ),\n },\n };\n },\n });\n};\n\nexport const useHasCompanySignedContract = ({\n employmentId,\n contractDocumentId,\n options,\n}: {\n employmentId: string;\n contractDocumentId: string;\n options?: { queryOptions?: { enabled?: boolean } };\n}) => {\n const { data: documentPreviewPdf } = useGetShowContractDocument({\n employmentId,\n contractDocumentId,\n options: {\n queryOptions: {\n enabled: options?.queryOptions?.enabled,\n },\n },\n });\n\n const hasCompanySignedContract =\n documentPreviewPdf?.contract_document?.signatories?.some(\n (signatory) =>\n signatory.type === 'company' && signatory.status === 'signed',\n );\n\n return {\n hasCompanySignedContract,\n };\n};\n/**\n * Get the contractor subscriptions for the given employment id\n * @param employmentId - The employment ID\n * @returns The contractor subscriptions available\n */\nexport const useGetContractorSubscriptions = ({\n employmentId,\n options,\n}: {\n employmentId: string;\n options?: { queryOptions?: { enabled?: boolean } };\n}) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['contractor-subscriptions', employmentId],\n queryFn: async () => {\n return getV1ContractorsEmploymentsEmploymentIdContractorSubscriptions({\n client: client as Client,\n path: { employment_id: employmentId },\n });\n },\n enabled: options?.queryOptions?.enabled,\n select: ({ data }) => {\n return data?.data;\n },\n });\n};\n\n/**\n * Upgrade or downgrade contractor subscription\n */\nexport const usePostManageContractorSubscriptions = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n payload,\n }: {\n employmentId: string;\n payload: ManageContractorPlusSubscriptionOperationsParams;\n }) => {\n return postV1ContractorsEmploymentsEmploymentIdContractorPlusSubscription(\n {\n client: client as Client,\n body: payload,\n path: {\n employment_id: employmentId,\n },\n },\n );\n },\n });\n};\n\n/**\n * Saves the contractor details data\n * @param employmentId - The employment ID\n * @param payload - The payload\n * @returns The contractor contract document\n */\nexport const useCreateContractorContractDocument = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n payload,\n }: {\n employmentId: string;\n payload: CreateContractDocument;\n }) => {\n return postV1ContractorsEmploymentsEmploymentIdContractDocuments({\n client: client as Client,\n body: payload,\n path: {\n employment_id: employmentId,\n },\n });\n },\n });\n};\n\nexport const CONTRACT_PRODUCT_TITLES = {\n [contractorStandardProductIdentifier]: 'Contractor Management',\n [contractorPlusProductIdentifier]: 'Contractor Management Plus',\n [corProductIdentifier]: 'Contractor of Record',\n};\n\nconst useEorSubscription = (options?: { enabled?: boolean }) => {\n const { data: pricingPlans, isLoading: isLoadingPricingPlans } =\n useCompanyPricingPlans({\n enabled: options?.enabled,\n });\n\n const eorPricingPlan = pricingPlans?.find(\n (plan) => plan.product.name === 'EOR Monthly',\n );\n\n const eorSubscription = eorPricingPlan\n ? {\n product: {\n identifier: eorProductIdentifier,\n short_name: 'EOR',\n },\n currency: eorPricingPlan.price.currency,\n price: {\n amount: convertFromCents(eorPricingPlan.price.amount),\n },\n features: [\n 'Contract between Remote and employee',\n 'Remote manages onboarding, payroll, and compliance',\n 'Manages taxes, benefits, and time-off tracking',\n 'Handles contracts, transfers, and terminations',\n ],\n description: 'Enables hiring in countries without a local entity',\n label: 'Employer of Record',\n value: eorProductIdentifier,\n }\n : null;\n\n return { eorSubscription, isLoading: isLoadingPricingPlans };\n};\n\ntype SelectedCountry =\n | (Pick<Country, 'eor_onboarding' | 'contractor_products_available'> & {\n label: string;\n })\n | undefined;\n\nconst addEorToFieldOptions = (\n fieldOptions: $TSFixMe[],\n eorSubscription: ReturnType<typeof useEorSubscription>['eorSubscription'],\n excludeProducts?: ProductType[],\n) => {\n if (\n eorSubscription &&\n shouldIncludeProduct(eorProductIdentifier, excludeProducts)\n ) {\n fieldOptions.push({\n label: eorSubscription.label,\n value: eorSubscription.value,\n description: eorSubscription.description,\n meta: {\n features: eorSubscription.features,\n price: {\n amount: eorSubscription.price.amount,\n currencyCode: eorSubscription.currency?.code ?? '',\n },\n },\n disabled: false,\n });\n }\n return fieldOptions;\n};\n\nexport const useContractorSubscriptionSchemaField = (\n employmentId: string,\n selectedCountry: SelectedCountry,\n options?: FlowOptions & {\n queryOptions?: { enabled?: boolean };\n excludeProducts?: ProductType[];\n },\n) => {\n const {\n data: contractorSubscriptions,\n isLoading,\n refetch,\n } = useGetContractorSubscriptions({\n employmentId: employmentId,\n options: {\n queryOptions: options?.queryOptions,\n },\n });\n\n const filteredContractorSubscriptions = useMemo(\n () =>\n contractorSubscriptions?.filter((subscription) =>\n shouldIncludeProduct(\n subscription.product.identifier ?? '',\n options?.excludeProducts,\n ),\n ) ?? [],\n [contractorSubscriptions, options?.excludeProducts],\n );\n\n // maximum number of subscriptions\n const MAXIMUM_CONTRACTOR_SUBSCRIPTIONS_COUNT = 3;\n\n const isMissingSubscriptions = contractorSubscriptions\n ? contractorSubscriptions?.length < MAXIMUM_CONTRACTOR_SUBSCRIPTIONS_COUNT\n : false;\n\n const corSubscription = contractorSubscriptions?.find(\n (subscription) => subscription.product.identifier === corProductIdentifier,\n );\n\n const isEligibilityQuestionnaireBlocked =\n corSubscription?.eligibility_questionnaire?.is_blocking;\n\n const showEorSubscription =\n (isMissingSubscriptions || isEligibilityQuestionnaireBlocked) &&\n selectedCountry?.eor_onboarding &&\n !options?.excludeProducts?.includes('eor');\n\n const { eorSubscription, isLoading: isLoadingEorSubscription } =\n useEorSubscription({\n enabled: showEorSubscription,\n });\n\n const hasAvailableOptions =\n filteredContractorSubscriptions.length > 0 ||\n (showEorSubscription && eorSubscription !== null);\n\n const form = createHeadlessForm(\n selectContractorSubscriptionStepSchema.data.schema,\n {},\n {\n ...options,\n jsfModify: {\n ...options?.jsfModify,\n // If no filtered subscriptions are available, make the subscription field optional\n required: hasAvailableOptions\n ? options?.jsfModify?.required\n : (existingRequired: string[]) =>\n existingRequired.filter(\n (fieldName: string) => fieldName !== 'subscription',\n ),\n },\n },\n );\n\n const field: JSFField | undefined = form.fields.find(\n (field) => field.name === 'subscription',\n ) as JSFField | undefined;\n\n if (field) {\n // Start with contractor management options\n const contractorOptions = filteredContractorSubscriptions.map((opts) => {\n const product = opts.product;\n const price = opts.price.amount;\n const currencyCode = opts.currency.code;\n const title =\n CONTRACT_PRODUCT_TITLES[\n product.identifier as keyof typeof CONTRACT_PRODUCT_TITLES\n ] ?? '';\n const label = title;\n const value = product.identifier ?? '';\n const description = product.description ?? '';\n\n if (!product.description) {\n console.error(\n `[Data Integrity] Missing description for product: ${product.identifier}`,\n { product },\n );\n }\n\n const features =\n product.features ??\n FEATURES_BY_IDENTIFIER[\n product.identifier as keyof typeof FEATURES_BY_IDENTIFIER\n ] ??\n [];\n const meta = {\n features,\n price: {\n amount: convertFromCents(price),\n currencyCode: currencyCode,\n },\n };\n return {\n label,\n value,\n description,\n meta,\n disabled:\n isEligibilityQuestionnaireBlocked &&\n product.identifier !== contractorStandardProductIdentifier,\n };\n });\n\n // Sort contractor options\n contractorOptions.sort((a, b) => a.label.localeCompare(b.label));\n\n // Build otherSubscriptions (EOR) with separator metadata\n const otherOptions: $TSFixMe[] = [];\n if (showEorSubscription) {\n addEorToFieldOptions(\n otherOptions as unknown as $TSFixMe[],\n eorSubscription,\n options?.excludeProducts,\n );\n\n // Add separator metadata to first \"other\" option\n // only the first option to avoid problems when iterating over the options\n if (otherOptions.length > 0) {\n otherOptions[0].meta = {\n ...otherOptions[0].meta,\n groupSeparator: {\n show: true,\n },\n };\n }\n }\n\n // Combine all options into the single field\n field.options = [...contractorOptions, ...otherOptions];\n }\n\n return {\n isLoading: isLoading || isLoadingEorSubscription,\n form,\n contractorSubscriptions,\n filteredContractorSubscriptions,\n refetch,\n isEligibilityQuestionnaireBlocked,\n };\n};\n\nexport const useUpdateUKandSaudiFields = (\n createContractorContractDocumentMutation: ReturnType<\n typeof useCreateContractorContractDocument\n >,\n uploadFileMutation: ReturnType<typeof useUploadFile>,\n parsedValues: FieldValues,\n) => {\n const { mutateAsyncOrThrow: uploadFileMutationAsync } =\n mutationToPromise(uploadFileMutation);\n const { mutateAsyncOrThrow: createContractorContractDocumentMutationAsync } =\n mutationToPromise(createContractorContractDocumentMutation);\n\n return {\n mutateAsync: async ({ employmentId }: { employmentId: string }) => {\n const {\n nationality_status: nationalityStatus,\n ir35: ir35Status,\n ir35_sds_file: ir35SdsFile,\n } = parsedValues;\n const ir35ContractDetailsPayload = {\n contract_document: {\n ir_35: ir35Status,\n },\n };\n const nationalityContractDetailsPayload = {\n contract_document: {\n nationality: nationalityStatus,\n },\n };\n if (ir35Status) {\n await createContractorContractDocumentMutationAsync({\n employmentId: employmentId,\n payload: ir35ContractDetailsPayload,\n });\n\n if (ir35SdsFile) {\n return uploadFileMutationAsync({\n employment_id: employmentId,\n file: ir35SdsFile,\n sub_type: IR35_FILE_SUBTYPE,\n });\n }\n return Promise.resolve();\n }\n // nationality status is sent for the countries SAU, KWT, OMN, QAT, BHR\n if (nationalityStatus) {\n return createContractorContractDocumentMutationAsync({\n employmentId: employmentId,\n payload: nationalityContractDetailsPayload,\n });\n }\n\n return Promise.resolve();\n },\n };\n};\n\nexport const useGetIR35File = (\n employmentId: string,\n options?: { enabled?: boolean },\n) => {\n const { data: ir35Files, isLoading: isLoadingFiles } = useEmploymentFiles(\n employmentId,\n {\n sub_type: IR35_FILE_SUBTYPE,\n },\n {\n ...options,\n select: ({ data }) =>\n data?.files?.filter((file) => file.sub_type === IR35_FILE_SUBTYPE),\n },\n );\n const id = ir35Files?.[0]?.id;\n\n const downloadQuery = useDownloadFile(id as string);\n\n return {\n ...downloadQuery,\n isLoading: isLoadingFiles || downloadQuery.isLoading,\n };\n};\n\n/**\n * Get the contract documents for a given employment\n * @param employmentId - The employment ID\n * @param options - The options\n * @returns The contract documents\n */\nexport const useGetContractDocuments = (\n employmentId: string,\n options?: { enabled?: boolean },\n) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['contract-documents', employmentId],\n queryFn: async () => {\n return getV1EmploymentsEmploymentIdContractDocuments({\n client: client as Client,\n path: { employment_id: employmentId },\n });\n },\n enabled: options?.enabled,\n select: ({ data }) => {\n return data?.data?.contract_documents;\n },\n });\n};\n\nexport const useGetEligibilityQuestionnaire = ({\n options,\n fieldValues,\n}: {\n options?: FlowOptions & { queryOptions?: { enabled?: boolean } };\n fieldValues: FieldValues;\n}) => {\n const { client } = useClient();\n return useQuery<\n EligibilityQuestionnaireJsonSchemaResponse['data'],\n Error,\n JSONSchemaFormResultWithFieldsets\n >({\n queryKey: ['eligibility-questionnaire'],\n queryFn: async (): Promise<\n EligibilityQuestionnaireJsonSchemaResponse['data']\n > => {\n const response = await getV1ContractorsSchemasEligibilityQuestionnaire({\n client: client as Client,\n query: {\n type: 'contractor_of_record',\n json_schema_version: 1,\n },\n });\n\n // Extract the data from the response wrapper\n if (response.error) {\n throw new Error('Failed to fetch eligibility questionnaire');\n }\n\n return response.data\n .data as EligibilityQuestionnaireJsonSchemaResponse['data'];\n },\n select: (data: EligibilityQuestionnaireJsonSchemaResponse['data']) => {\n const schema = data?.schema || {};\n return createHeadlessForm(schema, fieldValues, {\n jsfModify: options?.jsfModify,\n });\n },\n enabled: options?.queryOptions?.enabled,\n });\n};\n\nexport const usePostCreateEligibilityQuestionnaire = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n payload,\n }: {\n employmentId: string;\n payload: SubmitEligibilityQuestionnaireRequest['responses'];\n }) => {\n return postV1ContractorsEligibilityQuestionnaire({\n client: client as Client,\n body: {\n employment_slug: employmentId,\n responses: payload,\n type: 'contractor_of_record',\n },\n query: {\n json_schema_version: 1, // TODO: json_schema_version should be dynamic but fixed for now\n },\n });\n },\n });\n};\n\nexport const usePostManageContractorCorSubscription = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({ employmentId }: { employmentId: string }) => {\n return postV1ContractorsEmploymentsEmploymentIdContractorCorSubscription({\n client: client as Client,\n path: {\n employment_id: employmentId,\n },\n });\n },\n });\n};\n\nexport const useDeleteContractorCorSubscription = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({ employmentId }: { employmentId: string }) => {\n return deleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscription(\n {\n client: client as Client,\n path: { employment_id: employmentId },\n },\n );\n },\n });\n};\n\nexport const useSetContractOrigin = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: async ({\n employmentId,\n contractOrigin,\n templateType,\n }: {\n employmentId: string;\n contractOrigin: PostV1EmploymentsEmploymentIdContractOriginData['body']['contract_origin'];\n templateType: PostV1EmploymentsEmploymentIdContractOriginData['body']['template_type'];\n }) => {\n return postV1EmploymentsEmploymentIdContractOrigin({\n client: client as Client,\n path: {\n employment_id: employmentId,\n },\n body: {\n contract_origin: contractOrigin,\n template_type: templateType,\n },\n });\n },\n });\n};\n\nexport const useGetContractOriginSchema = ({\n fieldValues,\n options,\n}: {\n fieldValues: FieldValues;\n options?: { queryOptions?: { enabled?: boolean }; jsfModify?: JSFModify };\n}) => {\n return useQuery({\n queryKey: ['contract-origin-schema', options?.jsfModify],\n queryFn: async () => {\n return createHeadlessForm(contractOriginSchema, fieldValues, {\n jsfModify: options?.jsfModify,\n });\n },\n enabled: options?.queryOptions?.enabled,\n });\n};\n\n// Invoice-schedule API hooks are shared with the standalone InvoiceSchedule flow and live in\n// src/common/invoice-schedules. Re-exported here so existing imports keep resolving.\nexport {\n invoiceSchedulesOptions,\n useCreateInvoiceSchedule,\n useGetCreateInvoiceScheduleSchema,\n useGetExistingInvoiceSchedule,\n usePreviewContractorInvoice,\n useSkipInvoiceSchedule,\n useUpdateInvoiceSchedule,\n} from '@/src/common/invoice-schedules/api';\n\nexport const useGetInvoiceScheduleSchema = ({\n enabled,\n jsfModify,\n}: {\n enabled?: boolean;\n jsfModify?: JSFModify;\n}) => {\n return useMemo(() => {\n if (!enabled) return null;\n return createHeadlessForm(\n invoiceScheduleSchema,\n {},\n {\n jsfModify,\n },\n );\n }, [enabled, jsfModify]);\n};\n\nexport const useCountriesSchemaField = (\n options?: Omit<FlowOptions, 'jsonSchemaVersion'> & {\n queryOptions?: { enabled?: boolean };\n },\n) => {\n const { client } = useClient();\n const { data: countries, isLoading } = useQuery({\n ...countriesOptions(client as Client, 'contractor-onboarding-countries'),\n select: (response) => {\n return (\n response.data?.data?.map((country) => {\n return {\n label: country.name,\n value: country.code,\n eor_onboarding: country.eor_onboarding,\n contractor_products_available:\n country.contractor_products_available,\n };\n }) || []\n );\n },\n enabled: options?.queryOptions?.enabled,\n });\n\n const selectCountryForm = createHeadlessForm(\n selectCountryStepSchema.data.schema,\n {},\n options,\n );\n\n if (countries) {\n const countryField = selectCountryForm.fields.find(\n (field) => field.name === 'country',\n );\n if (countryField) {\n countryField.options = countries;\n }\n }\n\n return {\n isLoading,\n selectCountryForm,\n countries,\n };\n};\n\nexport const useCompanyOpenTasks = ({\n options,\n}: {\n options?: { queryOptions?: { enabled?: boolean } };\n} = {}) => {\n const { data: identity } = useIdentity();\n const companyId = hasCompany(identity) ? (identity?.company?.id ?? '') : '';\n const { client } = useClient();\n\n return useQuery({\n queryKey: ['company-open-tasks', companyId],\n queryFn: () =>\n getV1CompaniesCompanyIdActions({\n client: client as Client,\n path: { company_id: companyId },\n }),\n select: ({ data }) => data?.data?.actions ?? ([] as CompanyAction[]),\n enabled: (options?.queryOptions?.enabled ?? true) && !!companyId,\n });\n};\n","import { useMutation, useQuery, UseQueryOptions } from '@tanstack/react-query';\nimport { Client } from '@/src/client/client';\nimport {\n getV1EmploymentsEmploymentIdFiles,\n getV1FilesId,\n postV1Documents,\n} from '@/src/client/sdk.gen';\nimport {\n GetV1EmploymentsEmploymentIdFilesData,\n GetV1EmploymentsEmploymentIdFilesErrors,\n File as ApiFile,\n ListFilesResponse,\n PostV1DocumentsData,\n} from '@/src/client/types.gen';\nimport { useClient } from '@/src/context';\n\n/**\n * Hook to upload a file associated with a specified employment.\n * @returns A mutation result for uploading employee files.\n */\nexport const useUploadFile = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (params: PostV1DocumentsData['body']) => {\n return postV1Documents({\n client: client as Client,\n body: params,\n headers: {\n Authorization: ``,\n },\n });\n },\n });\n};\n\n/**\n * Hook to download a file by its ID.\n * @param id - The ID of the file to download.\n * @returns A query result containing the file data.\n */\nexport const useDownloadFile = (id: string) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['download-file', id],\n queryFn: async () => {\n const result = await getV1FilesId({\n client: client as Client,\n path: { id: id },\n });\n\n if (result.error) {\n throw result.error;\n }\n\n return result.data;\n },\n select: ({ data }) => data?.file,\n enabled: !!id,\n });\n};\n\n/**\n * Hook to retrieve files associated with a specific employment.\n * @param employmentId - The ID of the employment to retrieve files for.\n * @param queryParams - The query parameters to filter the files.\n * @param queryOptions - Optional TanStack Query options to customize the query behavior.\n * @returns A query result containing the employment files.\n */\nexport const useEmploymentFiles = (\n employmentId: string,\n queryParams: GetV1EmploymentsEmploymentIdFilesData['query'],\n queryOptions?: Omit<\n UseQueryOptions<\n ListFilesResponse,\n GetV1EmploymentsEmploymentIdFilesErrors,\n ApiFile[] | undefined,\n unknown[]\n >,\n 'queryKey' | 'queryFn'\n >,\n) => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['employment-files', employmentId],\n queryFn: async () => {\n const result = await getV1EmploymentsEmploymentIdFiles({\n client: client as Client,\n path: { employment_id: employmentId },\n query: queryParams,\n });\n\n if (result.error) {\n throw result.error;\n }\n\n return result.data;\n },\n ...queryOptions,\n });\n};\n","import { useQuery } from '@tanstack/react-query';\nimport { useClient } from '@/src/context';\nimport {\n getV1CompaniesCompanyIdPricingPlans,\n IdentityCurrentResponse,\n} from '@/src/client';\nimport { Client } from '@/src/client/client';\nimport { useIdentity } from '@/src/common/api/identity';\n\nexport function hasCompany(\n identity: IdentityCurrentResponse['data'] | undefined,\n): identity is Extract<\n IdentityCurrentResponse['data'],\n { company: { id: string } }\n> {\n return identity != null && 'company' in identity;\n}\n\nexport const useCompanyPricingPlans = (\n queryOptions: { enabled?: boolean } = { enabled: true },\n) => {\n const { data: identity } = useIdentity();\n const companyId = hasCompany(identity) ? (identity?.company?.id ?? '') : '';\n const { client } = useClient();\n return useQuery({\n queryKey: ['pricing-plans', companyId],\n queryFn: () =>\n getV1CompaniesCompanyIdPricingPlans({\n client: client as Client,\n path: { company_id: companyId },\n }),\n select: (data) => data.data?.data?.pricing_plans,\n enabled: Boolean(queryOptions?.enabled) && !!companyId,\n });\n};\n","import { useQuery } from '@tanstack/react-query';\nimport { getV1IdentityCurrent } from '@/src/client';\nimport { useClient } from '@/src/context';\nimport { Client } from '@/src/client/client';\n\nexport const useIdentity = () => {\n const { client } = useClient();\n return useQuery({\n queryKey: ['identity'],\n queryFn: () =>\n getV1IdentityCurrent({\n client: client as Client,\n headers: { Authorization: `` },\n }),\n select: (data) => data.data?.data,\n });\n};\n"],"mappings":"wrBAAA,OAAS,WAAAA,OAAe,QAoCxB,OAAS,eAAAC,EAAa,YAAAC,MAAgB,wBCpCtC,OAAS,eAAAC,GAAa,YAAAC,OAAiC,wBAoBhD,IAAMC,GAAgBC,EAAA,IAAM,CACjC,GAAM,CAAE,OAAAC,CAAO,EAAIC,EAAU,EAC7B,OAAOC,GAAY,CACjB,WAAYH,EAACI,GACJC,EAAgB,CACrB,OAAQJ,EACR,KAAMG,EACN,QAAS,CACP,cAAe,EACjB,CACF,CAAC,EAPS,aASd,CAAC,CACH,EAb6B,iBAoBhBE,GAAkBN,EAACO,GAAe,CAC7C,GAAM,CAAE,OAAAN,CAAO,EAAIC,EAAU,EAC7B,OAAOM,GAAS,CACd,SAAU,CAAC,gBAAiBD,CAAE,EAC9B,QAASP,EAAA,SAAY,CACnB,IAAMS,EAAS,MAAMC,EAAa,CAChC,OAAQT,EACR,KAAM,CAAE,GAAIM,CAAG,CACjB,CAAC,EAED,GAAIE,EAAO,MACT,MAAMA,EAAO,MAGf,OAAOA,EAAO,IAChB,EAXS,WAYT,OAAQT,EAAA,CAAC,CAAE,KAAAW,CAAK,IAAMA,GAAM,KAApB,UACR,QAAS,CAAC,CAACJ,CACb,CAAC,CACH,EAnB+B,mBA4BlBK,GAAqBZ,EAAA,CAChCa,EACAC,EACAC,IASG,CACH,GAAM,CAAE,OAAAd,CAAO,EAAIC,EAAU,EAC7B,OAAOM,GAAS,CACd,SAAU,CAAC,mBAAoBK,CAAY,EAC3C,QAASb,EAAA,SAAY,CACnB,IAAMS,EAAS,MAAMO,EAAkC,CACrD,OAAQf,EACR,KAAM,CAAE,cAAeY,CAAa,EACpC,MAAOC,CACT,CAAC,EAED,GAAIL,EAAO,MACT,MAAMA,EAAO,MAGf,OAAOA,EAAO,IAChB,EAZS,WAaT,GAAGM,CACL,CAAC,CACH,EA/BkC,sBCpElC,OAAS,YAAAE,OAAgB,wBCAzB,OAAS,YAAAC,OAAgB,wBAKlB,IAAMC,EAAcC,EAAA,IAAM,CAC/B,GAAM,CAAE,OAAAC,CAAO,EAAIC,EAAU,EAC7B,OAAOC,GAAS,CACd,SAAU,CAAC,UAAU,EACrB,QAASH,EAAA,IACPI,EAAqB,CACnB,OAAQH,EACR,QAAS,CAAE,cAAe,EAAG,CAC/B,CAAC,EAJM,WAKT,OAAQD,EAACK,GAASA,EAAK,MAAM,KAArB,SACV,CAAC,CACH,EAX2B,eDIpB,SAASC,EACdC,EAIA,CACA,OAAOA,GAAY,MAAQ,YAAaA,CAC1C,CAPgBC,EAAAF,EAAA,cAST,IAAMG,GAAyBD,EAAA,CACpCE,EAAsC,CAAE,QAAS,EAAK,IACnD,CACH,GAAM,CAAE,KAAMH,CAAS,EAAII,EAAY,EACjCC,EAAYN,EAAWC,CAAQ,EAAKA,GAAU,SAAS,IAAM,GAAM,GACnE,CAAE,OAAAM,CAAO,EAAIC,EAAU,EAC7B,OAAOC,GAAS,CACd,SAAU,CAAC,gBAAiBH,CAAS,EACrC,QAASJ,EAAA,IACPQ,EAAoC,CAClC,OAAQH,EACR,KAAM,CAAE,WAAYD,CAAU,CAChC,CAAC,EAJM,WAKT,OAAQJ,EAACS,GAASA,EAAK,MAAM,MAAM,cAA3B,UACR,QAAS,EAAQP,GAAc,SAAY,CAAC,CAACE,CAC/C,CAAC,CACH,EAhBsC,0BFiD/B,IAAMM,GAAwCC,EAAA,CAAC,CACpD,YAAAC,EACA,QAAAC,CACF,IAISC,EAAS,CACd,SAAU,CACR,8BACAF,EAAY,iBACZC,GAAS,SACX,EACA,QAASF,EAAA,SACAI,EAAmBC,EAAiBJ,EAAa,CACtD,UAAWC,GAAS,SACtB,CAAC,EAHM,WAKT,QAASA,GAAS,cAAc,OAClC,CAAC,EAnBkD,yCA6BxCI,GAA0BN,EAAA,IAAM,CAC3C,GAAM,CAAE,OAAAO,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAY,CACjB,WAAYT,EAAA,MAAO,CACjB,aAAAU,EACA,mBAAAC,EACA,QAAAC,CACF,IAKSC,EACL,CACE,OAAQN,EACR,KAAMK,EACN,KAAM,CACJ,cAAeF,EACf,qBAAsBC,CACxB,CACF,CACF,EAlBU,aAoBd,CAAC,CACH,EAxBuC,2BAgC1BG,GAA6Bd,EAAA,CAAC,CACzC,aAAAU,EACA,mBAAAC,EACA,QAAAT,CACF,IAIM,CACJ,GAAM,CAAE,OAAAK,CAAO,EAAIC,EAAU,EAC7B,OAAOL,EAAS,CACd,SAAU,CAAC,oBAAqBO,EAAcC,CAAkB,EAChE,QAASX,EAAA,SACAe,EAA2D,CAChE,OAAQR,EACR,KAAM,CAAE,cAAeG,EAAc,GAAIC,CAAmB,CAC9D,CAAC,EAJM,WAMT,QAAST,GAAS,cAAc,QAChC,OAAQF,EAAA,CAAC,CAAE,KAAAgB,CAAK,KACP,CACL,GAAGA,GAAM,KACT,kBAAmB,CACjB,GAAGA,GAAM,MAAM,kBACf,QAASC,EACPD,GAAM,MAAM,mBAAmB,OACjC,CACF,CACF,GATM,SAWV,CAAC,CACH,EA/B0C,8BAiC7BE,GAA8BlB,EAAA,CAAC,CAC1C,aAAAU,EACA,mBAAAC,EACA,QAAAT,CACF,IAIM,CACJ,GAAM,CAAE,KAAMiB,CAAmB,EAAIL,GAA2B,CAC9D,aAAAJ,EACA,mBAAAC,EACA,QAAS,CACP,aAAc,CACZ,QAAST,GAAS,cAAc,OAClC,CACF,CACF,CAAC,EAQD,MAAO,CACL,yBANAiB,GAAoB,mBAAmB,aAAa,KACjDC,GACCA,EAAU,OAAS,WAAaA,EAAU,SAAW,QACzD,CAIF,CACF,EA5B2C,+BAkC9BC,GAAgCrB,EAAA,CAAC,CAC5C,aAAAU,EACA,QAAAR,CACF,IAGM,CACJ,GAAM,CAAE,OAAAK,CAAO,EAAIC,EAAU,EAC7B,OAAOL,EAAS,CACd,SAAU,CAAC,2BAA4BO,CAAY,EACnD,QAASV,EAAA,SACAsB,EAA+D,CACpE,OAAQf,EACR,KAAM,CAAE,cAAeG,CAAa,CACtC,CAAC,EAJM,WAMT,QAASR,GAAS,cAAc,QAChC,OAAQF,EAAA,CAAC,CAAE,KAAAgB,CAAK,IACPA,GAAM,KADP,SAGV,CAAC,CACH,EArB6C,iCA0BhCO,GAAuCvB,EAAA,IAAM,CACxD,GAAM,CAAE,OAAAO,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAY,CACjB,WAAYT,EAAA,MAAO,CACjB,aAAAU,EACA,QAAAE,CACF,IAISY,EACL,CACE,OAAQjB,EACR,KAAMK,EACN,KAAM,CACJ,cAAeF,CACjB,CACF,CACF,EAfU,aAiBd,CAAC,CACH,EArBoD,wCA6BvCe,GAAsCzB,EAAA,IAAM,CACvD,GAAM,CAAE,OAAAO,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAY,CACjB,WAAYT,EAAA,MAAO,CACjB,aAAAU,EACA,QAAAE,CACF,IAISc,EAA0D,CAC/D,OAAQnB,EACR,KAAMK,EACN,KAAM,CACJ,cAAeF,CACjB,CACF,CAAC,EAbS,aAed,CAAC,CACH,EAnBmD,uCAqBtCiB,GAA0B,CACrC,CAACC,CAAmC,EAAG,wBACvC,CAACC,EAA+B,EAAG,6BACnC,CAACC,CAAoB,EAAG,sBAC1B,EAEMC,GAAqB/B,EAACE,GAAoC,CAC9D,GAAM,CAAE,KAAM8B,EAAc,UAAWC,CAAsB,EAC3DC,GAAuB,CACrB,QAAShC,GAAS,OACpB,CAAC,EAEGiC,EAAiBH,GAAc,KAClCI,GAASA,EAAK,QAAQ,OAAS,aAClC,EAwBA,MAAO,CAAE,gBAtBeD,EACpB,CACE,QAAS,CACP,WAAYE,EACZ,WAAY,KACd,EACA,SAAUF,EAAe,MAAM,SAC/B,MAAO,CACL,OAAQG,EAAiBH,EAAe,MAAM,MAAM,CACtD,EACA,SAAU,CACR,uCACA,qDACA,iDACA,gDACF,EACA,YAAa,qDACb,MAAO,qBACP,MAAOE,CACT,EACA,KAEsB,UAAWJ,CAAsB,CAC7D,EAjC2B,sBAyCrBM,GAAuBvC,EAAA,CAC3BwC,EACAC,EACAC,KAGED,GACAE,EAAqBN,EAAsBK,CAAe,GAE1DF,EAAa,KAAK,CAChB,MAAOC,EAAgB,MACvB,MAAOA,EAAgB,MACvB,YAAaA,EAAgB,YAC7B,KAAM,CACJ,SAAUA,EAAgB,SAC1B,MAAO,CACL,OAAQA,EAAgB,MAAM,OAC9B,aAAcA,EAAgB,UAAU,MAAQ,EAClD,CACF,EACA,SAAU,EACZ,CAAC,EAEID,GAvBoB,wBA0BhBI,GAAuC5C,EAAA,CAClDU,EACAmC,EACA3C,IAIG,CACH,GAAM,CACJ,KAAM4C,EACN,UAAAC,EACA,QAAAC,CACF,EAAI3B,GAA8B,CAChC,aAAcX,EACd,QAAS,CACP,aAAcR,GAAS,YACzB,CACF,CAAC,EAEK+C,EAAkCC,GACtC,IACEJ,GAAyB,OAAQK,GAC/BR,EACEQ,EAAa,QAAQ,YAAc,GACnCjD,GAAS,eACX,CACF,GAAK,CAAC,EACR,CAAC4C,EAAyB5C,GAAS,eAAe,CACpD,EAKMkD,EAAyBN,EAC3BA,GAAyB,OAHkB,EAI3C,GAMEO,EAJkBP,GAAyB,KAC9CK,GAAiBA,EAAa,QAAQ,aAAerB,CACxD,GAGmB,2BAA2B,YAExCwB,GACHF,GAA0BC,IAC3BR,GAAiB,gBACjB,CAAC3C,GAAS,iBAAiB,SAAS,KAAK,EAErC,CAAE,gBAAAuC,EAAiB,UAAWc,EAAyB,EAC3DxB,GAAmB,CACjB,QAASuB,CACX,CAAC,EAEGE,GACJP,EAAgC,OAAS,GACxCK,GAAuBb,IAAoB,KAExCgB,EAAOrD,EACXsD,GAAuC,KAAK,OAC5C,CAAC,EACD,CACE,GAAGxD,EACH,UAAW,CACT,GAAGA,GAAS,UAEZ,SAAUsD,GACNtD,GAAS,WAAW,SACnByD,GACCA,EAAiB,OACdC,GAAsBA,IAAc,cACvC,CACR,CACF,CACF,EAEMC,EAA8BJ,EAAK,OAAO,KAC7CI,GAAUA,EAAM,OAAS,cAC5B,EAEA,GAAIA,EAAO,CAET,IAAMC,EAAoBb,EAAgC,IAAKc,GAAS,CACtE,IAAMC,EAAUD,EAAK,QACfE,GAAQF,EAAK,MAAM,OACnBG,GAAeH,EAAK,SAAS,KAK7BI,GAHJxC,GACEqC,EAAQ,UACV,GAAK,GAEDI,GAAQJ,EAAQ,YAAc,GAC9BK,GAAcL,EAAQ,aAAe,GAEtCA,EAAQ,aACX,QAAQ,MACN,qDAAqDA,EAAQ,UAAU,GACvE,CAAE,QAAAA,CAAQ,CACZ,EASF,IAAMM,GAAO,CACX,SANAN,EAAQ,UACRO,GACEP,EAAQ,UACV,GACA,CAAC,EAGD,MAAO,CACL,OAAQ1B,EAAiB2B,EAAK,EAC9B,aAAcC,EAChB,CACF,EACA,MAAO,CACL,MAAAC,GACA,MAAAC,GACA,YAAAC,GACA,KAAAC,GACA,SACEjB,GACAW,EAAQ,aAAepC,CAC3B,CACF,CAAC,EAGDkC,EAAkB,KAAK,CAACU,EAAGC,IAAMD,EAAE,MAAM,cAAcC,EAAE,KAAK,CAAC,EAG/D,IAAMC,EAA2B,CAAC,EAC9BpB,IACFf,GACEmC,EACAjC,EACAvC,GAAS,eACX,EAIIwE,EAAa,OAAS,IACxBA,EAAa,CAAC,EAAE,KAAO,CACrB,GAAGA,EAAa,CAAC,EAAE,KACnB,eAAgB,CACd,KAAM,EACR,CACF,IAKJb,EAAM,QAAU,CAAC,GAAGC,EAAmB,GAAGY,CAAY,CACxD,CAEA,MAAO,CACL,UAAW3B,GAAaQ,GACxB,KAAAE,EACA,wBAAAX,EACA,gCAAAG,EACA,QAAAD,EACA,kCAAAK,CACF,CACF,EAjKoD,wCAmKvCsB,GAA4B3E,EAAA,CACvC4E,EAGAC,EACAC,IACG,CACH,GAAM,CAAE,mBAAoBC,CAAwB,EAClDC,EAAkBH,CAAkB,EAChC,CAAE,mBAAoBI,CAA8C,EACxED,EAAkBJ,CAAwC,EAE5D,MAAO,CACL,YAAa5E,EAAA,MAAO,CAAE,aAAAU,CAAa,IAAgC,CACjE,GAAM,CACJ,mBAAoBwE,EACpB,KAAMC,EACN,cAAeC,CACjB,EAAIN,EACEO,EAA6B,CACjC,kBAAmB,CACjB,MAAOF,CACT,CACF,EACMG,EAAoC,CACxC,kBAAmB,CACjB,YAAaJ,CACf,CACF,EACA,OAAIC,GACF,MAAMF,EAA8C,CAClD,aAAcvE,EACd,QAAS2E,CACX,CAAC,EAEGD,EACKL,EAAwB,CAC7B,cAAerE,EACf,KAAM0E,EACN,SAAUG,CACZ,CAAC,EAEI,QAAQ,QAAQ,GAGrBL,EACKD,EAA8C,CACnD,aAAcvE,EACd,QAAS4E,CACX,CAAC,EAGI,QAAQ,QAAQ,CACzB,EAxCa,cAyCf,CACF,EAvDyC,6BAyD5BE,GAAiBxF,EAAA,CAC5BU,EACAR,IACG,CACH,GAAM,CAAE,KAAMuF,EAAW,UAAWC,CAAe,EAAIC,GACrDjF,EACA,CACE,SAAU6E,CACZ,EACA,CACE,GAAGrF,EACH,OAAQF,EAAA,CAAC,CAAE,KAAAgB,CAAK,IACdA,GAAM,OAAO,OAAQ4E,GAASA,EAAK,WAAaL,CAAiB,EAD3D,SAEV,CACF,EACMM,EAAKJ,IAAY,CAAC,GAAG,GAErBK,EAAgBC,GAAgBF,CAAY,EAElD,MAAO,CACL,GAAGC,EACH,UAAWJ,GAAkBI,EAAc,SAC7C,CACF,EAvB8B,kBA+BjBE,GAA0BhG,EAAA,CACrCU,EACAR,IACG,CACH,GAAM,CAAE,OAAAK,CAAO,EAAIC,EAAU,EAC7B,OAAOL,EAAS,CACd,SAAU,CAAC,qBAAsBO,CAAY,EAC7C,QAASV,EAAA,SACAiG,EAA8C,CACnD,OAAQ1F,EACR,KAAM,CAAE,cAAeG,CAAa,CACtC,CAAC,EAJM,WAMT,QAASR,GAAS,QAClB,OAAQF,EAAA,CAAC,CAAE,KAAAgB,CAAK,IACPA,GAAM,MAAM,mBADb,SAGV,CAAC,CACH,EAlBuC,2BAoB1BkF,GAAiClG,EAAA,CAAC,CAC7C,QAAAE,EACA,YAAAD,CACF,IAGM,CACJ,GAAM,CAAE,OAAAM,CAAO,EAAIC,EAAU,EAC7B,OAAOL,EAIL,CACA,SAAU,CAAC,2BAA2B,EACtC,QAASH,EAAA,SAEJ,CACH,IAAMmG,EAAW,MAAMC,EAAgD,CACrE,OAAQ7F,EACR,MAAO,CACL,KAAM,uBACN,oBAAqB,CACvB,CACF,CAAC,EAGD,GAAI4F,EAAS,MACX,MAAM,IAAI,MAAM,2CAA2C,EAG7D,OAAOA,EAAS,KACb,IACL,EAlBS,WAmBT,OAAQnG,EAACgB,GAA6D,CACpE,IAAMqF,EAASrF,GAAM,QAAU,CAAC,EAChC,OAAOZ,EAAmBiG,EAAQpG,EAAa,CAC7C,UAAWC,GAAS,SACtB,CAAC,CACH,EALQ,UAMR,QAASA,GAAS,cAAc,OAClC,CAAC,CACH,EAzC8C,kCA2CjCoG,GAAwCtG,EAAA,IAAM,CACzD,GAAM,CAAE,OAAAO,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAY,CACjB,WAAYT,EAAA,MAAO,CACjB,aAAAU,EACA,QAAAE,CACF,IAIS2F,EAA0C,CAC/C,OAAQhG,EACR,KAAM,CACJ,gBAAiBG,EACjB,UAAWE,EACX,KAAM,sBACR,EACA,MAAO,CACL,oBAAqB,CACvB,CACF,CAAC,EAjBS,aAmBd,CAAC,CACH,EAvBqD,yCAyBxC4F,GAAyCxG,EAAA,IAAM,CAC1D,GAAM,CAAE,OAAAO,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAY,CACjB,WAAYT,EAAA,MAAO,CAAE,aAAAU,CAAa,IACzB+F,EAAkE,CACvE,OAAQlG,EACR,KAAM,CACJ,cAAeG,CACjB,CACF,CAAC,EANS,aAQd,CAAC,CACH,EAZsD,0CAczCgG,GAAqC1G,EAAA,IAAM,CACtD,GAAM,CAAE,OAAAO,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAY,CACjB,WAAYT,EAAA,MAAO,CAAE,aAAAU,CAAa,IACzBiG,EACL,CACE,OAAQpG,EACR,KAAM,CAAE,cAAeG,CAAa,CACtC,CACF,EANU,aAQd,CAAC,CACH,EAZkD,sCAcrCkG,GAAuB5G,EAAA,IAAM,CACxC,GAAM,CAAE,OAAAO,CAAO,EAAIC,EAAU,EAC7B,OAAOC,EAAY,CACjB,WAAYT,EAAA,MAAO,CACjB,aAAAU,EACA,eAAAmG,EACA,aAAAC,CACF,IAKSC,EAA4C,CACjD,OAAQxG,EACR,KAAM,CACJ,cAAeG,CACjB,EACA,KAAM,CACJ,gBAAiBmG,EACjB,cAAeC,CACjB,CACF,CAAC,EAlBS,aAoBd,CAAC,CACH,EAxBoC,wBA0BvBE,GAA6BhH,EAAA,CAAC,CACzC,YAAAC,EACA,QAAAC,CACF,IAISC,EAAS,CACd,SAAU,CAAC,yBAA0BD,GAAS,SAAS,EACvD,QAASF,EAAA,SACAI,EAAmB6G,GAAsBhH,EAAa,CAC3D,UAAWC,GAAS,SACtB,CAAC,EAHM,WAKT,QAASA,GAAS,cAAc,OAClC,CAAC,EAfuC,8BA8B7BgH,GAA8BlH,EAAA,CAAC,CAC1C,QAAAmH,EACA,UAAAC,CACF,IAISlE,GAAQ,IACRiE,EACE/G,EACLiH,GACA,CAAC,EACD,CACE,UAAAD,CACF,CACF,EAPqB,KAQpB,CAACD,EAASC,CAAS,CAAC,EAhBkB,+BAmB9BE,GAA0BtH,EACrCE,GAGG,CACH,GAAM,CAAE,OAAAK,CAAO,EAAIC,EAAU,EACvB,CAAE,KAAM+G,EAAW,UAAAxE,CAAU,EAAI5C,EAAS,CAC9C,GAAGqH,EAAiBjH,EAAkB,iCAAiC,EACvE,OAAQP,EAACmG,GAELA,EAAS,MAAM,MAAM,IAAKsB,IACjB,CACL,MAAOA,EAAQ,KACf,MAAOA,EAAQ,KACf,eAAgBA,EAAQ,eACxB,8BACEA,EAAQ,6BACZ,EACD,GAAK,CAAC,EAVH,UAaR,QAASvH,GAAS,cAAc,OAClC,CAAC,EAEKwH,EAAoBtH,EACxBuH,EAAwB,KAAK,OAC7B,CAAC,EACDzH,CACF,EAEA,GAAIqH,EAAW,CACb,IAAMK,EAAeF,EAAkB,OAAO,KAC3C7D,GAAUA,EAAM,OAAS,SAC5B,EACI+D,IACFA,EAAa,QAAUL,EAE3B,CAEA,MAAO,CACL,UAAAxE,EACA,kBAAA2E,EACA,UAAAH,CACF,CACF,EA5CuC,2BA8C1BM,GAAsB7H,EAAA,CAAC,CAClC,QAAAE,CACF,EAEI,CAAC,IAAM,CACT,GAAM,CAAE,KAAM4H,CAAS,EAAIC,EAAY,EACjCC,EAAYC,EAAWH,CAAQ,EAAKA,GAAU,SAAS,IAAM,GAAM,GACnE,CAAE,OAAAvH,CAAO,EAAIC,EAAU,EAE7B,OAAOL,EAAS,CACd,SAAU,CAAC,qBAAsB6H,CAAS,EAC1C,QAAShI,EAAA,IACPkI,EAA+B,CAC7B,OAAQ3H,EACR,KAAM,CAAE,WAAYyH,CAAU,CAChC,CAAC,EAJM,WAKT,OAAQhI,EAAA,CAAC,CAAE,KAAAgB,CAAK,IAAMA,GAAM,MAAM,SAAY,CAAC,EAAvC,UACR,SAAUd,GAAS,cAAc,SAAW,KAAS,CAAC,CAAC8H,CACzD,CAAC,CACH,EAnBmC","names":["useMemo","useMutation","useQuery","useMutation","useQuery","useUploadFile","__name","client","useClient","useMutation","params","postV1Documents","useDownloadFile","id","useQuery","result","getV1FilesId","data","useEmploymentFiles","employmentId","queryParams","queryOptions","getV1EmploymentsEmploymentIdFiles","useQuery","useQuery","useIdentity","__name","client","useClient","useQuery","getV1IdentityCurrent","data","hasCompany","identity","__name","useCompanyPricingPlans","queryOptions","useIdentity","companyId","client","useClient","useQuery","getV1CompaniesCompanyIdPricingPlans","data","useGetContractDocumentSignatureSchema","__name","fieldValues","options","useQuery","createHeadlessForm","signatureSchema","useSignContractDocument","client","useClient","useMutation","employmentId","contractDocumentId","payload","postV1ContractorsEmploymentsEmploymentIdContractDocumentsContractDocumentIdSign","useGetShowContractDocument","getV1ContractorsEmploymentsEmploymentIdContractDocumentsId","data","clearBase64Data","useHasCompanySignedContract","documentPreviewPdf","signatory","useGetContractorSubscriptions","getV1ContractorsEmploymentsEmploymentIdContractorSubscriptions","usePostManageContractorSubscriptions","postV1ContractorsEmploymentsEmploymentIdContractorPlusSubscription","useCreateContractorContractDocument","postV1ContractorsEmploymentsEmploymentIdContractDocuments","CONTRACT_PRODUCT_TITLES","contractorStandardProductIdentifier","contractorPlusProductIdentifier","corProductIdentifier","useEorSubscription","pricingPlans","isLoadingPricingPlans","useCompanyPricingPlans","eorPricingPlan","plan","eorProductIdentifier","convertFromCents","addEorToFieldOptions","fieldOptions","eorSubscription","excludeProducts","shouldIncludeProduct","useContractorSubscriptionSchemaField","selectedCountry","contractorSubscriptions","isLoading","refetch","filteredContractorSubscriptions","useMemo","subscription","isMissingSubscriptions","isEligibilityQuestionnaireBlocked","showEorSubscription","isLoadingEorSubscription","hasAvailableOptions","form","selectContractorSubscriptionStepSchema","existingRequired","fieldName","field","contractorOptions","opts","product","price","currencyCode","label","value","description","meta","FEATURES_BY_IDENTIFIER","a","b","otherOptions","useUpdateUKandSaudiFields","createContractorContractDocumentMutation","uploadFileMutation","parsedValues","uploadFileMutationAsync","mutationToPromise","createContractorContractDocumentMutationAsync","nationalityStatus","ir35Status","ir35SdsFile","ir35ContractDetailsPayload","nationalityContractDetailsPayload","IR35_FILE_SUBTYPE","useGetIR35File","ir35Files","isLoadingFiles","useEmploymentFiles","file","id","downloadQuery","useDownloadFile","useGetContractDocuments","getV1EmploymentsEmploymentIdContractDocuments","useGetEligibilityQuestionnaire","response","getV1ContractorsSchemasEligibilityQuestionnaire","schema","usePostCreateEligibilityQuestionnaire","postV1ContractorsEligibilityQuestionnaire","usePostManageContractorCorSubscription","postV1ContractorsEmploymentsEmploymentIdContractorCorSubscription","useDeleteContractorCorSubscription","deleteV1ContractorsEmploymentsEmploymentIdContractorCorSubscription","useSetContractOrigin","contractOrigin","templateType","postV1EmploymentsEmploymentIdContractOrigin","useGetContractOriginSchema","contractOriginSchema","useGetInvoiceScheduleSchema","enabled","jsfModify","invoiceScheduleSchema","useCountriesSchemaField","countries","countriesOptions","country","selectCountryForm","selectCountryStepSchema","countryField","useCompanyOpenTasks","identity","useIdentity","companyId","hasCompany","getV1CompaniesCompanyIdActions"]}
@@ -1,2 +1,2 @@
1
- import{a as d}from"./chunk-WGDZTF7Y.js";import{a as x}from"./chunk-2QVO3BVI.js";import{j as p,k as i,l as _,n as F,o as c}from"./chunk-AUPAAQUT.js";import{a}from"./chunk-P37U34EQ.js";import{jsx as e,jsxs as C}from"react/jsx-runtime";function I({field:o,fieldState:u,fieldData:t}){let{name:n,label:r,description:s,descriptionSuffix:m,maxLength:T,includeErrorMessage:h}=t,l=(s||t.meta?.helpCenter)&&e(F,{as:m?"span":"p",className:"RemoteFlows__TextField__Description",helpCenter:e(d,{helpCenter:t.meta?.helpCenter}),children:s});return C(p,{"data-field":n,className:`RemoteFlows__TextField__Item__${n}`,children:[r&&e(i,{className:"RemoteFlows__TextField__Label",children:r}),e(_,{children:e(x,{...o,value:o.value??"",onChange:f=>{o.onChange(f)},className:"RemoteFlows__TextField__Input",placeholder:r,maxLength:T})}),m?C("span",{className:"RemoteFlows__TextField__DescriptionGroup",children:[l," ",e("span",{className:"RemoteFlows__TextField__DescriptionSuffix",children:m})]}):l,h&&u.error&&e(c,{className:"RemoteFlows__TextField__Error"})]})}a(I,"TextFieldDefault");export{I as a};
2
- //# sourceMappingURL=chunk-6IDUDCVS.js.map
1
+ import{a as d}from"./chunk-E7Y3YBZH.js";import{a as x}from"./chunk-2QVO3BVI.js";import{e as p,f as i,g as _,i as F,j as c}from"./chunk-C7KVPEVX.js";import{a}from"./chunk-P37U34EQ.js";import{jsx as e,jsxs as C}from"react/jsx-runtime";function I({field:o,fieldState:u,fieldData:t}){let{name:n,label:r,description:s,descriptionSuffix:m,maxLength:T,includeErrorMessage:h}=t,l=(s||t.meta?.helpCenter)&&e(F,{as:m?"span":"p",className:"RemoteFlows__TextField__Description",helpCenter:e(d,{helpCenter:t.meta?.helpCenter}),children:s});return C(p,{"data-field":n,className:`RemoteFlows__TextField__Item__${n}`,children:[r&&e(i,{className:"RemoteFlows__TextField__Label",children:r}),e(_,{children:e(x,{...o,value:o.value??"",onChange:f=>{o.onChange(f)},className:"RemoteFlows__TextField__Input",placeholder:r,maxLength:T})}),m?C("span",{className:"RemoteFlows__TextField__DescriptionGroup",children:[l," ",e("span",{className:"RemoteFlows__TextField__DescriptionSuffix",children:m})]}):l,h&&u.error&&e(c,{className:"RemoteFlows__TextField__Error"})]})}a(I,"TextFieldDefault");export{I as a};
2
+ //# sourceMappingURL=chunk-GIBD2ZCJ.js.map
@@ -1,2 +1,2 @@
1
- import{b as n}from"./chunk-MRYRNB7Y.js";import{a as l}from"./chunk-UZFEJMO6.js";import{a as t}from"./chunk-VQRE3YLW.js";import{h as a}from"./chunk-AUPAAQUT.js";import{a as r}from"./chunk-P37U34EQ.js";import{jsx as e}from"react/jsx-runtime";function S({defaultValues:s,fields:i,onSubmit:d}){let{formId:F,terminationBag:o}=n(),m=l({handleValidation:o.handleValidation,defaultValues:s,checkFieldUpdates:o.checkFieldUpdates}),u=i||(o?.fields??[]);return e(a,{...m,children:e("form",{id:F,onSubmit:m.handleSubmit(d),className:"space-y-4 RemoteFlows__TerminationForm",children:e(t,{fields:u})})})}r(S,"TerminationForm");export{S as a};
2
- //# sourceMappingURL=chunk-LCUURLXS.js.map
1
+ import{b as l}from"./chunk-MRYRNB7Y.js";import{a as n}from"./chunk-AFTFDGSD.js";import{a as t}from"./chunk-5NN5RWBG.js";import{b as a}from"./chunk-C7KVPEVX.js";import{a as r}from"./chunk-P37U34EQ.js";import{jsx as e}from"react/jsx-runtime";function S({defaultValues:s,fields:i,onSubmit:d}){let{formId:F,terminationBag:o}=l(),m=n({handleValidation:o.handleValidation,defaultValues:s,checkFieldUpdates:o.checkFieldUpdates}),u=i||(o?.fields??[]);return e(a,{...m,children:e("form",{id:F,onSubmit:m.handleSubmit(d),className:"space-y-4 RemoteFlows__TerminationForm",children:e(t,{fields:u})})})}r(S,"TerminationForm");export{S as a};
2
+ //# sourceMappingURL=chunk-GNVGW65D.js.map
@@ -1,2 +1,2 @@
1
- import{a as i}from"./chunk-5TOSVOLY.js";import{a as n}from"./chunk-GPWQPJQ7.js";import{n as e}from"./chunk-C4HFMTSB.js";import{a as o}from"./chunk-P37U34EQ.js";import{Fragment as s,jsx as t,jsxs as r}from"react/jsx-runtime";var l=["You submit your termination request.","Remote reviews your request along with the employment agreement, local labor laws, and any collective bargaining agreements in place.","A lifecycle specialist contacts you if they need additional details. Sometimes they will request a call.","Depending on the country-specific laws and the terms of the employment agreement, Remote may need to seek additional legal advice. We\u2019ll let you know if there are additional charges before proceeding.","Terms and conditions for the termination are finalized.","You verbally communicate the termination to the employee.","Remote shares termination documents with the employee.","The employee signs the termination documents if required.","Remote processes the final salary and offboards the employee."],f=o(()=>r(s,{children:[t("h3",{className:e("RemoteFlows__TerminationDialogInfoContent__Title"),children:"Please read carefully before you continue"}),t("p",{className:e("RemoteFlows__TerminationDialogInfoContent__Description"),children:"Please do not inform the employee of the termination. Remote will lead communication with them after you submit this form and they finalize the termination terms."}),t("p",{className:e("RemoteFlows__TerminationDialogInfoContent__Description RemoteFlows__TerminationDialogInfoContent__FollowUpDescription"),children:"If you already informed them, that's okay. Remote will ask for the details regarding that communication and they'll take it from there."}),t(i,{className:e("RemoteFlows__TerminationDialogInfoContent__ZendeskTriggerButton text-sm"),zendeskId:n.terminationEmployeeCommunication,children:"Learn more about employee communication"}),t("h3",{className:e("RemoteFlows__TerminationDialogInfoContent__ProcessTitle"),children:"The termination process"}),t("ul",{className:e("RemoteFlows__TerminationDialogInfoContent__ProcessList list-disc list-inside"),children:l.map((a,m)=>t("li",{className:e("RemoteFlows__TerminationDialogInfoContent__ProcessListItem"),children:a},m))})]}),"TerminationDialogInfoContent");export{f as a};
2
- //# sourceMappingURL=chunk-QSF4XFSV.js.map
1
+ import{a as i}from"./chunk-3OHORFIX.js";import{a as n}from"./chunk-GPWQPJQ7.js";import{n as e}from"./chunk-C4HFMTSB.js";import{a as o}from"./chunk-P37U34EQ.js";import{Fragment as s,jsx as t,jsxs as r}from"react/jsx-runtime";var l=["You submit your termination request.","Remote reviews your request along with the employment agreement, local labor laws, and any collective bargaining agreements in place.","A lifecycle specialist contacts you if they need additional details. Sometimes they will request a call.","Depending on the country-specific laws and the terms of the employment agreement, Remote may need to seek additional legal advice. We\u2019ll let you know if there are additional charges before proceeding.","Terms and conditions for the termination are finalized.","You verbally communicate the termination to the employee.","Remote shares termination documents with the employee.","The employee signs the termination documents if required.","Remote processes the final salary and offboards the employee."],f=o(()=>r(s,{children:[t("h3",{className:e("RemoteFlows__TerminationDialogInfoContent__Title"),children:"Please read carefully before you continue"}),t("p",{className:e("RemoteFlows__TerminationDialogInfoContent__Description"),children:"Please do not inform the employee of the termination. Remote will lead communication with them after you submit this form and they finalize the termination terms."}),t("p",{className:e("RemoteFlows__TerminationDialogInfoContent__Description RemoteFlows__TerminationDialogInfoContent__FollowUpDescription"),children:"If you already informed them, that's okay. Remote will ask for the details regarding that communication and they'll take it from there."}),t(i,{className:e("RemoteFlows__TerminationDialogInfoContent__ZendeskTriggerButton text-sm"),zendeskId:n.terminationEmployeeCommunication,children:"Learn more about employee communication"}),t("h3",{className:e("RemoteFlows__TerminationDialogInfoContent__ProcessTitle"),children:"The termination process"}),t("ul",{className:e("RemoteFlows__TerminationDialogInfoContent__ProcessList list-disc list-inside"),children:l.map((a,m)=>t("li",{className:e("RemoteFlows__TerminationDialogInfoContent__ProcessListItem"),children:a},m))})]}),"TerminationDialogInfoContent");export{f as a};
2
+ //# sourceMappingURL=chunk-GRLZH65T.js.map
@@ -0,0 +1,2 @@
1
+ import{c as S}from"./chunk-C7KVPEVX.js";import{e as _}from"./chunk-SRLBVFNQ.js";import{b as C,c as D}from"./chunk-H2O4CVKF.js";import{a as i}from"./chunk-P37U34EQ.js";import F from"lodash.groupby";import b from"lodash.capitalize";var W=60,v=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"];function M(e){if(e<60)return`${e}m`;let a=Math.floor(e/W),n=e%W;return n>0?`${a}h${n}m`:`${a}h`}i(M,"convertBreakDurationToHours");function I(e){let a=e.reduce((n,c)=>c.hours+n,0);return Number(a.toFixed(2))}i(I,"calculateTotalWorkHours");function N(e,a){let n=a.map(({day:d})=>d.toLowerCase()),c=n.indexOf(e),l=null;for(;c<n.length&&!l;){let d=n[c],k=n[c+1],o=v.indexOf(d)+1;v[o]===k||(l=d),c+=1}return l}i(N,"findLastConsecutiveDay");function T(e){return e.start_time&&e.end_time&&(typeof e.hours=="number"?e.hours:Number.parseInt(e.hours))>0}i(T,"shouldSummarizeSchedule");function w(e){return Number.parseInt(e.break_duration_minutes)>0}i(w,"shouldSummarizeBreaks");function P(e){let a=e.filter(T),n=F(a,o=>`${o.start_time}|${o.end_time}`),c=e.filter(w),l=F(c,"break_duration_minutes"),d=Object.keys(n).map(o=>{let s=n[o],m=s[0].day,[p,h]=o.split("|"),t=`from <span>${p.replace(":","h")}</span> to <span>${h.replace(":","h")}</span>`,r=N(m,s),u=(r?s.findIndex(y=>y.day===r):-1)===s.length-1;return s.length===1?`${b(m)}, ${t}`:!u||!r?s.reduce((y,$,g)=>{let x=b($.day);return g===s.length-1?`${y}and ${x}, ${t}`:`${y}<span>${x}</span>, `},""):`<span>${b(m)}</span> to <span>${b(r)}</span>, ${t}`}),k=Object.keys(l).reverse().map((o,s)=>{let m=s===0,p=l[o],h=M(parseInt(o,10));if(Object.keys(l).length===1)return`With ${h} daily breaks`;if(p.length===1){let t=`${h} break on ${b(p[0].day)}.`;return m?`With ${t}`:t}return p.reduce((t,r,f)=>{let u=b(r.day);return f===0?`${t} ${u}`:f===p.length-1?`${t}, and ${u}.`:`${t}, ${u}`},m?`With ${h} break on`:`${h} break on`)});return{workHoursSummary:d,breakSummary:k}}i(P,"buildWorkScheduleSummary");function R(e){let{checked:a,start_time:n,end_time:c,break_duration_minutes:l}=e;if(!a)return 0;let[d,k]=n.split(":").map(Number),[o,s]=c.split(":").map(Number),m=d*60+k,t=(o*60+s-m-Number.parseInt(l||"0"))/60;return t===Math.floor(t)?t:Number(t.toFixed(2))}i(R,"calculateHours");var B={monday:"Mon",tuesday:"Tue",wednesday:"Wed",thursday:"Thu",friday:"Fri",saturday:"Sat",sunday:"Sun"};function z(e){return B[e]}i(z,"getShortWeekday");import{jsx as H}from"react/jsx-runtime";function Y({name:e,defaultValue:a,description:n,label:c,onChange:l,multiple:d,options:k,component:o,...s}){let{components:m}=C(),{control:p}=_(),h=D(),t=i((r,f,u)=>{if(d&&u){let y=r.value?[...r.value]:[];f?y.includes(u)||r.onChange([...y,u]):r.onChange(y.filter($=>$!==u))}else r.onChange(f)},"handleCheckboxChange");return H(S,{control:p,name:e,defaultValue:a,render:({field:r,fieldState:f})=>{let u=o||m?.checkbox;if(!u)throw new Error(`Checkbox component not found for field ${e}`);let y={name:e,description:n,label:c,defaultValue:a,multiple:d,options:k,transformHtml:h,...s};return H(u,{field:{...r,onChange:i(($,g)=>{t(r,$,g),l?.($,g)},"onChange")},fieldState:f,fieldData:y})}})}i(Y,"CheckBoxField");export{v as a,I as b,P as c,R as d,z as e,Y as f};
2
+ //# sourceMappingURL=chunk-GSUGHAHA.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/form/fields/workScheduleUtils.ts","../src/components/form/fields/CheckBoxField.tsx"],"sourcesContent":["import groupBy from 'lodash.groupby';\nimport capitalize from 'lodash.capitalize';\n\nconst MINUTES_IN_HOUR = 60;\n\nexport const DAYS_OF_THE_WEEK = [\n 'monday',\n 'tuesday',\n 'wednesday',\n 'thursday',\n 'friday',\n 'saturday',\n 'sunday',\n] as const;\n\nexport type DailySchedule = {\n day: string;\n start_time: string;\n end_time: string;\n hours: number;\n break_duration_minutes: string;\n checked: boolean;\n};\n\n/**\n * Convert break duration in minutes to hours and minutes\n * @param breakDuration - Break duration in minutes\n * @returns Break duration in hours and minutes\n */\nfunction convertBreakDurationToHours(breakDuration: number) {\n if (breakDuration < 60) {\n return `${breakDuration}m`;\n }\n\n const hours = Math.floor(breakDuration / MINUTES_IN_HOUR);\n const minutes = breakDuration % MINUTES_IN_HOUR;\n\n if (minutes > 0) {\n return `${hours}h${minutes}m`;\n }\n\n return `${hours}h`;\n}\n\n/**\n * Calculate total work hours from daily schedules\n * @param dailySchedules - Daily schedules\n * @returns Total work hours\n */\nexport function calculateTotalWorkHours(dailySchedules: DailySchedule[]) {\n const totalWorkHours = dailySchedules.reduce((total, daySchedule) => {\n const sum = daySchedule.hours + total;\n return sum;\n }, 0);\n\n return Number(totalWorkHours.toFixed(2));\n}\n\n/**\n * Find the last consecutive day in a schedule (used to summarize work hours)\n * @param startDay - The starting day\n * @param dailySchedule - The daily schedule\n * @returns The last consecutive day\n */\nfunction findLastConsecutiveDay(\n startDay: string,\n dailySchedule: DailySchedule[],\n): Weekday | null {\n const daysScheduled = dailySchedule.map(\n ({ day }: DailySchedule) => day.toLowerCase() as Weekday,\n );\n\n let idx = daysScheduled.indexOf(startDay as Weekday);\n let day: Weekday | null = null;\n\n while (idx < daysScheduled.length && !day) {\n const currentDay = daysScheduled[idx];\n const nextDay = daysScheduled[idx + 1];\n\n const nextDayIdx = DAYS_OF_THE_WEEK.indexOf(currentDay) + 1;\n const isNextDay = DAYS_OF_THE_WEEK[nextDayIdx] === nextDay;\n\n if (!isNextDay) {\n day = currentDay;\n }\n\n idx += 1;\n }\n\n return day;\n}\n\n/**\n * Check if a day schedule should be summarized\n * @param daySchedule - The day schedule\n * @returns True if the day schedule should be summarized\n */\nfunction shouldSummarizeSchedule(daySchedule: DailySchedule) {\n return (\n daySchedule.start_time &&\n daySchedule.end_time &&\n (typeof daySchedule.hours === 'number'\n ? daySchedule.hours\n : Number.parseInt(daySchedule.hours)) > 0\n );\n}\n\n/**\n * Check if break duration should be summarized\n * @param daySchedule - The day schedule\n * @returns True if the break duration should be summarized\n */\nfunction shouldSummarizeBreaks(daySchedule: DailySchedule) {\n return Number.parseInt(daySchedule.break_duration_minutes) > 0;\n}\n\n/**\n * Build the work schedule summary\n * @param dailySchedules - The daily schedules\n * @returns The work schedule summary\n */\nexport function buildWorkScheduleSummary(dailySchedules: DailySchedule[]) {\n const activeScheduleDays = dailySchedules.filter(shouldSummarizeSchedule);\n\n const groupedWorkHours = groupBy(activeScheduleDays, (dailySchedule) => {\n return `${dailySchedule.start_time}|${dailySchedule.end_time}`;\n });\n\n const activeBreakDays = dailySchedules.filter(shouldSummarizeBreaks);\n const groupedBreaks = groupBy(activeBreakDays, 'break_duration_minutes');\n\n const workHoursSummary = Object.keys(groupedWorkHours).map(\n (scheduleTimes) => {\n const sameDailySchedule = groupedWorkHours[scheduleTimes];\n const startDay = sameDailySchedule[0].day;\n const [start_time, end_time] = scheduleTimes.split('|');\n const timeSummary = `from <span>${start_time.replace(':', 'h')}</span> to <span>${end_time.replace(':', 'h')}</span>`;\n\n const lastConsecutiveDay = findLastConsecutiveDay(\n startDay,\n sameDailySchedule,\n );\n const lastConsecutiveDayIdx = lastConsecutiveDay\n ? sameDailySchedule.findIndex(\n (dailySchedule) => dailySchedule.day === lastConsecutiveDay,\n )\n : -1;\n const allDaysAreConsecutive =\n lastConsecutiveDayIdx === sameDailySchedule.length - 1;\n\n if (sameDailySchedule.length === 1) {\n return `${capitalize(startDay)}, ${timeSummary}`;\n }\n\n if (!allDaysAreConsecutive || !lastConsecutiveDay) {\n return sameDailySchedule.reduce((summary, dailySchedule, idx) => {\n const day = capitalize(dailySchedule.day);\n if (idx === sameDailySchedule.length - 1) {\n return `${summary}and ${day}, ${timeSummary}`;\n }\n\n return `${summary}<span>${day}</span>, `;\n }, '');\n }\n\n return `<span>${capitalize(startDay)}</span> to <span>${capitalize(lastConsecutiveDay)}</span>, ${timeSummary}`;\n },\n );\n\n const breakSummary = Object.keys(groupedBreaks)\n .reverse()\n .map((breakDuration, idx) => {\n const isFirstGroup = idx === 0;\n const sameDailyBreaks = groupedBreaks[breakDuration];\n const breakString = convertBreakDurationToHours(\n parseInt(breakDuration, 10),\n );\n\n if (Object.keys(groupedBreaks).length === 1) {\n return `With ${breakString} daily breaks`;\n }\n\n if (sameDailyBreaks.length === 1) {\n const breakText = `${breakString} break on ${capitalize(sameDailyBreaks[0].day)}.`;\n return isFirstGroup ? `With ${breakText}` : breakText;\n }\n\n return sameDailyBreaks.reduce(\n (summary, dailySchedule, breakIdx) => {\n const day = capitalize(dailySchedule.day);\n\n if (breakIdx === 0) {\n return `${summary} ${day}`;\n }\n\n if (breakIdx === sameDailyBreaks.length - 1) {\n return `${summary}, and ${day}.`;\n }\n\n return `${summary}, ${day}`;\n },\n isFirstGroup\n ? `With ${breakString} break on`\n : `${breakString} break on`,\n );\n });\n\n return { workHoursSummary, breakSummary };\n}\n\n// Calculate hours for each day\nexport function calculateHours(day: DailySchedule) {\n const { checked, start_time, end_time, break_duration_minutes } = day;\n if (!checked) return 0;\n\n const [startHour, startMin] = start_time.split(':').map(Number);\n const [endHour, endMin] = end_time.split(':').map(Number);\n\n const startTotalMin = startHour * 60 + startMin;\n const endTotalMin = endHour * 60 + endMin;\n const workMinutes =\n endTotalMin -\n startTotalMin -\n Number.parseInt(break_duration_minutes || '0');\n\n const hours = workMinutes / 60;\n return hours === Math.floor(hours) ? hours : Number(hours.toFixed(2));\n}\n\ntype Weekday = (typeof DAYS_OF_THE_WEEK)[number];\n\nconst dayMap: Record<Weekday, string> = {\n monday: 'Mon',\n tuesday: 'Tue',\n wednesday: 'Wed',\n thursday: 'Thu',\n friday: 'Fri',\n saturday: 'Sat',\n sunday: 'Sun',\n};\n\nexport function getShortWeekday(fullName: Weekday): string {\n return dayMap[fullName];\n}\n","import { FormField } from '@/src/components/ui/form';\nimport { useFormFields, useTransformer } from '@/src/context';\nimport { Components, JSFField } from '@/src/types/remoteFlows';\nimport {\n ControllerRenderProps,\n FieldValues,\n useFormContext,\n} from 'react-hook-form';\n\nexport type CheckBoxFieldProps = {\n name: string;\n} & Partial<\n JSFField & {\n onChange?: (checked: boolean, optionId?: string) => void;\n component?: Components['checkbox'];\n }\n>;\n\nexport function CheckBoxField({\n name,\n defaultValue,\n description,\n label,\n onChange,\n multiple,\n options,\n component,\n ...rest\n}: CheckBoxFieldProps) {\n const { components } = useFormFields();\n const { control } = useFormContext();\n const transformHtml = useTransformer();\n\n const handleCheckboxChange = (\n field: ControllerRenderProps<FieldValues, string>,\n checked: boolean,\n optionId?: string,\n ) => {\n if (multiple && optionId) {\n // Multiple checkboxes: manage as array\n const currentValues = field.value ? [...field.value] : [];\n if (checked) {\n if (!currentValues.includes(optionId)) {\n field.onChange([...currentValues, optionId]);\n }\n } else {\n field.onChange(currentValues.filter((value) => value !== optionId));\n }\n } else {\n // Single checkbox: simple boolean toggle\n field.onChange(checked);\n }\n };\n\n return (\n <FormField\n control={control}\n name={name}\n defaultValue={defaultValue}\n render={({ field, fieldState }) => {\n const Component = component || components?.checkbox;\n\n if (!Component) {\n throw new Error(`Checkbox component not found for field ${name}`);\n }\n\n const customCheckboxFieldProps = {\n name,\n description,\n label,\n defaultValue,\n multiple,\n options,\n transformHtml,\n ...rest,\n };\n return (\n <Component\n field={{\n ...field,\n onChange: (checked: boolean, optionId?: string) => {\n handleCheckboxChange(field, checked, optionId);\n onChange?.(checked, optionId);\n },\n }}\n fieldState={fieldState}\n fieldData={customCheckboxFieldProps}\n />\n );\n }}\n />\n );\n}\n"],"mappings":"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","names":["groupBy","capitalize","MINUTES_IN_HOUR","DAYS_OF_THE_WEEK","convertBreakDurationToHours","breakDuration","hours","minutes","__name","calculateTotalWorkHours","dailySchedules","totalWorkHours","total","daySchedule","findLastConsecutiveDay","startDay","dailySchedule","daysScheduled","day","idx","currentDay","nextDay","nextDayIdx","shouldSummarizeSchedule","shouldSummarizeBreaks","buildWorkScheduleSummary","activeScheduleDays","groupedWorkHours","groupBy","activeBreakDays","groupedBreaks","workHoursSummary","scheduleTimes","sameDailySchedule","start_time","end_time","timeSummary","lastConsecutiveDay","allDaysAreConsecutive","capitalize","summary","breakSummary","isFirstGroup","sameDailyBreaks","breakString","breakText","breakIdx","calculateHours","checked","break_duration_minutes","startHour","startMin","endHour","endMin","startTotalMin","dayMap","getShortWeekday","fullName","jsx","CheckBoxField","name","defaultValue","description","label","onChange","multiple","options","component","rest","components","useFormFields","control","useFormContext","transformHtml","useTransformer","handleCheckboxChange","__name","field","checked","optionId","currentValues","value","FormField","fieldState","Component","customCheckboxFieldProps"]}
1
+ {"version":3,"sources":["../src/components/form/fields/workScheduleUtils.ts","../src/components/form/fields/CheckBoxField.tsx"],"sourcesContent":["import groupBy from 'lodash.groupby';\nimport capitalize from 'lodash.capitalize';\n\nconst MINUTES_IN_HOUR = 60;\n\nexport const DAYS_OF_THE_WEEK = [\n 'monday',\n 'tuesday',\n 'wednesday',\n 'thursday',\n 'friday',\n 'saturday',\n 'sunday',\n] as const;\n\nexport type DailySchedule = {\n day: string;\n start_time: string;\n end_time: string;\n hours: number;\n break_duration_minutes: string;\n checked: boolean;\n};\n\n/**\n * Convert break duration in minutes to hours and minutes\n * @param breakDuration - Break duration in minutes\n * @returns Break duration in hours and minutes\n */\nfunction convertBreakDurationToHours(breakDuration: number) {\n if (breakDuration < 60) {\n return `${breakDuration}m`;\n }\n\n const hours = Math.floor(breakDuration / MINUTES_IN_HOUR);\n const minutes = breakDuration % MINUTES_IN_HOUR;\n\n if (minutes > 0) {\n return `${hours}h${minutes}m`;\n }\n\n return `${hours}h`;\n}\n\n/**\n * Calculate total work hours from daily schedules\n * @param dailySchedules - Daily schedules\n * @returns Total work hours\n */\nexport function calculateTotalWorkHours(dailySchedules: DailySchedule[]) {\n const totalWorkHours = dailySchedules.reduce((total, daySchedule) => {\n const sum = daySchedule.hours + total;\n return sum;\n }, 0);\n\n return Number(totalWorkHours.toFixed(2));\n}\n\n/**\n * Find the last consecutive day in a schedule (used to summarize work hours)\n * @param startDay - The starting day\n * @param dailySchedule - The daily schedule\n * @returns The last consecutive day\n */\nfunction findLastConsecutiveDay(\n startDay: string,\n dailySchedule: DailySchedule[],\n): Weekday | null {\n const daysScheduled = dailySchedule.map(\n ({ day }: DailySchedule) => day.toLowerCase() as Weekday,\n );\n\n let idx = daysScheduled.indexOf(startDay as Weekday);\n let day: Weekday | null = null;\n\n while (idx < daysScheduled.length && !day) {\n const currentDay = daysScheduled[idx];\n const nextDay = daysScheduled[idx + 1];\n\n const nextDayIdx = DAYS_OF_THE_WEEK.indexOf(currentDay) + 1;\n const isNextDay = DAYS_OF_THE_WEEK[nextDayIdx] === nextDay;\n\n if (!isNextDay) {\n day = currentDay;\n }\n\n idx += 1;\n }\n\n return day;\n}\n\n/**\n * Check if a day schedule should be summarized\n * @param daySchedule - The day schedule\n * @returns True if the day schedule should be summarized\n */\nfunction shouldSummarizeSchedule(daySchedule: DailySchedule) {\n return (\n daySchedule.start_time &&\n daySchedule.end_time &&\n (typeof daySchedule.hours === 'number'\n ? daySchedule.hours\n : Number.parseInt(daySchedule.hours)) > 0\n );\n}\n\n/**\n * Check if break duration should be summarized\n * @param daySchedule - The day schedule\n * @returns True if the break duration should be summarized\n */\nfunction shouldSummarizeBreaks(daySchedule: DailySchedule) {\n return Number.parseInt(daySchedule.break_duration_minutes) > 0;\n}\n\n/**\n * Build the work schedule summary\n * @param dailySchedules - The daily schedules\n * @returns The work schedule summary\n */\nexport function buildWorkScheduleSummary(dailySchedules: DailySchedule[]) {\n const activeScheduleDays = dailySchedules.filter(shouldSummarizeSchedule);\n\n const groupedWorkHours = groupBy(activeScheduleDays, (dailySchedule) => {\n return `${dailySchedule.start_time}|${dailySchedule.end_time}`;\n });\n\n const activeBreakDays = dailySchedules.filter(shouldSummarizeBreaks);\n const groupedBreaks = groupBy(activeBreakDays, 'break_duration_minutes');\n\n const workHoursSummary = Object.keys(groupedWorkHours).map(\n (scheduleTimes) => {\n const sameDailySchedule = groupedWorkHours[scheduleTimes];\n const startDay = sameDailySchedule[0].day;\n const [start_time, end_time] = scheduleTimes.split('|');\n const timeSummary = `from <span>${start_time.replace(':', 'h')}</span> to <span>${end_time.replace(':', 'h')}</span>`;\n\n const lastConsecutiveDay = findLastConsecutiveDay(\n startDay,\n sameDailySchedule,\n );\n const lastConsecutiveDayIdx = lastConsecutiveDay\n ? sameDailySchedule.findIndex(\n (dailySchedule) => dailySchedule.day === lastConsecutiveDay,\n )\n : -1;\n const allDaysAreConsecutive =\n lastConsecutiveDayIdx === sameDailySchedule.length - 1;\n\n if (sameDailySchedule.length === 1) {\n return `${capitalize(startDay)}, ${timeSummary}`;\n }\n\n if (!allDaysAreConsecutive || !lastConsecutiveDay) {\n return sameDailySchedule.reduce((summary, dailySchedule, idx) => {\n const day = capitalize(dailySchedule.day);\n if (idx === sameDailySchedule.length - 1) {\n return `${summary}and ${day}, ${timeSummary}`;\n }\n\n return `${summary}<span>${day}</span>, `;\n }, '');\n }\n\n return `<span>${capitalize(startDay)}</span> to <span>${capitalize(lastConsecutiveDay)}</span>, ${timeSummary}`;\n },\n );\n\n const breakSummary = Object.keys(groupedBreaks)\n .reverse()\n .map((breakDuration, idx) => {\n const isFirstGroup = idx === 0;\n const sameDailyBreaks = groupedBreaks[breakDuration];\n const breakString = convertBreakDurationToHours(\n parseInt(breakDuration, 10),\n );\n\n if (Object.keys(groupedBreaks).length === 1) {\n return `With ${breakString} daily breaks`;\n }\n\n if (sameDailyBreaks.length === 1) {\n const breakText = `${breakString} break on ${capitalize(sameDailyBreaks[0].day)}.`;\n return isFirstGroup ? `With ${breakText}` : breakText;\n }\n\n return sameDailyBreaks.reduce(\n (summary, dailySchedule, breakIdx) => {\n const day = capitalize(dailySchedule.day);\n\n if (breakIdx === 0) {\n return `${summary} ${day}`;\n }\n\n if (breakIdx === sameDailyBreaks.length - 1) {\n return `${summary}, and ${day}.`;\n }\n\n return `${summary}, ${day}`;\n },\n isFirstGroup\n ? `With ${breakString} break on`\n : `${breakString} break on`,\n );\n });\n\n return { workHoursSummary, breakSummary };\n}\n\n// Calculate hours for each day\nexport function calculateHours(day: DailySchedule) {\n const { checked, start_time, end_time, break_duration_minutes } = day;\n if (!checked) return 0;\n\n const [startHour, startMin] = start_time.split(':').map(Number);\n const [endHour, endMin] = end_time.split(':').map(Number);\n\n const startTotalMin = startHour * 60 + startMin;\n const endTotalMin = endHour * 60 + endMin;\n const workMinutes =\n endTotalMin -\n startTotalMin -\n Number.parseInt(break_duration_minutes || '0');\n\n const hours = workMinutes / 60;\n return hours === Math.floor(hours) ? hours : Number(hours.toFixed(2));\n}\n\ntype Weekday = (typeof DAYS_OF_THE_WEEK)[number];\n\nconst dayMap: Record<Weekday, string> = {\n monday: 'Mon',\n tuesday: 'Tue',\n wednesday: 'Wed',\n thursday: 'Thu',\n friday: 'Fri',\n saturday: 'Sat',\n sunday: 'Sun',\n};\n\nexport function getShortWeekday(fullName: Weekday): string {\n return dayMap[fullName];\n}\n","import { FormField } from '@/src/components/ui/form';\nimport { useFormFields, useTransformer } from '@/src/context';\nimport { Components, JSFField } from '@/src/types/remoteFlows';\nimport {\n ControllerRenderProps,\n FieldValues,\n useFormContext,\n} from 'react-hook-form';\n\nexport type CheckBoxFieldProps = {\n name: string;\n} & Partial<\n JSFField & {\n onChange?: (checked: boolean, optionId?: string) => void;\n component?: Components['checkbox'];\n }\n>;\n\nexport function CheckBoxField({\n name,\n defaultValue,\n description,\n label,\n onChange,\n multiple,\n options,\n component,\n ...rest\n}: CheckBoxFieldProps) {\n const { components } = useFormFields();\n const { control } = useFormContext();\n const transformHtml = useTransformer();\n\n const handleCheckboxChange = (\n field: ControllerRenderProps<FieldValues, string>,\n checked: boolean,\n optionId?: string,\n ) => {\n if (multiple && optionId) {\n // Multiple checkboxes: manage as array\n const currentValues = field.value ? [...field.value] : [];\n if (checked) {\n if (!currentValues.includes(optionId)) {\n field.onChange([...currentValues, optionId]);\n }\n } else {\n field.onChange(currentValues.filter((value) => value !== optionId));\n }\n } else {\n // Single checkbox: simple boolean toggle\n field.onChange(checked);\n }\n };\n\n return (\n <FormField\n control={control}\n name={name}\n defaultValue={defaultValue}\n render={({ field, fieldState }) => {\n const Component = component || components?.checkbox;\n\n if (!Component) {\n throw new Error(`Checkbox component not found for field ${name}`);\n }\n\n const customCheckboxFieldProps = {\n name,\n description,\n label,\n defaultValue,\n multiple,\n options,\n transformHtml,\n ...rest,\n };\n return (\n <Component\n field={{\n ...field,\n onChange: (checked: boolean, optionId?: string) => {\n handleCheckboxChange(field, checked, optionId);\n onChange?.(checked, optionId);\n },\n }}\n fieldState={fieldState}\n fieldData={customCheckboxFieldProps}\n />\n );\n }}\n />\n );\n}\n"],"mappings":"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","names":["groupBy","capitalize","MINUTES_IN_HOUR","DAYS_OF_THE_WEEK","convertBreakDurationToHours","breakDuration","hours","minutes","__name","calculateTotalWorkHours","dailySchedules","totalWorkHours","total","daySchedule","findLastConsecutiveDay","startDay","dailySchedule","daysScheduled","day","idx","currentDay","nextDay","nextDayIdx","shouldSummarizeSchedule","shouldSummarizeBreaks","buildWorkScheduleSummary","activeScheduleDays","groupedWorkHours","groupBy","activeBreakDays","groupedBreaks","workHoursSummary","scheduleTimes","sameDailySchedule","start_time","end_time","timeSummary","lastConsecutiveDay","allDaysAreConsecutive","capitalize","summary","breakSummary","isFirstGroup","sameDailyBreaks","breakString","breakText","breakIdx","calculateHours","checked","break_duration_minutes","startHour","startMin","endHour","endMin","startTotalMin","dayMap","getShortWeekday","fullName","jsx","CheckBoxField","name","defaultValue","description","label","onChange","multiple","options","component","rest","components","useFormFields","control","useFormContext","transformHtml","useTransformer","handleCheckboxChange","__name","field","checked","optionId","currentValues","value","FormField","fieldState","Component","customCheckboxFieldProps"]}
@@ -1,2 +1,2 @@
1
- import{a as n}from"./chunk-PJTMFMRJ.js";import{a as e}from"./chunk-APUJLKUM.js";import{b as a}from"./chunk-WCJZAOZR.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as i}from"react/jsx-runtime";function d(r){let{adminBag:t}=a(),l=e(r),s={...t.initialValues?.contract_details,...t.stepState.values?.contract_details};return i(n,{onSubmit:l,defaultValues:s})}o(d,"ContractDetailsStep");export{d as a};
2
- //# sourceMappingURL=chunk-WDPJIOLG.js.map
1
+ import{a as e}from"./chunk-APUJLKUM.js";import{a as n}from"./chunk-I65OXH33.js";import{b as a}from"./chunk-WCJZAOZR.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as i}from"react/jsx-runtime";function d(r){let{adminBag:t}=a(),l=e(r),s={...t.initialValues?.contract_details,...t.stepState.values?.contract_details};return i(n,{onSubmit:l,defaultValues:s})}o(d,"ContractDetailsStep");export{d as a};
2
+ //# sourceMappingURL=chunk-H4NJGAN4.js.map