172 lines
3.7 KiB
TypeScript
172 lines
3.7 KiB
TypeScript
import { IPredefinedAddressScreenTemplate } from '@interfaces/template.types';
|
|
import { CaseDetailStackEnum } from '@screens/caseDetails/CaseDetailStack';
|
|
import { StyleProp, ViewStyle } from 'react-native';
|
|
|
|
export interface ILabel {
|
|
label: string;
|
|
val: string;
|
|
}
|
|
|
|
export interface ILatestFeedback {
|
|
locationReferenceId: string;
|
|
latestFeedbackStatus: string;
|
|
latestFeedbackStatusTag: string;
|
|
latestFeedbackTimestamp: number;
|
|
feedbackColourCode: string;
|
|
feedbackBgColourCode: string;
|
|
isSuspicious: boolean;
|
|
feedbackPresent: boolean;
|
|
promiseToPayDate: string;
|
|
}
|
|
|
|
export interface ILocationData {
|
|
referenceId: string;
|
|
customerReferenceId: string;
|
|
addressText: string;
|
|
pinCode: string;
|
|
city: string;
|
|
latitude: number;
|
|
longitude: number;
|
|
visited: boolean;
|
|
rank: number;
|
|
timestamp: number;
|
|
similarLocationEntities: ISimilarAddressEntity[];
|
|
labels: ILabel[];
|
|
relatedLocationIds: string[];
|
|
latestFeedback: ILatestFeedback;
|
|
locationSubType: string;
|
|
isGeoCoordinatesReliable: boolean;
|
|
}
|
|
|
|
export interface ILocationDetails {
|
|
locationDetails: ILocationData;
|
|
}
|
|
|
|
export interface ITopAddressItem extends ILocationDetails {
|
|
caseId: string;
|
|
isCoachMarkVisible: boolean;
|
|
}
|
|
|
|
export interface ITopAddressItemHeader {
|
|
locationDetails: ILocationData;
|
|
isCoachMarkVisible?: boolean;
|
|
isOtherAddressView?: boolean;
|
|
containerStyle?: StyleProp<ViewStyle>;
|
|
addressItemRef?: React.MutableRefObject<null>;
|
|
isSimilarAddressPage?: boolean;
|
|
}
|
|
|
|
export interface ITopAddressItemFeedback {
|
|
latestFeedback: ILatestFeedback;
|
|
}
|
|
|
|
export interface ITopAddressItemTags {
|
|
clusterLabels: ILabel[];
|
|
}
|
|
|
|
export interface ITopAddressItemAddressString {
|
|
locationDetails: ILocationData;
|
|
showMapIcon?: boolean;
|
|
caseId: string;
|
|
actionContainerStyle?: StyleProp<ViewStyle>;
|
|
}
|
|
|
|
export interface ITopAddressItemBottomActions extends ILocationDetails {
|
|
caseId: string;
|
|
}
|
|
|
|
export interface ITopAddressItemRankTag {
|
|
rank: number;
|
|
visited: boolean;
|
|
}
|
|
|
|
export interface ITopAddressSimilarAddresses extends ILocationDetails {
|
|
caseId: string;
|
|
}
|
|
interface ISimilarAddressEntity {
|
|
id: string;
|
|
addressText: string;
|
|
pinCode: string;
|
|
city: string;
|
|
state: string;
|
|
source: string;
|
|
order: number;
|
|
capturedAt: number;
|
|
}
|
|
|
|
export interface ITopAddressSimilarAddressCard {
|
|
similarAddressDetails: ISimilarAddressEntity;
|
|
caseId: string;
|
|
}
|
|
|
|
export interface IOtherAddressItem extends ILocationDetails {
|
|
caseId: string;
|
|
}
|
|
|
|
export interface IFeedbackAddress {
|
|
referenceId: string;
|
|
addressText: string;
|
|
city: string;
|
|
pinCode: string;
|
|
rank: number;
|
|
source: string;
|
|
capturedAt: string;
|
|
locationType: string;
|
|
}
|
|
|
|
export interface IFeedbackAddressMap {
|
|
locationType: string;
|
|
}
|
|
|
|
export enum LocationType {
|
|
GEO_LOCATION = 'GEO_LOCATION',
|
|
SKIP_TRACE_ADDRESS = 'SKIP_TRACE_ADDRESS',
|
|
CUSTOMER_OUTREACH_ADDRESS = 'CUSTOMER_OUTREACH_ADDRESS',
|
|
}
|
|
|
|
export interface IOtherAddressActions extends ILocationDetails {
|
|
caseId: string;
|
|
}
|
|
|
|
export interface IOtherAddresses {
|
|
route: {
|
|
params: {
|
|
loanAccountNumber: string;
|
|
caseId: string;
|
|
};
|
|
};
|
|
}
|
|
|
|
export interface IOtherAddressList {
|
|
caseId: string;
|
|
}
|
|
|
|
export interface ITopAddress {
|
|
route: {
|
|
params: {
|
|
loanAccountNumber: string;
|
|
caseId: string;
|
|
scrollToIndex?: number;
|
|
};
|
|
};
|
|
}
|
|
|
|
export interface ITopAddressOtherAddressesItem {
|
|
caseId: string;
|
|
}
|
|
|
|
export interface IOpenOldFeedbacks {
|
|
loanAccountNumber: string;
|
|
addressText: string;
|
|
relatedLocationIds: string[];
|
|
referenceId: string;
|
|
caseId: string;
|
|
}
|
|
|
|
export interface INavigateToAddFeedbackScreen {
|
|
prefilledAddressScreenTemplate: IPredefinedAddressScreenTemplate | undefined;
|
|
caseId: string;
|
|
referenceId: string;
|
|
screen: CaseDetailStackEnum;
|
|
}
|