Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 | 1x 1x 1x 1x 1x 1x 1x 1x 1x | import {
useTimeOffV2ActionsSelector,
useTimeOffV2StateSelector,
} from '../../TimeOffV2/context';
import { useApproverObserverData } from './useApproverObserverData';
import { useApproverObserverSelection } from './useApproverObserverSelection';
export const useApproverObserverScreen = () => {
const { form, isSearchOpen } = useTimeOffV2StateSelector(state => ({
form: state.form,
isSearchOpen: state.isSearchOpen,
}));
const toggleApprover = useTimeOffV2ActionsSelector(
actions => actions.toggleApprover,
);
const toggleObserver = useTimeOffV2ActionsSelector(
actions => actions.toggleObserver,
);
const {
employeeOptions,
extraUserOptions,
defaultApprovers,
defaultObservers,
isManager,
isLoading,
isError,
isLoadingExtraUsers,
isErrorExtraUsers,
} = useApproverObserverData();
const {
state: {
isOnBehalf,
currentRoleLabel,
role,
searchValue,
searchSelectedIds,
employeesFormatted,
approversFormatted,
observersFormatted,
onBehalfUserFormatted,
onBehalfUserSelected,
},
actions: {
setSearchValue,
handleSearchApprover,
handleSearchObserver,
handleSearchComplete,
handleToggleAvatarInSearchMode,
handlePressSwitchOnBehalf,
handlePressAvatarOnBehalf,
handleSubmitSearchInput,
},
} = useApproverObserverSelection({
employees: employeeOptions,
extraUsers: extraUserOptions,
defaultApprovers,
defaultObservers,
});
return {
state: {
form,
isSearchOpen,
isOnBehalf,
isManager,
isLoading,
isError,
isLoadingExtraUsers,
isErrorExtraUsers,
currentRoleLabel,
role,
searchValue,
searchSelectedIds,
employeesFormatted,
approversFormatted,
observersFormatted,
onBehalfUserFormatted,
onBehalfUserSelected,
},
actions: {
toggleApprover,
toggleObserver,
setSearchValue,
handleSearchApprover,
handleSearchObserver,
handleSearchComplete,
handleToggleAvatarInSearchMode,
handlePressSwitchOnBehalf,
handlePressAvatarOnBehalf,
handleSubmitSearchInput,
},
};
};
|