@remoteoss/remote-flows 0.4.0-alpha.1 → 0.4.0-alpha.3

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 (161) hide show
  1. package/dist/chunk-2URGWNSM.js +2 -0
  2. package/dist/chunk-2URGWNSM.js.map +1 -0
  3. package/dist/chunk-3KAYKVK5.js +2 -0
  4. package/dist/chunk-3KAYKVK5.js.map +1 -0
  5. package/dist/chunk-4N3CYS6F.js +2 -0
  6. package/dist/chunk-4N3CYS6F.js.map +1 -0
  7. package/dist/chunk-76JJOA3E.js +2 -0
  8. package/dist/{chunk-LNKYOAKF.js.map → chunk-76JJOA3E.js.map} +1 -1
  9. package/dist/chunk-7B32RZXH.js +2 -0
  10. package/dist/chunk-7B32RZXH.js.map +1 -0
  11. package/dist/chunk-BLPOQIGB.js +2 -0
  12. package/dist/chunk-BLPOQIGB.js.map +1 -0
  13. package/dist/{chunk-KQH5HLN5.js → chunk-C4E24DUG.js} +2 -2
  14. package/dist/{chunk-PWKM2R6V.js → chunk-DQM4AWYT.js} +2 -2
  15. package/dist/chunk-FNTHWOZU.js +2 -0
  16. package/dist/chunk-FNTHWOZU.js.map +1 -0
  17. package/dist/{chunk-DE5FSFYL.js → chunk-GQD6NNYO.js} +2 -2
  18. package/dist/chunk-JT5XHQEY.js +2 -0
  19. package/dist/chunk-JT5XHQEY.js.map +1 -0
  20. package/dist/{chunk-CKEVRQRG.js → chunk-KGUR7YMA.js} +2 -2
  21. package/dist/{chunk-Q64URAIN.js → chunk-MI3HDT5D.js} +2 -2
  22. package/dist/chunk-N25EBX6R.js +2 -0
  23. package/dist/chunk-N25EBX6R.js.map +1 -0
  24. package/dist/{chunk-UECSVYQ5.js → chunk-NVMRRBRE.js} +2 -2
  25. package/dist/chunk-NVMRRBRE.js.map +1 -0
  26. package/dist/chunk-OXOB35EA.js +2 -0
  27. package/dist/{chunk-QSHYMFMY.js.map → chunk-OXOB35EA.js.map} +1 -1
  28. package/dist/{chunk-GRYAM4FZ.js → chunk-P2COURSU.js} +2 -2
  29. package/dist/{chunk-6TYJC6YS.js → chunk-QOXOAPGX.js} +2 -2
  30. package/dist/{chunk-FZ2HS6G7.js → chunk-S4XU4SE7.js} +1 -1
  31. package/dist/chunk-S4XU4SE7.js.map +1 -0
  32. package/dist/chunk-SYWI4UB6.js +2 -0
  33. package/dist/chunk-SYWI4UB6.js.map +1 -0
  34. package/dist/{chunk-SLD7DFLW.js → chunk-T3PTQ4QM.js} +2 -2
  35. package/dist/{chunk-GOLOL2V6.js → chunk-TGB3TV3K.js} +2 -2
  36. package/dist/chunk-TGB3TV3K.js.map +1 -0
  37. package/dist/{chunk-DZSZOC2G.js → chunk-TXLTMGOU.js} +2 -2
  38. package/dist/chunk-U3I3TJKB.js +2 -0
  39. package/dist/chunk-U3I3TJKB.js.map +1 -0
  40. package/dist/chunk-WZ5AXHQT.js +2 -0
  41. package/dist/chunk-WZ5AXHQT.js.map +1 -0
  42. package/dist/chunk-XOUAD7MS.js +2 -0
  43. package/dist/{chunk-PNXZHV6W.js.map → chunk-XOUAD7MS.js.map} +1 -1
  44. package/dist/chunk-YIBRPAR3.js +2 -0
  45. package/dist/chunk-YIBRPAR3.js.map +1 -0
  46. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.d.ts +3 -3
  47. package/dist/flows/ContractAmendment/ContractAmendmentConfirmationForm.js +1 -1
  48. package/dist/flows/ContractAmendment/ContractAmendmentFlow.d.ts +1 -1
  49. package/dist/flows/ContractAmendment/ContractAmendmentFlow.js +1 -1
  50. package/dist/flows/ContractAmendment/ContractAmendmentForm.d.ts +3 -3
  51. package/dist/flows/ContractAmendment/ContractAmendmentForm.js +1 -1
  52. package/dist/flows/ContractAmendment/context.d.ts +2 -2
  53. package/dist/flows/ContractAmendment/hooks.d.ts +2 -2
  54. package/dist/flows/ContractAmendment/hooks.js +1 -1
  55. package/dist/flows/ContractAmendment/index.d.ts +1 -1
  56. package/dist/flows/ContractAmendment/index.js +1 -1
  57. package/dist/flows/ContractAmendment/types.d.ts +1 -1
  58. package/dist/flows/ContractAmendment/utils.d.ts +2 -2
  59. package/dist/flows/ContractAmendment/utils.js +1 -1
  60. package/dist/flows/CostCalculator/CostCalculatorFlow.d.ts +1 -1
  61. package/dist/flows/CostCalculator/CostCalculatorFlow.js +1 -1
  62. package/dist/flows/CostCalculator/CostCalculatorForm.d.ts +1 -1
  63. package/dist/flows/CostCalculator/CostCalculatorForm.js +1 -1
  64. package/dist/flows/CostCalculator/Results/CostCalculatorResults.d.ts +1 -1
  65. package/dist/flows/CostCalculator/context.d.ts +1 -1
  66. package/dist/flows/CostCalculator/hooks.d.ts +1 -1
  67. package/dist/flows/CostCalculator/hooks.js +1 -1
  68. package/dist/flows/CostCalculator/index.d.ts +1 -1
  69. package/dist/flows/CostCalculator/index.js +1 -1
  70. package/dist/flows/CostCalculator/types.d.ts +1 -1
  71. package/dist/flows/CostCalculator/utils.d.ts +1 -1
  72. package/dist/flows/CostCalculator/utils.js +1 -1
  73. package/dist/flows/Onboarding/BasicInformationStep.d.ts +2 -2
  74. package/dist/flows/Onboarding/BasicInformationStep.js +1 -1
  75. package/dist/flows/Onboarding/BenefitsStep.d.ts +4 -4
  76. package/dist/flows/Onboarding/BenefitsStep.js +1 -1
  77. package/dist/flows/Onboarding/ContractDetailsStep.d.ts +1 -1
  78. package/dist/flows/Onboarding/ContractDetailsStep.js +1 -1
  79. package/dist/flows/Onboarding/OnboardingFlow.d.ts +3 -2
  80. package/dist/flows/Onboarding/OnboardingFlow.js +1 -1
  81. package/dist/flows/Onboarding/OnboardingForm.d.ts +2 -2
  82. package/dist/flows/Onboarding/OnboardingForm.js +1 -1
  83. package/dist/flows/Onboarding/OnboardingInvite.d.ts +3 -3
  84. package/dist/flows/Onboarding/OnboardingInvite.js +1 -1
  85. package/dist/flows/Onboarding/context.d.ts +7 -2
  86. package/dist/flows/Onboarding/hooks.d.ts +15 -2
  87. package/dist/flows/Onboarding/hooks.js +1 -1
  88. package/dist/flows/Onboarding/index.d.ts +3 -2
  89. package/dist/flows/Onboarding/index.js +1 -1
  90. package/dist/flows/Onboarding/types.d.ts +1 -1
  91. package/dist/flows/Onboarding/utils.d.ts +10 -2
  92. package/dist/flows/Onboarding/utils.js +1 -1
  93. package/dist/flows/Termination/AdditionalDetailsForm.d.ts +2 -2
  94. package/dist/flows/Termination/AdditionalDetailsForm.js +1 -1
  95. package/dist/flows/Termination/EmployeeComunicationForm.d.ts +1 -1
  96. package/dist/flows/Termination/EmployeeComunicationForm.js +1 -1
  97. package/dist/flows/Termination/PaidTimeOffForm.d.ts +1 -1
  98. package/dist/flows/Termination/PaidTimeOffForm.js +1 -1
  99. package/dist/flows/Termination/TerminationDetailsForm.d.ts +1 -1
  100. package/dist/flows/Termination/TerminationDetailsForm.js +1 -1
  101. package/dist/flows/Termination/TerminationFlow.d.ts +2 -1
  102. package/dist/flows/Termination/TerminationFlow.js +1 -1
  103. package/dist/flows/Termination/TerminationForm.d.ts +1 -1
  104. package/dist/flows/Termination/TerminationForm.js +1 -1
  105. package/dist/flows/Termination/TimeOff.d.ts +1 -1
  106. package/dist/flows/Termination/context.d.ts +3 -2
  107. package/dist/flows/Termination/hooks.d.ts +3 -2
  108. package/dist/flows/Termination/hooks.js +1 -1
  109. package/dist/flows/Termination/index.d.ts +2 -1
  110. package/dist/flows/Termination/index.js +1 -1
  111. package/dist/flows/Termination/types.d.ts +1 -1
  112. package/dist/flows/Termination/utils.d.ts +1 -1
  113. package/dist/flows/Termination/utils.js +1 -1
  114. package/dist/flows/types.d.ts +1 -1
  115. package/dist/flows/useStepState.d.ts +10 -4
  116. package/dist/flows/useStepState.js +1 -1
  117. package/dist/flows/utils.d.ts +1 -1
  118. package/dist/index.d.ts +6 -3
  119. package/dist/index.js +1 -1
  120. package/dist/{remoteFlows-CswYencu.d.ts → remoteFlows-BqpqaWsU.d.ts} +1 -1
  121. package/dist/{types.gen-CsMdyQkb.d.ts → types.gen-D5alruJJ.d.ts} +1 -1
  122. package/package.json +1 -1
  123. package/dist/chunk-2PXGLWCY.js +0 -2
  124. package/dist/chunk-2PXGLWCY.js.map +0 -1
  125. package/dist/chunk-ABR3B66K.js +0 -2
  126. package/dist/chunk-ABR3B66K.js.map +0 -1
  127. package/dist/chunk-ALRU77S5.js +0 -2
  128. package/dist/chunk-ALRU77S5.js.map +0 -1
  129. package/dist/chunk-CFRYIKSR.js +0 -2
  130. package/dist/chunk-CFRYIKSR.js.map +0 -1
  131. package/dist/chunk-ED3CBUQL.js +0 -2
  132. package/dist/chunk-ED3CBUQL.js.map +0 -1
  133. package/dist/chunk-FZ2HS6G7.js.map +0 -1
  134. package/dist/chunk-GGAS4ZNQ.js +0 -2
  135. package/dist/chunk-GGAS4ZNQ.js.map +0 -1
  136. package/dist/chunk-GOLOL2V6.js.map +0 -1
  137. package/dist/chunk-HEPL5WDF.js +0 -2
  138. package/dist/chunk-HEPL5WDF.js.map +0 -1
  139. package/dist/chunk-JBG4RVXQ.js +0 -2
  140. package/dist/chunk-JBG4RVXQ.js.map +0 -1
  141. package/dist/chunk-LNKYOAKF.js +0 -2
  142. package/dist/chunk-MIHU6CEZ.js +0 -2
  143. package/dist/chunk-MIHU6CEZ.js.map +0 -1
  144. package/dist/chunk-NE547PW4.js +0 -2
  145. package/dist/chunk-NE547PW4.js.map +0 -1
  146. package/dist/chunk-PNXZHV6W.js +0 -2
  147. package/dist/chunk-QSHYMFMY.js +0 -2
  148. package/dist/chunk-S56EWAS4.js +0 -2
  149. package/dist/chunk-S56EWAS4.js.map +0 -1
  150. package/dist/chunk-UECSVYQ5.js.map +0 -1
  151. package/dist/chunk-VRQXHCFR.js +0 -2
  152. package/dist/chunk-VRQXHCFR.js.map +0 -1
  153. /package/dist/{chunk-KQH5HLN5.js.map → chunk-C4E24DUG.js.map} +0 -0
  154. /package/dist/{chunk-PWKM2R6V.js.map → chunk-DQM4AWYT.js.map} +0 -0
  155. /package/dist/{chunk-DE5FSFYL.js.map → chunk-GQD6NNYO.js.map} +0 -0
  156. /package/dist/{chunk-CKEVRQRG.js.map → chunk-KGUR7YMA.js.map} +0 -0
  157. /package/dist/{chunk-Q64URAIN.js.map → chunk-MI3HDT5D.js.map} +0 -0
  158. /package/dist/{chunk-GRYAM4FZ.js.map → chunk-P2COURSU.js.map} +0 -0
  159. /package/dist/{chunk-6TYJC6YS.js.map → chunk-QOXOAPGX.js.map} +0 -0
  160. /package/dist/{chunk-SLD7DFLW.js.map → chunk-T3PTQ4QM.js.map} +0 -0
  161. /package/dist/{chunk-DZSZOC2G.js.map → chunk-TXLTMGOU.js.map} +0 -0
@@ -1,7 +1,8 @@
1
- import { O as OffboardingResponse, p as PostCreateOffboardingError } from '../../types.gen-CsMdyQkb.js';
1
+ import { O as OffboardingResponse, j as PostCreateOffboardingError } from '../../types.gen-D5alruJJ.js';
2
2
  import { E as ErrorResponse, S as SuccessResponse } from '../../mutations-v9H353tz.js';
3
3
  import * as _remoteoss_json_schema_form from '@remoteoss/json-schema-form';
4
4
  import { Step } from '../useStepState.js';
5
+ import { StepTerminationKeys } from './utils.js';
5
6
  import { JSFModify } from '../CostCalculator/types.js';
6
7
  import { TerminationFormValues } from './types.js';
7
8
  import 'react';
@@ -22,7 +23,7 @@ declare const useTermination: ({ employmentId, options, }: TerminationHookProps)
22
23
  * Current step state containing the current step and total number of steps
23
24
  */
