@kiwicom/smart-faq
Version:
Smart FAQ
34 lines (27 loc) • 839 B
JavaScript
// @noflow
import * as React from 'react';
import { track } from '../../../shared/cuckoo/tracker';
import type {
Subcategory,
CuckooAction,
CuckooProps,
} from '../../../shared/cuckoo/cuckooTypes';
/* @deprecated in favor of LogMount */
const LogladyTracker = <TargetProps>(
TargetComponent: React.ComponentType<TargetProps>,
subcategory: Subcategory,
action: CuckooAction,
payloadBuilder?: (props: TargetProps) => CuckooProps,
): React.ComponentType<TargetProps> => {
class LogladyTracked extends React.Component<TargetProps> {
componentDidMount() {
const payload = payloadBuilder ? { ...payloadBuilder(this.props) } : {};
track(subcategory, action, payload);
}
render() {
return <TargetComponent {...this.props} />;
}
}
return LogladyTracked;
};
export default LogladyTracker;