ringcentral-widgets
Version:
RingCentral Integration Widget Library
51 lines (46 loc) • 1.65 kB
text/typescript
import { RecentMessages } from 'ringcentral-integration/modules/RecentMessagesV2';
import { RecentCalls } from 'ringcentral-integration/modules/RecentCallsV2';
import { Locale } from 'ringcentral-integration/modules/LocaleV2';
import { NormalizedSession } from 'ringcentral-integration/interfaces/Webphone.interface';
import { Entity } from 'ringcentral-integration/interfaces/Entity.interface';
import {
DateTimeFormat,
FormatDateTimeOptions,
} from 'ringcentral-integration/modules/DateTimeFormatV2';
import { ContactMatcher } from 'ringcentral-integration/modules/ContactMatcherV2';
import { HistoryCall } from 'ringcentral-integration/modules/CallHistoryV2';
import { Tab } from './getTabs';
export interface RecentActivityUIOptions {
//
}
export interface Deps {
locale: Locale;
dateTimeFormat: DateTimeFormat;
recentMessages: RecentMessages;
recentCalls: RecentCalls;
contactMatcher: ContactMatcher;
recentActivityUIOptions?: RecentActivityUIOptions;
}
export interface RecentActivityContainerProps {
currentLocale?: string;
navigateTo: (path: string) => void;
dateTimeFormatter?: (options: Partial<FormatDateTimeOptions>) => string;
getSession: () => NormalizedSession;
useContact?: boolean;
getContact?: () => Entity;
showRecentCalls?: boolean;
showRecentMessage?: boolean;
showFax?: boolean;
showVoiceMails?: boolean;
}
// TODO: move to `RecentActivityPanel`
export interface RecentActivityPanelProps {
currentLocale: string;
title: string;
showSpinner: boolean;
currentContact: Entity;
calls: Record<string, HistoryCall[]>;
tabs: Tab[];
defaultTab: string;
className?: string;
}