@usebridge/sdk-react 0.2.2 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1933,8 +1933,8 @@ var useEligibilityInput = () => {
1933
1933
 
1934
1934
  // src/hard-eligibility/use-hard-eligibility-submit.ts
1935
1935
  import {
1936
- dateToDateObject,
1937
- HardEligibility as HardEligibility2
1936
+ HardEligibility as HardEligibility2,
1937
+ dateToDateObject
1938
1938
  } from "@usebridge/sdk-core";
1939
1939
 
1940
1940
  // src/eligibility-input/use-eligibility-input-field.ts
@@ -2032,30 +2032,33 @@ function useEligibilityInputIsValid() {
2032
2032
  // src/hard-eligibility/use-hard-eligibility-submit.ts
2033
2033
  function useHardEligibilitySubmit() {
2034
2034
  const session = useHardEligibilitySession();
2035
- const { payer, state, firstName, lastName, memberId, dateOfBirth } = useEligibilityInput();
2036
- const { isVisible: isMemberIdVisible, isRequired: isMemberIdRequired } = useEligibilityInputField("memberId");
2035
+ const { state, payer, firstName, lastName, dateOfBirth, memberId } = useEligibilityInput();
2037
2036
  const { status } = useHardEligibilityState();
2038
- const inputIsValid = useEligibilityInputIsValid();
2037
+ const usesExistingPolicy = session.usesExistingPolicy;
2038
+ const inputIsValid = usesExistingPolicy ? Boolean(state.value) : useEligibilityInputIsValid();
2039
2039
  const isDisabled = !inputIsValid || !HardEligibility2.canSubmit(status);
2040
2040
  const submit = useCallback4(
2041
2041
  ({ clinicalInfo } = {}) => {
2042
- if (!payer.value) throw new Error("Payer is required");
2043
2042
  if (!state.value) throw new Error("State is required");
2044
- if (!firstName.value) throw new Error("First name is required");
2045
- if (!lastName.value) throw new Error("Last name is required");
2046
- if (!dateOfBirth.value) throw new Error("Date of birth is required");
2047
- if (isMemberIdRequired && !memberId.value) throw new Error("Member ID is required");
2048
- return session.submit({
2049
- payerId: payer.value.id,
2043
+ const submitArgs = {
2050
2044
  state: state.value,
2051
- firstName: firstName.value,
2052
- lastName: lastName.value,
2053
- memberId: isMemberIdVisible ? memberId.value : void 0,
2054
- dateOfBirth: dateToDateObject(dateOfBirth.value),
2055
2045
  clinicalInfo
2056
- });
2046
+ };
2047
+ if (!session.usesExistingPolicy) {
2048
+ if (!payer.value || !firstName.value || !lastName.value || !dateOfBirth.value) {
2049
+ throw new Error("Patient information is required");
2050
+ }
2051
+ submitArgs.patient = {
2052
+ payerId: payer.value.id,
2053
+ firstName: firstName.value.trim(),
2054
+ lastName: lastName.value.trim(),
2055
+ dateOfBirth: dateToDateObject(dateOfBirth.value),
2056
+ memberId: memberId.value?.trim() || void 0
2057
+ };
2058
+ }
2059
+ return session.submit(submitArgs);
2057
2060
  },
2058
- [session, payer, state, firstName, lastName, dateOfBirth, memberId]
2061
+ [session, state, payer, firstName, lastName, dateOfBirth, memberId]
2059
2062
  );
2060
2063
  return useMemo4(() => ({ isDisabled, submit }), [isDisabled, submit]);
2061
2064
  }