UNPKG

instantjob-recruiter-client

Version:

a set of tools for creating an instantjob recruiter react client

32 lines (28 loc) 944 B
import {tolerant_selector} from './base' import moment from '../common/moment' import { make_memoized, array_from_set, array_from_hash, split_array, filter_hash, map_hash, range, capitalize_first_letter, array_contains, } from '../common/utilities' import {event_intersects} from '../common/calendar' import {tolerant_equal} from './base' const get_raw_events = (state) => state.calendar.events const get_not_deleted_events = tolerant_selector( [get_raw_events], (events) => filter_hash(events, (e) => !e.deleted_at) ) export const get_user_events = make_memoized((user_id) => tolerant_selector( [get_not_deleted_events], (events) => split_array( array_from_hash(events).filter((event) => event.user_id == user_id), ({calenderable_type}) => { switch (calenderable_type) { case 'User': return 'user' case 'UserAgency': return 'agency' } }, ['user', 'agency'] ) ))