@remoteoss/remote-flows 1.3.0 → 1.4.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 (371) hide show
  1. package/README.md +1 -0
  2. package/dist/{PdfPreview-6C3GGXIN.js → PdfPreview-2VXVDUFP.js} +2 -2
  3. package/dist/{chunk-EQOU2VPX.js → chunk-2FDEMDWJ.js} +2 -2
  4. package/dist/{chunk-6S6H4NAQ.js → chunk-3CRC4NDD.js} +2 -2
  5. package/dist/{chunk-AT7VHJMW.js → chunk-3DRSYLBM.js} +2 -2
  6. package/dist/{chunk-EYQ4PYUT.js → chunk-4FW2VTO4.js} +2 -2
  7. package/dist/chunk-4FW2VTO4.js.map +1 -0
  8. package/dist/{chunk-M2TLNSTK.js → chunk-4OVFMUUJ.js} +2 -2
  9. package/dist/{chunk-EC7QVRRX.js → chunk-4UAHJOHZ.js} +2 -2
  10. package/dist/chunk-5BRMLRS7.js +2 -0
  11. package/dist/chunk-5BRMLRS7.js.map +1 -0
  12. package/dist/{chunk-QUQLW5YW.js → chunk-5JQMTMHR.js} +2 -2
  13. package/dist/chunk-5WFWHEXV.js +2 -0
  14. package/dist/chunk-5WFWHEXV.js.map +1 -0
  15. package/dist/{chunk-MEZ7LYUK.js → chunk-6AQLDTMK.js} +2 -2
  16. package/dist/{chunk-OKM7DRCF.js → chunk-6CASSN2Z.js} +2 -2
  17. package/dist/chunk-6DHV4GT6.js +2 -0
  18. package/dist/{chunk-XRI6PRXK.js → chunk-6E5GX7W3.js} +2 -2
  19. package/dist/{chunk-T6HCUFYI.js → chunk-765OB2K5.js} +2 -2
  20. package/dist/{chunk-WCEHP5N7.js → chunk-7FMFSOJ3.js} +2 -2
  21. package/dist/{chunk-C4DLDK36.js → chunk-7JDWTTYE.js} +2 -2
  22. package/dist/{chunk-3Z6AFLXW.js → chunk-7XKEJ5Y6.js} +2 -2
  23. package/dist/{chunk-Z6TCBVRG.js → chunk-A5NDO6CQ.js} +2 -2
  24. package/dist/{chunk-7COHIUGW.js → chunk-AJ5SXKFO.js} +2 -2
  25. package/dist/chunk-AJ5SXKFO.js.map +1 -0
  26. package/dist/chunk-ARQ2PTEA.js +2 -0
  27. package/dist/chunk-ARQ2PTEA.js.map +1 -0
  28. package/dist/{chunk-UA6MNQLD.js → chunk-BNBEIHLD.js} +2 -2
  29. package/dist/{chunk-Y5P5IJRN.js → chunk-BPIGB72P.js} +2 -2
  30. package/dist/{chunk-66N57DKF.js → chunk-CR7AIZKA.js} +2 -2
  31. package/dist/chunk-CTAWDJ2D.js +2 -0
  32. package/dist/chunk-CTAWDJ2D.js.map +1 -0
  33. package/dist/{chunk-35RMJMSH.js → chunk-D6Y7GLBT.js} +2 -2
  34. package/dist/{chunk-LKMPZJIW.js → chunk-EGSUF7OD.js} +2 -2
  35. package/dist/chunk-FEIYAZ7Q.js +2 -0
  36. package/dist/chunk-FEIYAZ7Q.js.map +1 -0
  37. package/dist/chunk-FUBLGAPH.js +2 -0
  38. package/dist/chunk-FUBLGAPH.js.map +1 -0
  39. package/dist/{chunk-A3GZSC5Z.js → chunk-G2X5F5YR.js} +2 -2
  40. package/dist/{chunk-UOOUV52J.js → chunk-GGPEKIIH.js} +2 -2
  41. package/dist/{chunk-72OH7PSF.js → chunk-GPLI6GGL.js} +2 -2
  42. package/dist/chunk-GVSAZND2.js +2 -0
  43. package/dist/chunk-GVSAZND2.js.map +1 -0
  44. package/dist/{chunk-44IOQYR2.js → chunk-HLR4BEDV.js} +2 -2
  45. package/dist/{chunk-ARTSDUSS.js → chunk-HRG5MSVG.js} +2 -2
  46. package/dist/chunk-HRG5MSVG.js.map +1 -0
  47. package/dist/{chunk-BL7OYWNX.js → chunk-HUJ3AUIS.js} +2 -2
  48. package/dist/chunk-IJ6325YO.js +2 -0
  49. package/dist/chunk-IJ6325YO.js.map +1 -0
  50. package/dist/{chunk-PMTKQME6.js → chunk-ILOKQ6OH.js} +2 -2
  51. package/dist/{chunk-KKGRYDZA.js → chunk-K3XVYHGV.js} +2 -2
  52. package/dist/{chunk-5DKNCKV7.js → chunk-K62H3A5T.js} +2 -2
  53. package/dist/{chunk-LJVV6MMB.js → chunk-KRDAGWDH.js} +2 -2
  54. package/dist/{chunk-ZIN2OWTH.js → chunk-LAXQMTDQ.js} +2 -2
  55. package/dist/{chunk-N6BBMT7W.js → chunk-LGUGZN57.js} +2 -2
  56. package/dist/{chunk-MXLQEDRJ.js → chunk-LHNX27TY.js} +2 -2
  57. package/dist/{chunk-VXA6RPA5.js → chunk-LJ6FHPXW.js} +2 -2
  58. package/dist/{chunk-2Y3SXQ5B.js → chunk-LOHRUY4J.js} +1 -1
  59. package/dist/chunk-LOHRUY4J.js.map +1 -0
  60. package/dist/chunk-MD2QFLXC.js +2 -0
  61. package/dist/chunk-MD2QFLXC.js.map +1 -0
  62. package/dist/chunk-N3X274GT.js +2 -0
  63. package/dist/chunk-N3X274GT.js.map +1 -0
  64. package/dist/chunk-NFWNYW2E.js +2 -0
  65. package/dist/chunk-NFWNYW2E.js.map +1 -0
  66. package/dist/{chunk-EGRGQWIY.js → chunk-NHREKNSV.js} +2 -2
  67. package/dist/chunk-NPKIEWF4.js +2 -0
  68. package/dist/chunk-NPKIEWF4.js.map +1 -0
  69. package/dist/chunk-OFWEEY3Y.js +2 -0
  70. package/dist/chunk-OFWEEY3Y.js.map +1 -0
  71. package/dist/chunk-OKMERBJL.js +2 -0
  72. package/dist/chunk-OKMERBJL.js.map +1 -0
  73. package/dist/chunk-OXOK5PM3.js +2 -0
  74. package/dist/chunk-OXOK5PM3.js.map +1 -0
  75. package/dist/chunk-P5QKSFOE.js +2 -0
  76. package/dist/chunk-P5QKSFOE.js.map +1 -0
  77. package/dist/{chunk-F3KEIVSE.js → chunk-PC5JG4TT.js} +2 -2
  78. package/dist/{chunk-LJGCFFAT.js → chunk-PJN2YJO4.js} +2 -2
  79. package/dist/{chunk-A65WMO6K.js → chunk-PSHPB65F.js} +2 -2
  80. package/dist/{chunk-NDQ6UQFG.js → chunk-PU3WPIEK.js} +2 -2
  81. package/dist/{chunk-NABPCULM.js → chunk-QDSRG735.js} +2 -2
  82. package/dist/chunk-QKKAJK3A.js +2 -0
  83. package/dist/chunk-QKKAJK3A.js.map +1 -0
  84. package/dist/chunk-RTQ4GKPG.js +2 -0
  85. package/dist/chunk-RTQ4GKPG.js.map +1 -0
  86. package/dist/{chunk-3CFU6LKQ.js → chunk-SKQWZNKT.js} +2 -2
  87. package/dist/{chunk-HDNBZ6CB.js → chunk-T5OFLN36.js} +2 -2
  88. package/dist/{chunk-W3YE53JN.js → chunk-T6Q7IALZ.js} +2 -2
  89. package/dist/chunk-T6Q7IALZ.js.map +1 -0
  90. package/dist/chunk-TC7EQZJK.js +2 -0
  91. package/dist/chunk-TC7EQZJK.js.map +1 -0
  92. package/dist/chunk-TMBD35L4.js +2 -0
  93. package/dist/chunk-TMBD35L4.js.map +1 -0
  94. package/dist/{chunk-6P4DTWYK.js → chunk-U2HWB5HI.js} +2 -2
  95. package/dist/{chunk-GE5DH3UF.js → chunk-UD4GEI4B.js} +2 -2
  96. package/dist/{chunk-L3Z2G32A.js → chunk-UQCSN47K.js} +1 -1
  97. package/dist/chunk-UQCSN47K.js.map +1 -0
  98. package/dist/chunk-V334GIML.js +2 -0
  99. package/dist/chunk-V334GIML.js.map +1 -0
  100. package/dist/{chunk-Z2WV73EX.js → chunk-VCEQ5E2O.js} +2 -2
  101. package/dist/{chunk-PZNXAOZH.js → chunk-VYHITQHG.js} +2 -2
  102. package/dist/{chunk-VBO75DXV.js → chunk-W3OQNZW6.js} +2 -2
  103. package/dist/chunk-WINYXC33.js +2 -0
  104. package/dist/chunk-WINYXC33.js.map +1 -0
  105. package/dist/{chunk-LG2LVO4C.js → chunk-WLN6G3TE.js} +2 -2
  106. package/dist/{chunk-OP72BS23.js → chunk-WO33FKK4.js} +2 -2
  107. package/dist/{chunk-2FQ2KNP4.js → chunk-X6325UGJ.js} +2 -2
  108. package/dist/{chunk-QIVDIOJG.js → chunk-XGECMN4V.js} +2 -2
  109. package/dist/{chunk-BVDT43OO.js → chunk-XTXPKDZ7.js} +2 -2
  110. package/dist/{chunk-TVJYCR33.js → chunk-XXPJHT5A.js} +2 -2
  111. package/dist/{chunk-IBHNWMMB.js → chunk-YXVNCPUI.js} +2 -2
  112. package/dist/{chunk-4GDEWYZC.js → chunk-Z5A2M5EU.js} +2 -2
  113. package/dist/{chunk-OXL3QGHT.js → chunk-ZCXTTVGV.js} +2 -2
  114. package/dist/chunk-ZCXTTVGV.js.map +1 -0
  115. package/dist/{chunk-KGKDSOER.js → chunk-ZFKHCC4Z.js} +2 -2
  116. package/dist/{chunk-FZDQ7EEI.js → chunk-ZT72WOPZ.js} +2 -2
  117. package/dist/flows/ContractAmendment/ContractAmendmentBack.js +1 -1
  118. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.js +1 -1
  119. package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +4 -3
  120. package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
  121. package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
  122. package/dist/flows/ContractAmendment/ContractAmendmentSubmit.js +1 -1
  123. package/dist/flows/ContractAmendment/context.d.ts +8 -7
  124. package/dist/flows/ContractAmendment/hooks.d.ts +9 -8
  125. package/dist/flows/ContractAmendment/hooks.js +1 -1
  126. package/dist/flows/ContractAmendment/index.d.ts +4 -3
  127. package/dist/flows/ContractAmendment/index.js +1 -1
  128. package/dist/flows/ContractAmendment/types.d.ts +1 -2
  129. package/dist/flows/ContractAmendment/utils.d.ts +4 -2
  130. package/dist/flows/ContractAmendment/utils.js +1 -1
  131. package/dist/flows/ContractorOnboarding/ContractorOnboarding.d.ts +4 -5
  132. package/dist/flows/ContractorOnboarding/ContractorOnboarding.js +1 -1
  133. package/dist/flows/ContractorOnboarding/api.d.ts +14 -7
  134. package/dist/flows/ContractorOnboarding/api.js +1 -1
  135. package/dist/flows/ContractorOnboarding/components/BasicInformationStep.d.ts +3 -4
  136. package/dist/flows/ContractorOnboarding/components/BasicInformationStep.js +1 -1
  137. package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.d.ts +4 -5
  138. package/dist/flows/ContractorOnboarding/components/ContractDetailsStep.js +1 -1
  139. package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.d.ts +4 -5
  140. package/dist/flows/ContractorOnboarding/components/ContractPreviewStep.js +1 -1
  141. package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.d.ts +9 -10
  142. package/dist/flows/ContractorOnboarding/components/ContractorOnboardingForm.js +1 -1
  143. package/dist/flows/ContractorOnboarding/components/OnboardingBack.js +1 -1
  144. package/dist/flows/ContractorOnboarding/components/OnboardingInvite.d.ts +2 -2
  145. package/dist/flows/ContractorOnboarding/components/OnboardingInvite.js +1 -1
  146. package/dist/flows/ContractorOnboarding/components/OnboardingSubmit.js +1 -1
  147. package/dist/flows/ContractorOnboarding/components/PricingPlan.d.ts +4 -5
  148. package/dist/flows/ContractorOnboarding/components/PricingPlan.js +1 -1
  149. package/dist/flows/ContractorOnboarding/components/SelectCountryStep.d.ts +3 -4
  150. package/dist/flows/ContractorOnboarding/components/SelectCountryStep.js +1 -1
  151. package/dist/flows/ContractorOnboarding/context.d.ts +5 -6
  152. package/dist/flows/ContractorOnboarding/hooks.d.ts +6 -7
  153. package/dist/flows/ContractorOnboarding/hooks.js +1 -1
  154. package/dist/flows/ContractorOnboarding/index.d.ts +4 -5
  155. package/dist/flows/ContractorOnboarding/index.js +1 -1
  156. package/dist/flows/ContractorOnboarding/types.d.ts +4 -5
  157. package/dist/flows/ContractorOnboarding/utils.d.ts +3 -4
  158. package/dist/flows/ContractorOnboarding/utils.js +1 -1
  159. package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +2 -3
  160. package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
  161. package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +2 -3
  162. package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
  163. package/dist/flows/CostCalculator/CostCalculatorResetButton.js +1 -1
  164. package/dist/flows/CostCalculator/CostCalculatorSubmitButton.js +1 -1
  165. package/dist/flows/CostCalculator/EstimationResults/EstimationResults.d.ts +1 -2
  166. package/dist/flows/CostCalculator/EstimationResults/EstimationResults.js +1 -1
  167. package/dist/flows/CostCalculator/SummaryResults/SummaryResults.d.ts +1 -2
  168. package/dist/flows/CostCalculator/SummaryResults/SummaryResults.js +1 -1
  169. package/dist/flows/CostCalculator/api.d.ts +8 -5
  170. package/dist/flows/CostCalculator/api.js +1 -1
  171. package/dist/flows/CostCalculator/components/SalaryField.d.ts +1 -1
  172. package/dist/flows/CostCalculator/components/SalaryField.js +1 -1
  173. package/dist/flows/CostCalculator/context.d.ts +2 -3
  174. package/dist/flows/CostCalculator/hooks.d.ts +2 -3
  175. package/dist/flows/CostCalculator/hooks.js +1 -1
  176. package/dist/flows/CostCalculator/index.d.ts +3 -4
  177. package/dist/flows/CostCalculator/index.js +1 -1
  178. package/dist/flows/CostCalculator/types.d.ts +1 -2
  179. package/dist/flows/CostCalculator/utils.d.ts +2 -3
  180. package/dist/flows/CostCalculator/utils.js +1 -1
  181. package/dist/flows/Onboarding/OnboardingFlow.d.ts +3 -4
  182. package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
  183. package/dist/flows/Onboarding/api.d.ts +19 -12
  184. package/dist/flows/Onboarding/api.js +1 -1
  185. package/dist/flows/Onboarding/components/AnnualGrossSalary.d.ts +1 -1
  186. package/dist/flows/Onboarding/components/AnnualGrossSalary.js +1 -1
  187. package/dist/flows/Onboarding/components/BasicInformationStep.d.ts +3 -4
  188. package/dist/flows/Onboarding/components/BasicInformationStep.js +1 -1
  189. package/dist/flows/Onboarding/components/BenefitsStep.d.ts +3 -4
  190. package/dist/flows/Onboarding/components/BenefitsStep.js +1 -1
  191. package/dist/flows/Onboarding/components/ContractDetailsStep.d.ts +3 -4
  192. package/dist/flows/Onboarding/components/ContractDetailsStep.js +1 -1
  193. package/dist/flows/Onboarding/components/OnboardingBack.js +1 -1
  194. package/dist/flows/Onboarding/components/OnboardingForm.d.ts +8 -9
  195. package/dist/flows/Onboarding/components/OnboardingForm.js +1 -1
  196. package/dist/flows/Onboarding/components/OnboardingInvite.d.ts +2 -2
  197. package/dist/flows/Onboarding/components/OnboardingInvite.js +1 -1
  198. package/dist/flows/Onboarding/components/OnboardingSubmit.js +1 -1
  199. package/dist/flows/Onboarding/components/ReviewStep.d.ts +3 -4
  200. package/dist/flows/Onboarding/components/SaveDraftButton.d.ts +2 -2
  201. package/dist/flows/Onboarding/components/SaveDraftButton.js +1 -1
  202. package/dist/flows/Onboarding/components/SelectCountryStep.d.ts +3 -4
  203. package/dist/flows/Onboarding/components/SelectCountryStep.js +1 -1
  204. package/dist/flows/Onboarding/context.d.ts +6 -7
  205. package/dist/flows/Onboarding/hooks.d.ts +5 -6
  206. package/dist/flows/Onboarding/hooks.js +1 -1
  207. package/dist/flows/Onboarding/index.d.ts +3 -4
  208. package/dist/flows/Onboarding/index.js +1 -1
  209. package/dist/flows/Onboarding/types.d.ts +3 -4
  210. package/dist/flows/Onboarding/utils.d.ts +3 -4
  211. package/dist/flows/Termination/AdditionalDetailsForm.d.ts +5 -4
  212. package/dist/flows/Termination/AdditionalDetailsForm.js +1 -1
  213. package/dist/flows/Termination/EmployeeComunicationForm.d.ts +5 -4
  214. package/dist/flows/Termination/EmployeeComunicationForm.js +1 -1
  215. package/dist/flows/Termination/PaidTimeOffForm.d.ts +5 -4
  216. package/dist/flows/Termination/PaidTimeOffForm.js +1 -1
  217. package/dist/flows/Termination/TerminationBack.js +1 -1
  218. package/dist/flows/Termination/TerminationDetailsForm.d.ts +5 -4
  219. package/dist/flows/Termination/TerminationDetailsForm.js +1 -1
  220. package/dist/flows/Termination/TerminationFlow.d.ts +5 -4
  221. package/dist/flows/Termination/TerminationFlow.js +1 -1
  222. package/dist/flows/Termination/TerminationForm.d.ts +7 -6
  223. package/dist/flows/Termination/TerminationForm.js +1 -1
  224. package/dist/flows/Termination/TerminationSubmit.js +1 -1
  225. package/dist/flows/Termination/api.d.ts +15 -10
  226. package/dist/flows/Termination/api.js +1 -1
  227. package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInfomationContainer.js +1 -1
  228. package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInformation.js +1 -1
  229. package/dist/flows/Termination/components/AcknowledgeInformation/AcknowledgeInformationFees.js +1 -1
  230. package/dist/flows/Termination/components/AcknowledgeInformation/constants.js +1 -1
  231. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOff.d.ts +6 -5
  232. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOff.js +1 -1
  233. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.d.ts +6 -5
  234. package/dist/flows/Termination/components/PaidTimeOff/PaidTimeOffContainer.js +1 -1
  235. package/dist/flows/Termination/components/PaidTimeOff/types.d.ts +6 -5
  236. package/dist/flows/Termination/components/TerminationDialogInfoContent/TerminationDialogInfoContent.js +1 -1
  237. package/dist/flows/Termination/components/TerminationReasonsDetailContent/TerminationReasonsDetailContent.js +1 -1
  238. package/dist/flows/Termination/context.d.ts +9 -8
  239. package/dist/flows/Termination/hooks.d.ts +5 -4
  240. package/dist/flows/Termination/hooks.js +1 -1
  241. package/dist/flows/Termination/index.d.ts +6 -5
  242. package/dist/flows/Termination/index.js +1 -1
  243. package/dist/flows/Termination/json-schemas/employeeComunication.js +1 -1
  244. package/dist/flows/Termination/json-schemas/jsonSchema.js +1 -1
  245. package/dist/flows/Termination/json-schemas/schema.d.ts +5 -4
  246. package/dist/flows/Termination/json-schemas/schema.js +1 -1
  247. package/dist/flows/Termination/types.d.ts +5 -4
  248. package/dist/flows/Termination/utils.d.ts +5 -4
  249. package/dist/flows/Termination/utils.js +1 -1
  250. package/dist/flows/types.d.ts +3 -20
  251. package/dist/flows/useStepState.d.ts +1 -1
  252. package/dist/flows/useStepState.js +1 -1
  253. package/dist/index.d.ts +10 -9
  254. package/dist/index.js +3 -1
  255. package/dist/index.js.map +1 -1
  256. package/dist/internals.d.ts +6 -2
  257. package/dist/internals.js +1 -1
  258. package/dist/{mutations-C051uRcC.d.ts → mutations-DodnkAWj.d.ts} +1 -1
  259. package/dist/{remoteFlows-B9Nl1qjN.d.ts → remoteFlows-xvD84Bor.d.ts} +9 -8
  260. package/dist/{types-Ci-EdBDb.d.ts → types-B5wlUr-S.d.ts} +8 -9
  261. package/dist/{types-Dx-2ocvG.d.ts → types-BukQasy8.d.ts} +8 -9
  262. package/dist/{types-DqaKYRUE.d.ts → types-Ct_LPoSR.d.ts} +8 -8
  263. package/dist/{utils-CjDMg_Yr.d.ts → utils-arqMz3zD.d.ts} +1 -0
  264. package/package.json +3 -4
  265. package/dist/chunk-2Y3SXQ5B.js.map +0 -1
  266. package/dist/chunk-3F77NXWU.js +0 -2
  267. package/dist/chunk-3F77NXWU.js.map +0 -1
  268. package/dist/chunk-5C3NU7R3.js +0 -2
  269. package/dist/chunk-5C3NU7R3.js.map +0 -1
  270. package/dist/chunk-5LSHRCAR.js +0 -2
  271. package/dist/chunk-5LSHRCAR.js.map +0 -1
  272. package/dist/chunk-6GTRAHWJ.js +0 -2
  273. package/dist/chunk-6GTRAHWJ.js.map +0 -1
  274. package/dist/chunk-7COHIUGW.js.map +0 -1
  275. package/dist/chunk-ARTSDUSS.js.map +0 -1
  276. package/dist/chunk-DV6PCBAX.js +0 -2
  277. package/dist/chunk-DV6PCBAX.js.map +0 -1
  278. package/dist/chunk-EDVJBPCB.js +0 -2
  279. package/dist/chunk-EDVJBPCB.js.map +0 -1
  280. package/dist/chunk-EHAZWZ3O.js +0 -2
  281. package/dist/chunk-EHAZWZ3O.js.map +0 -1
  282. package/dist/chunk-ERRQIROU.js +0 -2
  283. package/dist/chunk-ERRQIROU.js.map +0 -1
  284. package/dist/chunk-ETYRNQJJ.js +0 -2
  285. package/dist/chunk-ETYRNQJJ.js.map +0 -1
  286. package/dist/chunk-EYQ4PYUT.js.map +0 -1
  287. package/dist/chunk-GCTHZSIN.js +0 -2
  288. package/dist/chunk-GCTHZSIN.js.map +0 -1
  289. package/dist/chunk-GHJBEQIR.js +0 -2
  290. package/dist/chunk-GHJBEQIR.js.map +0 -1
  291. package/dist/chunk-GP6PRZVX.js +0 -2
  292. package/dist/chunk-GP6PRZVX.js.map +0 -1
  293. package/dist/chunk-HZVYZQ3Z.js +0 -2
  294. package/dist/chunk-HZVYZQ3Z.js.map +0 -1
  295. package/dist/chunk-IWA5B4U6.js +0 -2
  296. package/dist/chunk-L3Z2G32A.js.map +0 -1
  297. package/dist/chunk-LQBVRVXH.js +0 -2
  298. package/dist/chunk-LQBVRVXH.js.map +0 -1
  299. package/dist/chunk-OFI5KLQ4.js +0 -2
  300. package/dist/chunk-OFI5KLQ4.js.map +0 -1
  301. package/dist/chunk-OXL3QGHT.js.map +0 -1
  302. package/dist/chunk-PJBAQZ6G.js +0 -2
  303. package/dist/chunk-PJBAQZ6G.js.map +0 -1
  304. package/dist/chunk-RR55GUDT.js +0 -2
  305. package/dist/chunk-RR55GUDT.js.map +0 -1
  306. package/dist/chunk-SIYKTLFS.js +0 -2
  307. package/dist/chunk-SIYKTLFS.js.map +0 -1
  308. package/dist/chunk-SXR333SU.js +0 -2
  309. package/dist/chunk-SXR333SU.js.map +0 -1
  310. package/dist/chunk-W3YE53JN.js.map +0 -1
  311. package/dist/chunk-Y2NSR2N6.js +0 -2
  312. package/dist/chunk-Y2NSR2N6.js.map +0 -1
  313. package/dist/chunk-ZYRGEEPU.js +0 -2
  314. package/dist/chunk-ZYRGEEPU.js.map +0 -1
  315. /package/dist/{PdfPreview-6C3GGXIN.js.map → PdfPreview-2VXVDUFP.js.map} +0 -0
  316. /package/dist/{chunk-EQOU2VPX.js.map → chunk-2FDEMDWJ.js.map} +0 -0
  317. /package/dist/{chunk-6S6H4NAQ.js.map → chunk-3CRC4NDD.js.map} +0 -0
  318. /package/dist/{chunk-AT7VHJMW.js.map → chunk-3DRSYLBM.js.map} +0 -0
  319. /package/dist/{chunk-M2TLNSTK.js.map → chunk-4OVFMUUJ.js.map} +0 -0
  320. /package/dist/{chunk-EC7QVRRX.js.map → chunk-4UAHJOHZ.js.map} +0 -0
  321. /package/dist/{chunk-QUQLW5YW.js.map → chunk-5JQMTMHR.js.map} +0 -0
  322. /package/dist/{chunk-MEZ7LYUK.js.map → chunk-6AQLDTMK.js.map} +0 -0
  323. /package/dist/{chunk-OKM7DRCF.js.map → chunk-6CASSN2Z.js.map} +0 -0
  324. /package/dist/{chunk-IWA5B4U6.js.map → chunk-6DHV4GT6.js.map} +0 -0
  325. /package/dist/{chunk-XRI6PRXK.js.map → chunk-6E5GX7W3.js.map} +0 -0
  326. /package/dist/{chunk-T6HCUFYI.js.map → chunk-765OB2K5.js.map} +0 -0
  327. /package/dist/{chunk-WCEHP5N7.js.map → chunk-7FMFSOJ3.js.map} +0 -0
  328. /package/dist/{chunk-C4DLDK36.js.map → chunk-7JDWTTYE.js.map} +0 -0
  329. /package/dist/{chunk-3Z6AFLXW.js.map → chunk-7XKEJ5Y6.js.map} +0 -0
  330. /package/dist/{chunk-Z6TCBVRG.js.map → chunk-A5NDO6CQ.js.map} +0 -0
  331. /package/dist/{chunk-UA6MNQLD.js.map → chunk-BNBEIHLD.js.map} +0 -0
  332. /package/dist/{chunk-Y5P5IJRN.js.map → chunk-BPIGB72P.js.map} +0 -0
  333. /package/dist/{chunk-66N57DKF.js.map → chunk-CR7AIZKA.js.map} +0 -0
  334. /package/dist/{chunk-35RMJMSH.js.map → chunk-D6Y7GLBT.js.map} +0 -0
  335. /package/dist/{chunk-LKMPZJIW.js.map → chunk-EGSUF7OD.js.map} +0 -0
  336. /package/dist/{chunk-A3GZSC5Z.js.map → chunk-G2X5F5YR.js.map} +0 -0
  337. /package/dist/{chunk-UOOUV52J.js.map → chunk-GGPEKIIH.js.map} +0 -0
  338. /package/dist/{chunk-72OH7PSF.js.map → chunk-GPLI6GGL.js.map} +0 -0
  339. /package/dist/{chunk-44IOQYR2.js.map → chunk-HLR4BEDV.js.map} +0 -0
  340. /package/dist/{chunk-BL7OYWNX.js.map → chunk-HUJ3AUIS.js.map} +0 -0
  341. /package/dist/{chunk-PMTKQME6.js.map → chunk-ILOKQ6OH.js.map} +0 -0
  342. /package/dist/{chunk-KKGRYDZA.js.map → chunk-K3XVYHGV.js.map} +0 -0
  343. /package/dist/{chunk-5DKNCKV7.js.map → chunk-K62H3A5T.js.map} +0 -0
  344. /package/dist/{chunk-LJVV6MMB.js.map → chunk-KRDAGWDH.js.map} +0 -0
  345. /package/dist/{chunk-ZIN2OWTH.js.map → chunk-LAXQMTDQ.js.map} +0 -0
  346. /package/dist/{chunk-N6BBMT7W.js.map → chunk-LGUGZN57.js.map} +0 -0
  347. /package/dist/{chunk-MXLQEDRJ.js.map → chunk-LHNX27TY.js.map} +0 -0
  348. /package/dist/{chunk-VXA6RPA5.js.map → chunk-LJ6FHPXW.js.map} +0 -0
  349. /package/dist/{chunk-EGRGQWIY.js.map → chunk-NHREKNSV.js.map} +0 -0
  350. /package/dist/{chunk-F3KEIVSE.js.map → chunk-PC5JG4TT.js.map} +0 -0
  351. /package/dist/{chunk-LJGCFFAT.js.map → chunk-PJN2YJO4.js.map} +0 -0
  352. /package/dist/{chunk-A65WMO6K.js.map → chunk-PSHPB65F.js.map} +0 -0
  353. /package/dist/{chunk-NDQ6UQFG.js.map → chunk-PU3WPIEK.js.map} +0 -0
  354. /package/dist/{chunk-NABPCULM.js.map → chunk-QDSRG735.js.map} +0 -0
  355. /package/dist/{chunk-3CFU6LKQ.js.map → chunk-SKQWZNKT.js.map} +0 -0
  356. /package/dist/{chunk-HDNBZ6CB.js.map → chunk-T5OFLN36.js.map} +0 -0
  357. /package/dist/{chunk-6P4DTWYK.js.map → chunk-U2HWB5HI.js.map} +0 -0
  358. /package/dist/{chunk-GE5DH3UF.js.map → chunk-UD4GEI4B.js.map} +0 -0
  359. /package/dist/{chunk-Z2WV73EX.js.map → chunk-VCEQ5E2O.js.map} +0 -0
  360. /package/dist/{chunk-PZNXAOZH.js.map → chunk-VYHITQHG.js.map} +0 -0
  361. /package/dist/{chunk-VBO75DXV.js.map → chunk-W3OQNZW6.js.map} +0 -0
  362. /package/dist/{chunk-LG2LVO4C.js.map → chunk-WLN6G3TE.js.map} +0 -0
  363. /package/dist/{chunk-OP72BS23.js.map → chunk-WO33FKK4.js.map} +0 -0
  364. /package/dist/{chunk-2FQ2KNP4.js.map → chunk-X6325UGJ.js.map} +0 -0
  365. /package/dist/{chunk-QIVDIOJG.js.map → chunk-XGECMN4V.js.map} +0 -0
  366. /package/dist/{chunk-BVDT43OO.js.map → chunk-XTXPKDZ7.js.map} +0 -0
  367. /package/dist/{chunk-TVJYCR33.js.map → chunk-XXPJHT5A.js.map} +0 -0
  368. /package/dist/{chunk-IBHNWMMB.js.map → chunk-YXVNCPUI.js.map} +0 -0
  369. /package/dist/{chunk-4GDEWYZC.js.map → chunk-Z5A2M5EU.js.map} +0 -0
  370. /package/dist/{chunk-KGKDSOER.js.map → chunk-ZFKHCC4Z.js.map} +0 -0
  371. /package/dist/{chunk-FZDQ7EEI.js.map → chunk-ZT72WOPZ.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{a as dt}from"./chunk-PMTKQME6.js";import{a as fe,e as ct}from"./chunk-L3Z2G32A.js";import{a}from"./chunk-P37U34EQ.js";import v from"react";var Ve=a(e=>e.type==="checkbox","isCheckBoxInput"),de=a(e=>e instanceof Date,"isDateObject"),K=a(e=>e==null,"isNullOrUndefined"),vt=a(e=>typeof e=="object","isObjectType"),P=a(e=>!K(e)&&!Array.isArray(e)&&vt(e)&&!de(e),"isObject"),bt=a(e=>P(e)&&e.target?Ve(e.target)?e.target.checked:e.target.value:e,"getEventValue"),zt=a(e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,"getNodeParentName"),pt=a((e,r)=>e.has(zt(r)),"isNameInFieldArray"),Kt=a(e=>{let r=e.constructor&&e.constructor.prototype;return P(r)&&r.hasOwnProperty("isPrototypeOf")},"isPlainObject"),Ge=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function M(e){let r,t=Array.isArray(e),s=typeof FileList<"u"?e instanceof FileList:!1;if(e instanceof Date)r=new Date(e);else if(e instanceof Set)r=new Set(e);else if(!(Ge&&(e instanceof Blob||s))&&(t||P(e)))if(r=t?[]:{},!t&&!Kt(e))r=e;else for(let o in e)e.hasOwnProperty(o)&&(r[o]=M(e[o]));else return e;return r}a(M,"cloneObject");var xe=a(e=>Array.isArray(e)?e.filter(Boolean):[],"compact"),R=a(e=>e===void 0,"isUndefined"),d=a((e,r,t)=>{if(!r||!P(e))return t;let s=xe(r.split(/[,[\].]+?/)).reduce((o,l)=>K(o)?o:o[l],e);return R(s)||s===e?R(e[r])?t:e[r]:s},"get"),Q=a(e=>typeof e=="boolean","isBoolean"),Qe=a(e=>/^\w*$/.test(e),"isKey"),Vt=a(e=>xe(e.replace(/["|']|\]/g,"").split(/\.|\[/)),"stringToPath"),E=a((e,r,t)=>{let s=-1,o=Qe(r)?[r]:Vt(r),l=o.length,y=l-1;for(;++s<l;){let g=o[s],p=t;if(s!==y){let S=e[g];p=P(S)||Array.isArray(S)?S:isNaN(+o[s+1])?{}:[]}if(g==="__proto__"||g==="constructor"||g==="prototype")return;e[g]=p,e=e[g]}return e},"set"),Se={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},Y={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},ae={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},xt=v.createContext(null),ge=a(()=>v.useContext(xt),"useFormContext"),At=a(e=>{let{children:r,...t}=e;return v.createElement(xt.Provider,{value:t},r)},"FormProvider"),St=a((e,r,t,s=!0)=>{let o={defaultValues:r._defaultValues};for(let l in e)Object.defineProperty(o,l,{get:a(()=>{let y=l;return r._proxyFormState[y]!==Y.all&&(r._proxyFormState[y]=!s||Y.all),t&&(t[y]=!0),e[y]},"get")});return o},"getProxyFormState"),z=a(e=>P(e)&&!Object.keys(e).length,"isEmptyObject"),wt=a((e,r,t,s)=>{t(e);let{name:o,...l}=e;return z(l)||Object.keys(l).length>=Object.keys(r).length||Object.keys(l).find(y=>r[y]===(!s||Y.all))},"shouldRenderFormState"),J=a(e=>Array.isArray(e)?e:[e],"convertToArrayPayload"),Ct=a((e,r,t)=>!e||!r||e===r||J(e).some(s=>s&&(t?s===r:s.startsWith(r)||r.startsWith(s))),"shouldSubscribeByName");function Ee(e){let r=v.useRef(e);r.current=e,v.useEffect(()=>{let t=!e.disabled&&r.current.subject&&r.current.subject.subscribe({next:r.current.next});return()=>{t&&t.unsubscribe()}},[e.disabled])}a(Ee,"useSubscribe");function Ye(e){let r=ge(),{control:t=r.control,disabled:s,name:o,exact:l}=e||{},[y,g]=v.useState(t._formState),p=v.useRef(!0),S=v.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1}),w=v.useRef(o);return w.current=o,Ee({disabled:s,next:a(b=>p.current&&Ct(w.current,b.name,l)&&wt(b,S.current,t._updateFormState)&&g({...t._formState,...b}),"next"),subject:t._subjects.state}),v.useEffect(()=>(p.current=!0,S.current.isValid&&t._updateValid(!0),()=>{p.current=!1}),[t]),v.useMemo(()=>St(y,t,S.current,!1),[y,t])}a(Ye,"useFormState");var se=a(e=>typeof e=="string","isString"),Dt=a((e,r,t,s,o)=>se(e)?(s&&r.watch.add(e),d(t,e,o)):Array.isArray(e)?e.map(l=>(s&&r.watch.add(l),d(t,l))):(s&&(r.watchAll=!0),t),"generateWatchOutput");function Jt(e){let r=ge(),{control:t=r.control,name:s,defaultValue:o,disabled:l,exact:y}=e||{},g=v.useRef(s);g.current=s,Ee({disabled:l,subject:t._subjects.values,next:a(w=>{Ct(g.current,w.name,y)&&S(M(Dt(g.current,t._names,w.values||t._formValues,!1,o)))},"next")});let[p,S]=v.useState(t._getWatch(s,o));return v.useEffect(()=>t._removeUnmounted()),p}a(Jt,"useWatch");function Gt(e){let r=ge(),{name:t,disabled:s,control:o=r.control,shouldUnregister:l}=e,y=pt(o._names.array,t),g=Jt({control:o,name:t,defaultValue:d(o._formValues,t,d(o._defaultValues,t,e.defaultValue)),exact:!0}),p=Ye({control:o,name:t,exact:!0}),S=v.useRef(o.register(t,{...e.rules,value:g,...Q(e.disabled)?{disabled:e.disabled}:{}})),w=v.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:a(()=>!!d(p.errors,t),"get")},isDirty:{enumerable:!0,get:a(()=>!!d(p.dirtyFields,t),"get")},isTouched:{enumerable:!0,get:a(()=>!!d(p.touchedFields,t),"get")},isValidating:{enumerable:!0,get:a(()=>!!d(p.validatingFields,t),"get")},error:{enumerable:!0,get:a(()=>d(p.errors,t),"get")}}),[p,t]),b=v.useMemo(()=>({name:t,value:g,...Q(s)||p.disabled?{disabled:p.disabled||s}:{},onChange:a(O=>S.current.onChange({target:{value:bt(O),name:t},type:Se.CHANGE}),"onChange"),onBlur:a(()=>S.current.onBlur({target:{value:d(o._formValues,t),name:t},type:Se.BLUR}),"onBlur"),ref:a(O=>{let k=d(o._fields,t);k&&O&&(k._f.ref={focus:a(()=>O.focus(),"focus"),select:a(()=>O.select(),"select"),setCustomValidity:a(U=>O.setCustomValidity(U),"setCustomValidity"),reportValidity:a(()=>O.reportValidity(),"reportValidity")})},"ref")}),[t,o._formValues,s,p.disabled,g,o._fields]);return v.useEffect(()=>{let O=o._options.shouldUnregister||l,k=a((U,j)=>{let H=d(o._fields,U);H&&H._f&&(H._f.mount=j)},"updateMounted");if(k(t,!0),O){let U=M(d(o._options.defaultValues,t));E(o._defaultValues,t,U),R(d(o._formValues,t))&&E(o._formValues,t,U)}return!y&&o.register(t),()=>{(y?O&&!o._state.action:O)?o.unregister(t):k(t,!1)}},[t,o,y,l]),v.useEffect(()=>{o._updateDisabledField({disabled:s,fields:o._fields,name:t})},[s,t,o]),v.useMemo(()=>({field:b,formState:p,fieldState:w}),[b,p,w])}a(Gt,"useController");var Et=a(e=>e.render(Gt(e)),"Controller");var Qt=a((e,r,t,s,o)=>r?{...t[e],types:{...t[e]&&t[e].types?t[e].types:{},[s]:o||!0}}:{},"appendErrors"),le=a(()=>{let e=typeof performance>"u"?Date.now():performance.now()*1e3;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,r=>{let t=(Math.random()*16+e)%16|0;return(r=="x"?t:t&3|8).toString(16)})},"generateId"),Oe=a((e,r,t={})=>t.shouldFocus||R(t.shouldFocus)?t.focusName||`${e}.${R(t.focusIndex)?r:t.focusIndex}.`:"","getFocusFieldName"),pe=a(e=>({isOnSubmit:!e||e===Y.onSubmit,isOnBlur:e===Y.onBlur,isOnChange:e===Y.onChange,isOnAll:e===Y.all,isOnTouch:e===Y.onTouched}),"getValidationModes"),ze=a((e,r,t)=>!t&&(r.watchAll||r.watch.has(e)||[...r.watch].some(s=>e.startsWith(s)&&/^\.\w+/.test(e.slice(s.length)))),"isWatched"),me=a((e,r,t,s)=>{for(let o of t||Object.keys(e)){let l=d(e,o);if(l){let{_f:y,...g}=l;if(y){if(y.refs&&y.refs[0]&&r(y.refs[0],o)&&!s)return!0;if(y.ref&&r(y.ref,y.name)&&!s)return!0;if(me(g,r))break}else if(P(g)&&me(g,r))break}}},"iterateFieldsByAction"),kt=a((e,r,t)=>{let s=J(d(e,t));return E(s,"root",r[t]),E(e,t,s),e},"updateFieldArrayRootError"),Xe=a(e=>e.type==="file","isFileInput"),re=a(e=>typeof e=="function","isFunction"),we=a(e=>{if(!Ge)return!1;let r=e?e.ownerDocument:0;return e instanceof(r&&r.defaultView?r.defaultView.HTMLElement:HTMLElement)},"isHTMLElement"),Ae=a(e=>se(e),"isMessage"),Ze=a(e=>e.type==="radio","isRadioInput"),Ce=a(e=>e instanceof RegExp,"isRegex"),ft={value:!1,isValid:!1},yt={value:!0,isValid:!0},Rt=a(e=>{if(Array.isArray(e)){if(e.length>1){let r=e.filter(t=>t&&t.checked&&!t.disabled).map(t=>t.value);return{value:r,isValid:!!r.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!R(e[0].attributes.value)?R(e[0].value)||e[0].value===""?yt:{value:e[0].value,isValid:!0}:yt:ft}return ft},"getCheckboxValue"),mt={isValid:!1,value:null},Tt=a(e=>Array.isArray(e)?e.reduce((r,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:r,mt):mt,"getRadioValue");function gt(e,r,t="validate"){if(Ae(e)||Array.isArray(e)&&e.every(Ae)||Q(e)&&!e)return{type:t,message:Ae(e)?e:"",ref:r}}a(gt,"getValidateError");var ye=a(e=>P(e)&&!Ce(e)?e:{value:e,message:""},"getValueAndMessage"),Ke=a(async(e,r,t,s,o,l)=>{let{ref:y,refs:g,required:p,maxLength:S,minLength:w,min:b,max:O,pattern:k,validate:U,name:j,valueAsNumber:H,mount:te}=e._f,C=d(t,j);if(!te||r.has(j))return{};let X=g?g[0]:y,Z=a(A=>{o&&X.reportValidity&&(X.setCustomValidity(Q(A)?"":A||""),X.reportValidity())},"setCustomValidity"),I={},h=Ze(y),F=Ve(y),V=h||F,T=(H||Xe(y))&&R(y.value)&&R(C)||we(y)&&y.value===""||C===""||Array.isArray(C)&&!C.length,B=Qt.bind(null,j,s,I),ce=a((A,D,N,q=ae.maxLength,ee=ae.minLength)=>{let G=A?D:N;I[j]={type:A?q:ee,message:G,ref:y,...B(A?q:ee,G)}},"getMinMaxMessage");if(l?!Array.isArray(C)||!C.length:p&&(!V&&(T||K(C))||Q(C)&&!C||F&&!Rt(g).isValid||h&&!Tt(g).isValid)){let{value:A,message:D}=Ae(p)?{value:!!p,message:p}:ye(p);if(A&&(I[j]={type:ae.required,message:D,ref:X,...B(ae.required,D)},!s))return Z(D),I}if(!T&&(!K(b)||!K(O))){let A,D,N=ye(O),q=ye(b);if(!K(C)&&!isNaN(C)){let ee=y.valueAsNumber||C&&+C;K(N.value)||(A=ee>N.value),K(q.value)||(D=ee<q.value)}else{let ee=y.valueAsDate||new Date(C),G=a(Fe=>new Date(new Date().toDateString()+" "+Fe),"convertTimeToDate"),_e=y.type=="time",he=y.type=="week";se(N.value)&&C&&(A=_e?G(C)>G(N.value):he?C>N.value:ee>new Date(N.value)),se(q.value)&&C&&(D=_e?G(C)<G(q.value):he?C<q.value:ee<new Date(q.value))}if((A||D)&&(ce(!!A,N.message,q.message,ae.max,ae.min),!s))return Z(I[j].message),I}if((S||w)&&!T&&(se(C)||l&&Array.isArray(C))){let A=ye(S),D=ye(w),N=!K(A.value)&&C.length>+A.value,q=!K(D.value)&&C.length<+D.value;if((N||q)&&(ce(N,A.message,D.message),!s))return Z(I[j].message),I}if(k&&!T&&se(C)){let{value:A,message:D}=ye(k);if(Ce(A)&&!C.match(A)&&(I[j]={type:ae.pattern,message:D,ref:y,...B(ae.pattern,D)},!s))return Z(D),I}if(U){if(re(U)){let A=await U(C,t),D=gt(A,X);if(D&&(I[j]={...D,...B(ae.validate,D.message)},!s))return Z(D.message),I}else if(P(U)){let A={};for(let D in U){if(!z(A)&&!s)break;let N=gt(await U[D](C,t),X,D);N&&(A={...N,...B(D,N.message)},Z(N.message),s&&(I[j]=A))}if(!z(A)&&(I[j]={ref:X,...A},!s))return I}}return Z(!0),I},"validateField"),Le=a((e,r)=>[...e,...J(r)],"appendAt"),Ne=a(e=>Array.isArray(e)?e.map(()=>{}):void 0,"fillEmptyArray");function Me(e,r,t){return[...e.slice(0,r),...J(t),...e.slice(r)]}a(Me,"insert");var Ue=a((e,r,t)=>Array.isArray(e)?(R(e[t])&&(e[t]=void 0),e.splice(t,0,e.splice(r,1)[0]),e):[],"moveArrayAt"),Be=a((e,r)=>[...J(r),...J(e)],"prependAt");function Yt(e,r){let t=0,s=[...e];for(let o of r)s.splice(o-t,1),t++;return xe(s).length?s:[]}a(Yt,"removeAtIndexes");var $e=a((e,r)=>R(r)?[]:Yt(e,J(r).sort((t,s)=>t-s)),"removeArrayAt"),We=a((e,r,t)=>{[e[r],e[t]]=[e[t],e[r]]},"swapArrayAt");function Xt(e,r){let t=r.slice(0,-1).length,s=0;for(;s<t;)e=R(e)?s++:e[r[s++]];return e}a(Xt,"baseGet");function Zt(e){for(let r in e)if(e.hasOwnProperty(r)&&!R(e[r]))return!1;return!0}a(Zt,"isEmptyArray");function L(e,r){let t=Array.isArray(r)?r:Qe(r)?[r]:Vt(r),s=t.length===1?e:Xt(e,t),o=t.length-1,l=t[o];return s&&delete s[l],o!==0&&(P(s)&&z(s)||Array.isArray(s)&&Zt(s))&&L(e,t.slice(0,-1)),e}a(L,"unset");var _t=a((e,r,t)=>(e[r]=t,e),"updateAt");function mr(e){let r=ge(),{control:t=r.control,name:s,keyName:o="id",shouldUnregister:l,rules:y}=e,[g,p]=v.useState(t._getFieldArray(s)),S=v.useRef(t._getFieldArray(s).map(le)),w=v.useRef(g),b=v.useRef(s),O=v.useRef(!1);b.current=s,w.current=g,t._names.array.add(s),y&&t.register(s,y),Ee({next:a(({values:h,name:F})=>{if(F===b.current||!F){let V=d(h,b.current);Array.isArray(V)&&(p(V),S.current=V.map(le))}},"next"),subject:t._subjects.array});let k=v.useCallback(h=>{O.current=!0,t._updateFieldArray(s,h)},[t,s]),U=a((h,F)=>{let V=J(M(h)),T=Le(t._getFieldArray(s),V);t._names.focus=Oe(s,T.length-1,F),S.current=Le(S.current,V.map(le)),k(T),p(T),t._updateFieldArray(s,T,Le,{argA:Ne(h)})},"append"),j=a((h,F)=>{let V=J(M(h)),T=Be(t._getFieldArray(s),V);t._names.focus=Oe(s,0,F),S.current=Be(S.current,V.map(le)),k(T),p(T),t._updateFieldArray(s,T,Be,{argA:Ne(h)})},"prepend"),H=a(h=>{let F=$e(t._getFieldArray(s),h);S.current=$e(S.current,h),k(F),p(F),!Array.isArray(d(t._fields,s))&&E(t._fields,s,void 0),t._updateFieldArray(s,F,$e,{argA:h})},"remove"),te=a((h,F,V)=>{let T=J(M(F)),B=Me(t._getFieldArray(s),h,T);t._names.focus=Oe(s,h,V),S.current=Me(S.current,h,T.map(le)),k(B),p(B),t._updateFieldArray(s,B,Me,{argA:h,argB:Ne(F)})},"insert$1"),C=a((h,F)=>{let V=t._getFieldArray(s);We(V,h,F),We(S.current,h,F),k(V),p(V),t._updateFieldArray(s,V,We,{argA:h,argB:F},!1)},"swap"),X=a((h,F)=>{let V=t._getFieldArray(s);Ue(V,h,F),Ue(S.current,h,F),k(V),p(V),t._updateFieldArray(s,V,Ue,{argA:h,argB:F},!1)},"move"),Z=a((h,F)=>{let V=M(F),T=_t(t._getFieldArray(s),h,V);S.current=[...T].map((B,ce)=>!B||ce===h?le():S.current[ce]),k(T),p([...T]),t._updateFieldArray(s,T,_t,{argA:h,argB:V},!0,!1)},"update"),I=a(h=>{let F=J(M(h));S.current=F.map(le),k([...F]),p([...F]),t._updateFieldArray(s,[...F],V=>V,{},!0,!1)},"replace");return v.useEffect(()=>{if(t._state.action=!1,ze(s,t._names)&&t._subjects.state.next({...t._formState}),O.current&&(!pe(t._options.mode).isOnSubmit||t._formState.isSubmitted))if(t._options.resolver)t._executeSchema([s]).then(h=>{let F=d(h.errors,s),V=d(t._formState.errors,s);(V?!F&&V.type||F&&(V.type!==F.type||V.message!==F.message):F&&F.type)&&(F?E(t._formState.errors,s,F):L(t._formState.errors,s),t._subjects.state.next({errors:t._formState.errors}))});else{let h=d(t._fields,s);h&&h._f&&!(pe(t._options.reValidateMode).isOnSubmit&&pe(t._options.mode).isOnSubmit)&&Ke(h,t._names.disabled,t._formValues,t._options.criteriaMode===Y.all,t._options.shouldUseNativeValidation,!0).then(F=>!z(F)&&t._subjects.state.next({errors:kt(t._formState.errors,F,s)}))}t._subjects.values.next({name:s,values:{...t._formValues}}),t._names.focus&&me(t._fields,(h,F)=>{if(t._names.focus&&F.startsWith(t._names.focus)&&h.focus)return h.focus(),1}),t._names.focus="",t._updateValid(),O.current=!1},[g,s,t]),v.useEffect(()=>(!d(t._formValues,s)&&t._updateFieldArray(s),()=>{(t._options.shouldUnregister||l)&&t.unregister(s)}),[s,t,o,l]),{swap:v.useCallback(C,[k,s,t]),move:v.useCallback(X,[k,s,t]),prepend:v.useCallback(j,[k,s,t]),append:v.useCallback(U,[k,s,t]),remove:v.useCallback(H,[k,s,t]),insert:v.useCallback(te,[k,s,t]),update:v.useCallback(Z,[k,s,t]),replace:v.useCallback(I,[k,s,t]),fields:v.useMemo(()=>g.map((h,F)=>({...h,[o]:S.current[F]||le()})),[g,o])}}a(mr,"useFieldArray");var je=a(()=>{let e=[];return{get observers(){return e},next:a(o=>{for(let l of e)l.next&&l.next(o)},"next"),subscribe:a(o=>(e.push(o),{unsubscribe:a(()=>{e=e.filter(l=>l!==o)},"unsubscribe")}),"subscribe"),unsubscribe:a(()=>{e=[]},"unsubscribe")}},"createSubject"),Je=a(e=>K(e)||!vt(e),"isPrimitive");function ue(e,r){if(Je(e)||Je(r))return e===r;if(de(e)&&de(r))return e.getTime()===r.getTime();let t=Object.keys(e),s=Object.keys(r);if(t.length!==s.length)return!1;for(let o of t){let l=e[o];if(!s.includes(o))return!1;if(o!=="ref"){let y=r[o];if(de(l)&&de(y)||P(l)&&P(y)||Array.isArray(l)&&Array.isArray(y)?!ue(l,y):l!==y)return!1}}return!0}a(ue,"deepEqual");var It=a(e=>e.type==="select-multiple","isMultipleSelect"),er=a(e=>Ze(e)||Ve(e),"isRadioOrCheckbox"),qe=a(e=>we(e)&&e.isConnected,"live"),Pt=a(e=>{for(let r in e)if(re(e[r]))return!0;return!1},"objectHasFunction");function De(e,r={}){let t=Array.isArray(e);if(P(e)||t)for(let s in e)Array.isArray(e[s])||P(e[s])&&!Pt(e[s])?(r[s]=Array.isArray(e[s])?[]:{},De(e[s],r[s])):K(e[s])||(r[s]=!0);return r}a(De,"markFieldsDirty");function Ot(e,r,t){let s=Array.isArray(e);if(P(e)||s)for(let o in e)Array.isArray(e[o])||P(e[o])&&!Pt(e[o])?R(r)||Je(t[o])?t[o]=Array.isArray(e[o])?De(e[o],[]):{...De(e[o])}:Ot(e[o],K(r)?{}:r[o],t[o]):t[o]=!ue(e[o],r[o]);return t}a(Ot,"getDirtyFieldsFromDefaultValues");var ve=a((e,r)=>Ot(e,r,De(r)),"getDirtyFields"),Lt=a((e,{valueAsNumber:r,valueAsDate:t,setValueAs:s})=>R(e)?e:r?e===""?NaN:e&&+e:t&&se(e)?new Date(e):s?s(e):e,"getFieldValueAs");function He(e){let r=e.ref;return Xe(r)?r.files:Ze(r)?Tt(e.refs).value:It(r)?[...r.selectedOptions].map(({value:t})=>t):Ve(r)?Rt(e.refs).value:Lt(R(r.value)?e.ref.value:r.value,e)}a(He,"getFieldValue");var tr=a((e,r,t,s)=>{let o={};for(let l of e){let y=d(r,l);y&&E(o,l,y._f)}return{criteriaMode:t,names:[...e],fields:o,shouldUseNativeValidation:s}},"getResolverOptions"),be=a(e=>R(e)?e:Ce(e)?e.source:P(e)?Ce(e.value)?e.value.source:e.value:e,"getRuleValue"),ht="AsyncFunction",rr=a(e=>!!e&&!!e.validate&&!!(re(e.validate)&&e.validate.constructor.name===ht||P(e.validate)&&Object.values(e.validate).find(r=>r.constructor.name===ht)),"hasPromiseValidation"),sr=a(e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),"hasValidation");function Ft(e,r,t){let s=d(e,t);if(s||Qe(t))return{error:s,name:t};let o=t.split(".");for(;o.length;){let l=o.join("."),y=d(r,l),g=d(e,l);if(y&&!Array.isArray(y)&&t!==l)return{name:t};if(g&&g.type)return{name:l,error:g};o.pop()}return{name:t}}a(Ft,"schemaErrorLookup");var ir=a((e,r,t,s,o)=>o.isOnAll?!1:!t&&o.isOnTouch?!(r||e):(t?s.isOnBlur:o.isOnBlur)?!e:(t?s.isOnChange:o.isOnChange)?e:!0,"skipValidation"),ar=a((e,r)=>!xe(d(e,r)).length&&L(e,r),"unsetEmptyArray"),nr={mode:Y.onSubmit,reValidateMode:Y.onChange,shouldFocusError:!0};function or(e={}){let r={...nr,...e},t={submitCount:0,isDirty:!1,isLoading:re(r.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:r.errors||{},disabled:r.disabled||!1},s={},o=P(r.defaultValues)||P(r.values)?M(r.defaultValues||r.values)||{}:{},l=r.shouldUnregister?{}:M(o),y={action:!1,mount:!1,watch:!1},g={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},p,S=0,w={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},b={values:je(),array:je(),state:je()},O=pe(r.mode),k=pe(r.reValidateMode),U=r.criteriaMode===Y.all,j=a(i=>n=>{clearTimeout(S),S=setTimeout(i,n)},"debounce"),H=a(async i=>{if(!r.disabled&&(w.isValid||i)){let n=r.resolver?z((await V()).errors):await B(s,!0);n!==t.isValid&&b.state.next({isValid:n})}},"_updateValid"),te=a((i,n)=>{!r.disabled&&(w.isValidating||w.validatingFields)&&((i||Array.from(g.mount)).forEach(u=>{u&&(n?E(t.validatingFields,u,n):L(t.validatingFields,u))}),b.state.next({validatingFields:t.validatingFields,isValidating:!z(t.validatingFields)}))},"_updateIsValidating"),C=a((i,n=[],u,m,f=!0,c=!0)=>{if(m&&u&&!r.disabled){if(y.action=!0,c&&Array.isArray(d(s,i))){let _=u(d(s,i),m.argA,m.argB);f&&E(s,i,_)}if(c&&Array.isArray(d(t.errors,i))){let _=u(d(t.errors,i),m.argA,m.argB);f&&E(t.errors,i,_),ar(t.errors,i)}if(w.touchedFields&&c&&Array.isArray(d(t.touchedFields,i))){let _=u(d(t.touchedFields,i),m.argA,m.argB);f&&E(t.touchedFields,i,_)}w.dirtyFields&&(t.dirtyFields=ve(o,l)),b.state.next({name:i,isDirty:A(i,n),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else E(l,i,n)},"_updateFieldArray"),X=a((i,n)=>{E(t.errors,i,n),b.state.next({errors:t.errors})},"updateErrors"),Z=a(i=>{t.errors=i,b.state.next({errors:t.errors,isValid:!1})},"_setErrors"),I=a((i,n,u,m)=>{let f=d(s,i);if(f){let c=d(l,i,R(u)?d(o,i):u);R(c)||m&&m.defaultChecked||n?E(l,i,n?c:He(f._f)):q(i,c),y.mount&&H()}},"updateValidAndValue"),h=a((i,n,u,m,f)=>{let c=!1,_=!1,x={name:i};if(!r.disabled){let $=!!(d(s,i)&&d(s,i)._f&&d(s,i)._f.disabled);if(!u||m){w.isDirty&&(_=t.isDirty,t.isDirty=x.isDirty=A(),c=_!==x.isDirty);let W=$||ue(d(o,i),n);_=!!(!$&&d(t.dirtyFields,i)),W||$?L(t.dirtyFields,i):E(t.dirtyFields,i,!0),x.dirtyFields=t.dirtyFields,c=c||w.dirtyFields&&_!==!W}if(u){let W=d(t.touchedFields,i);W||(E(t.touchedFields,i,u),x.touchedFields=t.touchedFields,c=c||w.touchedFields&&W!==u)}c&&f&&b.state.next(x)}return c?x:{}},"updateTouchAndDirty"),F=a((i,n,u,m)=>{let f=d(t.errors,i),c=w.isValid&&Q(n)&&t.isValid!==n;if(r.delayError&&u?(p=j(()=>X(i,u)),p(r.delayError)):(clearTimeout(S),p=null,u?E(t.errors,i,u):L(t.errors,i)),(u?!ue(f,u):f)||!z(m)||c){let _={...m,...c&&Q(n)?{isValid:n}:{},errors:t.errors,name:i};t={...t,..._},b.state.next(_)}},"shouldRenderByError"),V=a(async i=>{te(i,!0);let n=await r.resolver(l,r.context,tr(i||g.mount,s,r.criteriaMode,r.shouldUseNativeValidation));return te(i),n},"_executeSchema"),T=a(async i=>{let{errors:n}=await V(i);if(i)for(let u of i){let m=d(n,u);m?E(t.errors,u,m):L(t.errors,u)}else t.errors=n;return n},"executeSchemaAndUpdateState"),B=a(async(i,n,u={valid:!0})=>{for(let m in i){let f=i[m];if(f){let{_f:c,..._}=f;if(c){let x=g.array.has(c.name),$=f._f&&rr(f._f);$&&w.validatingFields&&te([m],!0);let W=await Ke(f,g.disabled,l,U,r.shouldUseNativeValidation&&!n,x);if($&&w.validatingFields&&te([m]),W[c.name]&&(u.valid=!1,n))break;!n&&(d(W,c.name)?x?kt(t.errors,W,c.name):E(t.errors,c.name,W[c.name]):L(t.errors,c.name))}!z(_)&&await B(_,n,u)}}return u.valid},"executeBuiltInValidation"),ce=a(()=>{for(let i of g.unMount){let n=d(s,i);n&&(n._f.refs?n._f.refs.every(u=>!qe(u)):!qe(n._f.ref))&&Re(i)}g.unMount=new Set},"_removeUnmounted"),A=a((i,n)=>!r.disabled&&(i&&n&&E(l,i,n),!ue(et(),o)),"_getDirty"),D=a((i,n,u)=>Dt(i,g,{...y.mount?l:R(n)?o:se(i)?{[i]:n}:n},u,n),"_getWatch"),N=a(i=>xe(d(y.mount?l:o,i,r.shouldUnregister?d(o,i,[]):[])),"_getFieldArray"),q=a((i,n,u={})=>{let m=d(s,i),f=n;if(m){let c=m._f;c&&(!c.disabled&&E(l,i,Lt(n,c)),f=we(c.ref)&&K(n)?"":n,It(c.ref)?[...c.ref.options].forEach(_=>_.selected=f.includes(_.value)):c.refs?Ve(c.ref)?c.refs.length>1?c.refs.forEach(_=>(!_.defaultChecked||!_.disabled)&&(_.checked=Array.isArray(f)?!!f.find(x=>x===_.value):f===_.value)):c.refs[0]&&(c.refs[0].checked=!!f):c.refs.forEach(_=>_.checked=_.value===f):Xe(c.ref)?c.ref.value="":(c.ref.value=f,c.ref.type||b.values.next({name:i,values:{...l}})))}(u.shouldDirty||u.shouldTouch)&&h(i,f,u.shouldTouch,u.shouldDirty,!0),u.shouldValidate&&Fe(i)},"setFieldValue"),ee=a((i,n,u)=>{for(let m in n){let f=n[m],c=`${i}.${m}`,_=d(s,c);(g.array.has(i)||P(f)||_&&!_._f)&&!de(f)?ee(c,f,u):q(c,f,u)}},"setValues"),G=a((i,n,u={})=>{let m=d(s,i),f=g.array.has(i),c=M(n);E(l,i,c),f?(b.array.next({name:i,values:{...l}}),(w.isDirty||w.dirtyFields)&&u.shouldDirty&&b.state.next({name:i,dirtyFields:ve(o,l),isDirty:A(i,c)})):m&&!m._f&&!K(c)?ee(i,c,u):q(i,c,u),ze(i,g)&&b.state.next({...t}),b.values.next({name:y.mount?i:void 0,values:{...l}})},"setValue"),_e=a(async i=>{y.mount=!0;let n=i.target,u=n.name,m=!0,f=d(s,u),c=a(()=>n.type?He(f._f):bt(i),"getCurrentFieldValue"),_=a(x=>{m=Number.isNaN(x)||de(x)&&isNaN(x.getTime())||ue(x,d(l,u,x))},"_updateIsFieldValueUpdated");if(f){let x,$,W=c(),oe=i.type===Se.BLUR||i.type===Se.FOCUS_OUT,jt=!sr(f._f)&&!r.resolver&&!d(t.errors,u)&&!f._f.deps||ir(oe,d(t.touchedFields,u),t.isSubmitted,k,O),Ie=ze(u,g,oe);E(l,u,W),oe?(f._f.onBlur&&f._f.onBlur(i),p&&p(0)):f._f.onChange&&f._f.onChange(i);let Pe=h(u,W,oe,!1),qt=!z(Pe)||Ie;if(!oe&&b.values.next({name:u,type:i.type,values:{...l}}),jt)return w.isValid&&(r.mode==="onBlur"&&oe?H():oe||H()),qt&&b.state.next({name:u,...Ie?{}:Pe});if(!oe&&Ie&&b.state.next({...t}),r.resolver){let{errors:lt}=await V([u]);if(_(W),m){let Ht=Ft(t.errors,s,u),ut=Ft(lt,s,Ht.name||u);x=ut.error,u=ut.name,$=z(lt)}}else te([u],!0),x=(await Ke(f,g.disabled,l,U,r.shouldUseNativeValidation))[u],te([u]),_(W),m&&(x?$=!1:w.isValid&&($=await B(s,!0)));m&&(f._f.deps&&Fe(f._f.deps),F(u,$,x,Pe))}},"onChange"),he=a((i,n)=>{if(d(t.errors,n)&&i.focus)return i.focus(),1},"_focusInput"),Fe=a(async(i,n={})=>{let u,m,f=J(i);if(r.resolver){let c=await T(R(i)?i:f);u=z(c),m=i?!f.some(_=>d(c,_)):u}else i?(m=(await Promise.all(f.map(async c=>{let _=d(s,c);return await B(_&&_._f?{[c]:_}:_)}))).every(Boolean),!(!m&&!t.isValid)&&H()):m=u=await B(s);return b.state.next({...!se(i)||w.isValid&&u!==t.isValid?{}:{name:i},...r.resolver||!i?{isValid:u}:{},errors:t.errors}),n.shouldFocus&&!m&&me(s,he,i?f:g.mount),m},"trigger"),et=a(i=>{let n={...y.mount?l:o};return R(i)?n:se(i)?d(n,i):i.map(u=>d(n,u))},"getValues"),tt=a((i,n)=>({invalid:!!d((n||t).errors,i),isDirty:!!d((n||t).dirtyFields,i),error:d((n||t).errors,i),isValidating:!!d(t.validatingFields,i),isTouched:!!d((n||t).touchedFields,i)}),"getFieldState"),Ut=a(i=>{i&&J(i).forEach(n=>L(t.errors,n)),b.state.next({errors:i?t.errors:{}})},"clearErrors"),rt=a((i,n,u)=>{let m=(d(s,i,{_f:{}})._f||{}).ref,f=d(t.errors,i)||{},{ref:c,message:_,type:x,...$}=f;E(t.errors,i,{...$,...n,ref:m}),b.state.next({name:i,errors:t.errors,isValid:!1}),u&&u.shouldFocus&&m&&m.focus&&m.focus()},"setError"),Bt=a((i,n)=>re(i)?b.values.subscribe({next:a(u=>i(D(void 0,n),u),"next")}):D(i,n,!0),"watch"),Re=a((i,n={})=>{for(let u of i?J(i):g.mount)g.mount.delete(u),g.array.delete(u),n.keepValue||(L(s,u),L(l,u)),!n.keepError&&L(t.errors,u),!n.keepDirty&&L(t.dirtyFields,u),!n.keepTouched&&L(t.touchedFields,u),!n.keepIsValidating&&L(t.validatingFields,u),!r.shouldUnregister&&!n.keepDefaultValue&&L(o,u);b.values.next({values:{...l}}),b.state.next({...t,...n.keepDirty?{isDirty:A()}:{}}),!n.keepIsValid&&H()},"unregister"),st=a(({disabled:i,name:n,field:u,fields:m})=>{(Q(i)&&y.mount||i||g.disabled.has(n))&&(i?g.disabled.add(n):g.disabled.delete(n),h(n,He(u?u._f:d(m,n)._f),!1,!1,!0))},"_updateDisabledField"),Te=a((i,n={})=>{let u=d(s,i),m=Q(n.disabled)||Q(r.disabled);return E(s,i,{...u||{},_f:{...u&&u._f?u._f:{ref:{name:i}},name:i,mount:!0,...n}}),g.mount.add(i),u?st({field:u,disabled:Q(n.disabled)?n.disabled:r.disabled,name:i}):I(i,!0,n.value),{...m?{disabled:n.disabled||r.disabled}:{},...r.progressive?{required:!!n.required,min:be(n.min),max:be(n.max),minLength:be(n.minLength),maxLength:be(n.maxLength),pattern:be(n.pattern)}:{},name:i,onChange:_e,onBlur:_e,ref:a(f=>{if(f){Te(i,n),u=d(s,i);let c=R(f.value)&&f.querySelectorAll&&f.querySelectorAll("input,select,textarea")[0]||f,_=er(c),x=u._f.refs||[];if(_?x.find($=>$===c):c===u._f.ref)return;E(s,i,{_f:{...u._f,..._?{refs:[...x.filter(qe),c,...Array.isArray(d(o,i))?[{}]:[]],ref:{type:c.type,name:i}}:{ref:c}}}),I(i,!1,void 0,c)}else u=d(s,i,{}),u._f&&(u._f.mount=!1),(r.shouldUnregister||n.shouldUnregister)&&!(pt(g.array,i)&&y.action)&&g.unMount.add(i)},"ref")}},"register"),it=a(()=>r.shouldFocusError&&me(s,he,g.mount),"_focusError"),$t=a(i=>{Q(i)&&(b.state.next({disabled:i}),me(s,(n,u)=>{let m=d(s,u);m&&(n.disabled=m._f.disabled||i,Array.isArray(m._f.refs)&&m._f.refs.forEach(f=>{f.disabled=m._f.disabled||i}))},0,!1))},"_disableForm"),at=a((i,n)=>async u=>{let m;u&&(u.preventDefault&&u.preventDefault(),u.persist&&u.persist());let f=M(l);if(g.disabled.size)for(let c of g.disabled)E(f,c,void 0);if(b.state.next({isSubmitting:!0}),r.resolver){let{errors:c,values:_}=await V();t.errors=c,f=_}else await B(s);if(L(t.errors,"root"),z(t.errors)){b.state.next({errors:{}});try{await i(f,u)}catch(c){m=c}}else n&&await n({...t.errors},u),it(),setTimeout(it);if(b.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:z(t.errors)&&!m,submitCount:t.submitCount+1,errors:t.errors}),m)throw m},"handleSubmit"),Wt=a((i,n={})=>{d(s,i)&&(R(n.defaultValue)?G(i,M(d(o,i))):(G(i,n.defaultValue),E(o,i,M(n.defaultValue))),n.keepTouched||L(t.touchedFields,i),n.keepDirty||(L(t.dirtyFields,i),t.isDirty=n.defaultValue?A(i,M(d(o,i))):A()),n.keepError||(L(t.errors,i),w.isValid&&H()),b.state.next({...t}))},"resetField"),nt=a((i,n={})=>{let u=i?M(i):o,m=M(u),f=z(i),c=f?o:m;if(n.keepDefaultValues||(o=u),!n.keepValues){if(n.keepDirtyValues){let _=new Set([...g.mount,...Object.keys(ve(o,l))]);for(let x of Array.from(_))d(t.dirtyFields,x)?E(c,x,d(l,x)):G(x,d(c,x))}else{if(Ge&&R(i))for(let _ of g.mount){let x=d(s,_);if(x&&x._f){let $=Array.isArray(x._f.refs)?x._f.refs[0]:x._f.ref;if(we($)){let W=$.closest("form");if(W){W.reset();break}}}}s={}}l=r.shouldUnregister?n.keepDefaultValues?M(o):{}:M(c),b.array.next({values:{...c}}),b.values.next({values:{...c}})}g={mount:n.keepDirtyValues?g.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},y.mount=!w.isValid||!!n.keepIsValid||!!n.keepDirtyValues,y.watch=!!r.shouldUnregister,b.state.next({submitCount:n.keepSubmitCount?t.submitCount:0,isDirty:f?!1:n.keepDirty?t.isDirty:!!(n.keepDefaultValues&&!ue(i,o)),isSubmitted:n.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:f?{}:n.keepDirtyValues?n.keepDefaultValues&&l?ve(o,l):t.dirtyFields:n.keepDefaultValues&&i?ve(o,i):n.keepDirty?t.dirtyFields:{},touchedFields:n.keepTouched?t.touchedFields:{},errors:n.keepErrors?t.errors:{},isSubmitSuccessful:n.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1})},"_reset"),ot=a((i,n)=>nt(re(i)?i(l):i,n),"reset");return{control:{register:Te,unregister:Re,getFieldState:tt,handleSubmit:at,setError:rt,_executeSchema:V,_getWatch:D,_getDirty:A,_updateValid:H,_removeUnmounted:ce,_updateFieldArray:C,_updateDisabledField:st,_getFieldArray:N,_reset:nt,_resetDefaultValues:a(()=>re(r.defaultValues)&&r.defaultValues().then(i=>{ot(i,r.resetOptions),b.state.next({isLoading:!1})}),"_resetDefaultValues"),_updateFormState:a(i=>{t={...t,...i}},"_updateFormState"),_disableForm:$t,_subjects:b,_proxyFormState:w,_setErrors:Z,get _fields(){return s},get _formValues(){return l},get _state(){return y},set _state(i){y=i},get _defaultValues(){return o},get _names(){return g},set _names(i){g=i},get _formState(){return t},set _formState(i){t=i},get _options(){return r},set _options(i){r={...r,...i}}},trigger:Fe,register:Te,handleSubmit:at,watch:Bt,setValue:G,getValues:et,reset:ot,resetField:Wt,clearErrors:Ut,unregister:Re,setError:rt,setFocus:a((i,n={})=>{let u=d(s,i),m=u&&u._f;if(m){let f=m.refs?m.refs[0]:m.ref;f.focus&&(f.focus(),n.shouldSelect&&re(f.select)&&f.select())}},"setFocus"),getFieldState:tt}}a(or,"createFormControl");function gr(e={}){let r=v.useRef(void 0),t=v.useRef(void 0),[s,o]=v.useState({isDirty:!1,isValidating:!1,isLoading:re(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,defaultValues:re(e.defaultValues)?void 0:e.defaultValues});r.current||(r.current={...or(e),formState:s});let l=r.current.control;return l._options=e,Ee({subject:l._subjects.state,next:a(y=>{wt(y,l._proxyFormState,l._updateFormState,!0)&&o({...l._formState})},"next")}),v.useEffect(()=>l._disableForm(e.disabled),[l,e.disabled]),v.useEffect(()=>{if(l._proxyFormState.isDirty){let y=l._getDirty();y!==s.isDirty&&l._subjects.state.next({isDirty:y})}},[l,s.isDirty]),v.useEffect(()=>{e.values&&!ue(e.values,t.current)?(l._reset(e.values,l._options.resetOptions),t.current=e.values,o(y=>({...y}))):l._resetDefaultValues()},[e.values,l]),v.useEffect(()=>{e.errors&&l._setErrors(e.errors)},[e.errors,l]),v.useEffect(()=>{l._state.mount||(l._updateValid(),l._state.mount=!0),l._state.watch&&(l._state.watch=!1,l._subjects.state.next({...l._formState})),l._removeUnmounted()}),v.useEffect(()=>{e.shouldUnregister&&l._subjects.values.next({values:l._getWatch()})},[e.shouldUnregister,l]),r.current.formState=St(s,l),r.current}a(gr,"useForm");import{Slot as lr}from"@radix-ui/react-slot";import*as ie from"react";import{jsx as ne}from"react/jsx-runtime";var Sr=At,Nt=ie.createContext({}),wr=a(({...e})=>ne(Nt.Provider,{value:{name:e.name},children:ne(Et,{...e})}),"FormField"),ke=a(()=>{let e=ie.useContext(Nt),r=ie.useContext(Mt),{getFieldState:t}=ge(),s=Ye({name:e.name}),o=t(e.name,s);if(!e)throw new Error("useFormField should be used within <FormField>");let{id:l}=r;return{id:l,name:e.name,formItemId:`${l}-form-item`,formDescriptionId:`${l}-form-item-description`,formMessageId:`${l}-form-item-message`,...o}},"useFormField"),Mt=ie.createContext({});function Cr({className:e,...r}){let t=ie.useId();return ne(Mt.Provider,{value:{id:t},children:ne("div",{"data-slot":"form-item",...r,className:fe("grid gap-2",e)})})}a(Cr,"FormItem");function Dr({className:e,...r}){let{error:t,formItemId:s}=ke();return ne(dt,{"data-slot":"form-label","data-error":!!t,className:fe("text-base-color mb-1 data-[error=true]:text-destructive",e),htmlFor:s,...r})}a(Dr,"FormLabel");var ur=ie.forwardRef(({...e},r)=>{let{error:t,formItemId:s,formDescriptionId:o,formMessageId:l}=ke();return ne(lr,{"data-slot":"form-control",ref:r,id:s,"aria-describedby":t?`${o} ${l}`:`${o}`,"aria-invalid":!!t,...e})});ur.displayName="FormControl";function Er({className:e,children:r,as:t,...s}){let{formDescriptionId:o}=ke(),l=t||"p";return typeof r=="string"?ne(l,{"data-slot":"form-description",id:o,className:fe("text-base-color text-xs",e),dangerouslySetInnerHTML:{__html:ct(r)},"data-sanitized":"true",...s}):ne(l,{"data-slot":"form-description",id:o,"data-sanitized":"false",className:fe("text-base-color text-xs",e),...s,children:typeof r=="function"?r():r})}a(Er,"FormDescription");function kr({className:e,...r}){let{error:t,formMessageId:s}=ke(),o=t?String(t?.message??""):r.children;return o?ne("p",{"data-slot":"form-message",id:s,className:fe("text-destructive text-sm",e),...r,children:o}):null}a(kr,"FormMessage");export{d as a,E as b,ge as c,Qt as d,mr as e,gr as f,Sr as g,wr as h,Cr as i,Dr as j,ur as k,Er as l,kr as m};
2
- //# sourceMappingURL=chunk-66N57DKF.js.map
1
+ import{a as dt}from"./chunk-ILOKQ6OH.js";import{a as fe,e as ct}from"./chunk-UQCSN47K.js";import{a}from"./chunk-P37U34EQ.js";import v from"react";var Ve=a(e=>e.type==="checkbox","isCheckBoxInput"),de=a(e=>e instanceof Date,"isDateObject"),K=a(e=>e==null,"isNullOrUndefined"),vt=a(e=>typeof e=="object","isObjectType"),P=a(e=>!K(e)&&!Array.isArray(e)&&vt(e)&&!de(e),"isObject"),bt=a(e=>P(e)&&e.target?Ve(e.target)?e.target.checked:e.target.value:e,"getEventValue"),zt=a(e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,"getNodeParentName"),pt=a((e,r)=>e.has(zt(r)),"isNameInFieldArray"),Kt=a(e=>{let r=e.constructor&&e.constructor.prototype;return P(r)&&r.hasOwnProperty("isPrototypeOf")},"isPlainObject"),Ge=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function M(e){let r,t=Array.isArray(e),s=typeof FileList<"u"?e instanceof FileList:!1;if(e instanceof Date)r=new Date(e);else if(e instanceof Set)r=new Set(e);else if(!(Ge&&(e instanceof Blob||s))&&(t||P(e)))if(r=t?[]:{},!t&&!Kt(e))r=e;else for(let o in e)e.hasOwnProperty(o)&&(r[o]=M(e[o]));else return e;return r}a(M,"cloneObject");var xe=a(e=>Array.isArray(e)?e.filter(Boolean):[],"compact"),R=a(e=>e===void 0,"isUndefined"),d=a((e,r,t)=>{if(!r||!P(e))return t;let s=xe(r.split(/[,[\].]+?/)).reduce((o,l)=>K(o)?o:o[l],e);return R(s)||s===e?R(e[r])?t:e[r]:s},"get"),Q=a(e=>typeof e=="boolean","isBoolean"),Qe=a(e=>/^\w*$/.test(e),"isKey"),Vt=a(e=>xe(e.replace(/["|']|\]/g,"").split(/\.|\[/)),"stringToPath"),E=a((e,r,t)=>{let s=-1,o=Qe(r)?[r]:Vt(r),l=o.length,y=l-1;for(;++s<l;){let g=o[s],p=t;if(s!==y){let S=e[g];p=P(S)||Array.isArray(S)?S:isNaN(+o[s+1])?{}:[]}if(g==="__proto__"||g==="constructor"||g==="prototype")return;e[g]=p,e=e[g]}return e},"set"),Se={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},Y={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},ae={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},xt=v.createContext(null),ge=a(()=>v.useContext(xt),"useFormContext"),At=a(e=>{let{children:r,...t}=e;return v.createElement(xt.Provider,{value:t},r)},"FormProvider"),St=a((e,r,t,s=!0)=>{let o={defaultValues:r._defaultValues};for(let l in e)Object.defineProperty(o,l,{get:a(()=>{let y=l;return r._proxyFormState[y]!==Y.all&&(r._proxyFormState[y]=!s||Y.all),t&&(t[y]=!0),e[y]},"get")});return o},"getProxyFormState"),z=a(e=>P(e)&&!Object.keys(e).length,"isEmptyObject"),wt=a((e,r,t,s)=>{t(e);let{name:o,...l}=e;return z(l)||Object.keys(l).length>=Object.keys(r).length||Object.keys(l).find(y=>r[y]===(!s||Y.all))},"shouldRenderFormState"),J=a(e=>Array.isArray(e)?e:[e],"convertToArrayPayload"),Ct=a((e,r,t)=>!e||!r||e===r||J(e).some(s=>s&&(t?s===r:s.startsWith(r)||r.startsWith(s))),"shouldSubscribeByName");function Ee(e){let r=v.useRef(e);r.current=e,v.useEffect(()=>{let t=!e.disabled&&r.current.subject&&r.current.subject.subscribe({next:r.current.next});return()=>{t&&t.unsubscribe()}},[e.disabled])}a(Ee,"useSubscribe");function Ye(e){let r=ge(),{control:t=r.control,disabled:s,name:o,exact:l}=e||{},[y,g]=v.useState(t._formState),p=v.useRef(!0),S=v.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1}),w=v.useRef(o);return w.current=o,Ee({disabled:s,next:a(b=>p.current&&Ct(w.current,b.name,l)&&wt(b,S.current,t._updateFormState)&&g({...t._formState,...b}),"next"),subject:t._subjects.state}),v.useEffect(()=>(p.current=!0,S.current.isValid&&t._updateValid(!0),()=>{p.current=!1}),[t]),v.useMemo(()=>St(y,t,S.current,!1),[y,t])}a(Ye,"useFormState");var se=a(e=>typeof e=="string","isString"),Dt=a((e,r,t,s,o)=>se(e)?(s&&r.watch.add(e),d(t,e,o)):Array.isArray(e)?e.map(l=>(s&&r.watch.add(l),d(t,l))):(s&&(r.watchAll=!0),t),"generateWatchOutput");function Jt(e){let r=ge(),{control:t=r.control,name:s,defaultValue:o,disabled:l,exact:y}=e||{},g=v.useRef(s);g.current=s,Ee({disabled:l,subject:t._subjects.values,next:a(w=>{Ct(g.current,w.name,y)&&S(M(Dt(g.current,t._names,w.values||t._formValues,!1,o)))},"next")});let[p,S]=v.useState(t._getWatch(s,o));return v.useEffect(()=>t._removeUnmounted()),p}a(Jt,"useWatch");function Gt(e){let r=ge(),{name:t,disabled:s,control:o=r.control,shouldUnregister:l}=e,y=pt(o._names.array,t),g=Jt({control:o,name:t,defaultValue:d(o._formValues,t,d(o._defaultValues,t,e.defaultValue)),exact:!0}),p=Ye({control:o,name:t,exact:!0}),S=v.useRef(o.register(t,{...e.rules,value:g,...Q(e.disabled)?{disabled:e.disabled}:{}})),w=v.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:a(()=>!!d(p.errors,t),"get")},isDirty:{enumerable:!0,get:a(()=>!!d(p.dirtyFields,t),"get")},isTouched:{enumerable:!0,get:a(()=>!!d(p.touchedFields,t),"get")},isValidating:{enumerable:!0,get:a(()=>!!d(p.validatingFields,t),"get")},error:{enumerable:!0,get:a(()=>d(p.errors,t),"get")}}),[p,t]),b=v.useMemo(()=>({name:t,value:g,...Q(s)||p.disabled?{disabled:p.disabled||s}:{},onChange:a(O=>S.current.onChange({target:{value:bt(O),name:t},type:Se.CHANGE}),"onChange"),onBlur:a(()=>S.current.onBlur({target:{value:d(o._formValues,t),name:t},type:Se.BLUR}),"onBlur"),ref:a(O=>{let k=d(o._fields,t);k&&O&&(k._f.ref={focus:a(()=>O.focus(),"focus"),select:a(()=>O.select(),"select"),setCustomValidity:a(U=>O.setCustomValidity(U),"setCustomValidity"),reportValidity:a(()=>O.reportValidity(),"reportValidity")})},"ref")}),[t,o._formValues,s,p.disabled,g,o._fields]);return v.useEffect(()=>{let O=o._options.shouldUnregister||l,k=a((U,j)=>{let H=d(o._fields,U);H&&H._f&&(H._f.mount=j)},"updateMounted");if(k(t,!0),O){let U=M(d(o._options.defaultValues,t));E(o._defaultValues,t,U),R(d(o._formValues,t))&&E(o._formValues,t,U)}return!y&&o.register(t),()=>{(y?O&&!o._state.action:O)?o.unregister(t):k(t,!1)}},[t,o,y,l]),v.useEffect(()=>{o._updateDisabledField({disabled:s,fields:o._fields,name:t})},[s,t,o]),v.useMemo(()=>({field:b,formState:p,fieldState:w}),[b,p,w])}a(Gt,"useController");var Et=a(e=>e.render(Gt(e)),"Controller");var Qt=a((e,r,t,s,o)=>r?{...t[e],types:{...t[e]&&t[e].types?t[e].types:{},[s]:o||!0}}:{},"appendErrors"),le=a(()=>{let e=typeof performance>"u"?Date.now():performance.now()*1e3;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,r=>{let t=(Math.random()*16+e)%16|0;return(r=="x"?t:t&3|8).toString(16)})},"generateId"),Oe=a((e,r,t={})=>t.shouldFocus||R(t.shouldFocus)?t.focusName||`${e}.${R(t.focusIndex)?r:t.focusIndex}.`:"","getFocusFieldName"),pe=a(e=>({isOnSubmit:!e||e===Y.onSubmit,isOnBlur:e===Y.onBlur,isOnChange:e===Y.onChange,isOnAll:e===Y.all,isOnTouch:e===Y.onTouched}),"getValidationModes"),ze=a((e,r,t)=>!t&&(r.watchAll||r.watch.has(e)||[...r.watch].some(s=>e.startsWith(s)&&/^\.\w+/.test(e.slice(s.length)))),"isWatched"),me=a((e,r,t,s)=>{for(let o of t||Object.keys(e)){let l=d(e,o);if(l){let{_f:y,...g}=l;if(y){if(y.refs&&y.refs[0]&&r(y.refs[0],o)&&!s)return!0;if(y.ref&&r(y.ref,y.name)&&!s)return!0;if(me(g,r))break}else if(P(g)&&me(g,r))break}}},"iterateFieldsByAction"),kt=a((e,r,t)=>{let s=J(d(e,t));return E(s,"root",r[t]),E(e,t,s),e},"updateFieldArrayRootError"),Xe=a(e=>e.type==="file","isFileInput"),re=a(e=>typeof e=="function","isFunction"),we=a(e=>{if(!Ge)return!1;let r=e?e.ownerDocument:0;return e instanceof(r&&r.defaultView?r.defaultView.HTMLElement:HTMLElement)},"isHTMLElement"),Ae=a(e=>se(e),"isMessage"),Ze=a(e=>e.type==="radio","isRadioInput"),Ce=a(e=>e instanceof RegExp,"isRegex"),ft={value:!1,isValid:!1},yt={value:!0,isValid:!0},Rt=a(e=>{if(Array.isArray(e)){if(e.length>1){let r=e.filter(t=>t&&t.checked&&!t.disabled).map(t=>t.value);return{value:r,isValid:!!r.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!R(e[0].attributes.value)?R(e[0].value)||e[0].value===""?yt:{value:e[0].value,isValid:!0}:yt:ft}return ft},"getCheckboxValue"),mt={isValid:!1,value:null},Tt=a(e=>Array.isArray(e)?e.reduce((r,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:r,mt):mt,"getRadioValue");function gt(e,r,t="validate"){if(Ae(e)||Array.isArray(e)&&e.every(Ae)||Q(e)&&!e)return{type:t,message:Ae(e)?e:"",ref:r}}a(gt,"getValidateError");var ye=a(e=>P(e)&&!Ce(e)?e:{value:e,message:""},"getValueAndMessage"),Ke=a(async(e,r,t,s,o,l)=>{let{ref:y,refs:g,required:p,maxLength:S,minLength:w,min:b,max:O,pattern:k,validate:U,name:j,valueAsNumber:H,mount:te}=e._f,C=d(t,j);if(!te||r.has(j))return{};let X=g?g[0]:y,Z=a(A=>{o&&X.reportValidity&&(X.setCustomValidity(Q(A)?"":A||""),X.reportValidity())},"setCustomValidity"),I={},h=Ze(y),F=Ve(y),V=h||F,T=(H||Xe(y))&&R(y.value)&&R(C)||we(y)&&y.value===""||C===""||Array.isArray(C)&&!C.length,B=Qt.bind(null,j,s,I),ce=a((A,D,N,q=ae.maxLength,ee=ae.minLength)=>{let G=A?D:N;I[j]={type:A?q:ee,message:G,ref:y,...B(A?q:ee,G)}},"getMinMaxMessage");if(l?!Array.isArray(C)||!C.length:p&&(!V&&(T||K(C))||Q(C)&&!C||F&&!Rt(g).isValid||h&&!Tt(g).isValid)){let{value:A,message:D}=Ae(p)?{value:!!p,message:p}:ye(p);if(A&&(I[j]={type:ae.required,message:D,ref:X,...B(ae.required,D)},!s))return Z(D),I}if(!T&&(!K(b)||!K(O))){let A,D,N=ye(O),q=ye(b);if(!K(C)&&!isNaN(C)){let ee=y.valueAsNumber||C&&+C;K(N.value)||(A=ee>N.value),K(q.value)||(D=ee<q.value)}else{let ee=y.valueAsDate||new Date(C),G=a(Fe=>new Date(new Date().toDateString()+" "+Fe),"convertTimeToDate"),_e=y.type=="time",he=y.type=="week";se(N.value)&&C&&(A=_e?G(C)>G(N.value):he?C>N.value:ee>new Date(N.value)),se(q.value)&&C&&(D=_e?G(C)<G(q.value):he?C<q.value:ee<new Date(q.value))}if((A||D)&&(ce(!!A,N.message,q.message,ae.max,ae.min),!s))return Z(I[j].message),I}if((S||w)&&!T&&(se(C)||l&&Array.isArray(C))){let A=ye(S),D=ye(w),N=!K(A.value)&&C.length>+A.value,q=!K(D.value)&&C.length<+D.value;if((N||q)&&(ce(N,A.message,D.message),!s))return Z(I[j].message),I}if(k&&!T&&se(C)){let{value:A,message:D}=ye(k);if(Ce(A)&&!C.match(A)&&(I[j]={type:ae.pattern,message:D,ref:y,...B(ae.pattern,D)},!s))return Z(D),I}if(U){if(re(U)){let A=await U(C,t),D=gt(A,X);if(D&&(I[j]={...D,...B(ae.validate,D.message)},!s))return Z(D.message),I}else if(P(U)){let A={};for(let D in U){if(!z(A)&&!s)break;let N=gt(await U[D](C,t),X,D);N&&(A={...N,...B(D,N.message)},Z(N.message),s&&(I[j]=A))}if(!z(A)&&(I[j]={ref:X,...A},!s))return I}}return Z(!0),I},"validateField"),Le=a((e,r)=>[...e,...J(r)],"appendAt"),Ne=a(e=>Array.isArray(e)?e.map(()=>{}):void 0,"fillEmptyArray");function Me(e,r,t){return[...e.slice(0,r),...J(t),...e.slice(r)]}a(Me,"insert");var Ue=a((e,r,t)=>Array.isArray(e)?(R(e[t])&&(e[t]=void 0),e.splice(t,0,e.splice(r,1)[0]),e):[],"moveArrayAt"),Be=a((e,r)=>[...J(r),...J(e)],"prependAt");function Yt(e,r){let t=0,s=[...e];for(let o of r)s.splice(o-t,1),t++;return xe(s).length?s:[]}a(Yt,"removeAtIndexes");var $e=a((e,r)=>R(r)?[]:Yt(e,J(r).sort((t,s)=>t-s)),"removeArrayAt"),We=a((e,r,t)=>{[e[r],e[t]]=[e[t],e[r]]},"swapArrayAt");function Xt(e,r){let t=r.slice(0,-1).length,s=0;for(;s<t;)e=R(e)?s++:e[r[s++]];return e}a(Xt,"baseGet");function Zt(e){for(let r in e)if(e.hasOwnProperty(r)&&!R(e[r]))return!1;return!0}a(Zt,"isEmptyArray");function L(e,r){let t=Array.isArray(r)?r:Qe(r)?[r]:Vt(r),s=t.length===1?e:Xt(e,t),o=t.length-1,l=t[o];return s&&delete s[l],o!==0&&(P(s)&&z(s)||Array.isArray(s)&&Zt(s))&&L(e,t.slice(0,-1)),e}a(L,"unset");var _t=a((e,r,t)=>(e[r]=t,e),"updateAt");function mr(e){let r=ge(),{control:t=r.control,name:s,keyName:o="id",shouldUnregister:l,rules:y}=e,[g,p]=v.useState(t._getFieldArray(s)),S=v.useRef(t._getFieldArray(s).map(le)),w=v.useRef(g),b=v.useRef(s),O=v.useRef(!1);b.current=s,w.current=g,t._names.array.add(s),y&&t.register(s,y),Ee({next:a(({values:h,name:F})=>{if(F===b.current||!F){let V=d(h,b.current);Array.isArray(V)&&(p(V),S.current=V.map(le))}},"next"),subject:t._subjects.array});let k=v.useCallback(h=>{O.current=!0,t._updateFieldArray(s,h)},[t,s]),U=a((h,F)=>{let V=J(M(h)),T=Le(t._getFieldArray(s),V);t._names.focus=Oe(s,T.length-1,F),S.current=Le(S.current,V.map(le)),k(T),p(T),t._updateFieldArray(s,T,Le,{argA:Ne(h)})},"append"),j=a((h,F)=>{let V=J(M(h)),T=Be(t._getFieldArray(s),V);t._names.focus=Oe(s,0,F),S.current=Be(S.current,V.map(le)),k(T),p(T),t._updateFieldArray(s,T,Be,{argA:Ne(h)})},"prepend"),H=a(h=>{let F=$e(t._getFieldArray(s),h);S.current=$e(S.current,h),k(F),p(F),!Array.isArray(d(t._fields,s))&&E(t._fields,s,void 0),t._updateFieldArray(s,F,$e,{argA:h})},"remove"),te=a((h,F,V)=>{let T=J(M(F)),B=Me(t._getFieldArray(s),h,T);t._names.focus=Oe(s,h,V),S.current=Me(S.current,h,T.map(le)),k(B),p(B),t._updateFieldArray(s,B,Me,{argA:h,argB:Ne(F)})},"insert$1"),C=a((h,F)=>{let V=t._getFieldArray(s);We(V,h,F),We(S.current,h,F),k(V),p(V),t._updateFieldArray(s,V,We,{argA:h,argB:F},!1)},"swap"),X=a((h,F)=>{let V=t._getFieldArray(s);Ue(V,h,F),Ue(S.current,h,F),k(V),p(V),t._updateFieldArray(s,V,Ue,{argA:h,argB:F},!1)},"move"),Z=a((h,F)=>{let V=M(F),T=_t(t._getFieldArray(s),h,V);S.current=[...T].map((B,ce)=>!B||ce===h?le():S.current[ce]),k(T),p([...T]),t._updateFieldArray(s,T,_t,{argA:h,argB:V},!0,!1)},"update"),I=a(h=>{let F=J(M(h));S.current=F.map(le),k([...F]),p([...F]),t._updateFieldArray(s,[...F],V=>V,{},!0,!1)},"replace");return v.useEffect(()=>{if(t._state.action=!1,ze(s,t._names)&&t._subjects.state.next({...t._formState}),O.current&&(!pe(t._options.mode).isOnSubmit||t._formState.isSubmitted))if(t._options.resolver)t._executeSchema([s]).then(h=>{let F=d(h.errors,s),V=d(t._formState.errors,s);(V?!F&&V.type||F&&(V.type!==F.type||V.message!==F.message):F&&F.type)&&(F?E(t._formState.errors,s,F):L(t._formState.errors,s),t._subjects.state.next({errors:t._formState.errors}))});else{let h=d(t._fields,s);h&&h._f&&!(pe(t._options.reValidateMode).isOnSubmit&&pe(t._options.mode).isOnSubmit)&&Ke(h,t._names.disabled,t._formValues,t._options.criteriaMode===Y.all,t._options.shouldUseNativeValidation,!0).then(F=>!z(F)&&t._subjects.state.next({errors:kt(t._formState.errors,F,s)}))}t._subjects.values.next({name:s,values:{...t._formValues}}),t._names.focus&&me(t._fields,(h,F)=>{if(t._names.focus&&F.startsWith(t._names.focus)&&h.focus)return h.focus(),1}),t._names.focus="",t._updateValid(),O.current=!1},[g,s,t]),v.useEffect(()=>(!d(t._formValues,s)&&t._updateFieldArray(s),()=>{(t._options.shouldUnregister||l)&&t.unregister(s)}),[s,t,o,l]),{swap:v.useCallback(C,[k,s,t]),move:v.useCallback(X,[k,s,t]),prepend:v.useCallback(j,[k,s,t]),append:v.useCallback(U,[k,s,t]),remove:v.useCallback(H,[k,s,t]),insert:v.useCallback(te,[k,s,t]),update:v.useCallback(Z,[k,s,t]),replace:v.useCallback(I,[k,s,t]),fields:v.useMemo(()=>g.map((h,F)=>({...h,[o]:S.current[F]||le()})),[g,o])}}a(mr,"useFieldArray");var je=a(()=>{let e=[];return{get observers(){return e},next:a(o=>{for(let l of e)l.next&&l.next(o)},"next"),subscribe:a(o=>(e.push(o),{unsubscribe:a(()=>{e=e.filter(l=>l!==o)},"unsubscribe")}),"subscribe"),unsubscribe:a(()=>{e=[]},"unsubscribe")}},"createSubject"),Je=a(e=>K(e)||!vt(e),"isPrimitive");function ue(e,r){if(Je(e)||Je(r))return e===r;if(de(e)&&de(r))return e.getTime()===r.getTime();let t=Object.keys(e),s=Object.keys(r);if(t.length!==s.length)return!1;for(let o of t){let l=e[o];if(!s.includes(o))return!1;if(o!=="ref"){let y=r[o];if(de(l)&&de(y)||P(l)&&P(y)||Array.isArray(l)&&Array.isArray(y)?!ue(l,y):l!==y)return!1}}return!0}a(ue,"deepEqual");var It=a(e=>e.type==="select-multiple","isMultipleSelect"),er=a(e=>Ze(e)||Ve(e),"isRadioOrCheckbox"),qe=a(e=>we(e)&&e.isConnected,"live"),Pt=a(e=>{for(let r in e)if(re(e[r]))return!0;return!1},"objectHasFunction");function De(e,r={}){let t=Array.isArray(e);if(P(e)||t)for(let s in e)Array.isArray(e[s])||P(e[s])&&!Pt(e[s])?(r[s]=Array.isArray(e[s])?[]:{},De(e[s],r[s])):K(e[s])||(r[s]=!0);return r}a(De,"markFieldsDirty");function Ot(e,r,t){let s=Array.isArray(e);if(P(e)||s)for(let o in e)Array.isArray(e[o])||P(e[o])&&!Pt(e[o])?R(r)||Je(t[o])?t[o]=Array.isArray(e[o])?De(e[o],[]):{...De(e[o])}:Ot(e[o],K(r)?{}:r[o],t[o]):t[o]=!ue(e[o],r[o]);return t}a(Ot,"getDirtyFieldsFromDefaultValues");var ve=a((e,r)=>Ot(e,r,De(r)),"getDirtyFields"),Lt=a((e,{valueAsNumber:r,valueAsDate:t,setValueAs:s})=>R(e)?e:r?e===""?NaN:e&&+e:t&&se(e)?new Date(e):s?s(e):e,"getFieldValueAs");function He(e){let r=e.ref;return Xe(r)?r.files:Ze(r)?Tt(e.refs).value:It(r)?[...r.selectedOptions].map(({value:t})=>t):Ve(r)?Rt(e.refs).value:Lt(R(r.value)?e.ref.value:r.value,e)}a(He,"getFieldValue");var tr=a((e,r,t,s)=>{let o={};for(let l of e){let y=d(r,l);y&&E(o,l,y._f)}return{criteriaMode:t,names:[...e],fields:o,shouldUseNativeValidation:s}},"getResolverOptions"),be=a(e=>R(e)?e:Ce(e)?e.source:P(e)?Ce(e.value)?e.value.source:e.value:e,"getRuleValue"),ht="AsyncFunction",rr=a(e=>!!e&&!!e.validate&&!!(re(e.validate)&&e.validate.constructor.name===ht||P(e.validate)&&Object.values(e.validate).find(r=>r.constructor.name===ht)),"hasPromiseValidation"),sr=a(e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),"hasValidation");function Ft(e,r,t){let s=d(e,t);if(s||Qe(t))return{error:s,name:t};let o=t.split(".");for(;o.length;){let l=o.join("."),y=d(r,l),g=d(e,l);if(y&&!Array.isArray(y)&&t!==l)return{name:t};if(g&&g.type)return{name:l,error:g};o.pop()}return{name:t}}a(Ft,"schemaErrorLookup");var ir=a((e,r,t,s,o)=>o.isOnAll?!1:!t&&o.isOnTouch?!(r||e):(t?s.isOnBlur:o.isOnBlur)?!e:(t?s.isOnChange:o.isOnChange)?e:!0,"skipValidation"),ar=a((e,r)=>!xe(d(e,r)).length&&L(e,r),"unsetEmptyArray"),nr={mode:Y.onSubmit,reValidateMode:Y.onChange,shouldFocusError:!0};function or(e={}){let r={...nr,...e},t={submitCount:0,isDirty:!1,isLoading:re(r.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:r.errors||{},disabled:r.disabled||!1},s={},o=P(r.defaultValues)||P(r.values)?M(r.defaultValues||r.values)||{}:{},l=r.shouldUnregister?{}:M(o),y={action:!1,mount:!1,watch:!1},g={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},p,S=0,w={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},b={values:je(),array:je(),state:je()},O=pe(r.mode),k=pe(r.reValidateMode),U=r.criteriaMode===Y.all,j=a(i=>n=>{clearTimeout(S),S=setTimeout(i,n)},"debounce"),H=a(async i=>{if(!r.disabled&&(w.isValid||i)){let n=r.resolver?z((await V()).errors):await B(s,!0);n!==t.isValid&&b.state.next({isValid:n})}},"_updateValid"),te=a((i,n)=>{!r.disabled&&(w.isValidating||w.validatingFields)&&((i||Array.from(g.mount)).forEach(u=>{u&&(n?E(t.validatingFields,u,n):L(t.validatingFields,u))}),b.state.next({validatingFields:t.validatingFields,isValidating:!z(t.validatingFields)}))},"_updateIsValidating"),C=a((i,n=[],u,m,f=!0,c=!0)=>{if(m&&u&&!r.disabled){if(y.action=!0,c&&Array.isArray(d(s,i))){let _=u(d(s,i),m.argA,m.argB);f&&E(s,i,_)}if(c&&Array.isArray(d(t.errors,i))){let _=u(d(t.errors,i),m.argA,m.argB);f&&E(t.errors,i,_),ar(t.errors,i)}if(w.touchedFields&&c&&Array.isArray(d(t.touchedFields,i))){let _=u(d(t.touchedFields,i),m.argA,m.argB);f&&E(t.touchedFields,i,_)}w.dirtyFields&&(t.dirtyFields=ve(o,l)),b.state.next({name:i,isDirty:A(i,n),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else E(l,i,n)},"_updateFieldArray"),X=a((i,n)=>{E(t.errors,i,n),b.state.next({errors:t.errors})},"updateErrors"),Z=a(i=>{t.errors=i,b.state.next({errors:t.errors,isValid:!1})},"_setErrors"),I=a((i,n,u,m)=>{let f=d(s,i);if(f){let c=d(l,i,R(u)?d(o,i):u);R(c)||m&&m.defaultChecked||n?E(l,i,n?c:He(f._f)):q(i,c),y.mount&&H()}},"updateValidAndValue"),h=a((i,n,u,m,f)=>{let c=!1,_=!1,x={name:i};if(!r.disabled){let $=!!(d(s,i)&&d(s,i)._f&&d(s,i)._f.disabled);if(!u||m){w.isDirty&&(_=t.isDirty,t.isDirty=x.isDirty=A(),c=_!==x.isDirty);let W=$||ue(d(o,i),n);_=!!(!$&&d(t.dirtyFields,i)),W||$?L(t.dirtyFields,i):E(t.dirtyFields,i,!0),x.dirtyFields=t.dirtyFields,c=c||w.dirtyFields&&_!==!W}if(u){let W=d(t.touchedFields,i);W||(E(t.touchedFields,i,u),x.touchedFields=t.touchedFields,c=c||w.touchedFields&&W!==u)}c&&f&&b.state.next(x)}return c?x:{}},"updateTouchAndDirty"),F=a((i,n,u,m)=>{let f=d(t.errors,i),c=w.isValid&&Q(n)&&t.isValid!==n;if(r.delayError&&u?(p=j(()=>X(i,u)),p(r.delayError)):(clearTimeout(S),p=null,u?E(t.errors,i,u):L(t.errors,i)),(u?!ue(f,u):f)||!z(m)||c){let _={...m,...c&&Q(n)?{isValid:n}:{},errors:t.errors,name:i};t={...t,..._},b.state.next(_)}},"shouldRenderByError"),V=a(async i=>{te(i,!0);let n=await r.resolver(l,r.context,tr(i||g.mount,s,r.criteriaMode,r.shouldUseNativeValidation));return te(i),n},"_executeSchema"),T=a(async i=>{let{errors:n}=await V(i);if(i)for(let u of i){let m=d(n,u);m?E(t.errors,u,m):L(t.errors,u)}else t.errors=n;return n},"executeSchemaAndUpdateState"),B=a(async(i,n,u={valid:!0})=>{for(let m in i){let f=i[m];if(f){let{_f:c,..._}=f;if(c){let x=g.array.has(c.name),$=f._f&&rr(f._f);$&&w.validatingFields&&te([m],!0);let W=await Ke(f,g.disabled,l,U,r.shouldUseNativeValidation&&!n,x);if($&&w.validatingFields&&te([m]),W[c.name]&&(u.valid=!1,n))break;!n&&(d(W,c.name)?x?kt(t.errors,W,c.name):E(t.errors,c.name,W[c.name]):L(t.errors,c.name))}!z(_)&&await B(_,n,u)}}return u.valid},"executeBuiltInValidation"),ce=a(()=>{for(let i of g.unMount){let n=d(s,i);n&&(n._f.refs?n._f.refs.every(u=>!qe(u)):!qe(n._f.ref))&&Re(i)}g.unMount=new Set},"_removeUnmounted"),A=a((i,n)=>!r.disabled&&(i&&n&&E(l,i,n),!ue(et(),o)),"_getDirty"),D=a((i,n,u)=>Dt(i,g,{...y.mount?l:R(n)?o:se(i)?{[i]:n}:n},u,n),"_getWatch"),N=a(i=>xe(d(y.mount?l:o,i,r.shouldUnregister?d(o,i,[]):[])),"_getFieldArray"),q=a((i,n,u={})=>{let m=d(s,i),f=n;if(m){let c=m._f;c&&(!c.disabled&&E(l,i,Lt(n,c)),f=we(c.ref)&&K(n)?"":n,It(c.ref)?[...c.ref.options].forEach(_=>_.selected=f.includes(_.value)):c.refs?Ve(c.ref)?c.refs.length>1?c.refs.forEach(_=>(!_.defaultChecked||!_.disabled)&&(_.checked=Array.isArray(f)?!!f.find(x=>x===_.value):f===_.value)):c.refs[0]&&(c.refs[0].checked=!!f):c.refs.forEach(_=>_.checked=_.value===f):Xe(c.ref)?c.ref.value="":(c.ref.value=f,c.ref.type||b.values.next({name:i,values:{...l}})))}(u.shouldDirty||u.shouldTouch)&&h(i,f,u.shouldTouch,u.shouldDirty,!0),u.shouldValidate&&Fe(i)},"setFieldValue"),ee=a((i,n,u)=>{for(let m in n){let f=n[m],c=`${i}.${m}`,_=d(s,c);(g.array.has(i)||P(f)||_&&!_._f)&&!de(f)?ee(c,f,u):q(c,f,u)}},"setValues"),G=a((i,n,u={})=>{let m=d(s,i),f=g.array.has(i),c=M(n);E(l,i,c),f?(b.array.next({name:i,values:{...l}}),(w.isDirty||w.dirtyFields)&&u.shouldDirty&&b.state.next({name:i,dirtyFields:ve(o,l),isDirty:A(i,c)})):m&&!m._f&&!K(c)?ee(i,c,u):q(i,c,u),ze(i,g)&&b.state.next({...t}),b.values.next({name:y.mount?i:void 0,values:{...l}})},"setValue"),_e=a(async i=>{y.mount=!0;let n=i.target,u=n.name,m=!0,f=d(s,u),c=a(()=>n.type?He(f._f):bt(i),"getCurrentFieldValue"),_=a(x=>{m=Number.isNaN(x)||de(x)&&isNaN(x.getTime())||ue(x,d(l,u,x))},"_updateIsFieldValueUpdated");if(f){let x,$,W=c(),oe=i.type===Se.BLUR||i.type===Se.FOCUS_OUT,jt=!sr(f._f)&&!r.resolver&&!d(t.errors,u)&&!f._f.deps||ir(oe,d(t.touchedFields,u),t.isSubmitted,k,O),Ie=ze(u,g,oe);E(l,u,W),oe?(f._f.onBlur&&f._f.onBlur(i),p&&p(0)):f._f.onChange&&f._f.onChange(i);let Pe=h(u,W,oe,!1),qt=!z(Pe)||Ie;if(!oe&&b.values.next({name:u,type:i.type,values:{...l}}),jt)return w.isValid&&(r.mode==="onBlur"&&oe?H():oe||H()),qt&&b.state.next({name:u,...Ie?{}:Pe});if(!oe&&Ie&&b.state.next({...t}),r.resolver){let{errors:lt}=await V([u]);if(_(W),m){let Ht=Ft(t.errors,s,u),ut=Ft(lt,s,Ht.name||u);x=ut.error,u=ut.name,$=z(lt)}}else te([u],!0),x=(await Ke(f,g.disabled,l,U,r.shouldUseNativeValidation))[u],te([u]),_(W),m&&(x?$=!1:w.isValid&&($=await B(s,!0)));m&&(f._f.deps&&Fe(f._f.deps),F(u,$,x,Pe))}},"onChange"),he=a((i,n)=>{if(d(t.errors,n)&&i.focus)return i.focus(),1},"_focusInput"),Fe=a(async(i,n={})=>{let u,m,f=J(i);if(r.resolver){let c=await T(R(i)?i:f);u=z(c),m=i?!f.some(_=>d(c,_)):u}else i?(m=(await Promise.all(f.map(async c=>{let _=d(s,c);return await B(_&&_._f?{[c]:_}:_)}))).every(Boolean),!(!m&&!t.isValid)&&H()):m=u=await B(s);return b.state.next({...!se(i)||w.isValid&&u!==t.isValid?{}:{name:i},...r.resolver||!i?{isValid:u}:{},errors:t.errors}),n.shouldFocus&&!m&&me(s,he,i?f:g.mount),m},"trigger"),et=a(i=>{let n={...y.mount?l:o};return R(i)?n:se(i)?d(n,i):i.map(u=>d(n,u))},"getValues"),tt=a((i,n)=>({invalid:!!d((n||t).errors,i),isDirty:!!d((n||t).dirtyFields,i),error:d((n||t).errors,i),isValidating:!!d(t.validatingFields,i),isTouched:!!d((n||t).touchedFields,i)}),"getFieldState"),Ut=a(i=>{i&&J(i).forEach(n=>L(t.errors,n)),b.state.next({errors:i?t.errors:{}})},"clearErrors"),rt=a((i,n,u)=>{let m=(d(s,i,{_f:{}})._f||{}).ref,f=d(t.errors,i)||{},{ref:c,message:_,type:x,...$}=f;E(t.errors,i,{...$,...n,ref:m}),b.state.next({name:i,errors:t.errors,isValid:!1}),u&&u.shouldFocus&&m&&m.focus&&m.focus()},"setError"),Bt=a((i,n)=>re(i)?b.values.subscribe({next:a(u=>i(D(void 0,n),u),"next")}):D(i,n,!0),"watch"),Re=a((i,n={})=>{for(let u of i?J(i):g.mount)g.mount.delete(u),g.array.delete(u),n.keepValue||(L(s,u),L(l,u)),!n.keepError&&L(t.errors,u),!n.keepDirty&&L(t.dirtyFields,u),!n.keepTouched&&L(t.touchedFields,u),!n.keepIsValidating&&L(t.validatingFields,u),!r.shouldUnregister&&!n.keepDefaultValue&&L(o,u);b.values.next({values:{...l}}),b.state.next({...t,...n.keepDirty?{isDirty:A()}:{}}),!n.keepIsValid&&H()},"unregister"),st=a(({disabled:i,name:n,field:u,fields:m})=>{(Q(i)&&y.mount||i||g.disabled.has(n))&&(i?g.disabled.add(n):g.disabled.delete(n),h(n,He(u?u._f:d(m,n)._f),!1,!1,!0))},"_updateDisabledField"),Te=a((i,n={})=>{let u=d(s,i),m=Q(n.disabled)||Q(r.disabled);return E(s,i,{...u||{},_f:{...u&&u._f?u._f:{ref:{name:i}},name:i,mount:!0,...n}}),g.mount.add(i),u?st({field:u,disabled:Q(n.disabled)?n.disabled:r.disabled,name:i}):I(i,!0,n.value),{...m?{disabled:n.disabled||r.disabled}:{},...r.progressive?{required:!!n.required,min:be(n.min),max:be(n.max),minLength:be(n.minLength),maxLength:be(n.maxLength),pattern:be(n.pattern)}:{},name:i,onChange:_e,onBlur:_e,ref:a(f=>{if(f){Te(i,n),u=d(s,i);let c=R(f.value)&&f.querySelectorAll&&f.querySelectorAll("input,select,textarea")[0]||f,_=er(c),x=u._f.refs||[];if(_?x.find($=>$===c):c===u._f.ref)return;E(s,i,{_f:{...u._f,..._?{refs:[...x.filter(qe),c,...Array.isArray(d(o,i))?[{}]:[]],ref:{type:c.type,name:i}}:{ref:c}}}),I(i,!1,void 0,c)}else u=d(s,i,{}),u._f&&(u._f.mount=!1),(r.shouldUnregister||n.shouldUnregister)&&!(pt(g.array,i)&&y.action)&&g.unMount.add(i)},"ref")}},"register"),it=a(()=>r.shouldFocusError&&me(s,he,g.mount),"_focusError"),$t=a(i=>{Q(i)&&(b.state.next({disabled:i}),me(s,(n,u)=>{let m=d(s,u);m&&(n.disabled=m._f.disabled||i,Array.isArray(m._f.refs)&&m._f.refs.forEach(f=>{f.disabled=m._f.disabled||i}))},0,!1))},"_disableForm"),at=a((i,n)=>async u=>{let m;u&&(u.preventDefault&&u.preventDefault(),u.persist&&u.persist());let f=M(l);if(g.disabled.size)for(let c of g.disabled)E(f,c,void 0);if(b.state.next({isSubmitting:!0}),r.resolver){let{errors:c,values:_}=await V();t.errors=c,f=_}else await B(s);if(L(t.errors,"root"),z(t.errors)){b.state.next({errors:{}});try{await i(f,u)}catch(c){m=c}}else n&&await n({...t.errors},u),it(),setTimeout(it);if(b.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:z(t.errors)&&!m,submitCount:t.submitCount+1,errors:t.errors}),m)throw m},"handleSubmit"),Wt=a((i,n={})=>{d(s,i)&&(R(n.defaultValue)?G(i,M(d(o,i))):(G(i,n.defaultValue),E(o,i,M(n.defaultValue))),n.keepTouched||L(t.touchedFields,i),n.keepDirty||(L(t.dirtyFields,i),t.isDirty=n.defaultValue?A(i,M(d(o,i))):A()),n.keepError||(L(t.errors,i),w.isValid&&H()),b.state.next({...t}))},"resetField"),nt=a((i,n={})=>{let u=i?M(i):o,m=M(u),f=z(i),c=f?o:m;if(n.keepDefaultValues||(o=u),!n.keepValues){if(n.keepDirtyValues){let _=new Set([...g.mount,...Object.keys(ve(o,l))]);for(let x of Array.from(_))d(t.dirtyFields,x)?E(c,x,d(l,x)):G(x,d(c,x))}else{if(Ge&&R(i))for(let _ of g.mount){let x=d(s,_);if(x&&x._f){let $=Array.isArray(x._f.refs)?x._f.refs[0]:x._f.ref;if(we($)){let W=$.closest("form");if(W){W.reset();break}}}}s={}}l=r.shouldUnregister?n.keepDefaultValues?M(o):{}:M(c),b.array.next({values:{...c}}),b.values.next({values:{...c}})}g={mount:n.keepDirtyValues?g.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},y.mount=!w.isValid||!!n.keepIsValid||!!n.keepDirtyValues,y.watch=!!r.shouldUnregister,b.state.next({submitCount:n.keepSubmitCount?t.submitCount:0,isDirty:f?!1:n.keepDirty?t.isDirty:!!(n.keepDefaultValues&&!ue(i,o)),isSubmitted:n.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:f?{}:n.keepDirtyValues?n.keepDefaultValues&&l?ve(o,l):t.dirtyFields:n.keepDefaultValues&&i?ve(o,i):n.keepDirty?t.dirtyFields:{},touchedFields:n.keepTouched?t.touchedFields:{},errors:n.keepErrors?t.errors:{},isSubmitSuccessful:n.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1})},"_reset"),ot=a((i,n)=>nt(re(i)?i(l):i,n),"reset");return{control:{register:Te,unregister:Re,getFieldState:tt,handleSubmit:at,setError:rt,_executeSchema:V,_getWatch:D,_getDirty:A,_updateValid:H,_removeUnmounted:ce,_updateFieldArray:C,_updateDisabledField:st,_getFieldArray:N,_reset:nt,_resetDefaultValues:a(()=>re(r.defaultValues)&&r.defaultValues().then(i=>{ot(i,r.resetOptions),b.state.next({isLoading:!1})}),"_resetDefaultValues"),_updateFormState:a(i=>{t={...t,...i}},"_updateFormState"),_disableForm:$t,_subjects:b,_proxyFormState:w,_setErrors:Z,get _fields(){return s},get _formValues(){return l},get _state(){return y},set _state(i){y=i},get _defaultValues(){return o},get _names(){return g},set _names(i){g=i},get _formState(){return t},set _formState(i){t=i},get _options(){return r},set _options(i){r={...r,...i}}},trigger:Fe,register:Te,handleSubmit:at,watch:Bt,setValue:G,getValues:et,reset:ot,resetField:Wt,clearErrors:Ut,unregister:Re,setError:rt,setFocus:a((i,n={})=>{let u=d(s,i),m=u&&u._f;if(m){let f=m.refs?m.refs[0]:m.ref;f.focus&&(f.focus(),n.shouldSelect&&re(f.select)&&f.select())}},"setFocus"),getFieldState:tt}}a(or,"createFormControl");function gr(e={}){let r=v.useRef(void 0),t=v.useRef(void 0),[s,o]=v.useState({isDirty:!1,isValidating:!1,isLoading:re(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,defaultValues:re(e.defaultValues)?void 0:e.defaultValues});r.current||(r.current={...or(e),formState:s});let l=r.current.control;return l._options=e,Ee({subject:l._subjects.state,next:a(y=>{wt(y,l._proxyFormState,l._updateFormState,!0)&&o({...l._formState})},"next")}),v.useEffect(()=>l._disableForm(e.disabled),[l,e.disabled]),v.useEffect(()=>{if(l._proxyFormState.isDirty){let y=l._getDirty();y!==s.isDirty&&l._subjects.state.next({isDirty:y})}},[l,s.isDirty]),v.useEffect(()=>{e.values&&!ue(e.values,t.current)?(l._reset(e.values,l._options.resetOptions),t.current=e.values,o(y=>({...y}))):l._resetDefaultValues()},[e.values,l]),v.useEffect(()=>{e.errors&&l._setErrors(e.errors)},[e.errors,l]),v.useEffect(()=>{l._state.mount||(l._updateValid(),l._state.mount=!0),l._state.watch&&(l._state.watch=!1,l._subjects.state.next({...l._formState})),l._removeUnmounted()}),v.useEffect(()=>{e.shouldUnregister&&l._subjects.values.next({values:l._getWatch()})},[e.shouldUnregister,l]),r.current.formState=St(s,l),r.current}a(gr,"useForm");import{Slot as lr}from"@radix-ui/react-slot";import*as ie from"react";import{jsx as ne}from"react/jsx-runtime";var Sr=At,Nt=ie.createContext({}),wr=a(({...e})=>ne(Nt.Provider,{value:{name:e.name},children:ne(Et,{...e})}),"FormField"),ke=a(()=>{let e=ie.useContext(Nt),r=ie.useContext(Mt),{getFieldState:t}=ge(),s=Ye({name:e.name}),o=t(e.name,s);if(!e)throw new Error("useFormField should be used within <FormField>");let{id:l}=r;return{id:l,name:e.name,formItemId:`${l}-form-item`,formDescriptionId:`${l}-form-item-description`,formMessageId:`${l}-form-item-message`,...o}},"useFormField"),Mt=ie.createContext({});function Cr({className:e,...r}){let t=ie.useId();return ne(Mt.Provider,{value:{id:t},children:ne("div",{"data-slot":"form-item",...r,className:fe("grid gap-2",e)})})}a(Cr,"FormItem");function Dr({className:e,...r}){let{error:t,formItemId:s}=ke();return ne(dt,{"data-slot":"form-label","data-error":!!t,className:fe("text-base-color mb-1 data-[error=true]:text-destructive",e),htmlFor:s,...r})}a(Dr,"FormLabel");var ur=ie.forwardRef(({...e},r)=>{let{error:t,formItemId:s,formDescriptionId:o,formMessageId:l}=ke();return ne(lr,{"data-slot":"form-control",ref:r,id:s,"aria-describedby":t?`${o} ${l}`:`${o}`,"aria-invalid":!!t,...e})});ur.displayName="FormControl";function Er({className:e,children:r,as:t,...s}){let{formDescriptionId:o}=ke(),l=t||"p";return typeof r=="string"?ne(l,{"data-slot":"form-description",id:o,className:fe("text-base-color text-xs",e),dangerouslySetInnerHTML:{__html:ct(r)},"data-sanitized":"true",...s}):ne(l,{"data-slot":"form-description",id:o,"data-sanitized":"false",className:fe("text-base-color text-xs",e),...s,children:typeof r=="function"?r():r})}a(Er,"FormDescription");function kr({className:e,...r}){let{error:t,formMessageId:s}=ke(),o=t?String(t?.message??""):r.children;return o?ne("p",{"data-slot":"form-message",id:s,className:fe("text-destructive text-sm",e),...r,children:o}):null}a(kr,"FormMessage");export{d as a,E as b,ge as c,Qt as d,mr as e,gr as f,Sr as g,wr as h,Cr as i,Dr as j,ur as k,Er as l,kr as m};
2
+ //# sourceMappingURL=chunk-CR7AIZKA.js.map
@@ -0,0 +1,2 @@
1
+ import{a as Y}from"./chunk-YXVNCPUI.js";import{a as G}from"./chunk-VFRHMNLJ.js";import{a as z,b as Q,c as W,f as X}from"./chunk-ARQ2PTEA.js";import{a as C}from"./chunk-HN5HLFTB.js";import{a as K}from"./chunk-LNV36S6D.js";import{c as Z}from"./chunk-NHREKNSV.js";import{a as ee}from"./chunk-2YTBWEC7.js";import{a as I}from"./chunk-P5QKSFOE.js";import{d as M}from"./chunk-HRG5MSVG.js";import{a as o}from"./chunk-P37U34EQ.js";import{number as Be,object as se}from"yup";import{useCallback as je,useEffect as te,useMemo as we,useRef as Re,useState as j}from"react";import{string as ne,ValidationError as re}from"yup";import{jsx as ie}from"react/jsx-runtime";var O={title:"Estimation",includeBenefits:!1,includeCostBreakdowns:!1,includePremiumBenefits:!1,enableCurrencyConversion:!1,includeEstimationTitle:!1,includeManagementFee:!1},Pe=o(t=>I(G.data.schema,void 0,t),"useStaticSchema");function xe(t,i){if(typeof t=="object"&&t!==null&&"title"in t){let l=t.title;if(l)return l}return i==="my_hiring_budget"?"Hiring budget":"Employee's annual salary"}o(xe,"getSalaryTitle");var ze=o(({defaultRegion:t,defaultCurrency:i,defaultSalary:l,estimationOptions:s,options:n,version:a}={estimationOptions:O})=>{let u=Re({fields:{}}),[k,h]=j(t),[w,R]=j(),[m,q]=j(),[H,le]=j(),{data:_,isLoading:ue}=z({includePremiumBenefits:s.includePremiumBenefits}),{data:d,isLoading:ce}=Q(),me=k||w?.value,{data:P,isLoading:de}=X(me,{includePremiumBenefits:s.includePremiumBenefits,options:n}),U=W(),{mutateAsync:fe}=ee(U),b=w?.currency,p=n?.jsfModify?.fields?.salary,F=p&&typeof p=="object"&&"presentation"in p?p.presentation:void 0,L=je(()=>{let e=b&&m?b!==m:!1;return b!==m?{from:m,to:b,shouldSwapOrder:e}:{from:b,to:m,shouldSwapOrder:e}},[b,m]),J=s.showManagementFee,$=s.includeEstimationTitle,ge=we(()=>{let{from:e,to:r,shouldSwapOrder:c}=L(),g=xe(p,H);return{fields:{salary:{...p,title:g,presentation:{salary_conversion_properties:{label:F?.salary_conversion_properties?.label,description:F?.salary_conversion_properties?.description},currencies:{from:e,to:r},Component:o(y=>ie(Y,{...y,shouldSwapOrder:c,conversionType:a==="marketing"?"no_spread":"spread",defaultValue:l}),"Component")}},hiring_budget:{...n?.jsfModify?.fields?.hiring_budget,presentation:{hidden:a=="marketing"}},management:{...n?.jsfModify?.fields?.management,properties:{...n?.jsfModify?.fields?.management?.properties,management_fee:{...n?.jsfModify?.fields?.management?.properties?.management_fee,"x-jsf-presentation":{inputType:"money",additionalProps:{currency:m||"USD"}}}},presentation:{...typeof n?.jsfModify?.fields?.management=="object"?(n?.jsfModify?.fields?.management)["x-jsf-presentation"]:{},hidden:!J,Component:o(y=>ie(Z,{...y,variant:"inset",features:{toggle:{enabled:!0,stateField:"management._expanded",labels:{expand:"Define",collapse:"Remove"}}}}),"Component")}},estimation_title:{...n?.jsfModify?.fields?.estimation_title,"x-jsf-presentation":{hidden:!$}}}}},[L,p,H,F?.salary_conversion_properties?.label,F?.salary_conversion_properties?.description,n?.jsfModify?.fields?.hiring_budget,n?.jsfModify?.fields?.management,n?.jsfModify?.fields?.estimation_title,a,m,J,$,l]),f=Pe({jsfModify:{fields:{...n?.jsfModify?.fields,...ge?.fields}}});te(()=>{if(t&&_){let e=_.find(({value:r})=>r===t);e&&R(e)}},[t,_]),te(()=>{if(i&&d){let e=d.find(({value:r})=>r===i);e&&q(e.label)}},[i,d]);async function ye(e){return fe(oe(e,s,a))}o(ye,"onSubmit");function pe(e){let r=_?.find(({value:c})=>c===e);r&&r.childRegions.length===0&&r.hasAdditionalFields?h(r.regionSlug):h(void 0),R(r)}o(pe,"onCountryChange");function Ce(e){h(e)}o(Ce,"onRegionChange");function _e(e){le(e.target.value)}o(_e,"onHiringBudgetChange");function be(e){let r=d?.find(c=>c.value===e)?.label;q(r),n?.onCurrencyChange?.(r||"")}o(be,"onChangeCurrency");let E=f.fields.find(e=>e.name==="region");if(E){let e=w?.childRegions.map(r=>({value:r.slug,label:r.name}))??[];E.options=e,E.isVisible=e.length>0,E.required=e.length>0,E.onChange=Ce,E.schema=e.length>0?ne().transform(r=>typeof r=="string"?r:"").required("Region is required"):ne()}if(d){let e=f.fields.find(r=>r.name==="currency");e&&(e.options=d,e.onChange=be)}let v=f.fields.find(e=>e.name==="hiring_budget");if(v&&(v.onChange=_e),_){let e=f.fields.find(r=>r.name==="country");e&&(e.options=_,e.onChange=pe)}let Ee=o(()=>{R(void 0),h(t)},"resetForm"),D=[...f.fields.filter(e=>e.name!=="management"),...P?.fields||[],...f.fields.filter(e=>e.name==="management")],N=ae(f.fields,m||"USD",s.includeEstimationTitle);async function Se(e){let r=null;n?.onValidation?.(e);let c=await M(e,D);try{await N.validate(c,{abortEarly:!1}),r={formErrors:{},yupError:new re([],e)}}catch(S){let B=K(S);r={formErrors:Object.entries(B).reduce((T,[A,V])=>({...T,[A]:V.message}),{}),yupError:S}}let g=P?.handleValidation(c),y=[...r?.yupError.inner||[],...g?.yupError?.inner||[]],x={...r?.yupError?.value||{},...g?.yupError?.value||{}};return{formErrors:{...r?.formErrors||{},...g?.formErrors||{}},yupError:new re(y,x)}}return o(Se,"handleValidation"),{stepState:{current:0,total:1,isLastStep:!0},fields:D,validationSchema:N,parseFormValues:o(async e=>{let{country:r,region:c,currency:g,salary_converted:y,hiring_budget:x,salary_conversion:S,management:B,estimation_title:T,...A}=e,V=e.salary;y==="salary_conversion"&&(V=S);let he=await M({country:r,region:c,salary:V,salary_converted:y,salary_conversion:S,hiring_budget:x,currency:g,management:B,estimation_title:T},f.fields),Fe=await M(A,P?.fields||[]),Ve={currency_code:d?.find(Me=>Me.value===g)?.label};return{...he,...Fe,...Ve}},"parseFormValues"),handleValidation:Se,isSubmitting:U.isPending,isLoading:ue&&ce&&de,onSubmit:ye,resetForm:Ee,currencies:d,meta:{fields:u.current?.fields}}},"useCostCalculator");function ae(t,i,l){let s=t.reduce((n,a)=>(a.name==="salary"||a.name==="salary_conversion"?n[a.name]=a.schema.when("salary_converted",{is:o(u=>u===a.name,"is"),then:o(u=>u.required("Required field"),"then"),otherwise:o(u=>u.optional(),"otherwise")}):a.name==="management"?n[a.name]=se({management_fee:Be().transform(u=>isNaN(u)?void 0:u).min(0,"Management fee must be greater than or equal to 0").max(i?C[i]:C.USD,()=>`Management fee cannot exceed ${(i?C[i]:C.USD)/100} ${i}`)}):a.name==="estimation_title"&&l?n[a.name]=a.schema.required("Required field"):n[a.name]=a.schema,n),{});return se(s)}o(ae,"buildValidationSchema");function Te(t){let i="benefit-";return Object.keys(t).reduce((l,s)=>{let n=t[s];if(n==="none")return l;let u={benefit_group_slug:s.replace(i,""),benefit_tier_slug:n};return[...l,u]},[])}o(Te,"formatBenefits");function Ae(t,i,l){let s=Number(t.management?.management_fee),n=t.currency_code;return{...{region_slug:t.region||t.country,employment_term:t.contract_duration_type??"fixed",title:t.estimation_title||i.title,age:t.age??void 0,...t.benefits&&{benefits:Te(t.benefits)},...i.includeManagementFee&&s&&{discount:{quoted_amount:i.showManagementFee?s:C[n]||C.USD,text:""}}},...Oe(t,l)}}o(Ae,"mapValueToEmployment");function Oe(t,i){let l=i==="marketing"||t.salary_converted==="salary_conversion",s=i==="standard"&&t.salary_converted==="salary",n=t.hiring_budget==="my_hiring_budget";if(l){let a=t.salary_converted==="salary_conversion";return n?{annual_total_cost_in_employer_currency:t.salary}:{[a?"annual_gross_salary_in_employer_currency":"annual_gross_salary"]:t.salary}}return s?n?{annual_total_cost:t.salary}:{annual_gross_salary:t.salary}:{}}o(Oe,"getSalaryFields");function oe(t,i=O,l="standard"){let s=Array.isArray(t)?t:[t];if(s.length===0)throw new Error("At least one employment value is required");return s.length>1&&new Set(s.map(a=>a.currency)).size>1&&console.warn("Multiple currencies detected in array. Using currency from first employment."),{employer_currency_slug:s[0].currency,include_benefits:i.includeBenefits,include_cost_breakdowns:i.includeCostBreakdowns,include_premium_benefits:i.includePremiumBenefits,include_management_fee:i.includeManagementFee,employments:s.map(n=>Ae(n,i,l))}}o(oe,"buildPayload");export{ae as a,oe as b,O as c,ze as d};
2
+ //# sourceMappingURL=chunk-CTAWDJ2D.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/CostCalculator/utils.ts","../src/flows/CostCalculator/hooks.tsx"],"sourcesContent":["import type {\n CostCalculatorEmploymentParam,\n CostCalculatorEstimateParams,\n} from '@/src/client';\n\nimport { $TSFixMe } from '@/src/types/remoteFlows';\nimport { AnyObjectSchema, number, object } from 'yup';\nimport { CostCalculatorVersion, defaultEstimationOptions } from './hooks';\nimport type {\n CostCalculatorEstimationOptions,\n CostCalculatorEstimationSubmitValues,\n CurrencyKey,\n} from './types';\nimport { BASE_RATES } from '@/src/flows/CostCalculator/constants';\n\n/**\n * Build the validation schema for the form.\n * @returns\n */\nexport function buildValidationSchema(\n fields: $TSFixMe[],\n employerBillingCurrency: string,\n includeEstimationTitle?: boolean,\n) {\n const fieldsSchema = fields.reduce<Record<string, AnyObjectSchema>>(\n (fieldsSchemaAcc, field) => {\n // Special handling for salary fields\n if (field.name === 'salary' || field.name === 'salary_conversion') {\n fieldsSchemaAcc[field.name] = (field.schema as AnyObjectSchema).when(\n 'salary_converted',\n {\n is: (val: string | null) => val === field.name,\n then: (schema) => schema.required('Required field'),\n otherwise: (schema) => schema.optional(),\n },\n );\n } else if (field.name === 'management') {\n fieldsSchemaAcc[field.name] = object({\n management_fee: number()\n .transform((value) => {\n return isNaN(value) ? undefined : value;\n })\n .min(0, 'Management fee must be greater than or equal to 0')\n .max(\n employerBillingCurrency\n ? BASE_RATES[employerBillingCurrency as CurrencyKey]\n : BASE_RATES.USD,\n () => {\n const maxValue = employerBillingCurrency\n ? BASE_RATES[employerBillingCurrency as CurrencyKey]\n : BASE_RATES.USD;\n const displayValue = maxValue / 100;\n return `Management fee cannot exceed ${displayValue} ${employerBillingCurrency}`;\n },\n ),\n });\n } else if (field.name === 'estimation_title' && includeEstimationTitle) {\n // Make estimation_title required when includeEstimationTitle is true\n fieldsSchemaAcc[field.name] = (\n field.schema as AnyObjectSchema\n ).required('Required field');\n } else {\n fieldsSchemaAcc[field.name] = field.schema as AnyObjectSchema;\n }\n return fieldsSchemaAcc;\n },\n {},\n );\n return object(fieldsSchema) as AnyObjectSchema;\n}\n\n/**\n * Format the benefits to the expected format by the API.\n * @param benefits\n * @returns\n */\nfunction formatBenefits(benefits: Record<string, string>) {\n const needle = 'benefit-';\n return Object.keys(benefits).reduce<\n Array<{ benefit_group_slug: string; benefit_tier_slug: string }>\n >((acc, key) => {\n const benefitTierSlug = benefits[key];\n if (benefitTierSlug === 'none') {\n return acc;\n }\n const benefitGroupSlug = key.replace(needle, '');\n const benefitEntry = {\n benefit_group_slug: benefitGroupSlug,\n benefit_tier_slug: benefitTierSlug,\n };\n return [...acc, benefitEntry];\n }, []);\n}\n\nfunction mapValueToEmployment(\n value: CostCalculatorEstimationSubmitValues,\n estimationOptions: CostCalculatorEstimationOptions,\n version: CostCalculatorVersion,\n): CostCalculatorEmploymentParam {\n const managementFee = Number(value.management?.management_fee);\n const currencyCode = value.currency_code;\n\n const base: CostCalculatorEmploymentParam = {\n region_slug: value.region || value.country,\n employment_term: value.contract_duration_type ?? 'fixed',\n title: value.estimation_title || estimationOptions.title,\n age: value.age ?? undefined,\n ...(value.benefits && { benefits: formatBenefits(value.benefits) }),\n ...(estimationOptions.includeManagementFee &&\n managementFee && {\n discount: {\n quoted_amount: estimationOptions.showManagementFee\n ? managementFee\n : BASE_RATES[currencyCode as keyof typeof BASE_RATES] ||\n BASE_RATES.USD,\n text: '',\n },\n }),\n };\n\n return {\n ...base,\n ...getSalaryFields(value, version),\n };\n}\n\nfunction getSalaryFields(\n value: CostCalculatorEstimationSubmitValues,\n version: CostCalculatorVersion,\n): Partial<CostCalculatorEmploymentParam> {\n const isMarketing =\n version === 'marketing' || value.salary_converted === 'salary_conversion';\n const isStandard =\n version === 'standard' && value.salary_converted === 'salary';\n const useHiringBudget = value.hiring_budget === 'my_hiring_budget';\n\n if (isMarketing) {\n const useEmployerCurrency = value.salary_converted === 'salary_conversion';\n return useHiringBudget\n ? {\n annual_total_cost_in_employer_currency: value.salary,\n }\n : {\n [useEmployerCurrency\n ? 'annual_gross_salary_in_employer_currency'\n : 'annual_gross_salary']: value.salary,\n };\n }\n\n if (isStandard) {\n return useHiringBudget\n ? {\n annual_total_cost: value.salary,\n }\n : {\n annual_gross_salary: value.salary,\n };\n }\n\n return {};\n}\n\n/**\n * Build the payload for the cost calculator estimation.\n * @param values\n * @param estimationOptions\n * @returns\n */\nexport function buildPayload(\n values:\n | CostCalculatorEstimationSubmitValues\n | CostCalculatorEstimationSubmitValues[],\n estimationOptions: CostCalculatorEstimationOptions = defaultEstimationOptions,\n version: CostCalculatorVersion = 'standard',\n): CostCalculatorEstimateParams {\n const employments = Array.isArray(values) ? values : [values];\n\n if (employments.length === 0) {\n throw new Error('At least one employment value is required');\n }\n\n if (employments.length > 1) {\n const currencies = new Set(employments.map((v) => v.currency));\n if (currencies.size > 1) {\n console.warn(\n 'Multiple currencies detected in array. Using currency from first employment.',\n );\n }\n }\n\n return {\n employer_currency_slug: employments[0].currency,\n include_benefits: estimationOptions.includeBenefits,\n include_cost_breakdowns: estimationOptions.includeCostBreakdowns,\n include_premium_benefits: estimationOptions.includePremiumBenefits,\n include_management_fee: estimationOptions.includeManagementFee,\n employments: employments.map((value) =>\n mapValueToEmployment(value, estimationOptions, version),\n ),\n };\n}\n","import { MinimalRegion } from '@/src/client';\nimport { jsonSchema } from '@/src/flows/CostCalculator/jsonSchema';\nimport type {\n CostCalculatorEstimationFormValues,\n CostCalculatorEstimationOptions,\n CostCalculatorEstimationSubmitValues,\n UseCostCalculatorOptions,\n} from '@/src/flows/CostCalculator/types';\nimport type { JSFModify } from '@/src/flows/types';\n\nimport { parseJSFToValidate } from '@/src/components/form/utils';\nimport { iterateErrors } from '@/src/components/form/validationResolver';\nimport { createHeadlessForm } from '@/src/common/createHeadlessForm';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { string, ValidationError } from 'yup';\nimport { buildPayload, buildValidationSchema } from './utils';\nimport {\n useCompanyCurrencies,\n useCostCalculatorCountries,\n useCostCalculatorEstimation,\n useRegionFields,\n} from '@/src/flows/CostCalculator/api';\nimport { $TSFixMe, JSFField, Meta } from '@/src/types/remoteFlows';\nimport { SalaryField } from '@/src/flows/CostCalculator/components/SalaryField';\nimport {\n FieldSetField,\n FieldSetProps,\n} from '@/src/components/form/fields/FieldSetField';\nimport { mutationToPromise } from '@/src/lib/mutations';\nexport type CostCalculatorVersion = 'standard' | 'marketing';\n\ntype CostCalculatorCountry = {\n value: string;\n label: string;\n childRegions: MinimalRegion[];\n hasAdditionalFields: boolean | undefined;\n regionSlug: string;\n currency: string;\n};\n\ntype JSFValidationError = {\n formErrors: Record<\n string,\n {\n type: string;\n message: string;\n }\n >;\n yupError: ValidationError;\n};\n\nexport const defaultEstimationOptions: CostCalculatorEstimationOptions = {\n title: 'Estimation',\n includeBenefits: false,\n includeCostBreakdowns: false,\n includePremiumBenefits: false,\n enableCurrencyConversion: false,\n includeEstimationTitle: false,\n includeManagementFee: false,\n};\n\ntype UseCostCalculatorParams = {\n /**\n * The default region slug to preselect a country and a region.\n */\n defaultRegion?: string;\n /**\n * The default currency slug to preselect a currency.\n */\n defaultCurrency?: string;\n\n /**\n * The default salary to preselect a salary.\n */\n defaultSalary?: string;\n /**\n * The estimation options.\n */\n estimationOptions: CostCalculatorEstimationOptions;\n options?: UseCostCalculatorOptions;\n version?: CostCalculatorVersion;\n};\n\nconst useStaticSchema = (options?: { jsfModify?: JSFModify }) => {\n return createHeadlessForm(jsonSchema.data.schema, undefined, options);\n};\n\ntype HiringBudget = 'my_hiring_budget' | 'employee_annual_salary';\n\nfunction getSalaryTitle(\n salaryField: unknown,\n hiringBudget?: HiringBudget,\n): string {\n if (\n typeof salaryField === 'object' &&\n salaryField !== null &&\n 'title' in salaryField\n ) {\n const title = (salaryField as { title?: string }).title;\n if (title) return title;\n }\n return hiringBudget === 'my_hiring_budget'\n ? 'Hiring budget'\n : \"Employee's annual salary\";\n}\n\n/**\n * Hook to use the cost calculator.\n */\nexport const useCostCalculator = (\n {\n defaultRegion,\n defaultCurrency,\n defaultSalary,\n estimationOptions,\n options,\n version,\n }: UseCostCalculatorParams = {\n estimationOptions: defaultEstimationOptions,\n },\n) => {\n const fieldsMetaRef = useRef<{\n fields: Meta;\n }>({\n fields: {},\n });\n const [selectedRegion, setSelectedRegion] = useState<string | undefined>(\n defaultRegion,\n );\n const [selectedCountry, setSelectedCountry] =\n useState<CostCalculatorCountry>();\n const [employerBillingCurrency, setEmployerBillingCurrency] = useState<\n string | undefined\n >();\n const [hiringBudget, setHiringBudget] = useState<HiringBudget>();\n const { data: countries, isLoading: isLoadingCountries } =\n useCostCalculatorCountries({\n includePremiumBenefits: estimationOptions.includePremiumBenefits,\n });\n const { data: currencies, isLoading: isLoadingCurrencies } =\n useCompanyCurrencies();\n\n const jsonSchemaRegionSlug = selectedRegion || selectedCountry?.value;\n\n const { data: jsonSchemaRegionFields, isLoading: isLoadingRegionFields } =\n useRegionFields(jsonSchemaRegionSlug, {\n includePremiumBenefits: estimationOptions.includePremiumBenefits,\n options,\n });\n const costCalculatorEstimationMutation = useCostCalculatorEstimation();\n const { mutateAsync: costCalculatorEstimationMutationAsync } =\n mutationToPromise(costCalculatorEstimationMutation);\n const employeeBillingCurrency = selectedCountry?.currency;\n\n const salaryField = options?.jsfModify?.fields?.salary;\n const salaryFieldPresentation =\n salaryField &&\n typeof salaryField === 'object' &&\n 'presentation' in salaryField\n ? (\n salaryField as {\n presentation?: {\n salary_conversion_properties?: {\n label?: string;\n description?: string;\n };\n };\n }\n ).presentation\n : undefined;\n\n const getCurrencies = useCallback(() => {\n const shouldSwapOrder =\n employeeBillingCurrency && employerBillingCurrency\n ? employeeBillingCurrency !== employerBillingCurrency\n : false;\n\n if (employeeBillingCurrency !== employerBillingCurrency) {\n return {\n from: employerBillingCurrency,\n to: employeeBillingCurrency,\n shouldSwapOrder,\n };\n }\n\n return {\n from: employeeBillingCurrency,\n to: employerBillingCurrency,\n shouldSwapOrder,\n };\n }, [employeeBillingCurrency, employerBillingCurrency]);\n\n const showManagementField = estimationOptions.showManagementFee;\n const showEstimationTitleField = estimationOptions.includeEstimationTitle;\n const customFields = useMemo(() => {\n const { from, to, shouldSwapOrder } = getCurrencies();\n const salaryTitle = getSalaryTitle(salaryField, hiringBudget);\n\n return {\n fields: {\n salary: {\n ...salaryField,\n title: salaryTitle,\n presentation: {\n salary_conversion_properties: {\n label:\n salaryFieldPresentation?.salary_conversion_properties?.label,\n description:\n salaryFieldPresentation?.salary_conversion_properties\n ?.description,\n },\n currencies: { from, to },\n Component: (\n props: JSFField & { currencies: { from: string; to: string } },\n ) => {\n return (\n <SalaryField\n {...props}\n shouldSwapOrder={shouldSwapOrder}\n conversionType={\n version === 'marketing' ? 'no_spread' : 'spread'\n }\n defaultValue={defaultSalary}\n />\n );\n },\n },\n },\n hiring_budget: {\n ...options?.jsfModify?.fields?.hiring_budget,\n presentation: {\n hidden: version == 'marketing',\n },\n },\n management: {\n ...options?.jsfModify?.fields?.management,\n properties: {\n ...(options?.jsfModify?.fields?.management as $TSFixMe)?.properties,\n management_fee: {\n ...(options?.jsfModify?.fields?.management as $TSFixMe)\n ?.properties?.management_fee,\n 'x-jsf-presentation': {\n inputType: 'money',\n additionalProps: {\n currency: employerBillingCurrency || 'USD',\n },\n },\n },\n },\n presentation: {\n ...(typeof options?.jsfModify?.fields?.management === 'object'\n ? (\n options?.jsfModify?.fields?.management as Record<\n string,\n $TSFixMe\n >\n )['x-jsf-presentation']\n : {}),\n hidden: !showManagementField,\n Component: (props: FieldSetProps) => {\n return (\n <FieldSetField\n {...props}\n variant='inset'\n features={{\n toggle: {\n enabled: true,\n stateField: 'management._expanded',\n labels: {\n expand: 'Define',\n collapse: 'Remove',\n },\n },\n }}\n />\n );\n },\n },\n },\n estimation_title: {\n ...options?.jsfModify?.fields?.estimation_title,\n 'x-jsf-presentation': {\n hidden: !showEstimationTitleField,\n },\n },\n },\n };\n }, [\n getCurrencies,\n salaryField,\n hiringBudget,\n salaryFieldPresentation?.salary_conversion_properties?.label,\n salaryFieldPresentation?.salary_conversion_properties?.description,\n options?.jsfModify?.fields?.hiring_budget,\n options?.jsfModify?.fields?.management,\n options?.jsfModify?.fields?.estimation_title,\n version,\n employerBillingCurrency,\n showManagementField,\n showEstimationTitleField,\n defaultSalary,\n ]);\n\n const fieldsJSONSchema = useStaticSchema({\n jsfModify: {\n fields: {\n ...options?.jsfModify?.fields,\n ...customFields?.fields,\n },\n },\n });\n\n useEffect(() => {\n // Initialize selectedCountry from defaultRegion\n if (defaultRegion && countries) {\n const defaultCountry = countries.find(\n ({ value }) => value === defaultRegion,\n );\n if (defaultCountry) {\n setSelectedCountry(defaultCountry);\n }\n }\n }, [defaultRegion, countries]);\n\n useEffect(() => {\n // Initialize selectedCurrency from defaultCurrency\n if (defaultCurrency && currencies) {\n const defaultCurrencyObj = currencies.find(\n ({ value }) => value === defaultCurrency,\n );\n if (defaultCurrencyObj) {\n setEmployerBillingCurrency(defaultCurrencyObj.label);\n }\n }\n }, [defaultCurrency, currencies]);\n\n /**\n * Submit the estimation form with the given values.\n * @param values\n */\n async function onSubmit(values: CostCalculatorEstimationSubmitValues) {\n return costCalculatorEstimationMutationAsync(\n buildPayload(values, estimationOptions, version),\n );\n }\n\n /**\n * If the selected country has no child regions and has additional fields,\n * set the current region to the country's region slug and fetch the region fields.\n * @param country\n */\n function onCountryChange(country: string) {\n const currentCountry = countries?.find(({ value }) => value === country);\n\n if (\n currentCountry &&\n currentCountry.childRegions.length === 0 &&\n currentCountry.hasAdditionalFields\n ) {\n setSelectedRegion(currentCountry.regionSlug);\n } else {\n setSelectedRegion(undefined);\n }\n setSelectedCountry(currentCountry);\n }\n\n /**\n * Update the selected region and fetch the region fields.\n * @param region\n */\n function onRegionChange(region: string) {\n setSelectedRegion(region);\n }\n\n function onHiringBudgetChange(event: React.ChangeEvent<HTMLInputElement>) {\n setHiringBudget(event.target.value as HiringBudget);\n }\n\n function onChangeCurrency(currency: string) {\n const selectedCurrency = currencies?.find(\n (c) => c.value === currency,\n )?.label;\n setEmployerBillingCurrency(selectedCurrency);\n options?.onCurrencyChange?.(selectedCurrency || '');\n }\n\n const regionField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'region',\n );\n\n if (regionField) {\n const regions =\n selectedCountry?.childRegions.map((region) => ({\n value: region.slug,\n label: region.name,\n })) ?? [];\n regionField.options = regions;\n regionField.isVisible = regions.length > 0;\n regionField.required = regions.length > 0;\n regionField.onChange = onRegionChange;\n regionField.schema =\n regions.length > 0\n ? string()\n .transform((value) => (typeof value === 'string' ? value : ''))\n .required('Region is required')\n : string();\n }\n\n if (currencies) {\n const currencyField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'currency',\n );\n if (currencyField) {\n currencyField.options = currencies;\n currencyField.onChange = onChangeCurrency;\n }\n }\n\n const hiringBudgetField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'hiring_budget',\n );\n if (hiringBudgetField) {\n hiringBudgetField.onChange = onHiringBudgetChange;\n }\n\n if (countries) {\n const countryField = fieldsJSONSchema.fields.find(\n (field) => field.name === 'country',\n );\n if (countryField) {\n countryField.options = countries;\n countryField.onChange = onCountryChange;\n }\n }\n\n const resetForm = () => {\n setSelectedCountry(undefined);\n setSelectedRegion(defaultRegion);\n };\n\n const allFields = [\n ...fieldsJSONSchema.fields.filter((field) => field.name !== 'management'),\n ...(jsonSchemaRegionFields?.fields || []),\n ...fieldsJSONSchema.fields.filter((field) => field.name === 'management'),\n ];\n\n const validationSchema = buildValidationSchema(\n fieldsJSONSchema.fields,\n employerBillingCurrency || 'USD',\n estimationOptions.includeEstimationTitle,\n );\n\n async function handleValidation(values: CostCalculatorEstimationFormValues) {\n let errors: JSFValidationError | null = null;\n\n options?.onValidation?.(values);\n const parsedValues = await parseJSFToValidate(values, allFields);\n\n // 1. validate static fields first using Yup validate function\n try {\n await validationSchema.validate(parsedValues, {\n abortEarly: false,\n });\n errors = {\n formErrors: {},\n yupError: new ValidationError([], values),\n };\n } catch (error) {\n const iterateResult = iterateErrors(error as ValidationError);\n\n errors = {\n // convert the errors to a format that can be used in the form\n formErrors: Object.entries(iterateResult).reduce(\n (acc, [key, value]) => ({ ...acc, [key]: value.message }),\n {},\n ),\n yupError: error as ValidationError,\n };\n }\n\n // 2. validate json schema fields using the handleValidation (from json-schema-form)\n const handleValidationResult =\n jsonSchemaRegionFields?.handleValidation(parsedValues);\n\n // 3. combine the errors from both validations\n const combinedInnerErrors = [\n ...(errors?.yupError.inner || []),\n ...((handleValidationResult as { yupError: ValidationError })?.yupError\n ?.inner || []),\n ];\n const combinedValues = {\n ...(errors?.yupError?.value || {}),\n ...((handleValidationResult as { yupError: ValidationError })?.yupError\n ?.value || {}),\n };\n\n return {\n formErrors: {\n ...(errors?.formErrors || {}),\n ...(handleValidationResult?.formErrors || {}),\n },\n yupError: new ValidationError(combinedInnerErrors, combinedValues),\n };\n }\n\n return {\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState: {\n current: 0,\n total: 1,\n isLastStep: true,\n },\n /**\n * Array of form fields from the cost calculator schema + dynamic region fields like benefits, age, etc.\n */\n fields: allFields,\n /**\n * Validation schema for the cost calculator form\n */\n validationSchema,\n /**\n * Function to parse form values before submission\n * @param values - Form values to parse\n * @returns Parsed form values\n */\n parseFormValues: async (\n values: CostCalculatorEstimationFormValues,\n ): Promise<CostCalculatorEstimationSubmitValues> => {\n const {\n country,\n region,\n currency,\n salary_converted,\n hiring_budget,\n salary_conversion,\n management,\n estimation_title,\n ...rest\n } = values;\n\n // If the salary has been converted, we take the one the user has inputted\n let salary = values.salary;\n if (salary_converted === 'salary_conversion') {\n salary = salary_conversion;\n }\n\n const jsonSchemaStaticFieldValues = {\n country,\n region,\n salary,\n salary_converted,\n salary_conversion,\n hiring_budget,\n currency,\n management,\n estimation_title,\n };\n\n const parsedStaticFields = await parseJSFToValidate(\n jsonSchemaStaticFieldValues,\n fieldsJSONSchema.fields,\n );\n\n const parsedRegionFields = await parseJSFToValidate(\n rest,\n jsonSchemaRegionFields?.fields || [],\n );\n\n const additionalFields = {\n currency_code: currencies?.find((c) => c.value === currency)?.label,\n };\n\n return {\n ...parsedStaticFields,\n ...parsedRegionFields,\n ...additionalFields,\n } as CostCalculatorEstimationSubmitValues;\n },\n /**\n * Function to handle validation of the cost calculator form\n * @param values - Form values to validate\n * @returns Validation result\n */\n handleValidation,\n /**\n * Whether the cost calculator form is currently being submitted\n */\n isSubmitting: costCalculatorEstimationMutation.isPending,\n /**\n * Whether the cost calculator form is currently loading\n */\n isLoading:\n isLoadingCountries && isLoadingCurrencies && isLoadingRegionFields,\n /**\n * Function to submit the cost calculator form\n */\n onSubmit,\n /**\n * Function to reset the cost calculator form\n */\n resetForm,\n\n /**\n * Currencies data useful to get the currency if you have a currencySlug\n */\n currencies,\n\n /**\n * Fields metadata\n */\n meta: {\n fields: fieldsMetaRef.current?.fields,\n },\n };\n};\n"],"mappings":"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","names":["number","object","useCallback","useEffect","useMemo","useRef","useState","string","ValidationError","jsx","defaultEstimationOptions","useStaticSchema","__name","options","createHeadlessForm","jsonSchema","getSalaryTitle","salaryField","hiringBudget","title","useCostCalculator","defaultRegion","defaultCurrency","defaultSalary","estimationOptions","version","fieldsMetaRef","useRef","selectedRegion","setSelectedRegion","useState","selectedCountry","setSelectedCountry","employerBillingCurrency","setEmployerBillingCurrency","setHiringBudget","countries","isLoadingCountries","useCostCalculatorCountries","currencies","isLoadingCurrencies","useCompanyCurrencies","jsonSchemaRegionSlug","jsonSchemaRegionFields","isLoadingRegionFields","useRegionFields","costCalculatorEstimationMutation","useCostCalculatorEstimation","costCalculatorEstimationMutationAsync","mutationToPromise","employeeBillingCurrency","salaryFieldPresentation","getCurrencies","useCallback","shouldSwapOrder","showManagementField","showEstimationTitleField","customFields","useMemo","from","to","salaryTitle","props","SalaryField","FieldSetField","fieldsJSONSchema","useEffect","defaultCountry","value","defaultCurrencyObj","onSubmit","values","buildPayload","onCountryChange","country","currentCountry","onRegionChange","region","onHiringBudgetChange","event","onChangeCurrency","currency","selectedCurrency","regionField","field","regions","string","currencyField","hiringBudgetField","countryField","resetForm","allFields","validationSchema","buildValidationSchema","handleValidation","errors","parsedValues","parseJSFToValidate","ValidationError","error","iterateResult","iterateErrors","acc","key","handleValidationResult","combinedInnerErrors","combinedValues","salary_converted","hiring_budget","salary_conversion","management","estimation_title","rest","salary","parsedStaticFields","parsedRegionFields","additionalFields","c","buildValidationSchema","fields","employerBillingCurrency","includeEstimationTitle","fieldsSchema","fieldsSchemaAcc","field","__name","val","schema","object","number","value","BASE_RATES","formatBenefits","benefits","needle","acc","key","benefitTierSlug","benefitEntry","mapValueToEmployment","estimationOptions","version","managementFee","currencyCode","getSalaryFields","isMarketing","isStandard","useHiringBudget","useEmployerCurrency","buildPayload","values","defaultEstimationOptions","employments","v"]}
@@ -1,2 +1,2 @@
1
- import{a as m}from"./chunk-ZYRGEEPU.js";import{b as s}from"./chunk-PGWKJ6FK.js";import{b as t}from"./chunk-2YTBWEC7.js";import{a}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function b({onSubmit:d,onSuccess:l,onError:n}){let{onboardingBag:r}=s(),f=a(async e=>{try{let i=await r.parseFormValues(e);await d?.(i);let o=await r.onSubmit(e);if(o?.data){await l?.(o?.data),r?.next();return}if(o?.error){let c=t(o?.fieldErrors||[],r.meta?.fields?.basic_information);n?.({error:o?.error,rawError:o?.rawError,fieldErrors:c})}}catch(i){n?.({error:i,rawError:i,fieldErrors:[]})}},"handleSubmit"),p=r.stepState.values?.basic_information||r.initialValues.basic_information;return E(m,{defaultValues:p,onSubmit:f})}a(b,"BasicInformationStep");export{b as a};
2
- //# sourceMappingURL=chunk-35RMJMSH.js.map
1
+ import{a as m}from"./chunk-NPKIEWF4.js";import{b as s}from"./chunk-PGWKJ6FK.js";import{b as t}from"./chunk-2YTBWEC7.js";import{a}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function b({onSubmit:d,onSuccess:l,onError:n}){let{onboardingBag:r}=s(),f=a(async e=>{try{let i=await r.parseFormValues(e);await d?.(i);let o=await r.onSubmit(e);if(o?.data){await l?.(o?.data),r?.next();return}if(o?.error){let c=t(o?.fieldErrors||[],r.meta?.fields?.basic_information);n?.({error:o?.error,rawError:o?.rawError,fieldErrors:c})}}catch(i){n?.({error:i,rawError:i,fieldErrors:[]})}},"handleSubmit"),p=r.stepState.values?.basic_information||r.initialValues.basic_information;return E(m,{defaultValues:p,onSubmit:f})}a(b,"BasicInformationStep");export{b as a};
2
+ //# sourceMappingURL=chunk-D6Y7GLBT.js.map
@@ -1,2 +1,2 @@
1
- import{h as f}from"./chunk-W3YE53JN.js";import{a as b,b as D,c as C,d as h,e as Z,f as y}from"./chunk-UOOUV52J.js";import{b as g,d as w}from"./chunk-KQPDXXG3.js";import{a as p,f as k}from"./chunk-L3Z2G32A.js";import{a as e}from"./chunk-P37U34EQ.js";var H={disclaimerCostCalculator:4668194326797,employeeOnboardingTimeline:4411262104589,extraPayments:4466822781709,internationalPricing:4410698586893,remoteFxRate:33271144977421,terminationEmployeeCommunication:4411585179661,terminationNoticePeriods:5831900985613,involuntaryOffboardingServiceCharge:4406932229133,reconciliationInvoice:17604014808589},m=e(r=>`https://support.remote.com/hc/en-us/articles/${r}`,"buildZendeskURL");import{useQuery as L}from"@tanstack/react-query";var v=e((r,n)=>{let{client:i}=w();return L({queryKey:["zendesk-article",r],queryFn:e(async()=>{let o=await f({client:i,path:{id:Number(r)}});if(o.error)throw new Error(o.error.message||"Failed to fetch article");return o},"queryFn"),select:e(o=>{let t=o.data?.data.help_center_article;return t&&{...t,body:k(t.body||"")}},"select"),retry:!1,...n})},"useZendeskArticle");import{jsx as a,jsxs as c}from"react/jsx-runtime";function x({open:r,onClose:n,data:i,isLoading:o,error:t,zendeskURL:d,Trigger:s}){return c(b,{open:r,onOpenChange:l=>!l&&n(),direction:"right",children:[a(D,{asChild:!0,children:s}),a(C,{className:"h-full w-[540px] mt-0 ml-auto RemoteFlows_ZendeskDrawer",children:c("div",{className:"h-full flex flex-col",children:[c(h,{children:[a(Z,{children:i?.title}),c(y,{children:["For more details see our"," ",a("a",{href:d,target:"_blank",rel:"noopener noreferrer",children:"help article"})," "]})]}),o&&a("div",{children:"Loading..."}),t&&a("div",{className:"text-sm p-4 text-red-500",children:"Error loading article"}),a("div",{className:"flex-1 overflow-y-auto p-4 RemoteFlows_ZendeskDrawer__Content",dangerouslySetInnerHTML:{__html:i?.body||""}})]})})]})}e(x,"ZendeskDrawerDefault");import{jsx as P}from"react/jsx-runtime";var R=e(({Trigger:r,zendeskId:n,open:i,onClose:o})=>{let{components:t}=g(),d=m(n),s=e(()=>{o?.()},"handleClose"),{data:l,isLoading:_,error:N}=v(n,{enabled:i}),F=t?.zendeskDrawer||x;return P(F,{open:i,onClose:s,data:l,isLoading:_,error:N,zendeskURL:d,Trigger:r})},"ZendeskDrawer");import{useState as z}from"react";import{jsx as u}from"react/jsx-runtime";var T="RemoteFlows__ZendeskTriggerButton text-blue-500 hover:underline inline-block text-xs bg-transparent border-none cursor-pointer p-0";function ne({zendeskId:r,className:n,onClick:i,children:o,external:t=!1}){let[d,s]=z(!1),l=e(()=>{t||s(!0),i?.(r)},"handleClick");return t?u("a",{href:m(r),target:"_blank",rel:"noopener noreferrer",onClick:l,className:p(T,n),children:o}):u(R,{zendeskId:r,open:d,onClose:()=>s(!1),Trigger:u("button",{onClick:l,className:p(T,n),children:o})})}e(ne,"ZendeskTriggerButton");export{H as a,ne as b};
2
- //# sourceMappingURL=chunk-LKMPZJIW.js.map
1
+ import{h as f}from"./chunk-T6Q7IALZ.js";import{a as b,b as D,c as C,d as h,e as Z,f as y}from"./chunk-GGPEKIIH.js";import{b as g,d as w}from"./chunk-KQPDXXG3.js";import{a as p,f as k}from"./chunk-UQCSN47K.js";import{a as e}from"./chunk-P37U34EQ.js";var H={disclaimerCostCalculator:4668194326797,employeeOnboardingTimeline:4411262104589,extraPayments:4466822781709,internationalPricing:4410698586893,remoteFxRate:33271144977421,terminationEmployeeCommunication:4411585179661,terminationNoticePeriods:5831900985613,involuntaryOffboardingServiceCharge:4406932229133,reconciliationInvoice:17604014808589},m=e(r=>`https://support.remote.com/hc/en-us/articles/${r}`,"buildZendeskURL");import{useQuery as L}from"@tanstack/react-query";var v=e((r,n)=>{let{client:i}=w();return L({queryKey:["zendesk-article",r],queryFn:e(async()=>{let o=await f({client:i,path:{id:Number(r)}});if(o.error)throw new Error(o.error.message||"Failed to fetch article");return o},"queryFn"),select:e(o=>{let t=o.data?.data.help_center_article;return t&&{...t,body:k(t.body||"")}},"select"),retry:!1,...n})},"useZendeskArticle");import{jsx as a,jsxs as c}from"react/jsx-runtime";function x({open:r,onClose:n,data:i,isLoading:o,error:t,zendeskURL:d,Trigger:s}){return c(b,{open:r,onOpenChange:l=>!l&&n(),direction:"right",children:[a(D,{asChild:!0,children:s}),a(C,{className:"h-full w-[540px] mt-0 ml-auto RemoteFlows_ZendeskDrawer",children:c("div",{className:"h-full flex flex-col",children:[c(h,{children:[a(Z,{children:i?.title}),c(y,{children:["For more details see our"," ",a("a",{href:d,target:"_blank",rel:"noopener noreferrer",children:"help article"})," "]})]}),o&&a("div",{children:"Loading..."}),t&&a("div",{className:"text-sm p-4 text-red-500",children:"Error loading article"}),a("div",{className:"flex-1 overflow-y-auto p-4 RemoteFlows_ZendeskDrawer__Content",dangerouslySetInnerHTML:{__html:i?.body||""}})]})})]})}e(x,"ZendeskDrawerDefault");import{jsx as P}from"react/jsx-runtime";var R=e(({Trigger:r,zendeskId:n,open:i,onClose:o})=>{let{components:t}=g(),d=m(n),s=e(()=>{o?.()},"handleClose"),{data:l,isLoading:_,error:N}=v(n,{enabled:i}),F=t?.zendeskDrawer||x;return P(F,{open:i,onClose:s,data:l,isLoading:_,error:N,zendeskURL:d,Trigger:r})},"ZendeskDrawer");import{useState as z}from"react";import{jsx as u}from"react/jsx-runtime";var T="RemoteFlows__ZendeskTriggerButton text-blue-500 hover:underline inline-block text-xs bg-transparent border-none cursor-pointer p-0";function ne({zendeskId:r,className:n,onClick:i,children:o,external:t=!1}){let[d,s]=z(!1),l=e(()=>{t||s(!0),i?.(r)},"handleClick");return t?u("a",{href:m(r),target:"_blank",rel:"noopener noreferrer",onClick:l,className:p(T,n),children:o}):u(R,{zendeskId:r,open:d,onClose:()=>s(!1),Trigger:u("button",{onClick:l,className:p(T,n),children:o})})}e(ne,"ZendeskTriggerButton");export{H as a,ne as b};
2
+ //# sourceMappingURL=chunk-EGSUF7OD.js.map
@@ -0,0 +1,2 @@
1
+ import{a as ut,b as pt,c as ft,d as yt}from"./chunk-LOHRUY4J.js";import{a as at,b as it,c as st,e as ct,f as lt,g as dt,h as mt}from"./chunk-MD2QFLXC.js";import{a as ot,b as rt}from"./chunk-3UDG4IJO.js";import{a as X,f as Z,h as tt,k as et}from"./chunk-N3X274GT.js";import{c as z,d as Q}from"./chunk-H6YNMT4M.js";import{a as E}from"./chunk-2YTBWEC7.js";import{a as nt}from"./chunk-5BRMLRS7.js";import{d as f,e as C}from"./chunk-HRG5MSVG.js";import{g as V}from"./chunk-UQCSN47K.js";import{a as p}from"./chunk-P37U34EQ.js";import{useEffect as Qt,useMemo as c,useRef as Xt,useState as J}from"react";var Zt={select_country:null,basic_information:"employment_basic_information",contract_details:null,pricing_plan:null,contract_preview:null,review:null},te={employment_basic_information:"basic_information"},ee=new Date().toISOString().split("T")[0],fe=p(({countryCode:_t,externalId:St,employmentId:y,skipSteps:gt,options:P,initialValues:i})=>{let[a,A]=J(_t||null),[r,bt]=J(y),[T,Ct]=J(void 0),O=Xt({select_country:{},basic_information:{},contract_details:{},contract_preview:{},pricing_plan:{}}),wt=gt?.includes("select_country")?pt:ut,{fieldValues:m,stepState:e,setFieldValues:Ft,previousStep:vt,nextStep:ht,goToStep:I,setStepValues:B}=nt(wt),{data:s,isLoading:R,refetch:Vt}=X(r),{status:_}=s||{},L=_&&z.includes(_),Et=_&&!Q.includes(_),Pt=c(()=>_==="invited"?"invited":"not_invited",[_]),q=tt(),N=lt(),x=it(),Ot=ct(),{mutateAsync:Mt}=E(q),{mutateAsync:Dt}=E(N),{mutateAsync:Tt}=E(x),{mutateAsync:U}=E(Ot);y&&s?.country?.code&&!a&&A(s.country.code);let{selectCountryForm:M,isLoading:It}=et({jsfModify:P?.jsfModify?.select_country,queryOptions:{enabled:e.currentStep.name==="select_country"}}),{form:H,isLoading:Rt}=mt(r,{jsonSchemaVersion:P?.jsonSchemaVersion,queryOptions:{enabled:e.currentStep.name==="pricing_plan"}}),Lt=Zt[e.currentStep.name]||"contractor_basic_information",jt=te[Lt],kt=s?.[jt]||{},Jt=p(({form:t,options:o={},query:g={}})=>{let b=Object.keys(m).length>0?{...i,...e.values?.[e.currentStep.name],...m}:{...i,...kt};return Z({countryCode:a,form:t,fieldValues:b,query:g,options:{...o,queryOptions:{enabled:o.queryOptions?.enabled??!0}}})},"useJSONSchema"),At=!!(a&&(e.currentStep.name==="basic_information"||y)),Bt=!!(a&&(e.currentStep.name==="contract_details"||y)),{data:l,isLoading:qt}=Jt({form:"contractor_basic_information",options:{jsfModify:P?.jsfModify?.basic_information,queryOptions:{enabled:At}}}),Nt=c(()=>ft(s?.basic_information?.provisional_start_date,m?.service_duration?.provisional_start_date),[s?.basic_information?.provisional_start_date,m?.service_duration?.provisional_start_date]),{data:d,isLoading:xt}=dt({countryCode:a,fieldValues:m,options:{queryOptions:{enabled:Bt},jsfModify:yt(P?.jsfModify?.contract_details,Nt)}}),{data:u}=at({fieldValues:m,options:{queryOptions:{enabled:e.currentStep.name==="contract_preview"}}}),{data:Ut,isLoading:Ht}=st({employmentId:r,contractDocumentId:T,options:{queryOptions:{enabled:!!T}}}),n=c(()=>({select_country:M?.fields||[],basic_information:l?.fields||[],pricing_plan:H?.fields||[],contract_details:d?.fields||[],contract_preview:u?.fields||[],review:[]}),[M?.fields,l?.fields,H?.fields,d?.fields,u?.fields]),Gt={select_country:null,basic_information:l?.meta["x-jsf-fieldsets"],pricing_plan:null,contract_details:d?.meta["x-jsf-fieldsets"],contract_preview:null,review:null},{country:Wt,basic_information:D={},contract_details:S={}}=s||{},G=Wt?.code,w=c(()=>C(n.select_country,{country:a||G||""}),[n.select_country,a,G]),F=c(()=>{let t={provisional_start_date:ee,...i,...D};return C(n.basic_information,t)},[n.basic_information,D,i]),v=c(()=>{let o={...{service_duration:{provisional_start_date:D.provisional_start_date}},...i,...S};return C(n.contract_details,o)},[n.contract_details,S,i,D]),W=c(()=>{let t={...i,...S};return C(n.contract_preview,t)},[n.contract_preview,S,i]),$=c(()=>{let t={...i,...S};return C(n.pricing_plan,t?.pricing_plan??{})},[n.pricing_plan,S,i]),$t=c(()=>({select_country:w,basic_information:F,contract_details:v,contract_preview:W,pricing_plan:$}),[w,F,v,W,$]),K=c(()=>!!(!!(y&&L&&e.currentStep.name!=="review")&&!R&&n.basic_information.length>0&&n.contract_details.length>0),[y,L,R,n.basic_information.length,n.contract_details.length,e.currentStep.name]);Qt(()=>{K&&(O.current={select_country:V(w,n.select_country),basic_information:V(F,n.basic_information),contract_details:V(v,n.contract_details),contract_preview:{},pricing_plan:{}},B({select_country:w,basic_information:F,contract_details:v,contract_preview:{},pricing_plan:{},review:{}}),I("review"))},[K,I,w,F,v,B,n.select_country,n.basic_information,n.contract_details]);let Kt=p(t=>{I(t)},"goTo"),Y=p(async t=>M&&e.currentStep.name==="select_country"?t:l&&e.currentStep.name==="basic_information"?await f(t,l?.fields,{isPartialValidation:!1}):d&&e.currentStep.name==="contract_details"?await f(t,d?.fields,{isPartialValidation:!1}):u&&e.currentStep.name==="contract_preview"?await f(t,u?.fields,{isPartialValidation:!1}):e.currentStep.name==="pricing_plan"?t:{},"parseFormValues");async function Yt(t){let o=e.currentStep.name;o in O.current&&(O.current[o]=V(t,n[o]));let g=await Y(t);switch(e.currentStep.name){case"select_country":return A(g.country),Promise.resolve({data:{countryCode:g.country}});case"basic_information":{let j=!r&&a,b=r&&a&&s?.country&&s?.country.code!==a;if(j||b){let k={basic_information:g,type:"contractor",country_code:a,external_id:St};try{let h=await Mt(k),zt=h.data?.data?.employment?.id;return bt(zt),h}catch(h){throw console.error("Error creating onboarding:",h),h}}else if(r)return Promise.resolve({data:{employmentId:r}});return}case"contract_details":{let b=await Dt({employmentId:r,payload:{contract_document:g}}),k=b.data?.data?.contract_document?.id;return Ct(k),b}case"contract_preview":return Tt({employmentId:r,contractDocumentId:T,payload:{signature:t.signature}});case"pricing_plan":return t.subscription==ot?U({employmentId:r,payload:{operation:"downgrade"}}):t.subscription==rt?U({employmentId:r,payload:{operation:"upgrade"}}):Promise.reject({error:"invalid selection"});default:throw new Error("Invalid step state")}}return p(Yt,"onSubmit"),{isLoading:It||qt||R||xt||Rt||Ht,fieldValues:m,stepState:e,checkFieldUpdates:Ft,back:vt,next:ht,goTo:Kt,onSubmit:Yt,fields:n[e.currentStep.name],meta:{fields:O.current,fieldsets:Gt[e.currentStep.name]},parseFormValues:Y,handleValidation:p(async t=>{if(e.currentStep.name==="select_country")return M.handleValidation(t);if(l&&e.currentStep.name==="basic_information"){let o=await f(t,l?.fields,{isPartialValidation:!1});return l?.handleValidation(o)}if(d&&e.currentStep.name==="contract_details"){let o=await f(t,d?.fields,{isPartialValidation:!1});return d?.handleValidation(o)}if(u&&e.currentStep.name==="contract_preview"){let o=await f(t,u?.fields,{isPartialValidation:!1});return u?.handleValidation(o)}return e.currentStep.name==="pricing_plan"?{formErrors:{}}:null},"handleValidation"),initialValues:$t,employmentId:r,refetchEmployment:Vt,isSubmitting:q.isPending||N.isPending||x.isPending,documentPreviewPdf:Ut,canInvite:Et,isEmploymentReadOnly:L,invitedStatus:Pt,employment:s}},"useContractorOnboarding");export{fe as a};
2
+ //# sourceMappingURL=chunk-FEIYAZ7Q.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/ContractorOnboarding/hooks.tsx"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from 'react';\nimport { FieldValues } from 'react-hook-form';\nimport { JSFFields } from '@/src/types/remoteFlows';\nimport {\n CreateContractDocument,\n Employment,\n EmploymentCreateParams,\n} from '@/src/client/types.gen';\nimport {\n getInitialValues,\n parseJSFToValidate,\n} from '@/src/components/form/utils';\nimport { ValidationResult } from '@remoteoss/remote-json-schema-form-kit';\nimport {\n useContractorOnboardingDetailsSchema,\n useCreateContractorContractDocument,\n useGetContractDocumentSignatureSchema,\n usePostManageContractorSubscriptions,\n useContractorSubscriptionSchemaField,\n useGetShowContractDocument,\n useSignContractDocument,\n} from '@/src/flows/ContractorOnboarding/api';\nimport { ContractorOnboardingFlowProps } from '@/src/flows/ContractorOnboarding/types';\nimport {\n STEPS,\n STEPS_WITHOUT_SELECT_COUNTRY,\n calculateProvisionalStartDateDescription,\n buildContractDetailsJsfModify,\n} from '@/src/flows/ContractorOnboarding/utils';\nimport {\n useCountriesSchemaField,\n useCreateEmployment,\n useEmployment,\n useJSONSchemaForm,\n} from '@/src/flows/Onboarding/api';\nimport {\n disabledInviteButtonEmploymentStatus,\n reviewStepAllowedEmploymentStatus,\n} from '@/src/flows/Onboarding/utils';\nimport { FlowOptions, JSFModify, JSONSchemaFormType } from '@/src/flows/types';\nimport { Step, useStepState } from '@/src/flows/useStepState';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport { prettifyFormValues } from '@/src/lib/utils';\nimport { $TSFixMe, JSFFieldset, Meta } from '@/src/types/remoteFlows';\nimport {\n contractorStandardProductIdentifier,\n contractorPlusProductIdentifier,\n} from '@/src/flows/ContractorOnboarding/constants';\n\ntype useContractorOnboardingProps = Omit<\n ContractorOnboardingFlowProps,\n 'render'\n>;\n\nconst stepToFormSchemaMap: Record<\n keyof typeof STEPS,\n JSONSchemaFormType | null\n> = {\n select_country: null,\n basic_information: 'employment_basic_information',\n contract_details: null,\n pricing_plan: null,\n contract_preview: null,\n review: null,\n};\n\nconst jsonSchemaToEmployment: Partial<\n Record<JSONSchemaFormType, keyof Employment>\n> = {\n employment_basic_information: 'basic_information',\n};\n\nconst provisionalStartDate = new Date().toISOString().split('T')[0];\n\nexport const useContractorOnboarding = ({\n countryCode,\n externalId,\n employmentId,\n skipSteps,\n options,\n initialValues: onboardingInitialValues,\n}: useContractorOnboardingProps) => {\n const [internalCountryCode, setInternalCountryCode] = useState<string | null>(\n countryCode || null,\n );\n const [internalEmploymentId, setInternalEmploymentId] = useState<\n string | undefined\n >(employmentId);\n const [internalContractDocumentId, setInternalContractDocumentId] = useState<\n string | undefined\n >(undefined);\n const fieldsMetaRef = useRef<{\n select_country: Meta;\n basic_information: Meta;\n contract_details: Meta;\n contract_preview: Meta;\n pricing_plan: Meta;\n }>({\n select_country: {},\n basic_information: {},\n contract_details: {},\n contract_preview: {},\n pricing_plan: {},\n });\n\n const stepsToUse = skipSteps?.includes('select_country')\n ? STEPS_WITHOUT_SELECT_COUNTRY\n : STEPS;\n\n const {\n fieldValues,\n stepState,\n setFieldValues,\n previousStep,\n nextStep,\n goToStep,\n setStepValues,\n } = useStepState(\n stepsToUse as Record<keyof typeof STEPS, Step<keyof typeof STEPS>>,\n );\n\n const {\n data: employment,\n isLoading: isLoadingEmployment,\n refetch: refetchEmployment,\n } = useEmployment(internalEmploymentId);\n\n const { status: employmentStatus } = employment || {};\n\n const isEmploymentReadOnly =\n employmentStatus &&\n reviewStepAllowedEmploymentStatus.includes(employmentStatus);\n\n const canInvite =\n employmentStatus &&\n !disabledInviteButtonEmploymentStatus.includes(employmentStatus);\n\n const invitedStatus: 'invited' | 'not_invited' = useMemo(() => {\n const isInvited = employmentStatus === 'invited';\n\n return isInvited ? 'invited' : 'not_invited';\n }, [employmentStatus]);\n\n const createEmploymentMutation = useCreateEmployment();\n const createContractorContractDocumentMutation =\n useCreateContractorContractDocument();\n const signContractDocumentMutation = useSignContractDocument();\n const manageContractorSubscriptionMutation =\n usePostManageContractorSubscriptions();\n\n const { mutateAsync: createEmploymentMutationAsync } = mutationToPromise(\n createEmploymentMutation,\n );\n\n const { mutateAsync: createContractorContractDocumentMutationAsync } =\n mutationToPromise(createContractorContractDocumentMutation);\n\n const { mutateAsync: signContractDocumentMutationAsync } = mutationToPromise(\n signContractDocumentMutation,\n );\n\n const { mutateAsync: manageContractorSubscriptionMutationAsync } =\n mutationToPromise(manageContractorSubscriptionMutation);\n\n // if the employment is loaded, country code has not been set yet\n // we set the internal country code with the employment country code\n if (employmentId && employment?.country?.code && !internalCountryCode) {\n setInternalCountryCode(employment.country.code);\n }\n\n const { selectCountryForm, isLoading: isLoadingCountries } =\n useCountriesSchemaField({\n jsfModify: options?.jsfModify?.select_country,\n queryOptions: {\n enabled: stepState.currentStep.name === 'select_country',\n },\n });\n\n const {\n form: selectContractorSubscriptionForm,\n isLoading: isLoadingContractorSubscriptions,\n } = useContractorSubscriptionSchemaField(internalEmploymentId as string, {\n jsonSchemaVersion: options?.jsonSchemaVersion,\n queryOptions: {\n enabled: stepState.currentStep.name === 'pricing_plan',\n },\n });\n\n const formType =\n stepToFormSchemaMap[stepState.currentStep.name] ||\n 'contractor_basic_information';\n const employmentKey = jsonSchemaToEmployment[formType] as keyof Employment;\n const serverEmploymentData = (employment?.[employmentKey] || {}) as Record<\n string,\n unknown\n >;\n\n const useJSONSchema = ({\n form,\n options: jsonSchemaOptions = {},\n query = {},\n }: {\n form: JSONSchemaFormType;\n options?: {\n jsfModify?: JSFModify;\n queryOptions?: { enabled?: boolean };\n jsonSchemaVersion?: FlowOptions['jsonSchemaVersion'];\n };\n query?: Record<string, string>;\n }) => {\n const hasUserEnteredAnyValues = Object.keys(fieldValues).length > 0;\n // when you write on the fields, the values are stored in the fieldValues state\n // when values are stored in the stepState is when the user has navigated to the step\n // and then we have the values from the server and the onboardingInitialValues that the user can inject,\n const mergedFormValues = hasUserEnteredAnyValues\n ? {\n ...onboardingInitialValues,\n ...stepState.values?.[stepState.currentStep.name], // Restore values for the current step\n ...fieldValues,\n }\n : {\n ...onboardingInitialValues,\n ...serverEmploymentData,\n };\n\n return useJSONSchemaForm({\n countryCode: internalCountryCode as string,\n form: form,\n fieldValues: mergedFormValues,\n query,\n options: {\n ...jsonSchemaOptions,\n queryOptions: {\n enabled: jsonSchemaOptions.queryOptions?.enabled ?? true,\n },\n },\n });\n };\n\n const isBasicInformationDetailsEnabled = Boolean(\n internalCountryCode &&\n (stepState.currentStep.name === 'basic_information' ||\n Boolean(employmentId)),\n );\n\n const isContractorOnboardingDetailsEnabled = Boolean(\n internalCountryCode &&\n (stepState.currentStep.name === 'contract_details' ||\n Boolean(employmentId)),\n );\n\n const {\n data: basicInformationForm,\n isLoading: isLoadingBasicInformationForm,\n } = useJSONSchema({\n form: 'contractor_basic_information',\n options: {\n jsfModify: options?.jsfModify?.basic_information,\n queryOptions: {\n enabled: isBasicInformationDetailsEnabled,\n },\n },\n });\n\n const descriptionProvisionalStartDate = useMemo(() => {\n return calculateProvisionalStartDateDescription(\n employment?.basic_information?.provisional_start_date as string,\n fieldValues?.service_duration?.provisional_start_date as string,\n );\n }, [\n employment?.basic_information?.provisional_start_date,\n fieldValues?.service_duration?.provisional_start_date,\n ]);\n\n const {\n data: contractorOnboardingDetailsForm,\n isLoading: isLoadingContractorOnboardingDetailsForm,\n } = useContractorOnboardingDetailsSchema({\n countryCode: internalCountryCode as string,\n fieldValues: fieldValues,\n options: {\n queryOptions: {\n enabled: isContractorOnboardingDetailsEnabled,\n },\n jsfModify: buildContractDetailsJsfModify(\n options?.jsfModify?.contract_details,\n descriptionProvisionalStartDate,\n ),\n },\n });\n\n const { data: signatureSchemaForm } = useGetContractDocumentSignatureSchema({\n fieldValues: fieldValues,\n options: {\n queryOptions: {\n enabled: stepState.currentStep.name === 'contract_preview',\n },\n },\n });\n const { data: documentPreviewPdf, isLoading: isLoadingDocumentPreviewForm } =\n useGetShowContractDocument({\n employmentId: internalEmploymentId as string,\n contractDocumentId: internalContractDocumentId as string,\n options: {\n queryOptions: {\n enabled: Boolean(internalContractDocumentId),\n },\n },\n });\n\n const stepFields: Record<keyof typeof STEPS, JSFFields> = useMemo(\n () => ({\n select_country: selectCountryForm?.fields || [],\n basic_information: basicInformationForm?.fields || [],\n pricing_plan: selectContractorSubscriptionForm?.fields || [],\n contract_details: contractorOnboardingDetailsForm?.fields || [],\n contract_preview: signatureSchemaForm?.fields || [],\n review: [],\n }),\n [\n selectCountryForm?.fields,\n basicInformationForm?.fields,\n selectContractorSubscriptionForm?.fields,\n contractorOnboardingDetailsForm?.fields,\n signatureSchemaForm?.fields,\n ],\n );\n\n const stepFieldsWithFlatFieldsets: Record<\n keyof typeof STEPS,\n JSFFieldset | null | undefined\n > = {\n select_country: null,\n basic_information: basicInformationForm?.meta['x-jsf-fieldsets'],\n pricing_plan: null,\n contract_details: contractorOnboardingDetailsForm?.meta['x-jsf-fieldsets'],\n contract_preview: null,\n review: null,\n };\n\n const {\n country,\n basic_information: employmentBasicInformation = {},\n contract_details: employmentContractDetails = {},\n } = employment || {};\n\n const employmentCountryCode = country?.code;\n\n const selectCountryInitialValues = useMemo(\n () =>\n getInitialValues(stepFields.select_country, {\n country: internalCountryCode || employmentCountryCode || '',\n }),\n [stepFields.select_country, internalCountryCode, employmentCountryCode],\n );\n\n const basicInformationInitialValues = useMemo(() => {\n const initialValues = {\n provisional_start_date: provisionalStartDate,\n ...onboardingInitialValues,\n ...employmentBasicInformation,\n };\n\n return getInitialValues(stepFields.basic_information, initialValues);\n }, [\n stepFields.basic_information,\n employmentBasicInformation,\n onboardingInitialValues,\n ]);\n\n const contractDetailsInitialValues = useMemo(() => {\n const hardcodedValues = {\n service_duration: {\n provisional_start_date:\n employmentBasicInformation.provisional_start_date,\n },\n };\n const initialValues = {\n ...hardcodedValues,\n ...onboardingInitialValues,\n ...employmentContractDetails,\n };\n\n return getInitialValues(stepFields.contract_details, initialValues);\n }, [\n stepFields.contract_details,\n employmentContractDetails,\n onboardingInitialValues,\n employmentBasicInformation,\n ]);\n\n const contractPreviewInitialValues = useMemo(() => {\n // TODO: TBD not sure if contract preview needs to be populated with anything\n const initialValues = {\n ...onboardingInitialValues,\n ...employmentContractDetails,\n };\n\n return getInitialValues(stepFields.contract_preview, initialValues);\n }, [\n stepFields.contract_preview,\n employmentContractDetails,\n onboardingInitialValues,\n ]);\n\n const pricingPlanInitialValues = useMemo(() => {\n const initialValues = {\n ...onboardingInitialValues,\n ...employmentContractDetails,\n };\n\n return getInitialValues(\n stepFields.pricing_plan,\n (initialValues?.pricing_plan ?? {}) as Record<string, unknown>,\n );\n }, [\n stepFields.pricing_plan,\n employmentContractDetails,\n onboardingInitialValues,\n ]);\n\n const initialValues = useMemo(() => {\n return {\n select_country: selectCountryInitialValues,\n basic_information: basicInformationInitialValues,\n contract_details: contractDetailsInitialValues,\n contract_preview: contractPreviewInitialValues,\n pricing_plan: pricingPlanInitialValues,\n };\n }, [\n selectCountryInitialValues,\n basicInformationInitialValues,\n contractDetailsInitialValues,\n contractPreviewInitialValues,\n pricingPlanInitialValues,\n ]);\n\n const isNavigatingToReview = useMemo(() => {\n const shouldHandleReadOnlyEmployment = Boolean(\n employmentId &&\n isEmploymentReadOnly &&\n stepState.currentStep.name !== 'review',\n );\n\n return Boolean(\n shouldHandleReadOnlyEmployment &&\n !isLoadingEmployment &&\n stepFields.basic_information.length > 0 &&\n stepFields.contract_details.length > 0,\n );\n }, [\n employmentId,\n isEmploymentReadOnly,\n isLoadingEmployment,\n stepFields.basic_information.length,\n stepFields.contract_details.length,\n stepState.currentStep.name,\n ]);\n\n useEffect(() => {\n if (isNavigatingToReview) {\n fieldsMetaRef.current = {\n select_country: prettifyFormValues(\n selectCountryInitialValues,\n stepFields.select_country,\n ),\n basic_information: prettifyFormValues(\n basicInformationInitialValues,\n stepFields.basic_information,\n ),\n contract_details: prettifyFormValues(\n contractDetailsInitialValues,\n stepFields.contract_details,\n ),\n // TODO: TBD\n contract_preview: {},\n // TODO: TBD\n pricing_plan: {},\n };\n\n setStepValues({\n select_country: selectCountryInitialValues,\n basic_information: basicInformationInitialValues,\n contract_details: contractDetailsInitialValues,\n contract_preview: {},\n pricing_plan: {},\n review: {},\n });\n goToStep('review');\n }\n }, [\n isNavigatingToReview,\n goToStep,\n selectCountryInitialValues,\n basicInformationInitialValues,\n contractDetailsInitialValues,\n setStepValues,\n stepFields.select_country,\n stepFields.basic_information,\n stepFields.contract_details,\n ]);\n\n const goTo = (step: keyof typeof STEPS) => {\n goToStep(step);\n };\n\n const parseFormValues = async (values: FieldValues) => {\n if (selectCountryForm && stepState.currentStep.name === 'select_country') {\n return values;\n }\n\n if (\n basicInformationForm &&\n stepState.currentStep.name === 'basic_information'\n ) {\n return await parseJSFToValidate(values, basicInformationForm?.fields, {\n isPartialValidation: false,\n });\n }\n\n if (\n contractorOnboardingDetailsForm &&\n stepState.currentStep.name === 'contract_details'\n ) {\n return await parseJSFToValidate(\n values,\n contractorOnboardingDetailsForm?.fields,\n {\n isPartialValidation: false,\n },\n );\n }\n\n if (\n signatureSchemaForm &&\n stepState.currentStep.name === 'contract_preview'\n ) {\n return await parseJSFToValidate(values, signatureSchemaForm?.fields, {\n isPartialValidation: false,\n });\n }\n\n if (stepState.currentStep.name === 'pricing_plan') {\n return values;\n }\n\n return {};\n };\n\n async function onSubmit(values: FieldValues) {\n const currentStepName = stepState.currentStep.name;\n if (currentStepName in fieldsMetaRef.current) {\n fieldsMetaRef.current[\n currentStepName as keyof typeof fieldsMetaRef.current\n ] = prettifyFormValues(values, stepFields[currentStepName]);\n }\n const parsedValues = await parseFormValues(values);\n switch (stepState.currentStep.name) {\n case 'select_country': {\n setInternalCountryCode(parsedValues.country);\n return Promise.resolve({ data: { countryCode: parsedValues.country } });\n }\n case 'basic_information': {\n const isEmploymentNotLoaded =\n !internalEmploymentId && internalCountryCode;\n const hasChangedCountry =\n internalEmploymentId &&\n internalCountryCode &&\n employment?.country &&\n employment?.country.code !== internalCountryCode;\n\n if (isEmploymentNotLoaded || hasChangedCountry) {\n const payload: EmploymentCreateParams = {\n basic_information: parsedValues,\n type: 'contractor',\n country_code: internalCountryCode,\n external_id: externalId,\n };\n try {\n const response = await createEmploymentMutationAsync(payload);\n // @ts-expect-error the types from the response are not matching\n const employmentId = response.data?.data?.employment?.id;\n setInternalEmploymentId(employmentId);\n\n return response;\n } catch (error) {\n console.error('Error creating onboarding:', error);\n throw error;\n }\n } else if (internalEmploymentId) {\n // TODO: Provisional it seems you cannot update a contractor employment\n // TODO: we'll need to check later if the provisional start date gets updated for the statement of work\n return Promise.resolve({\n data: { employmentId: internalEmploymentId },\n });\n }\n\n return;\n }\n case 'contract_details': {\n const payload: CreateContractDocument = {\n contract_document: parsedValues,\n };\n const response: $TSFixMe =\n await createContractorContractDocumentMutationAsync({\n employmentId: internalEmploymentId as string,\n payload,\n });\n\n const contractDocumentId = response.data?.data?.contract_document?.id;\n setInternalContractDocumentId(contractDocumentId);\n return response;\n }\n\n case 'contract_preview': {\n return signContractDocumentMutationAsync({\n employmentId: internalEmploymentId as string,\n contractDocumentId: internalContractDocumentId as string,\n payload: {\n signature: values.signature,\n },\n });\n }\n case 'pricing_plan': {\n if (values.subscription == contractorStandardProductIdentifier) {\n return manageContractorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n payload: {\n operation: 'downgrade',\n },\n });\n } else if (values.subscription == contractorPlusProductIdentifier) {\n return manageContractorSubscriptionMutationAsync({\n employmentId: internalEmploymentId as string,\n payload: {\n operation: 'upgrade',\n },\n });\n }\n return Promise.reject({ error: 'invalid selection' });\n }\n\n default: {\n throw new Error('Invalid step state');\n }\n }\n }\n\n const isLoading =\n isLoadingCountries ||\n isLoadingBasicInformationForm ||\n isLoadingEmployment ||\n isLoadingContractorOnboardingDetailsForm ||\n isLoadingContractorSubscriptions ||\n isLoadingDocumentPreviewForm;\n\n return {\n /**\n * Loading state indicating if the flow is loading data\n */\n isLoading,\n\n /**\n * Current state of the form fields for the current step.\n */\n fieldValues,\n\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState,\n\n /**\n * Function to update the current form field values\n * @param values - New form values to set\n */\n checkFieldUpdates: setFieldValues,\n\n /**\n * Function to handle going back to the previous step\n * @returns {void}\n */\n back: previousStep,\n\n /**\n * Function to handle going to the next step\n * @returns {void}\n */\n next: nextStep,\n\n /**\n * Function to handle going to a specific step\n * @param step The step to go to.\n * @returns {void}\n */\n goTo: goTo,\n\n /**\n * Function to handle form submission\n * @param values - Form values to submit\n * @returns Promise resolving to the mutation result\n */\n onSubmit,\n\n /**\n * Array of form fields from the onboarding schema\n */\n fields: stepFields[stepState.currentStep.name],\n\n /**\n * Fields metadata for each step\n */\n meta: {\n fields: fieldsMetaRef.current,\n fieldsets: stepFieldsWithFlatFieldsets[stepState.currentStep.name],\n },\n\n /**\n * Function to parse form values before submission\n * @param values - Form values to parse\n * @returns Parsed form values\n */\n parseFormValues,\n\n /**\n * Function to validate form values against the onboarding schema\n * @param values - Form values to validate\n * @returns Validation result or null if no schema is available\n */\n handleValidation: async (\n values: FieldValues,\n ): Promise<ValidationResult | null> => {\n if (stepState.currentStep.name === 'select_country') {\n return selectCountryForm.handleValidation(values);\n }\n\n if (\n basicInformationForm &&\n stepState.currentStep.name === 'basic_information'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n basicInformationForm?.fields,\n { isPartialValidation: false },\n );\n return basicInformationForm?.handleValidation(parsedValues);\n }\n\n if (\n contractorOnboardingDetailsForm &&\n stepState.currentStep.name === 'contract_details'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n contractorOnboardingDetailsForm?.fields,\n { isPartialValidation: false },\n );\n return contractorOnboardingDetailsForm?.handleValidation(parsedValues);\n }\n\n if (\n signatureSchemaForm &&\n stepState.currentStep.name === 'contract_preview'\n ) {\n const parsedValues = await parseJSFToValidate(\n values,\n signatureSchemaForm?.fields,\n { isPartialValidation: false },\n );\n return signatureSchemaForm?.handleValidation(parsedValues);\n }\n\n if (stepState.currentStep.name === 'pricing_plan') {\n // TODO: TBD\n return {\n formErrors: {},\n };\n }\n\n return null;\n },\n\n /**\n * Initial form values\n */\n initialValues,\n\n /**\n * Employment id\n */\n employmentId: internalEmploymentId,\n\n /**\n * Function to refetch the employment data\n * @returns {void}\n */\n refetchEmployment: refetchEmployment,\n\n /**\n * Loading state indicating if the onboarding mutation is in progress\n */\n isSubmitting:\n createEmploymentMutation.isPending ||\n createContractorContractDocumentMutation.isPending ||\n signContractDocumentMutation.isPending,\n\n /**\n * Document preview PDF data\n */\n documentPreviewPdf,\n\n /**\n * let's the user know if the company can invite employees\n * @returns {boolean}\n */\n canInvite,\n\n /**\n * let's the user know that the employment cannot be edited, happens when employment.status is invited\n * @returns {boolean}\n */\n isEmploymentReadOnly,\n /**\n * let's the user know if the employment is invited or not\n * @returns {'invited' | 'not_invited'}\n */\n invitedStatus,\n\n /**\n * Employment data\n * @returns {Employment}\n */\n employment,\n };\n};\n"],"mappings":"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","names":["useEffect","useMemo","useRef","useState","stepToFormSchemaMap","jsonSchemaToEmployment","provisionalStartDate","useContractorOnboarding","__name","countryCode","externalId","employmentId","skipSteps","options","onboardingInitialValues","internalCountryCode","setInternalCountryCode","useState","internalEmploymentId","setInternalEmploymentId","internalContractDocumentId","setInternalContractDocumentId","fieldsMetaRef","useRef","stepsToUse","STEPS_WITHOUT_SELECT_COUNTRY","STEPS","fieldValues","stepState","setFieldValues","previousStep","nextStep","goToStep","setStepValues","useStepState","employment","isLoadingEmployment","refetchEmployment","useEmployment","employmentStatus","isEmploymentReadOnly","reviewStepAllowedEmploymentStatus","canInvite","disabledInviteButtonEmploymentStatus","invitedStatus","useMemo","createEmploymentMutation","useCreateEmployment","createContractorContractDocumentMutation","useCreateContractorContractDocument","signContractDocumentMutation","useSignContractDocument","manageContractorSubscriptionMutation","usePostManageContractorSubscriptions","createEmploymentMutationAsync","mutationToPromise","createContractorContractDocumentMutationAsync","signContractDocumentMutationAsync","manageContractorSubscriptionMutationAsync","selectCountryForm","isLoadingCountries","useCountriesSchemaField","selectContractorSubscriptionForm","isLoadingContractorSubscriptions","useContractorSubscriptionSchemaField","formType","employmentKey","serverEmploymentData","useJSONSchema","form","jsonSchemaOptions","query","mergedFormValues","useJSONSchemaForm","isBasicInformationDetailsEnabled","isContractorOnboardingDetailsEnabled","basicInformationForm","isLoadingBasicInformationForm","descriptionProvisionalStartDate","calculateProvisionalStartDateDescription","contractorOnboardingDetailsForm","isLoadingContractorOnboardingDetailsForm","useContractorOnboardingDetailsSchema","buildContractDetailsJsfModify","signatureSchemaForm","useGetContractDocumentSignatureSchema","documentPreviewPdf","isLoadingDocumentPreviewForm","useGetShowContractDocument","stepFields","stepFieldsWithFlatFieldsets","country","employmentBasicInformation","employmentContractDetails","employmentCountryCode","selectCountryInitialValues","getInitialValues","basicInformationInitialValues","initialValues","contractDetailsInitialValues","contractPreviewInitialValues","pricingPlanInitialValues","isNavigatingToReview","useEffect","prettifyFormValues","goTo","step","parseFormValues","values","parseJSFToValidate","onSubmit","currentStepName","parsedValues","isEmploymentNotLoaded","hasChangedCountry","payload","response","error","contractDocumentId","contractorStandardProductIdentifier","contractorPlusProductIdentifier"]}
@@ -0,0 +1,2 @@
1
+ import{b as i}from"./chunk-PGWKJ6FK.js";import{a as r}from"./chunk-NFWNYW2E.js";import{b as n}from"./chunk-KQPDXXG3.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as b}from"react/jsx-runtime";function a({children:u,...t}){let{formId:m,onboardingBag:e}=i(),{components:s}=n(),d=s?.button||r;return b(d,{...t,form:m,disabled:t.disabled||e.isSubmitting,children:u})}o(a,"OnboardingSubmit");export{a};
2
+ //# sourceMappingURL=chunk-FUBLGAPH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/Onboarding/components/OnboardingSubmit.tsx"],"sourcesContent":["import { ButtonHTMLAttributes, PropsWithChildren } from 'react';\nimport { ButtonDefault } from '@/src/components/form/fields/default/ButtonDefault';\nimport { useOnboardingContext } from '@/src/flows/Onboarding/context';\nimport { useFormFields } from '@/src/context';\n\nexport function OnboardingSubmit({\n children,\n ...props\n}: PropsWithChildren<\n ButtonHTMLAttributes<HTMLButtonElement> & Record<string, unknown>\n>) {\n const { formId, onboardingBag } = useOnboardingContext();\n const { components } = useFormFields();\n\n const CustomButton = components?.button || ButtonDefault;\n return (\n <CustomButton\n {...props}\n form={formId}\n disabled={props.disabled || onboardingBag.isSubmitting}\n >\n {children}\n </CustomButton>\n );\n}\n"],"mappings":"gKAgBI,cAAAA,MAAA,oBAXG,SAASC,EAAiB,CAC/B,SAAAC,EACA,GAAGC,CACL,EAEG,CACD,GAAM,CAAE,OAAAC,EAAQ,cAAAC,CAAc,EAAIC,EAAqB,EACjD,CAAE,WAAAC,CAAW,EAAIC,EAAc,EAE/BC,EAAeF,GAAY,QAAUG,EAC3C,OACEV,EAACS,EAAA,CACE,GAAGN,EACJ,KAAMC,EACN,SAAUD,EAAM,UAAYE,EAAc,aAEzC,SAAAH,EACH,CAEJ,CAnBgBS,EAAAV,EAAA","names":["jsx","OnboardingSubmit","children","props","formId","onboardingBag","useOnboardingContext","components","useFormFields","CustomButton","ButtonDefault","__name"]}
@@ -1,2 +1,2 @@
1
- import{a as m}from"./chunk-ZYRGEEPU.js";import{b as a}from"./chunk-PGWKJ6FK.js";import{b as t}from"./chunk-2YTBWEC7.js";import{e as s}from"./chunk-ARTSDUSS.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function P({components:d,onSubmit:l,onError:i,onSuccess:f}){let{onboardingBag:o}=a(),p=o.fields??[],c=s(p,o.initialValues.benefits);return E(m,{defaultValues:c,components:d,onSubmit:e(async n=>{try{await l?.(n);let r=await o.onSubmit(n);if(r?.data){await f?.(r.data),o?.next();return}if(r?.error){let u=t(r?.fieldErrors||[],o.meta?.fields?.benefits);i?.({error:r.error,rawError:r.rawError,fieldErrors:u})}}catch(r){i?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit")})}e(P,"BenefitsStep");export{P as a};
2
- //# sourceMappingURL=chunk-A3GZSC5Z.js.map
1
+ import{a as m}from"./chunk-NPKIEWF4.js";import{b as a}from"./chunk-PGWKJ6FK.js";import{b as t}from"./chunk-2YTBWEC7.js";import{e as s}from"./chunk-HRG5MSVG.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as E}from"react/jsx-runtime";function P({components:d,onSubmit:l,onError:i,onSuccess:f}){let{onboardingBag:o}=a(),p=o.fields??[],c=s(p,o.initialValues.benefits);return E(m,{defaultValues:c,components:d,onSubmit:e(async n=>{try{await l?.(n);let r=await o.onSubmit(n);if(r?.data){await f?.(r.data),o?.next();return}if(r?.error){let u=t(r?.fieldErrors||[],o.meta?.fields?.benefits);i?.({error:r.error,rawError:r.rawError,fieldErrors:u})}}catch(r){i?.({error:r,rawError:r,fieldErrors:[]})}},"handleSubmit")})}e(P,"BenefitsStep");export{P as a};
2
+ //# sourceMappingURL=chunk-G2X5F5YR.js.map
@@ -1,2 +1,2 @@
1
- import{a as i}from"./chunk-L3Z2G32A.js";import{a as s}from"./chunk-P37U34EQ.js";import*as n from"react";import{Drawer as r}from"vaul";import{jsx as a,jsxs as l}from"react/jsx-runtime";var d=s(({shouldScaleBackground:e=!0,...t})=>a(r.Root,{shouldScaleBackground:e,...t}),"Drawer");d.displayName="Drawer";var N=r.Trigger,f=r.Portal,P=r.Close,m=n.forwardRef(({className:e,...t},o)=>a(r.Overlay,{ref:o,className:i("fixed inset-0 z-50 bg-black/80",e),...t}));m.displayName=r.Overlay.displayName;var D=n.forwardRef(({className:e,children:t,showHandle:o=!0,...c},p)=>l(f,{children:[a(m,{}),l(r.Content,{ref:p,className:i("fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background",e),...c,children:[o&&a("div",{className:"mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted"}),t]})]}));D.displayName="DrawerContent";var w=s(({className:e,...t})=>a("div",{className:i("grid gap-1.5 p-4 text-center sm:text-left",e),...t}),"DrawerHeader");w.displayName="DrawerHeader";var R=s(({className:e,...t})=>a("div",{className:i("mt-auto flex flex-col gap-2 p-4",e),...t}),"DrawerFooter");R.displayName="DrawerFooter";var u=n.forwardRef(({className:e,...t},o)=>a(r.Title,{ref:o,className:i("text-lg font-semibold leading-none tracking-tight",e),...t}));u.displayName=r.Title.displayName;var g=n.forwardRef(({className:e,...t},o)=>a(r.Description,{ref:o,className:i("text-sm text-muted-foreground",e),...t}));g.displayName=r.Description.displayName;export{d as a,N as b,D as c,w as d,u as e,g as f};
2
- //# sourceMappingURL=chunk-UOOUV52J.js.map
1
+ import{a as i}from"./chunk-UQCSN47K.js";import{a as s}from"./chunk-P37U34EQ.js";import*as n from"react";import{Drawer as r}from"vaul";import{jsx as a,jsxs as l}from"react/jsx-runtime";var d=s(({shouldScaleBackground:e=!0,...t})=>a(r.Root,{shouldScaleBackground:e,...t}),"Drawer");d.displayName="Drawer";var N=r.Trigger,f=r.Portal,P=r.Close,m=n.forwardRef(({className:e,...t},o)=>a(r.Overlay,{ref:o,className:i("fixed inset-0 z-50 bg-black/80",e),...t}));m.displayName=r.Overlay.displayName;var D=n.forwardRef(({className:e,children:t,showHandle:o=!0,...c},p)=>l(f,{children:[a(m,{}),l(r.Content,{ref:p,className:i("fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background",e),...c,children:[o&&a("div",{className:"mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted"}),t]})]}));D.displayName="DrawerContent";var w=s(({className:e,...t})=>a("div",{className:i("grid gap-1.5 p-4 text-center sm:text-left",e),...t}),"DrawerHeader");w.displayName="DrawerHeader";var R=s(({className:e,...t})=>a("div",{className:i("mt-auto flex flex-col gap-2 p-4",e),...t}),"DrawerFooter");R.displayName="DrawerFooter";var u=n.forwardRef(({className:e,...t},o)=>a(r.Title,{ref:o,className:i("text-lg font-semibold leading-none tracking-tight",e),...t}));u.displayName=r.Title.displayName;var g=n.forwardRef(({className:e,...t},o)=>a(r.Description,{ref:o,className:i("text-sm text-muted-foreground",e),...t}));g.displayName=r.Description.displayName;export{d as a,N as b,D as c,w as d,u as e,g as f};
2
+ //# sourceMappingURL=chunk-GGPEKIIH.js.map
@@ -1,2 +1,2 @@
1
- import{a as t}from"./chunk-L3Z2G32A.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as o}from"react/jsx-runtime";function a({className:i,type:r,...n}){return o("input",{type:r,"data-slot":"input",className:t("shadow-xs border-input file:text-foreground placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-xl border bg-transparent px-4 py-7 text-sm transition-[color] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-focused","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",i),...n})}e(a,"Input");export{a};
2
- //# sourceMappingURL=chunk-72OH7PSF.js.map
1
+ import{a as t}from"./chunk-UQCSN47K.js";import{a as e}from"./chunk-P37U34EQ.js";import{jsx as o}from"react/jsx-runtime";function a({className:i,type:r,...n}){return o("input",{type:r,"data-slot":"input",className:t("shadow-xs border-input file:text-foreground placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-xl border bg-transparent px-4 py-7 text-sm transition-[color] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-focused","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",i),...n})}e(a,"Input");export{a};
2
+ //# sourceMappingURL=chunk-GPLI6GGL.js.map
@@ -0,0 +1,2 @@
1
+ import{b as n}from"./chunk-KSHK3ZPX.js";import{a as m}from"./chunk-NFWNYW2E.js";import{b as u}from"./chunk-KQPDXXG3.js";import{a as r}from"./chunk-UQCSN47K.js";import{a as o}from"./chunk-P37U34EQ.js";import{jsx as c}from"react/jsx-runtime";function B({children:s,...t}){let{formId:i,costCalculatorBag:e}=n(),{components:l}=u(),a=l?.button||m;return c(a,{...t,type:"submit",className:r("RemoteFlows__CostCalculatorForm__SubmitButton",t.className),form:i,disabled:t.disabled||e?.isSubmitting,children:s})}o(B,"CostCalculatorSubmitButton");export{B as a};
2
+ //# sourceMappingURL=chunk-GVSAZND2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/flows/CostCalculator/CostCalculatorSubmitButton.tsx"],"sourcesContent":["import { ButtonHTMLAttributes, PropsWithChildren } from 'react';\nimport { useCostCalculatorContext } from './context';\nimport { cn } from '@/src/lib/utils';\nimport { useFormFields } from '@/src/context';\nimport { ButtonDefault } from '@/src/components/form/fields/default/ButtonDefault';\n\nexport function CostCalculatorSubmitButton({\n children,\n ...props\n}: PropsWithChildren<ButtonHTMLAttributes<HTMLButtonElement>> &\n Record<string, unknown>) {\n const { formId, costCalculatorBag } = useCostCalculatorContext();\n const { components } = useFormFields();\n\n const CustomButton = components?.button || ButtonDefault;\n return (\n <CustomButton\n {...props}\n type='submit'\n className={cn(\n 'RemoteFlows__CostCalculatorForm__SubmitButton',\n props.className,\n )}\n form={formId}\n disabled={props.disabled || costCalculatorBag?.isSubmitting}\n >\n {children}\n </CustomButton>\n );\n}\n"],"mappings":"wMAgBI,cAAAA,MAAA,oBAVG,SAASC,EAA2B,CACzC,SAAAC,EACA,GAAGC,CACL,EAC2B,CACzB,GAAM,CAAE,OAAAC,EAAQ,kBAAAC,CAAkB,EAAIC,EAAyB,EACzD,CAAE,WAAAC,CAAW,EAAIC,EAAc,EAE/BC,EAAeF,GAAY,QAAUG,EAC3C,OACEV,EAACS,EAAA,CACE,GAAGN,EACJ,KAAK,SACL,UAAWQ,EACT,gDACAR,EAAM,SACR,EACA,KAAMC,EACN,SAAUD,EAAM,UAAYE,GAAmB,aAE9C,SAAAH,EACH,CAEJ,CAvBgBU,EAAAX,EAAA","names":["jsx","CostCalculatorSubmitButton","children","props","formId","costCalculatorBag","useCostCalculatorContext","components","useFormFields","CustomButton","ButtonDefault","cn","__name"]}