24
25
  stepState: {
25
- currentStep: Step;
26
+ currentStep: Step<StepTerminationKeys>;
26
27
  totalSteps: number;
27
28
  values: {
28
29
  paid_time_off: TerminationFormValues;
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-GGAS4ZNQ.js";import"../../chunk-HSW5HMHH.js";import"../../chunk-VX2UC3HG.js";import"../../chunk-XSHHMBMT.js";import"../../chunk-XFD3ULUF.js";import"../../chunk-JODJFARP.js";import"../../chunk-WWANHPT7.js";import"../../chunk-W5DG5WWJ.js";import"../../chunk-FZ2HS6G7.js";import"../../chunk-36UPHOJS.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-DHRIURRT.js";import"../../chunk-S56EWAS4.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-VRQXHCFR.js";import"../../chunk-AYDF3IFZ.js";export{a as useTermination};
1
+ import{a}from"../../chunk-4N3CYS6F.js";import"../../chunk-HSW5HMHH.js";import"../../chunk-VX2UC3HG.js";import"../../chunk-XSHHMBMT.js";import"../../chunk-XFD3ULUF.js";import"../../chunk-JODJFARP.js";import"../../chunk-WWANHPT7.js";import"../../chunk-W5DG5WWJ.js";import"../../chunk-S4XU4SE7.js";import"../../chunk-36UPHOJS.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-DHRIURRT.js";import"../../chunk-2URGWNSM.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-N25EBX6R.js";import"../../chunk-AYDF3IFZ.js";export{a as useTermination};
2
2
  //# sourceMappingURL=hooks.js.map
@@ -2,11 +2,12 @@ export { TerminationFlow, TerminationRenderProps } from './TerminationFlow.js';
2
2
  export { TerminationFormValues } from './types.js';
3
3
  import 'react';
4
4
  import './hooks.js';
5
- import '../../types.gen-CsMdyQkb.js';
5
+ import '../../types.gen-D5alruJJ.js';
6
6
  import '../../mutations-v9H353tz.js';
7
7
  import '@remoteoss/json-schema-form';
8
8
  import '../useStepState.js';
9
9
  import 'react-hook-form';
10
+ import './utils.js';
10
11
  import '../CostCalculator/types.js';
11
12
  import './TerminationSubmit.js';
12
13
  import './TimeOff.js';
@@ -1,2 +1,2 @@
1
- import"../../chunk-M22FKNEY.js";import{a}from"../../chunk-DZSZOC2G.js";import"../../chunk-GGAS4ZNQ.js";import"../../chunk-HSW5HMHH.js";import"../../chunk-VX2UC3HG.js";import"../../chunk-XSHHMBMT.js";import"../../chunk-XFD3ULUF.js";import"../../chunk-JODJFARP.js";import"../../chunk-WWANHPT7.js";import"../../chunk-W5DG5WWJ.js";import"../../chunk-FZ2HS6G7.js";import"../../chunk-SLD7DFLW.js";import"../../chunk-CKEVRQRG.js";import"../../chunk-YOC3VDC7.js";import"../../chunk-6TYJC6YS.js";import"../../chunk-KSGPQCSG.js";import"../../chunk-D3SD6MMV.js";import"../../chunk-JBG4RVXQ.js";import"../../chunk-Q64URAIN.js";import"../../chunk-DZYFSFZ7.js";import"../../chunk-36UPHOJS.js";import"../../chunk-QOMUXX6W.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-DHRIURRT.js";import"../../chunk-S56EWAS4.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-MIHU6CEZ.js";import"../../chunk-GFBF55NR.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-56BNVYTD.js";import"../../chunk-VRQXHCFR.js";import"../../chunk-IDSJI7KQ.js";import"../../chunk-5ETXP2QF.js";import"../../chunk-AYDF3IFZ.js";export{a as TerminationFlow};
1
+ import"../../chunk-M22FKNEY.js";import{a}from"../../chunk-TXLTMGOU.js";import"../../chunk-4N3CYS6F.js";import"../../chunk-HSW5HMHH.js";import"../../chunk-VX2UC3HG.js";import"../../chunk-XSHHMBMT.js";import"../../chunk-XFD3ULUF.js";import"../../chunk-JODJFARP.js";import"../../chunk-WWANHPT7.js";import"../../chunk-W5DG5WWJ.js";import"../../chunk-S4XU4SE7.js";import"../../chunk-T3PTQ4QM.js";import"../../chunk-KGUR7YMA.js";import"../../chunk-YOC3VDC7.js";import"../../chunk-QOXOAPGX.js";import"../../chunk-KSGPQCSG.js";import"../../chunk-D3SD6MMV.js";import"../../chunk-WZ5AXHQT.js";import"../../chunk-MI3HDT5D.js";import"../../chunk-DZYFSFZ7.js";import"../../chunk-36UPHOJS.js";import"../../chunk-QOMUXX6W.js";import"../../chunk-JRQSZHUU.js";import"../../chunk-DHRIURRT.js";import"../../chunk-2URGWNSM.js";import"../../chunk-U3I3TJKB.js";import"../../chunk-GFBF55NR.js";import"../../chunk-A4RX3KRZ.js";import"../../chunk-WRDKLT4N.js";import"../../chunk-56BNVYTD.js";import"../../chunk-IDSJI7KQ.js";import"../../chunk-N25EBX6R.js";import"../../chunk-5ETXP2QF.js";import"../../chunk-AYDF3IFZ.js";export{a as TerminationFlow};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import { T as TerminationDetailsParams } from '../../types.gen-CsMdyQkb.js';
1
+ import { T as TerminationDetailsParams } from '../../types.gen-D5alruJJ.js';
2
2
 
3
3
  type TerminationFormValues = {
4
4
  acknowledge_termination_procedure: boolean;
@@ -3,6 +3,6 @@ import 'react';
3
3
  import 'react-hook-form';
4
4
 
5
5
  type StepTerminationKeys = 'employee_communication' | 'termination_details' | 'paid_time_off' | 'additional_information';
6
- declare const STEPS: Record<StepTerminationKeys, Step>;
6
+ declare const STEPS: Record<StepTerminationKeys, Step<StepTerminationKeys>>;
7
7
 
8
8
  export { STEPS, type StepTerminationKeys };
@@ -1,2 +1,2 @@
1
- import{a}from"../../chunk-FZ2HS6G7.js";import"../../chunk-AYDF3IFZ.js";export{a as STEPS};
1
+ import{a}from"../../chunk-S4XU4SE7.js";import"../../chunk-AYDF3IFZ.js";export{a as STEPS};
2
2
  //# sourceMappingURL=utils.js.map
@@ -1,5 +1,5 @@
1
1
  import { JSFModify } from './CostCalculator/types.js';
2
- import '../types.gen-CsMdyQkb.js';
2
+ import '../types.gen-D5alruJJ.js';
3
3
  import '@remoteoss/json-schema-form';
4
4
 
5
5
  type Success<T> = {
@@ -1,18 +1,18 @@
1
1
  import * as React from 'react';
2
2
  import { FieldValues } from 'react-hook-form';
3
3
 
4
- type Step = {
4
+ type Step<T extends string> = {
5
5
  index: number;
6
- name: string;
6
+ name: T;
7
7
  };
8
8
  type StepState<T extends string, Fields = FieldValues> = {
9
- currentStep: Step;
9
+ currentStep: Step<T>;
10
10
  totalSteps: number;
11
11
  values: {
12
12
  [key in T]: Fields;
13
13
  } | null;
14
14
  };
15
- declare const useStepState: <T extends string, Fields = FieldValues>(steps: Record<T, Step>) => {
15
+ declare const useStepState: <T extends string, Fields = FieldValues>(steps: Record<T, Step<T>>) => {
16
16
  /**
17
17
  * Moves to the next step in the step state.
18
18
  * It updates the current step and resets the field values for the next step.
@@ -33,6 +33,12 @@ declare const useStepState: <T extends string, Fields = FieldValues>(steps: Reco
33
33
  * @returns {StepState<T>} The current step state.
34
34
  */
35
35
  stepState: StepState<T, Fields>;
36
+ /**
37
+ * Goes to a specific step in the step state.
38
+ * @param step The step to go to.
39
+ * @returns {void}
40
+ */
41
+ goToStep: (step: T) => void;
36
42
  /**
37
43
  * The field values for the current step.
38
44
  * @returns {FieldValues} The field values for the current step.
@@ -1,2 +1,2 @@
1
- import{a}from"../chunk-S56EWAS4.js";import"../chunk-AYDF3IFZ.js";export{a as useStepState};
1
+ import{a}from"../chunk-2URGWNSM.js";import"../chunk-AYDF3IFZ.js";export{a as useStepState};
2
2
  //# sourceMappingURL=useStepState.js.map
@@ -1,7 +1,7 @@
1
1
  import { AnyObjectSchema } from 'yup';
2
2
  import { Field } from './types.js';
3
3
  import './CostCalculator/types.js';
4
- import '../types.gen-CsMdyQkb.js';
4
+ import '../types.gen-D5alruJJ.js';
5
5
  import '@remoteoss/json-schema-form';
6
6
 
7
7
  /**
package/dist/index.d.ts CHANGED
@@ -18,12 +18,13 @@ export { OnboardingFlow, OnboardingRenderProps } from './flows/Onboarding/Onboar
18
18
  export { BasicInformationFormPayload, BenefitsFormPayload, ContractDetailsFormPayload } from './flows/Onboarding/types.js';
19
19
  export { CostCalculatorEstimationFormValues, CostCalculatorEstimationOptions, JSFModify } from './flows/CostCalculator/types.js';
20
20
  import * as _tanstack_react_query from '@tanstack/react-query';
21
- import { E as EmploymentShowResponse, q as TimeoffStatus, L as ListTimeoffResponse } from './types.gen-CsMdyQkb.js';
22
- export { C as ContractAmendmentAutomatableResponse, j as CostCalculatorEstimateResponse, c as EmploymentCreationResponse, e as EmploymentResponse, O as OffboardingResponse, S as SuccessResponse } from './types.gen-CsMdyQkb.js';
21
+ import { E as EmploymentShowResponse, q as TimeoffStatus, L as ListTimeoffResponse } from './types.gen-D5alruJJ.js';
22
+ export { C as ContractAmendmentAutomatableResponse, r as CostCalculatorEmployment, c as CostCalculatorEstimateResponse, s as Currency, k as EmploymentCreationResponse, m as EmploymentResponse, O as OffboardingResponse, S as SuccessResponse } from './types.gen-D5alruJJ.js';
23
23
  import { ContractAmendmentParams } from './flows/ContractAmendment/types.js';
24
24
  import { ValidationError } from 'yup';
25
25
  import React__default, { PropsWithChildren } from 'react';
26
- import { R as RemoteFlowsSDKProps } from './remoteFlows-CswYencu.js';
26
+ import { R as RemoteFlowsSDKProps } from './remoteFlows-BqpqaWsU.js';
27
+ export { C as Components } from './remoteFlows-BqpqaWsU.js';
27
28
  import './flows/types.js';
28
29
  import '@remoteoss/json-schema-form';
29
30
  import 'react-hook-form';
@@ -31,6 +32,7 @@ import './flows/ContractAmendment/ContractAmendmentBack.js';
31
32
  import './mutations-v9H353tz.js';
32
33
  import './flows/useStepState.js';
33
34
  import './flows/Termination/hooks.js';
35
+ import './flows/Termination/utils.js';
34
36
  import './flows/Termination/TerminationSubmit.js';
35
37
  import './flows/Termination/TimeOff.js';
36
38
  import './flows/Termination/TerminationBack.js';
@@ -39,6 +41,7 @@ import './flows/Termination/TerminationDetailsForm.js';
39
41
  import './flows/Termination/PaidTimeOffForm.js';
40
42
  import './flows/Termination/AdditionalDetailsForm.js';
41
43
  import './flows/Onboarding/hooks.js';
44
+ import './flows/Onboarding/utils.js';
42
45
  import './flows/Onboarding/BasicInformationStep.js';
43
46
  import './flows/Onboarding/OnboardingSubmit.js';
44
47
  import './flows/Onboarding/OnboardingBack.js';
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import"./chunk-M22FKNEY.js";import{a as te}from"./chunk-DZSZOC2G.js";import"./chunk-GGAS4ZNQ.js";import"./chunk-HSW5HMHH.js";import"./chunk-VX2UC3HG.js";import"./chunk-XSHHMBMT.js";import"./chunk-XFD3ULUF.js";import"./chunk-JODJFARP.js";import"./chunk-WWANHPT7.js";import"./chunk-W5DG5WWJ.js";import"./chunk-FZ2HS6G7.js";import"./chunk-SLD7DFLW.js";import"./chunk-CKEVRQRG.js";import"./chunk-YOC3VDC7.js";import"./chunk-6TYJC6YS.js";import"./chunk-KSGPQCSG.js";import"./chunk-D3SD6MMV.js";import"./chunk-FGBEOUQK.js";import{a as E}from"./chunk-S4FKLPBB.js";import"./chunk-GMGKIQLI.js";import"./chunk-WQHKB5T7.js";import"./chunk-KH6QS5OU.js";import"./chunk-J55S4SEH.js";import"./chunk-3FVI5JIC.js";import"./chunk-6A3F6JG6.js";import"./chunk-MESREYTZ.js";import"./chunk-JBG4RVXQ.js";import"./chunk-Q64URAIN.js";import"./chunk-DZYFSFZ7.js";import"./chunk-GULCZWSK.js";import{a as S}from"./chunk-DGPRFQYK.js";import{a as _}from"./chunk-DYB3RWP7.js";import{a as z}from"./chunk-DE5FSFYL.js";import{b as y,c as k,e as C}from"./chunk-GRYAM4FZ.js";import"./chunk-UPRUP24B.js";import{a as P}from"./chunk-PNXZHV6W.js";import{a as R}from"./chunk-7CYG2RHP.js";import{a as F}from"./chunk-EAAIAMTY.js";import"./chunk-OLJ2S6A6.js";import{a as oe}from"./chunk-PWKM2R6V.js";import"./chunk-QSHYMFMY.js";import"./chunk-M7WCW7WD.js";import"./chunk-ALRU77S5.js";import"./chunk-MHKNAQLP.js";import"./chunk-NE547PW4.js";import"./chunk-2PXGLWCY.js";import"./chunk-A7ZJQCNU.js";import"./chunk-CFRYIKSR.js";import"./chunk-ED3CBUQL.js";import"./chunk-LNKYOAKF.js";import"./chunk-WS3C3WIJ.js";import"./chunk-36UPHOJS.js";import{a as ae}from"./chunk-KQH5HLN5.js";import{a as H}from"./chunk-XLFHHYVS.js";import{a as re}from"./chunk-GOLOL2V6.js";import{a as J,b as ee}from"./chunk-QOMUXX6W.js";import"./chunk-JRQSZHUU.js";import{a as p}from"./chunk-DHRIURRT.js";import"./chunk-UECSVYQ5.js";import"./chunk-S56EWAS4.js";import"./chunk-FMT2OTOL.js";import{a as Z}from"./chunk-ABR3B66K.js";import{a as $}from"./chunk-HEPL5WDF.js";import"./chunk-A4RX3KRZ.js";import"./chunk-MIHU6CEZ.js";import"./chunk-GFBF55NR.js";import{a as g,c as v}from"./chunk-WRDKLT4N.js";import"./chunk-56BNVYTD.js";import"./chunk-VRQXHCFR.js";import"./chunk-IDSJI7KQ.js";import"./chunk-6HGUGIYJ.js";import{c as T}from"./chunk-5ETXP2QF.js";import{a}from"./chunk-AYDF3IFZ.js";import{QueryClient as L,QueryClientProvider as q}from"@tanstack/react-query";import n from"react";function l(e){let r=document.documentElement;Object.keys(e).forEach(t=>{let o=e[t];o&&r.style.setProperty(t,o)})}a(l,"setCssProperties");function B(e){let r={};return Object.keys(e).forEach(t=>{r[`--${t}`]=e[t]}),r}a(B,"mapThemeColors");function j(e){return{"--spacing":e}}a(j,"mapThemeSpacing");function M(e){return{"--radius":e}}a(M,"mapThemeBorderRadius");function I(e){return{"--fontSizeBase":e.fontSizeBase}}a(I,"mapThemeFont");function u(e){e?.colors&&l(B(e.colors)),e?.spacing&&l(j(e.spacing)),e?.borderRadius&&l(M(e.borderRadius)),e?.font&&l(I(e.font))}a(u,"applyTheme");import A,{createContext as N,useEffect as O,useMemo as U}from"react";var D=N({theme:{}});function h(e){O(()=>{e.theme&&Object.keys(e.theme).length>0&&u(e.theme)},[e.theme]);let r=U(()=>({theme:e.theme}),[e.theme]);return A.createElement(D.Provider,{value:r},e.children)}a(h,"ThemeProvider");var m={staging:"https://gateway.niceremote.com",partners:"https://gateway.partners.remote-sandbox.com",production:"https://gateway.remote.com"};import{createClient as K}from"@hey-api/client-fetch";import{useQuery as V}from"@tanstack/react-query";import{useRef as f}from"react";function W(e){try{return new URL(e),!0}catch{return!1}}a(W,"isValidUrl");var w=a(({auth:e,options:r})=>{let t=f(null),{refetch:o}=V({queryKey:["auth"],queryFn:e,enabled:!1}),s=r.isTestingMode?m.partners:"https://gateway.remote.com",c=p.getConfig(),b="0.4.0-alpha.1",d=!!r.proxy&&W(r.proxy.url);return r.proxy&&!d&&console.error("Invalid proxy URL provided. Using default base URL."),f(K({...c,headers:{...c.headers,...d?r.proxy?.headers:{},"X-Client-Name":"remote-flows-sdk","X-Client-Version":b},baseUrl:d?r.proxy?.url:s,auth:a(async()=>{function x(i){return!i||Date.now()+6e4>i}if(a(x,"hasTokenExpired"),!t.current||x(t.current.expiresAt)){let{data:i}=await o();i&&(t.current={accessToken:i.accessToken,expiresAt:Date.now()+i.expiresIn*1e3})}return t.current?.accessToken},"auth")}))},"useAuth");var Q=new L;function X({children:e,auth:r,isTestingMode:t,proxy:o}){let s=w({auth:r,options:{isTestingMode:!!t,proxy:o}});return n.createElement(v.Provider,{value:{client:s.current}},e)}a(X,"RemoteFlowContextWrapper");function Y({children:e,components:r}){return n.createElement(g.Provider,{value:r?{components:r}:{components:{}}},e)}a(Y,"FormFieldsProvider");function G({auth:e,children:r,components:t,isTestingMode:o=!1,theme:s,proxy:c}){return n.createElement(q,{client:Q},n.createElement(Y,{components:t},n.createElement(X,{isTestingMode:o,auth:e,proxy:c},n.createElement(h,{theme:s},r))))}a(G,"RemoteFlows");export{Z as ContractAmendmentConfirmationForm,ae as ContractAmendmentFlow,$ as ContractAmendmentForm,H as ContractAmendmentSubmit,S as CostCalculatorDisclaimer,z as CostCalculatorFlow,P as CostCalculatorForm,R as CostCalculatorResetButton,E as CostCalculatorResults,F as CostCalculatorSubmitButton,oe as OnboardingFlow,G as RemoteFlows,te as TerminationFlow,y as buildCostCalculatorEstimationPayload,_ as disclaimerData,T as transformYupErrorsIntoObject,re as useContractAmendment,C as useCostCalculator,k as useCostCalculatorEstimationPdf,J as useEmploymentQuery,ee as useTimeOffQuery};
1
+ import"./chunk-M22FKNEY.js";import{a as te}from"./chunk-TXLTMGOU.js";import"./chunk-4N3CYS6F.js";import"./chunk-HSW5HMHH.js";import"./chunk-VX2UC3HG.js";import"./chunk-XSHHMBMT.js";import"./chunk-XFD3ULUF.js";import"./chunk-JODJFARP.js";import"./chunk-WWANHPT7.js";import"./chunk-W5DG5WWJ.js";import"./chunk-S4XU4SE7.js";import"./chunk-T3PTQ4QM.js";import"./chunk-KGUR7YMA.js";import"./chunk-YOC3VDC7.js";import"./chunk-QOXOAPGX.js";import"./chunk-KSGPQCSG.js";import"./chunk-D3SD6MMV.js";import"./chunk-GULCZWSK.js";import"./chunk-WZ5AXHQT.js";import"./chunk-MI3HDT5D.js";import"./chunk-DZYFSFZ7.js";import{a as oe}from"./chunk-DQM4AWYT.js";import"./chunk-SYWI4UB6.js";import"./chunk-MHKNAQLP.js";import"./chunk-3KAYKVK5.js";import"./chunk-7B32RZXH.js";import"./chunk-YIBRPAR3.js";import"./chunk-FNTHWOZU.js";import"./chunk-OXOB35EA.js";import"./chunk-M7WCW7WD.js";import"./chunk-76JJOA3E.js";import"./chunk-WS3C3WIJ.js";import"./chunk-FGBEOUQK.js";import{a as S}from"./chunk-S4FKLPBB.js";import"./chunk-GMGKIQLI.js";import"./chunk-WQHKB5T7.js";import"./chunk-KH6QS5OU.js";import"./chunk-J55S4SEH.js";import"./chunk-3FVI5JIC.js";import"./chunk-6A3F6JG6.js";import"./chunk-MESREYTZ.js";import{a as P}from"./chunk-XOUAD7MS.js";import{a as R}from"./chunk-7CYG2RHP.js";import{a as F}from"./chunk-EAAIAMTY.js";import"./chunk-A7ZJQCNU.js";import{a as E}from"./chunk-DGPRFQYK.js";import{a as _}from"./chunk-DYB3RWP7.js";import{a as z}from"./chunk-GQD6NNYO.js";import"./chunk-OLJ2S6A6.js";import{b as y,c as k,e as C}from"./chunk-P2COURSU.js";import"./chunk-UPRUP24B.js";import"./chunk-36UPHOJS.js";import{a as ae}from"./chunk-C4E24DUG.js";import{a as H}from"./chunk-XLFHHYVS.js";import{a as re}from"./chunk-TGB3TV3K.js";import{a as J,b as ee}from"./chunk-QOMUXX6W.js";import"./chunk-JRQSZHUU.js";import"./chunk-NVMRRBRE.js";import{a as p}from"./chunk-DHRIURRT.js";import"./chunk-2URGWNSM.js";import"./chunk-FMT2OTOL.js";import{a as Z}from"./chunk-BLPOQIGB.js";import{a as $}from"./chunk-JT5XHQEY.js";import"./chunk-U3I3TJKB.js";import"./chunk-GFBF55NR.js";import"./chunk-A4RX3KRZ.js";import{a as g,c as v}from"./chunk-WRDKLT4N.js";import"./chunk-56BNVYTD.js";import"./chunk-IDSJI7KQ.js";import"./chunk-N25EBX6R.js";import"./chunk-6HGUGIYJ.js";import{c as T}from"./chunk-5ETXP2QF.js";import{a}from"./chunk-AYDF3IFZ.js";import{QueryClient as L,QueryClientProvider as q}from"@tanstack/react-query";import n from"react";function l(e){let r=document.documentElement;Object.keys(e).forEach(t=>{let o=e[t];o&&r.style.setProperty(t,o)})}a(l,"setCssProperties");function B(e){let r={};return Object.keys(e).forEach(t=>{r[`--${t}`]=e[t]}),r}a(B,"mapThemeColors");function j(e){return{"--spacing":e}}a(j,"mapThemeSpacing");function M(e){return{"--radius":e}}a(M,"mapThemeBorderRadius");function I(e){return{"--fontSizeBase":e.fontSizeBase}}a(I,"mapThemeFont");function u(e){e?.colors&&l(B(e.colors)),e?.spacing&&l(j(e.spacing)),e?.borderRadius&&l(M(e.borderRadius)),e?.font&&l(I(e.font))}a(u,"applyTheme");import A,{createContext as N,useEffect as O,useMemo as U}from"react";var D=N({theme:{}});function h(e){O(()=>{e.theme&&Object.keys(e.theme).length>0&&u(e.theme)},[e.theme]);let r=U(()=>({theme:e.theme}),[e.theme]);return A.createElement(D.Provider,{value:r},e.children)}a(h,"ThemeProvider");var m={staging:"https://gateway.niceremote.com",partners:"https://gateway.partners.remote-sandbox.com",production:"https://gateway.remote.com"};import{createClient as K}from"@hey-api/client-fetch";import{useQuery as V}from"@tanstack/react-query";import{useRef as f}from"react";function W(e){try{return new URL(e),!0}catch{return!1}}a(W,"isValidUrl");var w=a(({auth:e,options:r})=>{let t=f(null),{refetch:o}=V({queryKey:["auth"],queryFn:e,enabled:!1}),s=r.isTestingMode?m.partners:"https://gateway.remote.com",c=p.getConfig(),b="0.4.0-alpha.3",d=!!r.proxy&&W(r.proxy.url);return r.proxy&&!d&&console.error("Invalid proxy URL provided. Using default base URL."),f(K({...c,headers:{...c.headers,...d?r.proxy?.headers:{},"X-Client-Name":"remote-flows-sdk","X-Client-Version":b},baseUrl:d?r.proxy?.url:s,auth:a(async()=>{function x(i){return!i||Date.now()+6e4>i}if(a(x,"hasTokenExpired"),!t.current||x(t.current.expiresAt)){let{data:i}=await o();i&&(t.current={accessToken:i.accessToken,expiresAt:Date.now()+i.expiresIn*1e3})}return t.current?.accessToken},"auth")}))},"useAuth");var Q=new L;function X({children:e,auth:r,isTestingMode:t,proxy:o}){let s=w({auth:r,options:{isTestingMode:!!t,proxy:o}});return n.createElement(v.Provider,{value:{client:s.current}},e)}a(X,"RemoteFlowContextWrapper");function Y({children:e,components:r}){return n.createElement(g.Provider,{value:r?{components:r}:{components:{}}},e)}a(Y,"FormFieldsProvider");function G({auth:e,children:r,components:t,isTestingMode:o=!1,theme:s,proxy:c}){return n.createElement(q,{client:Q},n.createElement(Y,{components:t},n.createElement(X,{isTestingMode:o,auth:e,proxy:c},n.createElement(h,{theme:s},r))))}a(G,"RemoteFlows");export{Z as ContractAmendmentConfirmationForm,ae as ContractAmendmentFlow,$ as ContractAmendmentForm,H as ContractAmendmentSubmit,E as CostCalculatorDisclaimer,z as CostCalculatorFlow,P as CostCalculatorForm,R as CostCalculatorResetButton,S as CostCalculatorResults,F as CostCalculatorSubmitButton,oe as OnboardingFlow,G as RemoteFlows,te as TerminationFlow,y as buildCostCalculatorEstimationPayload,_ as disclaimerData,T as transformYupErrorsIntoObject,re as useContractAmendment,C as useCostCalculator,k as useCostCalculatorEstimationPdf,J as useEmploymentQuery,ee as useTimeOffQuery};
2
2
  //# sourceMappingURL=index.js.map
@@ -24,7 +24,7 @@ type ThemeFont = {
24
24
  fontSizeBase: string;
25
25
  };
26
26
 
27
- type SupportedTypes = 'text' | 'number' | 'email' | 'select' | 'radio' | 'fieldset' | 'date' | 'checkbox' | 'textarea' | 'money' | 'file' | 'countries';
27
+ type SupportedTypes = 'text' | 'number' | 'email' | 'select' | 'radio' | 'fieldset' | 'date' | 'checkbox' | 'textarea' | 'money' | 'file' | 'countries' | 'hidden';
28
28
 
29
29
  type StatementProps = {
30
30
  title?: string;
@@ -944,4 +944,4 @@ type PostInviteEmploymentInvitationErrors = {
944
944
  };
945
945
  type PostInviteEmploymentInvitationError = PostInviteEmploymentInvitationErrors[keyof PostInviteEmploymentInvitationErrors];
946
946
 
947
- export type { ContractAmendmentAutomatableResponse as C, EmploymentShowResponse as E, ListTimeoffResponse as L, OffboardingResponse as O, PostAutomatableContractAmendmentError as P, SuccessResponse as S, TerminationDetailsParams as T, ContractAmendmentResponse as a, PostCreateContractAmendmentError as b, EmploymentCreationResponse as c, PostCreateEmployment2Error as d, EmploymentResponse as e, PatchUpdateEmployment2Error as f, PutUpdateBenefitOfferError as g, PostInviteEmploymentInvitationError as h, EmploymentCreateParams as i, CostCalculatorEstimateResponse as j, PostCreateEstimationError as k, CostCalculatorEstimatePdfResponse as l, PostCreateEstimationPdfError as m, CostCalculatorEstimateParams as n, EmploymentTermType as o, PostCreateOffboardingError as p, TimeoffStatus as q };
947
+ export type { ContractAmendmentAutomatableResponse as C, EmploymentShowResponse as E, ListTimeoffResponse as L, OffboardingResponse as O, PostAutomatableContractAmendmentError as P, SuccessResponse as S, TerminationDetailsParams as T, ContractAmendmentResponse as a, PostCreateContractAmendmentError as b, CostCalculatorEstimateResponse as c, PostCreateEstimationError as d, CostCalculatorEstimatePdfResponse as e, PostCreateEstimationPdfError as f, CostCalculatorEstimateParams as g, EmploymentCreateParams as h, EmploymentTermType as i, PostCreateOffboardingError as j, EmploymentCreationResponse as k, PostCreateEmployment2Error as l, EmploymentResponse as m, PatchUpdateEmployment2Error as n, PutUpdateBenefitOfferError as o, PostInviteEmploymentInvitationError as p, TimeoffStatus as q, CostCalculatorEmployment as r, Currency as s };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remoteoss/remote-flows",
3
- "version": "0.4.0-alpha.1",
3
+ "version": "0.4.0-alpha.3",
4
4
  "scripts": {
5
5
  "build": "NODE_ENV=production tsup",
6
6
  "ci": "npm run build && npm run check-format && npm run check-exports && npm run lint && npm run test",
@@ -1,2 +0,0 @@
1
- var e={basic_information:{index:0,name:"basic_information"},contract_details:{index:1,name:"contract_details"},benefits:{index:2,name:"benefits"},review:{index:3,name:"review"}};export{e as a};
2
- //# sourceMappingURL=chunk-2PXGLWCY.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/utils.ts"],"sourcesContent":["import { Step } from '@/src/flows/useStepState';\n\ntype StepKeys =\n | 'basic_information'\n | 'contract_details'\n | 'benefits'\n | 'review';\n\nexport const STEPS: Record<StepKeys, Step> = {\n basic_information: { index: 0, name: 'basic_information' },\n contract_details: { index: 1, name: 'contract_details' },\n benefits: { index: 2, name: 'benefits' },\n review: { index: 3, name: 'review' },\n} as const;\n"],"mappings":"AAQO,IAAMA,EAAgC,CAC3C,kBAAmB,CAAE,MAAO,EAAG,KAAM,mBAAoB,EACzD,iBAAkB,CAAE,MAAO,EAAG,KAAM,kBAAmB,EACvD,SAAU,CAAE,MAAO,EAAG,KAAM,UAAW,EACvC,OAAQ,CAAE,MAAO,EAAG,KAAM,QAAS,CACrC","names":["STEPS"]}
@@ -1,2 +0,0 @@
1
- import{c as n}from"./chunk-VRQXHCFR.js";import{a as m}from"./chunk-IDSJI7KQ.js";import{b as a}from"./chunk-6HGUGIYJ.js";import{a as o}from"./chunk-AYDF3IFZ.js";import s from"react";import{useForm as S}from"react-hook-form";function w({onSubmit:i,onError:d,onSuccess:c}){let{contractAmendment:{stepState:l,isSubmitting:u,onSubmit:f,fields:C},formId:p}=a(),r=S({defaultValues:l.values?.form}),A=o(async e=>{let F=n(e,C,{isPartialValidation:!1});await i?.(F);let t=await f(e);t.error?d?.(t.error):c?.(t.data)},"handleSubmit");return u?null:s.createElement(m,{...r},s.createElement("form",{id:p,onSubmit:r.handleSubmit(A),className:"RemoteFlows__ContractAmendmentConfirmationForm"}))}o(w,"ContractAmendmentConfirmationForm");export{w as a};
2
- //# sourceMappingURL=chunk-ABR3B66K.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/ContractAmendment/ContractAmendmentConfirmationForm.tsx"],"sourcesContent":["import {\n ContractAmendmentResponse,\n PostCreateContractAmendmentError,\n} from '@/src/client';\nimport { parseJSFToValidate } from '@/src/components/form/utils';\nimport { Form } from '@/src/components/ui/form';\nimport React from 'react';\nimport { FieldValues, useForm } from 'react-hook-form';\nimport { useContractAmendmentContext } from './context';\n\ntype ContractAmendmentConfirmationFormProps = {\n /**\n * Callback function to be called when the contract amendment form is submitted.\n * This function is called before the contract amendment is submitted.\n * It can be used to perform any additional validation or processing before\n * the contract amendment is submitted.\n * @param values\n * @returns\n */\n onSubmit?: (values: FieldValues) => Promise<void>;\n /**\n * Callback function to be called when the contract amendment fails.\n * @param error\n * @returns\n */\n onError?: (error: PostCreateContractAmendmentError) => void;\n /**\n * Callback function to be called when the contract amendment is successfully submitted.\n * @param data\n * @returns\n */\n onSuccess?: (data: ContractAmendmentResponse) => void;\n};\n\nexport function ContractAmendmentConfirmationForm({\n onSubmit,\n onError,\n onSuccess,\n}: ContractAmendmentConfirmationFormProps) {\n const {\n contractAmendment: {\n stepState,\n isSubmitting,\n onSubmit: submitContractAmendment,\n fields,\n },\n formId,\n } = useContractAmendmentContext();\n const form = useForm({\n defaultValues: stepState.values?.form,\n });\n\n const handleSubmit = async (values: FieldValues) => {\n const parsedValues = parseJSFToValidate(values, fields, {\n isPartialValidation: false,\n });\n await onSubmit?.(parsedValues);\n\n const contractAmendmentResult = await submitContractAmendment(values);\n\n if (contractAmendmentResult.error) {\n onError?.(\n contractAmendmentResult.error as PostCreateContractAmendmentError,\n );\n } else {\n onSuccess?.(contractAmendmentResult.data as ContractAmendmentResponse);\n }\n };\n\n // Ensure that step\n if (isSubmitting) {\n return null;\n }\n\n return (\n <Form {...form}>\n <form\n id={formId}\n onSubmit={form.handleSubmit(handleSubmit)}\n className=\"RemoteFlows__ContractAmendmentConfirmationForm\"\n ></form>\n </Form>\n );\n}\n"],"mappings":"gKAMA,OAAOA,MAAW,QAClB,OAAsB,WAAAC,MAAe,kBA2B9B,SAASC,EAAkC,CAChD,SAAAC,EACA,QAAAC,EACA,UAAAC,CACF,EAA2C,CACzC,GAAM,CACJ,kBAAmB,CACjB,UAAAC,EACA,aAAAC,EACA,SAAUC,EACV,OAAAC,CACF,EACA,OAAAC,CACF,EAAIC,EAA4B,EAC1BC,EAAOC,EAAQ,CACnB,cAAeP,EAAU,QAAQ,IACnC,CAAC,EAEKQ,EAAeC,EAAA,MAAOC,GAAwB,CAClD,IAAMC,EAAeC,EAAmBF,EAAQP,EAAQ,CACtD,oBAAqB,EACvB,CAAC,EACD,MAAMN,IAAWc,CAAY,EAE7B,IAAME,EAA0B,MAAMX,EAAwBQ,CAAM,EAEhEG,EAAwB,MAC1Bf,IACEe,EAAwB,KAC1B,EAEAd,IAAYc,EAAwB,IAAiC,CAEzE,EAfqB,gBAkBrB,OAAIZ,EACK,KAIPa,EAAA,cAACC,EAAA,CAAM,GAAGT,GACRQ,EAAA,cAAC,QACC,GAAIV,EACJ,SAAUE,EAAK,aAAaE,CAAY,EACxC,UAAU,iDACX,CACH,CAEJ,CAjDgBC,EAAAb,EAAA","names":["React","useForm","ContractAmendmentConfirmationForm","onSubmit","onError","onSuccess","stepState","isSubmitting","submitContractAmendment","fields","formId","useContractAmendmentContext","form","useForm","handleSubmit","__name","values","parsedValues","parseJSFToValidate","contractAmendmentResult","React","Form"]}
@@ -1,2 +0,0 @@
1
- import{a as s}from"./chunk-NE547PW4.js";import{b as a}from"./chunk-WS3C3WIJ.js";import{a as m}from"./chunk-JRQSZHUU.js";import{b as i}from"./chunk-56BNVYTD.js";import{a as o}from"./chunk-AYDF3IFZ.js";import y from"react";function w({onSubmit:u,onSuccess:d,onError:n,...e}){let{onboardingBag:r}=a(),p=s(),{mutateAsync:c}=m(p),l=o(async()=>{try{if(await u?.(),!r.employmentId)throw new Error("Employment ID is required");let t=await c({employment_id:r.employmentId});if(t.data?.data){d?.(t.data.data);return}t.error&&n?.(t.error)}catch(t){n?.(t)}},"handleSubmit");return y.createElement(i,{...e,onClick:()=>{l()}},e.children)}o(w,"OnboardingInvite");export{w as a};
2
- //# sourceMappingURL=chunk-ALRU77S5.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/OnboardingInvite.tsx"],"sourcesContent":["import React, { ButtonHTMLAttributes, PropsWithChildren } from 'react';\nimport { useEmploymentInvite } from './hooks';\nimport { Button } from '@/src/components/ui/button';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport { SuccessResponse } from '@/src/client';\nimport { useOnboardingContext } from './context';\n\ntype OnboardingInviteProps = PropsWithChildren<\n ButtonHTMLAttributes<HTMLButtonElement> & {\n onSuccess?: (data: SuccessResponse) => void;\n onError?: (error: unknown) => void;\n onSubmit?: () => void;\n }\n>;\n\nexport function OnboardingInvite({\n onSubmit,\n onSuccess,\n onError,\n ...props\n}: OnboardingInviteProps) {\n const { onboardingBag } = useOnboardingContext();\n const employmentInviteMutation = useEmploymentInvite();\n\n const { mutateAsync: employmentInviteMutationAsync } = mutationToPromise(\n employmentInviteMutation,\n );\n\n const handleSubmit = async () => {\n try {\n await onSubmit?.();\n\n if (!onboardingBag.employmentId) {\n throw new Error('Employment ID is required');\n }\n\n const response = await employmentInviteMutationAsync({\n employment_id: onboardingBag.employmentId,\n });\n if (response.data?.data) {\n onSuccess?.(response.data.data);\n return;\n }\n if (response.error) {\n onError?.(response.error);\n }\n } catch (error) {\n onError?.(error);\n }\n };\n\n return (\n <Button\n {...props}\n onClick={() => {\n handleSubmit();\n }}\n >\n {props.children}\n </Button>\n );\n}\n"],"mappings":"wMAAA,OAAOA,MAAwD,QAexD,SAASC,EAAiB,CAC/B,SAAAC,EACA,UAAAC,EACA,QAAAC,EACA,GAAGC,CACL,EAA0B,CACxB,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAqB,EACzCC,EAA2BC,EAAoB,EAE/C,CAAE,YAAaC,CAA8B,EAAIC,EACrDH,CACF,EAEMI,EAAeC,EAAA,SAAY,CAC/B,GAAI,CAGF,GAFA,MAAMX,IAAW,EAEb,CAACI,EAAc,aACjB,MAAM,IAAI,MAAM,2BAA2B,EAG7C,IAAMQ,EAAW,MAAMJ,EAA8B,CACnD,cAAeJ,EAAc,YAC/B,CAAC,EACD,GAAIQ,EAAS,MAAM,KAAM,CACvBX,IAAYW,EAAS,KAAK,IAAI,EAC9B,MACF,CACIA,EAAS,OACXV,IAAUU,EAAS,KAAK,CAE5B,OAASC,EAAO,CACdX,IAAUW,CAAK,CACjB,CACF,EArBqB,gBAuBrB,OACEC,EAAA,cAACC,EAAA,CACE,GAAGZ,EACJ,QAAS,IAAM,CACbO,EAAa,CACf,GAECP,EAAM,QACT,CAEJ,CA9CgBQ,EAAAZ,EAAA","names":["React","OnboardingInvite","onSubmit","onSuccess","onError","props","onboardingBag","useOnboardingContext","employmentInviteMutation","useEmploymentInvite","employmentInviteMutationAsync","mutationToPromise","handleSubmit","__name","response","error","React","Button"]}
@@ -1,2 +0,0 @@
1
- import{a as e}from"./chunk-LNKYOAKF.js";import{b as i}from"./chunk-WS3C3WIJ.js";import{a}from"./chunk-AYDF3IFZ.js";import f from"react";function l({onSubmit:m,onSuccess:s,onError:t}){let{onboardingBag:r}=i(),p=a(async n=>{try{await m?.(r.parseFormValues(n));let o=await r.onSubmit(n);if(o?.data?.data){s?.(o?.data?.data),r?.next();return}o?.error&&t?.(o?.error)}catch(o){t?.(o)}},"handleSubmit");return f.createElement(e,{defaultValues:r.stepState.values?.basic_information||r.initialValues.basic_information,onSubmit:p})}a(l,"BasicInformationStep");export{l as a};
2
- //# sourceMappingURL=chunk-CFRYIKSR.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/BasicInformationStep.tsx"],"sourcesContent":["import React from 'react';\nimport { useOnboardingContext } from './context';\nimport { OnboardingForm } from '@/src/flows/Onboarding/OnboardingForm';\nimport { BasicInformationFormPayload } from '@/src/flows/Onboarding/types';\nimport { EmploymentCreationResponse } from '@/src/client';\nimport { $TSFixMe } from '@remoteoss/json-schema-form';\n\ntype BasicInformationStepProps = {\n /*\n * The function is called when the form is submitted. It receives the form values as an argument.\n */\n onSubmit?: (payload: BasicInformationFormPayload) => void | Promise<void>;\n /*\n * The function is called when the form submission is successful.\n */\n onSuccess?: (data: EmploymentCreationResponse) => void;\n /*\n * The function is called when an error occurs during form submission.\n */\n onError?: (error: Error) => void;\n};\n\nexport function BasicInformationStep({\n onSubmit,\n onSuccess,\n onError,\n}: BasicInformationStepProps) {\n const { onboardingBag } = useOnboardingContext();\n const handleSubmit = async (payload: $TSFixMe) => {\n try {\n await onSubmit?.(\n onboardingBag.parseFormValues(payload) as BasicInformationFormPayload,\n );\n const response = await onboardingBag.onSubmit(payload);\n if (response?.data?.data) {\n onSuccess?.(response?.data?.data as EmploymentCreationResponse);\n onboardingBag?.next();\n return;\n }\n if (response?.error) {\n onError?.(response?.error);\n }\n } catch (error: unknown) {\n onError?.(error as Error);\n }\n };\n\n return (\n <OnboardingForm\n defaultValues={\n onboardingBag.stepState.values?.basic_information ||\n onboardingBag.initialValues.basic_information\n }\n onSubmit={handleSubmit}\n />\n );\n}\n"],"mappings":"mHAAA,OAAOA,MAAW,QAsBX,SAASC,EAAqB,CACnC,SAAAC,EACA,UAAAC,EACA,QAAAC,CACF,EAA8B,CAC5B,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAqB,EACzCC,EAAeC,EAAA,MAAOC,GAAsB,CAChD,GAAI,CACF,MAAMP,IACJG,EAAc,gBAAgBI,CAAO,CACvC,EACA,IAAMC,EAAW,MAAML,EAAc,SAASI,CAAO,EACrD,GAAIC,GAAU,MAAM,KAAM,CACxBP,IAAYO,GAAU,MAAM,IAAkC,EAC9DL,GAAe,KAAK,EACpB,MACF,CACIK,GAAU,OACZN,IAAUM,GAAU,KAAK,CAE7B,OAASC,EAAgB,CACvBP,IAAUO,CAAc,CAC1B,CACF,EAjBqB,gBAmBrB,OACEC,EAAA,cAACC,EAAA,CACC,cACER,EAAc,UAAU,QAAQ,mBAChCA,EAAc,cAAc,kBAE9B,SAAUE,EACZ,CAEJ,CAlCgBC,EAAAP,EAAA","names":["React","BasicInformationStep","onSubmit","onSuccess","onError","onboardingBag","useOnboardingContext","handleSubmit","__name","payload","response","error","React","OnboardingForm"]}
@@ -1,2 +0,0 @@
1
- import{a}from"./chunk-LNKYOAKF.js";import{b as i}from"./chunk-WS3C3WIJ.js";import{d as s}from"./chunk-VRQXHCFR.js";import{a as t}from"./chunk-AYDF3IFZ.js";import d from"react";function P({components:m,onSubmit:p,onError:r,onSuccess:f}){let{onboardingBag:e}=i(),u=e.fields??[],c=s(u,e.initialValues.benefits);return d.createElement(a,{defaultValues:c,components:m,onSubmit:t(async n=>{try{await p?.(n);let o=await e.onSubmit(n);if(o?.data){f?.(o.data),e?.next();return}o?.error&&r?.(o.error)}catch(o){r?.(o)}},"handleSubmit")})}t(P,"BenefitsStep");export{P as a};
2
- //# sourceMappingURL=chunk-ED3CBUQL.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Onboarding/BenefitsStep.tsx"],"sourcesContent":["import React from 'react';\nimport { Components } from '@/src/types/remoteFlows';\nimport { OnboardingForm } from '@/src/flows/Onboarding/OnboardingForm';\nimport { useOnboardingContext } from '@/src/flows/Onboarding/context';\nimport { SuccessResponse } from '@/src/client';\nimport { getInitialValues } from '@/src/components/form/utils';\nimport { BenefitsFormPayload } from '@/src/flows/Onboarding/types';\nimport { $TSFixMe } from '@remoteoss/json-schema-form';\n\ntype BenefitsStepProps = {\n components: Components;\n /**\n * Callback function to be called when the benefits form is submitted.\n * It can be used to perform any additional validation or processing before\n * the onboarding moves to the last step.\n * @param values\n * @returns\n */\n onSubmit?: (values: BenefitsFormPayload) => void | Promise<void>;\n /**\n * Callback function to be called when the submitting benefits form fails.\n * @param error\n * @returns\n */\n onError?: (error: Error) => void;\n /**\n * Callback function to be called when benefits form is successfully submitted.\n * This function is called after the submitting benefits form is submitted.\n * @param data\n * @returns\n */\n onSuccess?: (data: SuccessResponse) => void;\n};\n\nexport function BenefitsStep({\n components,\n onSubmit,\n onError,\n onSuccess,\n}: BenefitsStepProps) {\n const { onboardingBag } = useOnboardingContext();\n const fields = onboardingBag.fields ?? [];\n const initialValues = getInitialValues(\n fields,\n onboardingBag.initialValues.benefits,\n );\n\n const handleSubmit = async (payload: $TSFixMe) => {\n try {\n await onSubmit?.(payload as BenefitsFormPayload);\n const response = await onboardingBag.onSubmit(payload);\n if (response?.data) {\n onSuccess?.(response.data as SuccessResponse);\n onboardingBag?.next();\n return;\n }\n if (response?.error) {\n onError?.(response.error);\n }\n } catch (error: unknown) {\n onError?.(error as Error);\n }\n };\n\n return (\n <OnboardingForm\n defaultValues={initialValues}\n components={components}\n onSubmit={handleSubmit}\n />\n );\n}\n"],"mappings":"2JAAA,OAAOA,MAAW,QAkCX,SAASC,EAAa,CAC3B,WAAAC,EACA,SAAAC,EACA,QAAAC,EACA,UAAAC,CACF,EAAsB,CACpB,GAAM,CAAE,cAAAC,CAAc,EAAIC,EAAqB,EACzCC,EAASF,EAAc,QAAU,CAAC,EAClCG,EAAgBC,EACpBF,EACAF,EAAc,cAAc,QAC9B,EAmBA,OACEK,EAAA,cAACC,EAAA,CACC,cAAeH,EACf,WAAYP,EACZ,SArBiBW,EAAA,MAAOC,GAAsB,CAChD,GAAI,CACF,MAAMX,IAAWW,CAA8B,EAC/C,IAAMC,EAAW,MAAMT,EAAc,SAASQ,CAAO,EACrD,GAAIC,GAAU,KAAM,CAClBV,IAAYU,EAAS,IAAuB,EAC5CT,GAAe,KAAK,EACpB,MACF,CACIS,GAAU,OACZX,IAAUW,EAAS,KAAK,CAE5B,OAASC,EAAgB,CACvBZ,IAAUY,CAAc,CAC1B,CACF,EAfqB,gBAsBnB,CAEJ,CArCgBH,EAAAZ,EAAA","names":["React","BenefitsStep","components","onSubmit","onError","onSuccess","onboardingBag","useOnboardingContext","fields","initialValues","getInitialValues","React","OnboardingForm","__name","payload","response","error"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Termination/utils.ts"],"sourcesContent":["import { Step } from '@/src/flows/useStepState';\n\nexport type StepTerminationKeys =\n | 'employee_communication'\n | 'termination_details'\n | 'paid_time_off'\n | 'additional_information';\n\nexport const STEPS: Record<StepTerminationKeys, Step> = {\n employee_communication: { index: 0, name: 'employee_communication' },\n termination_details: { index: 1, name: 'termination_details' },\n paid_time_off: { index: 2, name: 'paid_time_off' },\n additional_information: { index: 3, name: 'additional_information' },\n} as const;\n"],"mappings":"AAQO,IAAMA,EAA2C,CACtD,uBAAwB,CAAE,MAAO,EAAG,KAAM,wBAAyB,EACnE,oBAAqB,CAAE,MAAO,EAAG,KAAM,qBAAsB,EAC7D,cAAe,CAAE,MAAO,EAAG,KAAM,eAAgB,EACjD,uBAAwB,CAAE,MAAO,EAAG,KAAM,wBAAyB,CACrE","names":["STEPS"]}
@@ -1,2 +0,0 @@
1
- import{a as S}from"./chunk-HSW5HMHH.js";import{a as F}from"./chunk-XFD3ULUF.js";import{a as h}from"./chunk-WWANHPT7.js";import{a as T}from"./chunk-FZ2HS6G7.js";import{b as V}from"./chunk-36UPHOJS.js";import{a as _}from"./chunk-JRQSZHUU.js";import{b as c}from"./chunk-DHRIURRT.js";import{a as y}from"./chunk-S56EWAS4.js";import{d as p}from"./chunk-WRDKLT4N.js";import{c as s}from"./chunk-VRQXHCFR.js";import{a as e}from"./chunk-AYDF3IFZ.js";import{createHeadlessForm as P,modify as x}from"@remoteoss/json-schema-form";import{useMutation as A,useQuery as K}from"@tanstack/react-query";import L from"lodash/omitBy";import q from"lodash/isNull";import z from"lodash/omit";function R(o){return{confidential:"",customer_informed_employee:"",customer_informed_employee_date:"",customer_informed_employee_description:"",personal_email:"",termination_reason:void 0,reason_description:"",termination_reason_files:[],will_challenge_termination:"",will_challenge_termination_description:null,agrees_to_pto_amount:"",agrees_to_pto_amount_notes:null,acknowledge_termination_procedure:!1,additional_comments:"",proposed_termination_date:"",risk_assessment_reasons:[],timesheet_file:void 0,...o}}e(R,"buildInitialValues");var B=e(()=>{let{client:o}=p();return A({mutationFn:e(a=>c({client:o,headers:{Authorization:""},body:a}),"mutationFn")})},"useCreateTermination"),I=e(({formValues:o,jsfModify:a,step:m})=>K({queryKey:["rmt-flows-termination-schema",m],queryFn:e(()=>S[m]??F,"queryFn"),select:e(({data:u})=>{let{schema:i}=x(u.schema,a||{});return P(i||{},{initialValues:o||{}})},"select")}),"useTerminationSchema"),ue=e(({employmentId:o,options:a})=>{let{fieldValues:m,setFieldValues:u,stepState:i,previousStep:d,nextStep:g}=y(T),k={...i.values?.[i.currentStep.name],...m},{data:r,isLoading:w}=I({formValues:k,jsfModify:a?.jsfModify,step:i.currentStep.name}),l=P(h.data.schema),f=B(),{mutateAsync:b}=_(f);async function C(n){if(!o)throw new Error("Employment id is missing");if(r){let t=s(n,l.fields,{isPartialValidation:!0}),{customer_informed_employee:j}=t,D=j==="yes"?{employee_awareness:{date:t.customer_informed_employee_date,note:t.customer_informed_employee_description}}:void 0,H=V(t,["agrees_to_pto_amount","confidential","customer_informed_employee","will_challenge_termination"]),J=z(H,"customer_informed_employee_date","customer_informed_employee_description"),O=L({...J,...D},q);return b({employment_id:o,termination_details:O,type:"termination"})}}e(C,"onSubmit");function M(){d()}e(M,"back");function v(){g()}e(v,"next");let E=R({...i.values?.employee_communication,...i.values?.termination_details,...i.values?.paid_time_off,...i.values?.additional_information});return{employmentId:o,stepState:i,fields:r?.fields||[],isLoading:w,isSubmitting:f.isPending,initialValues:E,handleValidation:e(n=>{if(r){let t=s(n,r?.fields);return r?.handleValidation(t)}return null},"handleValidation"),checkFieldUpdates:e(n=>{if(l){let t=s(n,l?.fields,{isPartialValidation:!0});u(t)}},"checkFieldUpdates"),parseFormValues:e(n=>s(n,l.fields,{isPartialValidation:!0}),"parseFormValues"),onSubmit:C,back:M,next:v}},"useTermination");export{ue as a};
2
- //# sourceMappingURL=chunk-GGAS4ZNQ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Termination/hooks.ts"],"sourcesContent":["import {\n CreateOffboardingParams,\n postCreateOffboarding,\n TerminationDetailsParams,\n} from '@/src/client';\nimport { mutationToPromise } from '@/src/lib/mutations';\nimport { Client } from '@hey-api/client-fetch';\nimport { createHeadlessForm, modify } from '@remoteoss/json-schema-form';\nimport { useMutation, useQuery } from '@tanstack/react-query';\nimport omitBy from 'lodash/omitBy';\nimport isNull from 'lodash/isNull';\nimport { parseJSFToValidate } from '@/src/components/form/utils';\nimport { JSFModify } from '@/src/flows/CostCalculator/types';\nimport { TerminationFormValues } from '@/src/flows/Termination/types';\nimport { useClient } from '@/src/context';\nimport omit from 'lodash/omit';\nimport { parseFormRadioValues } from '@/src/flows/utils';\nimport { useStepState } from '@/src/flows/useStepState';\nimport { STEPS } from '@/src/flows/Termination/utils';\nimport { defaultSchema } from '@/src/flows/Termination/json-schemas/defaultSchema';\nimport { schema } from '@/src/flows/Termination/json-schemas/schema';\nimport { jsonSchema } from '@/src/flows/Termination/json-schemas/jsonSchema';\n\nfunction buildInitialValues(\n stepsInitialValues: Partial<TerminationFormValues>,\n): TerminationFormValues {\n const initialValues: TerminationFormValues = {\n confidential: '',\n customer_informed_employee: '',\n customer_informed_employee_date: '',\n customer_informed_employee_description: '',\n personal_email: '',\n termination_reason: undefined,\n reason_description: '',\n termination_reason_files: [],\n will_challenge_termination: '',\n will_challenge_termination_description: null,\n agrees_to_pto_amount: '',\n agrees_to_pto_amount_notes: null,\n acknowledge_termination_procedure: false,\n additional_comments: '',\n proposed_termination_date: '',\n risk_assessment_reasons: [],\n timesheet_file: undefined,\n ...stepsInitialValues,\n };\n\n return initialValues;\n}\n\nconst useCreateTermination = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (payload: CreateOffboardingParams) => {\n return postCreateOffboarding({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n });\n },\n });\n};\n\nconst useTerminationSchema = ({\n formValues,\n jsfModify,\n step,\n}: {\n formValues?: TerminationFormValues;\n jsfModify?: JSFModify;\n step?: string;\n}) => {\n return useQuery({\n queryKey: ['rmt-flows-termination-schema', step],\n queryFn: () => {\n return schema[step as keyof typeof schema] ?? defaultSchema;\n },\n select: ({ data }) => {\n const { schema } = modify(data.schema, jsfModify || {});\n const form = createHeadlessForm(schema || {}, {\n initialValues: formValues || {},\n });\n return form;\n },\n });\n};\n\ntype TerminationHookProps = {\n employmentId: string;\n options?: {\n jsfModify?: JSFModify;\n };\n};\n\nexport const useTermination = ({\n employmentId,\n options,\n}: TerminationHookProps) => {\n const { fieldValues, setFieldValues, stepState, previousStep, nextStep } =\n useStepState<keyof typeof STEPS, TerminationFormValues>(STEPS);\n\n const formValues = {\n ...stepState.values?.[stepState.currentStep.name as keyof typeof STEPS], // Restore values for the current step\n ...fieldValues,\n };\n\n const { data: terminationHeadlessForm, isLoading: isLoadingTermination } =\n useTerminationSchema({\n formValues: formValues,\n jsfModify: options?.jsfModify,\n step: stepState.currentStep.name,\n });\n\n const entireTerminationSchema = createHeadlessForm(jsonSchema.data.schema);\n\n const createTermination = useCreateTermination();\n const { mutateAsync } = mutationToPromise(createTermination);\n\n async function onSubmit(values: TerminationFormValues) {\n if (!employmentId) {\n throw new Error('Employment id is missing');\n }\n\n if (terminationHeadlessForm) {\n // this is a hack because I need to validate all form values with the entire schema\n const parsedValues = parseJSFToValidate(\n values,\n entireTerminationSchema.fields,\n { isPartialValidation: true },\n );\n\n const { customer_informed_employee: customerInformedEmployee } =\n parsedValues;\n\n const employeeAwareness =\n customerInformedEmployee === 'yes'\n ? {\n employee_awareness: {\n date: parsedValues.customer_informed_employee_date,\n note: parsedValues.customer_informed_employee_description,\n },\n }\n : undefined;\n\n const radioFieldKeys = [\n 'agrees_to_pto_amount',\n 'confidential',\n 'customer_informed_employee',\n 'will_challenge_termination',\n ];\n\n const parsedRadioValues = parseFormRadioValues(\n parsedValues,\n radioFieldKeys,\n );\n\n const normalizedValues = omit(\n parsedRadioValues,\n 'customer_informed_employee_date',\n 'customer_informed_employee_description',\n );\n\n const terminationDetails: TerminationDetailsParams = omitBy(\n {\n ...normalizedValues,\n ...employeeAwareness,\n },\n isNull,\n ) as unknown as TerminationDetailsParams;\n\n const terminationPayload: CreateOffboardingParams = {\n employment_id: employmentId,\n termination_details: terminationDetails,\n type: 'termination',\n };\n\n return mutateAsync(terminationPayload);\n }\n\n return;\n }\n\n function back() {\n previousStep();\n }\n\n function next() {\n nextStep();\n }\n\n const initialValues = buildInitialValues({\n ...stepState.values?.employee_communication,\n ...stepState.values?.termination_details,\n ...stepState.values?.paid_time_off,\n ...stepState.values?.additional_information,\n });\n\n return {\n /**\n * Employment id passed useful to be used between components\n */\n employmentId,\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState,\n /**\n * Array of form fields from the contract amendment schema\n */\n fields: terminationHeadlessForm?.fields || [],\n /**\n * Loading state indicating if the termination schema is being fetched\n */\n isLoading: isLoadingTermination,\n /**\n * Loading state indicating if a contract amendment mutation is in progress\n */\n isSubmitting: createTermination.isPending,\n /**\n * Initial form values\n */\n initialValues: initialValues,\n /**\n * Function to validate form values against the contract amendment schema\n * @param values - Form values to validate\n * @returns Validation result or null if no schema is available\n */\n handleValidation: (values: TerminationFormValues) => {\n if (terminationHeadlessForm) {\n const parsedValues = parseJSFToValidate(\n values,\n terminationHeadlessForm?.fields,\n );\n return terminationHeadlessForm?.handleValidation(parsedValues);\n }\n return null;\n },\n /**\n * Function to update the current form field values\n * @param values - New form values to set\n */\n checkFieldUpdates: (values: Partial<TerminationFormValues>) => {\n if (entireTerminationSchema) {\n const parsedValues = parseJSFToValidate(\n values,\n entireTerminationSchema?.fields,\n { isPartialValidation: true },\n );\n setFieldValues(parsedValues as TerminationFormValues);\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: (values: TerminationFormValues) => {\n return parseJSFToValidate(values, entireTerminationSchema.fields, {\n isPartialValidation: true,\n });\n },\n /**\n * Function to handle form submission\n * @param values - Form values to submit\n * @returns Promise resolving to the mutation result\n */\n onSubmit,\n\n /**\n * Function to handle going back to the previous step\n * @returns {void}\n */\n back,\n\n /**\n * Function to handle going to the next step\n * @returns {void}\n */\n next,\n };\n};\n"],"mappings":"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","names":["createHeadlessForm","modify","useMutation","useQuery","omitBy","isNull","omit","buildInitialValues","stepsInitialValues","__name","useCreateTermination","client","useClient","useMutation","payload","postCreateOffboarding","useTerminationSchema","formValues","jsfModify","step","useQuery","schema","defaultSchema","data","modify","createHeadlessForm","useTermination","employmentId","options","fieldValues","setFieldValues","stepState","previousStep","nextStep","useStepState","STEPS","terminationHeadlessForm","isLoadingTermination","entireTerminationSchema","jsonSchema","createTermination","mutateAsync","mutationToPromise","onSubmit","values","parsedValues","parseJSFToValidate","customerInformedEmployee","employeeAwareness","parsedRadioValues","parseFormRadioValues","normalizedValues","omit","terminationDetails","omitBy","isNull","back","next","initialValues"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/ContractAmendment/hooks.ts"],"sourcesContent":["import {\n CreateContractAmendmentParams,\n EmploymentShowResponse,\n getShowContractAmendmentSchema,\n postAutomatableContractAmendment,\n postCreateContractAmendment,\n} from '@/src/client';\n\nimport {\n convertToCents,\n parseJSFToValidate,\n} from '@/src/components/form/utils';\nimport { mutationToPromise } from '@/src/lib/mutations';\n\nimport { Client } from '@hey-api/client-fetch';\nimport { createHeadlessForm, modify } from '@remoteoss/json-schema-form';\nimport { useMutation, useQuery } from '@tanstack/react-query';\nimport { ContractAmendmentParams } from './types';\n\nimport { useEmploymentQuery } from '@/src/common/hooks';\nimport { useClient } from '@/src/context';\nimport { FieldValues } from 'react-hook-form';\nimport { useStepState } from '../useStepState';\nimport { buildInitialValues, STEPS } from './utils';\n\ntype ContractAmendmentSchemaParams = {\n countryCode: string;\n employment: EmploymentShowResponse | undefined;\n fieldValues: FieldValues | undefined;\n options?: ContractAmendmentParams['options'];\n};\n\nconst useContractAmendmentSchemaQuery = ({\n countryCode,\n employment,\n fieldValues,\n options,\n}: ContractAmendmentSchemaParams) => {\n const { client } = useClient();\n const jsonSchemaQueryParam = options?.jsonSchemaVersion?.contract_amendments\n ? {\n json_schema_version: options.jsonSchemaVersion.contract_amendments,\n }\n : {};\n return useQuery({\n queryKey: ['contract-amendment-schema'],\n retry: false,\n queryFn: async () => {\n const response = await getShowContractAmendmentSchema({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n query: {\n employment_id: employment?.data?.employment?.id as string,\n country_code: countryCode,\n ...jsonSchemaQueryParam,\n },\n });\n\n // If response status is 404 or other error, throw an error to trigger isError\n if (response.error || !response.data) {\n throw new Error('Failed to fetch contract amendment schema');\n }\n\n return response;\n },\n enabled: Boolean(employment),\n select: ({ data }) => {\n let jsfSchema = data?.data || {};\n\n if (options && options.jsfModify) {\n const { schema } = modify(jsfSchema, options.jsfModify);\n jsfSchema = schema;\n }\n\n const copyFieldValues = {\n ...fieldValues,\n annual_gross_salary: fieldValues?.annual_gross_salary\n ? convertToCents(fieldValues?.annual_gross_salary)\n : undefined,\n };\n\n const hasFieldValues = Object.keys(copyFieldValues).length > 0;\n\n const result = createHeadlessForm(jsfSchema, {\n initialValues: hasFieldValues\n ? copyFieldValues\n : buildInitialValues(employment),\n });\n return result;\n },\n });\n};\n\nconst useCreateContractAmendmentMutation = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (payload: CreateContractAmendmentParams) => {\n return postCreateContractAmendment({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n });\n },\n });\n};\n\nconst useAutomatableContractAmendmentMutation = () => {\n const { client } = useClient();\n return useMutation({\n mutationFn: (payload: CreateContractAmendmentParams) => {\n return postAutomatableContractAmendment({\n client: client as Client,\n headers: {\n Authorization: ``,\n },\n body: payload,\n });\n },\n });\n};\n\nexport const useContractAmendment = ({\n employmentId,\n countryCode,\n options,\n}: ContractAmendmentParams) => {\n const { fieldValues, setFieldValues, stepState, nextStep, previousStep } =\n useStepState<keyof typeof STEPS>(STEPS);\n\n const {\n data: employment,\n isLoading: isLoadingEmployment,\n isError: isErrorEmployment,\n error: errorEmployment,\n } = useEmploymentQuery({\n employmentId,\n });\n\n const {\n data: contractAmendmentHeadlessForm,\n isLoading: isLoadingContractAmendments,\n isError: isErrorContractAmendmentSchema,\n error: errorContractAmendmentSchema,\n } = useContractAmendmentSchemaQuery({\n employment,\n countryCode,\n // In case the user is navigating back to the form step, we need to\n // pass the previous field values, so that the schema can be\n // generated with the correct values.\n fieldValues: {\n ...stepState.values?.[stepState.currentStep.name as keyof typeof STEPS], // Restore values for the current step\n ...fieldValues,\n },\n options,\n });\n\n const initialValues = buildInitialValues(\n employment,\n contractAmendmentHeadlessForm?.fields,\n );\n\n const createContractAmendmentMutation = useCreateContractAmendmentMutation();\n const automatableContractAmendmentMutation =\n useAutomatableContractAmendmentMutation();\n\n async function onSubmit(values: FieldValues) {\n const parsedValues = parseJSFToValidate(\n values,\n contractAmendmentHeadlessForm?.fields || [],\n {\n isPartialValidation: false,\n },\n );\n\n const payload = {\n employment_id: employment?.data.employment?.id as string,\n amendment_contract_id: employment?.data.employment\n ?.active_contract_id as string,\n contract_amendment: {\n ...parsedValues,\n },\n };\n\n switch (stepState.currentStep.name) {\n case STEPS.form.name: {\n const { mutateAsync } = mutationToPromise(\n automatableContractAmendmentMutation,\n );\n\n const automatableContractAmendment = await mutateAsync(payload);\n\n nextStep();\n\n return automatableContractAmendment;\n }\n case STEPS.confirmation_form.name: {\n const { mutateAsync } = mutationToPromise(\n createContractAmendmentMutation,\n );\n\n return mutateAsync(payload);\n }\n\n default:\n throw new Error('Invalid step state');\n }\n }\n\n function handleValidation(values: FieldValues) {\n if (contractAmendmentHeadlessForm) {\n const parsedValues = parseJSFToValidate(\n values,\n contractAmendmentHeadlessForm?.fields,\n );\n\n return contractAmendmentHeadlessForm?.handleValidation(parsedValues);\n }\n return null;\n }\n\n function back() {\n previousStep();\n }\n\n return {\n /**\n * Current step state containing the current step and total number of steps\n */\n stepState,\n /**\n * Array of form fields from the contract amendment schema\n */\n fields: contractAmendmentHeadlessForm?.fields || [],\n /**\n * Loading state indicating if either employment or contract amendment data is being fetched\n */\n isLoading: isLoadingEmployment || isLoadingContractAmendments,\n /**\n * Error state indicating if there was an error fetching either employment or contract amendment data\n */\n isError: isErrorEmployment || isErrorContractAmendmentSchema,\n /**\n * Error object containing details about any errors that occurred during data fetching\n */\n error: errorEmployment || errorContractAmendmentSchema,\n /**\n * Loading state indicating if a contract amendment mutation is in progress\n */\n isSubmitting:\n automatableContractAmendmentMutation.isPending ||\n createContractAmendmentMutation.isPending,\n /**\n * Initial form values built from employment data and contract amendment fields\n */\n initialValues,\n /**\n * Current form field values\n */\n values: fieldValues,\n /**\n * Function to validate form values against the contract amendment schema\n * @param values - Form values to validate\n * @returns Validation result or null if no schema is available\n */\n handleValidation,\n /**\n * Function to update the current form field values\n * @param values - New form values to set\n */\n checkFieldUpdates: setFieldValues,\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 * Function to handle going back to the previous step\n * @returns {void}\n */\n back,\n };\n};\n"],"mappings":"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","names":["createHeadlessForm","modify","useMutation","useQuery","useContractAmendmentSchemaQuery","__name","countryCode","employment","fieldValues","options","client","useClient","jsonSchemaQueryParam","useQuery","response","getShowContractAmendmentSchema","data","jsfSchema","schema","modify","copyFieldValues","convertToCents","hasFieldValues","createHeadlessForm","buildInitialValues","useCreateContractAmendmentMutation","useMutation","payload","postCreateContractAmendment","useAutomatableContractAmendmentMutation","postAutomatableContractAmendment","useContractAmendment","employmentId","setFieldValues","stepState","nextStep","previousStep","useStepState","STEPS","isLoadingEmployment","isErrorEmployment","errorEmployment","useEmploymentQuery","contractAmendmentHeadlessForm","isLoadingContractAmendments","isErrorContractAmendmentSchema","errorContractAmendmentSchema","initialValues","createContractAmendmentMutation","automatableContractAmendmentMutation","onSubmit","values","parsedValues","parseJSFToValidate","mutateAsync","mutationToPromise","automatableContractAmendment","handleValidation","back"]}
@@ -1,2 +0,0 @@
1
- import{b as l}from"./chunk-A4RX3KRZ.js";import{a as p}from"./chunk-MIHU6CEZ.js";import{c as u}from"./chunk-VRQXHCFR.js";import{a as f}from"./chunk-IDSJI7KQ.js";import{b as F}from"./chunk-6HGUGIYJ.js";import{a as r}from"./chunk-AYDF3IFZ.js";import a,{useEffect as P}from"react";import{useForm as k}from"react-hook-form";var w=["effective_date","reason_for_change","reason_for_change_description","additional_comments","additional_comments_toggle"];function U({onSubmit:_,onError:m,onSuccess:b}){let{formId:A,contractAmendment:{checkFieldUpdates:C,fields:s,onSubmit:h,stepState:S,initialValues:i,handleValidation:g}}=F(),y=l(g),e=k({resolver:y,defaultValues:S.values?.form||i,shouldUnregister:!0,mode:"onBlur"});P(()=>{let t=e?.watch(o=>{(Object.keys(e.formState.dirtyFields).length>0||e.formState.isDirty)&&C(o)});return()=>t?.unsubscribe()},[]);let V=r(async t=>{let o=!1;for(let[c,v]of Object.entries(t))if(!w.includes(c)&&i[c]!==v){o=!0;break}if(!o)return m?.({message:"no_changes_detected_contract_details"});let d=u(t,s,{isPartialValidation:!1});await _?.(d);let n=await h(t);n.error?m?.(n.error):b?.(n.data)},"handleSubmit");return a.createElement(f,{...e},a.createElement("form",{id:A,"data-testid":"contract-amendment-form",onSubmit:e.handleSubmit(V),className:"space-y-4 RemoteFlows__ContractAmendmentForm"},a.createElement(p,{fields:s})))}r(U,"ContractAmendmentForm");export{U as a};
2
- //# sourceMappingURL=chunk-HEPL5WDF.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/ContractAmendment/ContractAmendmentForm.tsx"],"sourcesContent":["import {\n ContractAmendmentAutomatableResponse,\n PostAutomatableContractAmendmentError,\n} from '@/src/client';\nimport { JSONSchemaFormFields } from '@/src/components/form/JSONSchemaForm';\nimport { parseJSFToValidate } from '@/src/components/form/utils';\nimport { useJsonSchemasValidationFormResolver } from '@/src/components/form/yupValidationResolver';\nimport { Form } from '@/src/components/ui/form';\nimport React, { useEffect } from 'react';\nimport { FieldValues, useForm } from 'react-hook-form';\nimport { useContractAmendmentContext } from './context';\n\ntype ContractAmendmentFormProps = {\n /**\n * Callback function to be called when the contract amendment form is submitted.\n * This function is called before the contract amendment is submitted.\n * It can be used to perform any additional validation or processing before\n * the contract amendment is submitted.\n * @param values\n * @returns\n */\n onSubmit?: (values: FieldValues) => Promise<void>;\n /**\n * Callback function to be called when the contract amendment fails.\n * @param error\n * @returns\n */\n onError?: (\n error:\n | PostAutomatableContractAmendmentError\n | { message: 'no_changes_detected_contract_details' },\n ) => void;\n /**\n * Callback function to be called when the contract amendment is successfully submitted.\n * This function is called after the contract amendment is submitted.\n * @param data\n * @returns\n */\n onSuccess?: (data: ContractAmendmentAutomatableResponse) => void;\n};\n\nconst commonFields = [\n 'effective_date',\n 'reason_for_change',\n 'reason_for_change_description',\n 'additional_comments',\n 'additional_comments_toggle',\n] as const;\n\ntype CommonFields = (typeof commonFields)[number];\n\nexport function ContractAmendmentForm({\n onSubmit,\n onError,\n onSuccess,\n}: ContractAmendmentFormProps) {\n const {\n formId,\n contractAmendment: {\n checkFieldUpdates,\n fields,\n onSubmit: submitContractAmendment,\n stepState,\n initialValues,\n handleValidation,\n },\n } = useContractAmendmentContext();\n\n const resolver = useJsonSchemasValidationFormResolver(\n // @ts-expect-error no matching type\n handleValidation,\n );\n\n const form = useForm({\n resolver,\n defaultValues:\n // stepState.values is used as defaultValues for the form when the form is\n // rendered when clicking on the back button after the user has submitted the form\n // and the confirmation form is displayed.\n // This is because the form is unmounted when the user submits the form.\n stepState.values?.form || initialValues,\n shouldUnregister: true,\n mode: 'onBlur',\n });\n\n useEffect(() => {\n const subscription = form?.watch((values) => {\n const isFormDirty =\n Object.keys(form.formState.dirtyFields).length > 0 ||\n form.formState.isDirty;\n if (isFormDirty) {\n checkFieldUpdates(values);\n }\n });\n return () => subscription?.unsubscribe();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleSubmit = async (values: FieldValues) => {\n let hasContractDetailsChanges = false;\n for (const [key, value] of Object.entries(values)) {\n if (\n !commonFields.includes(key as CommonFields) &&\n // @ts-expect-error error\n initialValues[key] !== value\n ) {\n hasContractDetailsChanges = true;\n break;\n }\n }\n\n if (!hasContractDetailsChanges) {\n return onError?.({\n message: 'no_changes_detected_contract_details',\n });\n }\n\n const parsedValues = parseJSFToValidate(values, fields, {\n isPartialValidation: false,\n });\n\n await onSubmit?.(parsedValues);\n\n const contractAmendmentResult = await submitContractAmendment(values);\n\n if (contractAmendmentResult.error) {\n onError?.(contractAmendmentResult.error);\n } else {\n onSuccess?.(\n contractAmendmentResult.data as ContractAmendmentAutomatableResponse,\n );\n }\n };\n\n return (\n <Form {...form}>\n <form\n id={formId}\n data-testid=\"contract-amendment-form\"\n onSubmit={form.handleSubmit(handleSubmit)}\n className=\"space-y-4 RemoteFlows__ContractAmendmentForm\"\n >\n <JSONSchemaFormFields fields={fields} />\n </form>\n </Form>\n );\n}\n"],"mappings":"gPAQA,OAAOA,GAAS,aAAAC,MAAiB,QACjC,OAAsB,WAAAC,MAAe,kBAgCrC,IAAMC,EAAe,CACnB,iBACA,oBACA,gCACA,sBACA,4BACF,EAIO,SAASC,EAAsB,CACpC,SAAAC,EACA,QAAAC,EACA,UAAAC,CACF,EAA+B,CAC7B,GAAM,CACJ,OAAAC,EACA,kBAAmB,CACjB,kBAAAC,EACA,OAAAC,EACA,SAAUC,EACV,UAAAC,EACA,cAAAC,EACA,iBAAAC,CACF,CACF,EAAIC,EAA4B,EAE1BC,EAAWC,EAEfH,CACF,EAEMI,EAAOC,EAAQ,CACnB,SAAAH,EACA,cAKEJ,EAAU,QAAQ,MAAQC,EAC5B,iBAAkB,GAClB,KAAM,QACR,CAAC,EAEDO,EAAU,IAAM,CACd,IAAMC,EAAeH,GAAM,MAAOI,GAAW,EAEzC,OAAO,KAAKJ,EAAK,UAAU,WAAW,EAAE,OAAS,GACjDA,EAAK,UAAU,UAEfT,EAAkBa,CAAM,CAE5B,CAAC,EACD,MAAO,IAAMD,GAAc,YAAY,CAEzC,EAAG,CAAC,CAAC,EAEL,IAAME,EAAeC,EAAA,MAAOF,GAAwB,CAClD,IAAIG,EAA4B,GAChC,OAAW,CAACC,EAAKC,CAAK,IAAK,OAAO,QAAQL,CAAM,EAC9C,GACE,CAACnB,EAAa,SAASuB,CAAmB,GAE1Cb,EAAca,CAAG,IAAMC,EACvB,CACAF,EAA4B,GAC5B,KACF,CAGF,GAAI,CAACA,EACH,OAAOnB,IAAU,CACf,QAAS,sCACX,CAAC,EAGH,IAAMsB,EAAeC,EAAmBP,EAAQZ,EAAQ,CACtD,oBAAqB,EACvB,CAAC,EAED,MAAML,IAAWuB,CAAY,EAE7B,IAAME,EAA0B,MAAMnB,EAAwBW,CAAM,EAEhEQ,EAAwB,MAC1BxB,IAAUwB,EAAwB,KAAK,EAEvCvB,IACEuB,EAAwB,IAC1B,CAEJ,EAlCqB,gBAoCrB,OACEC,EAAA,cAACC,EAAA,CAAM,GAAGd,GACRa,EAAA,cAAC,QACC,GAAIvB,EACJ,cAAY,0BACZ,SAAUU,EAAK,aAAaK,CAAY,EACxC,UAAU,gDAEVQ,EAAA,cAACE,EAAA,CAAqB,OAAQvB,EAAQ,CACxC,CACF,CAEJ,CA/FgBc,EAAApB,EAAA","names":["React","useEffect","useForm","commonFields","ContractAmendmentForm","onSubmit","onError","onSuccess","formId","checkFieldUpdates","fields","submitContractAmendment","stepState","initialValues","handleValidation","useContractAmendmentContext","resolver","useJsonSchemasValidationFormResolver","form","useForm","useEffect","subscription","values","handleSubmit","__name","hasContractDetailsChanges","key","value","parsedValues","parseJSFToValidate","contractAmendmentResult","React","Form","JSONSchemaFormFields"]}
@@ -1,2 +0,0 @@
1
- import{a as t}from"./chunk-Q64URAIN.js";import{b as a}from"./chunk-DZYFSFZ7.js";import{a as i}from"./chunk-AYDF3IFZ.js";import p from"react";function b({requesterName:n,onSubmit:m,onSuccess:s,onError:d}){let{terminationBag:e}=a(),l=i(async r=>{await m?.(e?.parseFormValues(r));let o=await e?.onSubmit(r);o?.error?d?.(o.error):o?.data&&s?.(o.data)},"handleSubmit"),u=e?.fields.map(r=>r.name==="acknowledge_termination_procedure"?{...r,label:r.label.replace("{{requesterName}}",n)}:r);return p.createElement(t,{fields:u,onSubmit:l})}i(b,"AdditionalDetailsForm");export{b as a};
2
- //# sourceMappingURL=chunk-JBG4RVXQ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/flows/Termination/AdditionalDetailsForm.tsx"],"sourcesContent":["import React from 'react';\nimport { useTerminationContext } from './context';\nimport { TerminationFormValues } from '@/src/flows/Termination/types';\nimport { OffboardingResponse } from '@/src/client';\nimport { TerminationForm } from '@/src/flows/Termination/TerminationForm';\n\ntype AdditionalDetailsFormProps = {\n /*\n * The name of the person who initiates the termination, used to personalize the label of the\n * acknowledge_termination_procedure field.\n */\n requesterName: string;\n /*\n * The function is called when the form is submitted. It receives the form values as an argument.\n */\n onSubmit?: (payload: TerminationFormValues) => void | Promise<void>;\n /*\n * The function is called when the form submission has failed.\n */\n onError?: (error: Error) => void;\n /*\n * The function is called when the form submission is successful. It receives the response data as\n * an argument.\n */\n onSuccess?: (data: OffboardingResponse) => void;\n};\n\nexport function AdditionalDetailsForm({\n requesterName,\n onSubmit,\n onSuccess,\n onError,\n}: AdditionalDetailsFormProps) {\n const { terminationBag } = useTerminationContext();\n\n const handleSubmit = async (values: TerminationFormValues) => {\n await onSubmit?.(\n terminationBag?.parseFormValues(values) as TerminationFormValues,\n );\n const terminationResult = await terminationBag?.onSubmit(values);\n\n if (terminationResult?.error) {\n onError?.(terminationResult.error);\n } else {\n if (terminationResult?.data) {\n onSuccess?.(terminationResult.data as OffboardingResponse);\n }\n }\n };\n\n const updatedFields = terminationBag?.fields.map((field) => {\n if (field.name === 'acknowledge_termination_procedure') {\n return {\n ...field,\n label: (field.label as string).replace(\n '{{requesterName}}',\n requesterName,\n ),\n };\n }\n return field;\n });\n\n return <TerminationForm fields={updatedFields} onSubmit={handleSubmit} />;\n}\n"],"mappings":"wHAAA,OAAOA,MAAW,QA2BX,SAASC,EAAsB,CACpC,cAAAC,EACA,SAAAC,EACA,UAAAC,EACA,QAAAC,CACF,EAA+B,CAC7B,GAAM,CAAE,eAAAC,CAAe,EAAIC,EAAsB,EAE3CC,EAAeC,EAAA,MAAOC,GAAkC,CAC5D,MAAMP,IACJG,GAAgB,gBAAgBI,CAAM,CACxC,EACA,IAAMC,EAAoB,MAAML,GAAgB,SAASI,CAAM,EAE3DC,GAAmB,MACrBN,IAAUM,EAAkB,KAAK,EAE7BA,GAAmB,MACrBP,IAAYO,EAAkB,IAA2B,CAG/D,EAbqB,gBAefC,EAAgBN,GAAgB,OAAO,IAAKO,GAC5CA,EAAM,OAAS,oCACV,CACL,GAAGA,EACH,MAAQA,EAAM,MAAiB,QAC7B,oBACAX,CACF,CACF,EAEKW,CACR,EAED,OAAOC,EAAA,cAACC,EAAA,CAAgB,OAAQH,EAAe,SAAUJ,EAAc,CACzE,CArCgBC,EAAAR,EAAA","names":["React","AdditionalDetailsForm","requesterName","onSubmit","onSuccess","onError","terminationBag","useTerminationContext","handleSubmit","__name","values","terminationResult","updatedFields","field","React","TerminationForm"]}
@@ -1,2 +0,0 @@
1
- import{b as d}from"./chunk-WS3C3WIJ.js";import{b as t}from"./chunk-A4RX3KRZ.js";import{a}from"./chunk-MIHU6CEZ.js";import{a as s}from"./chunk-IDSJI7KQ.js";import{a as m}from"./chunk-AYDF3IFZ.js";import e,{useEffect as l}from"react";import{useForm as b}from"react-hook-form";function w({defaultValues:f,onSubmit:c,components:p}){let{formId:F,onboardingBag:o}=d(),u=t(o.handleValidation),r=b({resolver:u,defaultValues:f,shouldUnregister:!1,mode:"onBlur"});return l(()=>{o.employmentId&&o?.checkFieldUpdates(r.getValues())},[]),l(()=>{let y=r?.watch(n=>{Object.keys(n).some(i=>n[i]!==o?.initialValues?.[i])&&o?.checkFieldUpdates(n)});return()=>y?.unsubscribe()},[]),e.createElement(s,{...r},e.createElement("form",{id:F,onSubmit:r.handleSubmit(c),className:"space-y-4 RemoteFlows__OnboardingForm"},e.createElement(a,{components:p,fields:o.fields})))}m(w,"OnboardingForm");export{w as a};
2
- //# sourceMappingURL=chunk-LNKYOAKF.js.map
@@ -1,2 +0,0 @@
1
- import{a as ge}from"./chunk-GFBF55NR.js";import{b as F}from"./chunk-WRDKLT4N.js";import{a as me,b as J}from"./chunk-56BNVYTD.js";import{b as y,c as N,d as h,e as w,f as R,g as k}from"./chunk-IDSJI7KQ.js";import{a as s}from"./chunk-5ETXP2QF.js";import{a as r}from"./chunk-AYDF3IFZ.js";import U,{Fragment as At}from"react";import*as j from"react";import*as q from"@radix-ui/react-checkbox";import{Check as Ze}from"lucide-react";var te=j.forwardRef(({className:e,...t},o)=>j.createElement(q.Root,{ref:o,className:s("peer h-4 w-4 shrink-0 rounded-sm border border-input ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-checkbox data-[state=checked]:text-primary",e),...t},j.createElement(q.Indicator,{className:s("flex items-center justify-center text-current")},j.createElement(Ze,{className:"h-4 w-4"}))));te.displayName=q.Root.displayName;import*as D from"react";import{useFormContext as et}from"react-hook-form";function Fe({name:e,defaultValue:t,description:o,label:a,onChange:i,multiple:d,options:p,component:x,...C}){let{components:n}=F(),{control:c}=et(),u=r((m,l,g)=>{let _=g.value?[...g.value]:[];l?_.includes(m)||g.onChange([..._,m]):g.onChange(_.filter(z=>z!==m))},"handleCheckboxChange");return D.createElement(y,{control:c,name:e,defaultValue:t,render:({field:m,fieldState:l})=>{let g=x||n?.checkbox;if(g){let _={name:e,description:o,label:a,defaultValue:t,multiple:d,options:p,...C};return D.createElement(g,{field:{...m,onChange:r(z=>{if(d){let{checked:ee,value:I}=z.target;u(I,ee,m),i?.(ee);return}m.onChange(z),i?.(z)},"onChange")},fieldState:l,fieldData:_})}return D.createElement(N,{"data-field":e,className:s(`RemoteFlows__CheckBoxField__Item__${e}`)},D.createElement(w,null,D.createElement(D.Fragment,null,p&&d?D.createElement(h,null,a):null,p&&d?p.map(_=>D.createElement("div",{key:_.value,className:"flex space-x-2"},D.createElement(te,{id:_.value,onCheckedChange:z=>{u(_.value,z===!0,m),i?.(z,_.value)},checked:m.value?.includes(_.value),className:"RemoteFlows__CheckBox__Input"}),D.createElement(h,{htmlFor:_.value,className:"mb-0 RemoteFlows__CheckBox__Label"},_.label))):D.createElement("div",{className:"flex space-x-2"},D.createElement(te,{id:e,onCheckedChange:_=>{m.onChange(_),i?.(_)},checked:m.value,className:"RemoteFlows__CheckBox__Input"}),D.createElement(h,{htmlFor:e,className:"mb-0 RemoteFlows__CheckBox__Label"},a)))),o&&D.createElement(R,null,o),l.error&&D.createElement(k,null))}})}r(Fe,"CheckBoxField");import{CalendarIcon as at}from"lucide-react";import*as P from"react";import{useFormContext as nt}from"react-hook-form";import*as oe from"react";import{ChevronLeft as tt,ChevronRight as ot}from"lucide-react";import{DayPicker as rt}from"react-day-picker";function ve({className:e,classNames:t,showOutsideDays:o=!0,...a}){return oe.createElement(rt,{showOutsideDays:o,className:s("p-3",e),classNames:{months:"flex flex-col sm:flex-row gap-2",month:"flex flex-col gap-4",caption:"flex justify-center pt-1 relative items-center w-full",caption_label:"text-sm font-medium",nav:"flex items-center gap-1",nav_button:s(me({variant:"outline"}),"size-7 bg-transparent p-0 opacity-50 hover:opacity-100"),nav_button_previous:"absolute left-1",nav_button_next:"absolute right-1",table:"w-full border-collapse space-x-1",head_row:"flex",head_cell:"text-muted-foreground rounded-md w-8 font-normal text-[0.8rem]",row:"flex w-full mt-2",cell:s("relative p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-accent [&:has([aria-selected].day-range-end)]:rounded-r-md",a.mode==="range"?"[&:has(>.day-range-end)]:rounded-r-md [&:has(>.day-range-start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md":"[&:has([aria-selected])]:rounded-md"),day:s(me({variant:"ghost"}),"size-8 p-0 font-normal aria-selected:opacity-100"),day_range_start:"day-range-start aria-selected:bg-primary aria-selected:text-primary-foreground",day_range_end:"day-range-end aria-selected:bg-primary aria-selected:text-primary-foreground",day_selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground",day_today:"bg-accent text-accent-foreground",day_outside:"day-outside text-muted-foreground aria-selected:text-muted-foreground",day_disabled:"text-muted-foreground opacity-50",day_range_middle:"aria-selected:bg-accent aria-selected:text-accent-foreground",day_hidden:"invisible",...t},components:{IconLeft:r(({className:i,...d})=>oe.createElement(tt,{className:s("size-4",i),...d}),"IconLeft"),IconRight:r(({className:i,...d})=>oe.createElement(ot,{className:s("size-4",i),...d}),"IconRight")},...a})}r(ve,"Calendar");import*as Y from"react";import*as B from"@radix-ui/react-popover";function re({...e}){return Y.createElement(B.Root,{"data-slot":"popover",...e})}r(re,"Popover");function ae({...e}){return Y.createElement(B.Trigger,{"data-slot":"popover-trigger",...e})}r(ae,"PopoverTrigger");function ne({className:e,align:t="center",sideOffset:o=4,...a}){return Y.createElement(B.Portal,null,Y.createElement(B.Content,{"data-slot":"popover-content",align:t,sideOffset:o,className:s("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",e),...a}))}r(ne,"PopoverContent");import{PopoverClose as it}from"@radix-ui/react-popover";import{format as xe}from"date-fns";function Ce({description:e,label:t,name:o,minDate:a,onChange:i,component:d,...p}){let{components:x}=F(),{control:C}=nt();return P.createElement(y,{control:C,name:o,render:({field:n,fieldState:c})=>{let u=d||x?.date;if(u){let m={description:e,label:t,name:o,minDate:a,onChange:i,...p};return P.createElement(u,{field:{...n,onChange:r(l=>{n.onChange(l),i?.(l)},"onChange")},fieldState:c,fieldData:m})}return P.createElement(N,{"data-field":o,className:`flex flex-col RemoteFlows__DatePickerField__Item__${o}`},P.createElement(h,{className:"RemoteFlows__DatePickerField__Label"},t),P.createElement(re,null,P.createElement(ae,{asChild:!0},P.createElement(w,null,P.createElement("div",null,P.createElement(J,{type:"button",variant:"outline",className:s("w-full pl-3 text-left font-normal",!n.value&&"text-muted-foreground"),"data-testid":`date-picker-button-${o}`},n.value&&P.createElement(P.Fragment,null,xe(n.value,"yyyy-MM-dd")),P.createElement(at,{className:"ml-auto h-4 w-4 opacity-50"}))))),P.createElement(ne,{className:"w-auto p-0 RemoteFlows__DatepickerField__PopoverContent",align:"start"},P.createElement(ve,{mode:"single",className:"RemoteFlows__DatepickerField__Calendar",selected:n.value?new Date(n.value):void 0,onSelect:m=>{n.onChange(m?xe(m,"yyyy-MM-dd"):null),i?.(m)},defaultMonth:a?new Date(a):void 0,components:{DayContent:r(m=>P.createElement(it,null,m.date.getDate()),"DayContent")},...a&&{disabled:r(m=>m<new Date(a),"disabled")}}))),e?P.createElement(R,null,e):null,c.error&&P.createElement(k,{className:"RemoteFlows__DatePickerField__Error"}))}})}r(Ce,"DatePickerField");import*as $ from"react";function ye({label:e,name:t,fields:o,description:a,components:i}){return $.createElement("fieldset",{className:s("border-1 border-input p-4 rounded-xl",`RemoteFlows__FieldSetField__${t}`)},$.createElement("legend",{className:"text-sm font-semibold px-2"},e),a?$.createElement("div",{className:"mb-5 RemoteFlows__FieldSetField__Description",dangerouslySetInnerHTML:{__html:a}}):null,$.createElement("div",{className:"grid gap-4"},o.map(d=>{let p=ie[d.type];return d.isVisible===!1||d.deprecated?null:$.createElement(p,{...d,key:d.name,name:`${t}.${d.name}`,component:i?.[d.type]})})))}r(ye,"FieldSetField");import*as E from"react";import{useFormContext as ct}from"react-hook-form";import L,{useState as st,useRef as lt}from"react";import{Upload as mt,X as dt}from"lucide-react";function _e({onChange:e,className:t,multiple:o}){let[a,i]=st([]),d=lt(null),p=r(n=>{n.preventDefault(),d.current?.click()},"handleClick"),x=r(n=>{if(n.target.files&&n.target.files.length>0){let c=Array.from(n.target.files);i(c),e(n)}},"handleChange"),C=r(n=>{i(c=>c.filter(u=>u!==n))},"onRemoveFile");return L.createElement("div",{className:s("flex flex-col items-start gap-4",t)},L.createElement("input",{type:"file",ref:d,onChange:x,className:"hidden","aria-label":"File upload",multiple:o}),L.createElement(J,{type:"button",onClick:p,className:"gap-2"},L.createElement(mt,{className:"h-4 w-4"}),"Choose File"),a.length===0&&L.createElement("div",{className:"text-sm"},o?L.createElement("span",{className:"font-medium"},"No files selected. You can select multiple files"):L.createElement("span",{className:"font-medium"},"No file selected.")),a.length>0&&a.map((n,c)=>L.createElement("div",{key:c,className:"text-sm flex items-center gap-2"},"Selected file: ",L.createElement("span",{className:"font-medium"},n.name)," (",Math.round(n.size/1024)," KB)",L.createElement(J,{variant:"ghost",onClick:()=>C(n)},L.createElement(dt,null)))))}r(_e,"FileUploader");var pt=r(e=>new Promise((t,o)=>{let a=new FileReader;a.readAsDataURL(e),a.onload=()=>t(a.result),a.onerror=i=>o(i)}),"toBase64"),he=r(async e=>{let t=e.target.files?Array.from(e.target.files):[];return await Promise.all(t.map(async a=>{let i=await pt(a);return{name:a.name,content:i.split(",")[1]}}))},"convertFilesToBase64");function Pe({name:e,description:t,label:o,multiple:a,onChange:i,component:d,...p}){let{components:x}=F(),{control:C}=ct();return E.createElement(y,{control:C,name:e,render:({field:n,fieldState:c})=>{let u=d||x?.file;if(u){let m={name:e,description:t,label:o,multiple:a,...p};return E.createElement(u,{field:{...n,value:null,onChange:r(async l=>{let g=await he(l);n.onChange(g),i?.(g)},"onChange")},fieldState:c,fieldData:m})}return E.createElement(N,{"data-field":e,className:`RemoteFlows__FileUpload__Item__${e}`},E.createElement(h,{className:"RemoteFlows__FileUpload__Label"},o),E.createElement(w,null,E.createElement(_e,{onChange:async m=>{let l=await he(m);n.onChange(l),i?.(l)},multiple:a,className:s("RemoteFlows__FileUpload__Input")})),t&&E.createElement("div",{className:"flex items-center justify-between"},E.createElement(R,{className:"RemoteFlows__FileUpload__Description"},t)),c.error&&E.createElement(k,{className:"RemoteFlows__FileUpload__Error"}))}})}r(Pe,"FileUploadField");import de from"react";import{useFormContext as ft}from"react-hook-form";import*as G from"react";import{useFormContext as ut}from"react-hook-form";import*as be from"react";function Se({className:e,type:t,...o}){return be.createElement("input",{type:t,"data-slot":"input",className:s("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",e),...o})}r(Se,"Input");function W({name:e,description:t,label:o,type:a,onChange:i,component:d,...p}){let{components:x}=F(),{control:C}=ut();return G.createElement(y,{control:C,name:e,render:({field:n,fieldState:c})=>{let u=d||x?.text;if(u){let m={name:e,description:t,label:o,type:a,onChange:i,...p};return G.createElement(u,{field:{...n,onChange:r(l=>{n.onChange(l),i?.(l)},"onChange")},fieldState:c,fieldData:m})}return G.createElement(N,{"data-field":e,className:`RemoteFlows__TextField__Item__${e}`},G.createElement(h,{className:"RemoteFlows__TextField__Label"},o),G.createElement(w,null,G.createElement(Se,{...n,value:n.value??"",onChange:m=>{n.onChange(m),i?.(m)},className:"RemoteFlows__TextField__Input",placeholder:o})),t&&G.createElement(R,{className:"RemoteFlows__TextField__Description"},t),c.error&&G.createElement(k,{className:"RemoteFlows__TextField__Error"}))}})}r(W,"TextField");function ce(e){let{components:t}=F(),{control:o}=ft(),a=e.component||t?.number;return a?de.createElement(y,{control:o,name:e.name,render:({field:i,fieldState:d})=>de.createElement(a,{field:{...i,onChange:r(p=>{i.onChange(p),e.onChange?.(p)},"onChange")},fieldState:d,fieldData:e})}):de.createElement(W,{...e,type:"text",inputMode:"decimal",pattern:"^[0-9.]*$"})}r(ce,"NumberField");import*as X from"@radix-ui/react-radio-group";import{CircleIcon as gt}from"lucide-react";import*as Q from"react";function Ne({className:e,...t}){return Q.createElement(X.Root,{"data-slot":"radio-group",className:s("grid gap-3",e),...t})}r(Ne,"RadioGroup");function we({className:e,...t}){return Q.createElement(X.Item,{"data-slot":"radio-group-item",className:s("border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e),...t},Q.createElement(X.Indicator,{"data-slot":"radio-group-indicator",className:"relative flex items-center justify-center"},Q.createElement(gt,{className:"fill-radio absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"})))}r(we,"RadioGroupItem");import*as b from"react";import{useFormContext as Ft}from"react-hook-form";function Re({name:e,defaultValue:t,description:o,label:a,options:i,onChange:d,component:p,...x}){let{components:C}=F(),{control:n}=Ft();return b.createElement(y,{control:n,name:e,defaultValue:t,render:({field:c,fieldState:u})=>{let m=p||C?.radio;if(m){let l={name:e,defaultValue:t,description:o,label:a,options:i,...x};return b.createElement(m,{field:{...c,onChange:r(g=>{c.onChange(g),d?.(g)},"onChange")},fieldState:u,fieldData:l})}return b.createElement(N,{className:s("space-y-3",`RemoteFlows__RadioGroupField__Item__${e}`),"data-field":e},b.createElement(h,null,a),b.createElement(w,null,b.createElement(Ne,{"aria-label":a,onValueChange:l=>{c.onChange(l),d?.(l)},value:c.value,className:"flex flex-col space-y-3"},i?.map(l=>b.createElement(b.Fragment,null,b.createElement(N,{key:l.value,"data-field":e,className:"flex items-start space-x-3 space-y-0 gap-0 RemoteFlows__RadioField__Item"},b.createElement(w,null,b.createElement(we,{value:l.value,className:"RemoteFlows__RadioField__Input"})),b.createElement("div",null,b.createElement(h,{className:"font-normal mb-0 RemoteFlows__RadioField__Label"},l.label),l.description&&b.createElement(R,{className:"mt-2"},l.description))))))),o&&b.createElement(R,null,o),u.error&&b.createElement(k,null))}})}r(Re,"RadioGroupField");import*as T from"react";import*as v from"react";import*as f from"@radix-ui/react-select";import{CheckIcon as vt,ChevronDownIcon as De,ChevronUpIcon as xt}from"lucide-react";function ke({...e}){return v.createElement(f.Root,{"data-slot":"select",...e})}r(ke,"Select");function Te({...e}){return v.createElement(f.Group,{"data-slot":"select-group",...e})}r(Te,"SelectGroup");function Ie({...e}){return v.createElement(f.Value,{"data-slot":"select-value",...e})}r(Ie,"SelectValue");function Le({className:e,children:t,...o}){return v.createElement(f.Trigger,{"data-slot":"select-trigger",className:s("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive flex w-full items-center justify-between rounded-xl border bg-transparent px-4 py-7 text-sm whitespace-nowrap transition-[color] outline-none disabled:cursor-not-allowed disabled:opacity-50 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4","focus-visible:border-focused",e),...o},t,v.createElement(f.Icon,{asChild:!0,className:"absolute right-4"},v.createElement(De,{className:"size-4"})))}r(Le,"SelectTrigger");function Me({className:e,children:t,position:o="popper",...a}){return v.createElement(f.Portal,null,v.createElement(f.Content,{"data-slot":"select-content",className:s("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-xl border",o==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:o,...a},v.createElement(Ct,null),v.createElement(f.Viewport,{className:s(o==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1")},t),v.createElement(yt,null)))}r(Me,"SelectContent");function ze({className:e,children:t,...o}){return v.createElement(f.Item,{"data-slot":"select-item",className:s("focus:bg-accent focus:text-accent-foreground min-h-11 justify-between [&_svg:not([class*='text-'])]:text-muted-foreground flex w-full cursor-default items-center gap-2 py-2 px-4 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",e),...o},v.createElement(f.ItemText,null,t),v.createElement("span",{className:"flex size-3.5 items-center justify-center"},v.createElement(f.ItemIndicator,null,v.createElement(vt,{className:"size-4"}))))}r(ze,"SelectItem");function Ct({className:e,...t}){return v.createElement(f.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:s("flex cursor-default items-center justify-center py-1",e),...t},v.createElement(xt,{className:"size-4"}))}r(Ct,"SelectScrollUpButton");function yt({className:e,...t}){return v.createElement(f.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:s("flex cursor-default items-center justify-center py-1",e),...t},v.createElement(De,{className:"size-4"}))}r(yt,"SelectScrollDownButton");import{useFormContext as _t}from"react-hook-form";function Ee({label:e,name:t,options:o,defaultValue:a,description:i,onChange:d,component:p,...x}){let{control:C}=_t(),{components:n}=F();return T.createElement(y,{defaultValue:a,control:C,name:t,render:({field:c,fieldState:u})=>{let m=p||n?.select;if(m){let l={label:e,name:t,options:o,defaultValue:a,description:i,onChange:d,...x};return T.createElement(m,{field:{...c,onChange:r(g=>{c.onChange(g),d?.(g)},"onChange")},fieldState:u,fieldData:l})}return T.createElement(N,{"data-field":t,className:`RemoteFlows__SelectField__Item__${t}`},T.createElement(h,{className:"RemoteFlows__SelectField__Label"},e),T.createElement(w,null,T.createElement("div",{className:"relative"},T.createElement(ke,{value:c.value||"",onValueChange:l=>{c.onChange(l),d?.(l)}},T.createElement(Le,{className:"RemoteFlows__SelectField__Trigger","aria-invalid":!!u.error,"aria-label":e},T.createElement("span",{className:"absolute"},T.createElement(Ie,{placeholder:e}))),T.createElement(Me,{className:"RemoteFlows__SelectField__Content"},T.createElement(Te,{className:"RemoteFlows__SelectField__Group"},o.map(l=>T.createElement(ze,{key:l.value,value:l.value,className:"RemoteFlows__SelectField__SelectItem"},l.label))))))),i&&T.createElement(R,null,i),u.error&&T.createElement(k,null))}})}r(Ee,"SelectField");import O,{useState as Rt}from"react";import{useFormContext as Dt}from"react-hook-form";import S,{Fragment as Pt,useState as bt}from"react";import{Check as St,ChevronDownIcon as Nt,X as wt}from"lucide-react";import*as H from"react";import{Command as K}from"cmdk";import{SearchIcon as Ir}from"lucide-react";import*as ht from"react";import*as V from"@radix-ui/react-dialog";import{XIcon as _r}from"lucide-react";function Ae({className:e,...t}){return H.createElement(K,{"data-slot":"command",className:s("bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md",e),...t})}r(Ae,"Command");function Be({className:e,...t}){return H.createElement(K.List,{"data-slot":"command-list",className:s("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",e),...t})}r(Be,"CommandList");function Ge({...e}){return H.createElement(K.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...e})}r(Ge,"CommandEmpty");function Ve({className:e,...t}){return H.createElement(K.Group,{"data-slot":"command-group",className:s("text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium",e),...t})}r(Ve,"CommandGroup");function Oe({className:e,...t}){return H.createElement(K.Separator,{"data-slot":"command-separator",className:s("bg-border -mx-1 h-px",e),...t})}r(Oe,"CommandSeparator");function Ue({className:e,...t}){return H.createElement(K.Item,{"data-slot":"command-item",className:s("data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...t})}r(Ue,"CommandItem");function Je({options:e,selected:t,onChange:o,placeholder:a,...i}){let[d,p]=bt(!1),x=r(n=>{o(t.filter(c=>c.value!==n.value))},"handleUnselect"),C=e.reduce((n,c)=>{let u=c.category||"Uncategorized";return n[u]||(n[u]=[]),n[u].push(c),n},{});return S.createElement(re,{open:d,onOpenChange:p,...i},S.createElement(ae,null,S.createElement(J,{variant:"outline",role:"combobox","aria-expanded":d,className:"w-full justify-between font-normal",type:"button"},S.createElement("div",{className:"flex gap-1 flex-wrap overflow-x-auto max-h-[2.5rem] items-center"},t.length>0?t.map(n=>S.createElement(ge,{key:n.label,variant:"secondary",className:"mr-1 mb-1"},n.label,S.createElement("div",{role:"button",tabIndex:0,"aria-label":`remove ${n.label}`,className:"ml-1 ring-offset-background rounded-full outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 cursor-pointer",onKeyDown:c=>{c.key==="Enter"&&x(n)},onMouseDown:c=>{c.preventDefault(),c.stopPropagation()},onClick:()=>x(n)},S.createElement(wt,{className:"h-3 w-3 text-muted-foreground hover:text-foreground"})))):S.createElement("span",{className:"text-foreground"},a)),S.createElement(Nt,{className:"size-4"}))),S.createElement(ne,{align:"start",className:"w-full p-0"},S.createElement(Ae,null,S.createElement(Be,null,S.createElement(Ge,null,"No item found."),Object.entries(C).map(([n,c],u)=>S.createElement(Pt,{key:n},u>0&&S.createElement(Oe,null),S.createElement(Ve,{heading:n},c.map(m=>{let l=t.some(g=>g.value===m.value);return S.createElement(Ue,{key:m.label,onSelect:()=>{o(l?t.filter(g=>g.value!==m.value):[...t,m])}},S.createElement(St,{className:s("mr-2 h-4 w-4",l?"opacity-100":"opacity-0")}),m.label)}))))))))}r(Je,"MultiSelect");function He({label:e,name:t,options:o,defaultValue:a,description:i,onChange:d,$meta:p,component:x,...C}){let{control:n}=Dt(),{components:c}=F(),[u,m]=Rt([]);return O.createElement(y,{defaultValue:a,control:n,name:t,render:({field:l,fieldState:g})=>{let _=x||c?.countries;if(_){let I={label:e,name:t,options:o,defaultValue:a,description:i,onChange:d,$meta:p,...C};return O.createElement(_,{field:{...l,onChange:r(A=>{l.onChange(A),d?.(A)},"onChange")},fieldState:g,fieldData:I})}let z=[...Object.entries(p?.regions||{}).map(([I,A])=>({value:A,label:I,category:"Regions"})),...Object.entries(p?.subregions||{}).map(([I,A])=>({value:A,label:I,category:"Subregions"})),...o.map(I=>({...I,value:I.value,label:I.label,category:"Countries"}))],ee=r(I=>{let A=I.map(({value:Qe})=>Qe);l.onChange(A),d?.(A),m(I)},"handleChange");return O.createElement(N,{"data-field":t,className:`RemoteFlows__CountryField__Item__${t}`},O.createElement(h,{className:"RemoteFlows__CountryField__Label"},e),O.createElement(w,null,O.createElement(Je,{options:z,selected:u,onChange:ee,...C})),i&&O.createElement(R,null,i),g.error&&O.createElement(k,null))}})}r(He,"CountryField");import*as M from"react";import{useFormContext as kt}from"react-hook-form";import*as se from"react";var pe=se.forwardRef(({className:e,...t},o)=>se.createElement("textarea",{className:s("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:o,...t}));pe.displayName="Textarea";function je({name:e,description:t,label:o,onChange:a,maxLength:i,component:d,...p}){let{components:x}=F(),{control:C}=kt();return M.createElement(y,{control:C,name:e,render:({field:n,fieldState:c})=>{let u=d||x?.textarea;if(u){let l={name:e,description:t,label:o,maxLength:i,...p};return M.createElement(u,{field:{...n,onChange:r(g=>{n.onChange(g),a?.(g)},"onChange")},fieldState:c,fieldData:l})}let m=n.value?.length??0;return M.createElement(N,{"data-field":e,className:`RemoteFlows__TextArea__Item__${e}`},M.createElement(h,{className:"RemoteFlows__TextArea__Label"},o),M.createElement(w,null,M.createElement(pe,{...n,value:n.value??"",onChange:l=>{n.onChange(l),a?.(l)},className:s(c.error&&"border-red-500 focus-visible:ring-red-500","RemoteFlows__TextArea__Input"),placeholder:o})),(t||i)&&M.createElement("div",{className:"flex items-center justify-between"},t&&M.createElement(R,{className:"RemoteFlows__TextArea__Description"},t),i&&M.createElement("span",{className:"text-sm ml-auto RemoteFlows__TextArea__MaxLength"},m,"/",i)),c.error&&M.createElement(k,{className:"RemoteFlows__TextArea__Error"}))}})}r(je,"TextAreaField");import ue from"react";import{useFormContext as Tt}from"react-hook-form";function $e(e){let{components:t}=F(),{control:o}=Tt(),a=e.component||t?.email;return a?ue.createElement(y,{control:o,name:e.name,render:({field:i,fieldState:d})=>ue.createElement(a,{field:{...i,onChange:r(p=>{i.onChange(p),e.onChange?.(p)},"onChange")},fieldState:d,fieldData:e})}):ue.createElement(W,{...e,type:"email"})}r($e,"EmailField");var ie={checkbox:Fe,text:W,email:$e,money:ce,select:Ee,radio:Re,number:ce,file:Pe,fieldset:ye,date:Ce,textarea:je,countries:He};import{cva as It}from"class-variance-authority";import*as le from"react";var Lt=It("relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",{variants:{variant:{default:"bg-card text-card-foreground",destructive:"text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90",warning:"bg-card bg-warning border-warning-border [&>svg]:text-current"}},defaultVariants:{variant:"default"}});function We({className:e,variant:t,...o}){return le.createElement("div",{"data-slot":"alert",role:"alert",className:s(Lt({variant:t}),e),...o})}r(We,"Alert");function Xe({className:e,...t}){return le.createElement("div",{"data-slot":"alert-title",className:s("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",e),...t})}r(Xe,"AlertTitle");function Ke({className:e,...t}){return le.createElement("div",{"data-slot":"alert-description",className:s("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",e),...t})}r(Ke,"AlertDescription");import{AlertCircle as Mt}from"lucide-react";import Z from"react";function qe({title:e,description:t,severity:o}){let{components:a}=F();if(a?.statement){let i=a?.statement;return Z.createElement(i,{data:{title:e,description:t,severity:o}})}return Z.createElement(We,{variant:"warning"},Z.createElement(Mt,{className:"h-4 w-4"}),e&&Z.createElement(Xe,null,e),Z.createElement(Ke,null,t))}r(qe,"Statement");import fe,{useEffect as zt}from"react";import{useFormContext as Et}from"react-hook-form";function Ye({name:e,value:t,description:o,statement:a}){let{setValue:i}=Et();return zt(()=>{i(e,t)},[]),fe.createElement("div",null,fe.createElement("p",{className:`text-sm RemoteFlows__ForcedValue__Title__${e}`,dangerouslySetInnerHTML:{__html:a.title}}),fe.createElement("p",{className:`text-xs RemoteFlows__ForcedValue__Description__${e}`,dangerouslySetInnerHTML:{__html:a.description||o}}))}r(Ye,"ForcedValueField");function Bt(e){return e.const!==void 0&&e.const===e.default&&e.inputType!=="checkbox"&&e.inputType!=="hidden"}r(Bt,"checkFieldHasForcedValue");var Wa=r(({fields:e,components:t})=>!e||e.length===0?null:U.createElement(U.Fragment,null,e.map(o=>{if(o.isVisible===!1||o.deprecated)return null;if(Bt(o))return U.createElement(Ye,{key:o.name,name:o.name,description:o.description,value:o.const,statement:o.statement});let a=ie[o.inputType];return o.inputType==="fieldset"?U.createElement(a,{...o,components:t}):a?U.createElement(At,{key:o.name},U.createElement(a,{...o,component:t&&t[o.inputType]}),o.statement?U.createElement(qe,{...o.statement}):null):U.createElement("p",{className:"error"},"Field type ",o.inputType," not supported")})),"JSONSchemaFormFields");export{Wa as a};
2
- //# sourceMappingURL=chunk-MIHU6CEZ.js.map