@logicwind/react-native-matomo-tracker
Version:
React-native plugin for matomo analytics
115 lines (114 loc) • 4.28 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.MediaType = void 0;
exports.createTracker = createTracker;
exports.disableTracking = disableTracking;
exports.enableTracking = enableTracking;
exports.setLogger = setLogger;
exports.setUserId = setUserId;
exports.setVisitorId = setVisitorId;
exports.startSession = startSession;
exports.trackCampaign = trackCampaign;
exports.trackCustomDimension = trackCustomDimension;
exports.trackDispatch = trackDispatch;
exports.trackDownload = trackDownload;
exports.trackEvent = trackEvent;
exports.trackGoal = trackGoal;
exports.trackImpression = trackImpression;
exports.trackInteraction = trackInteraction;
exports.trackMediaEvent = trackMediaEvent;
exports.trackOutlink = trackOutlink;
exports.trackScreen = trackScreen;
exports.trackSearch = trackSearch;
var _reactNative = require("react-native");
const LINKING_ERROR = `The package '@logicwind/react-native-matomo-tracker' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
ios: "- You have run 'pod install'\n",
default: ''
}) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
const ReactNativeMatomoTracker = _reactNative.NativeModules.ReactNativeMatomoTracker ? _reactNative.NativeModules.ReactNativeMatomoTracker : new Proxy({}, {
get() {
throw new Error(LINKING_ERROR);
}
});
function createTracker(uri = "", siteId = 0, token = "") {
return ReactNativeMatomoTracker.createTracker(uri, _reactNative.Platform.OS == "ios" ? siteId === null || siteId === void 0 ? void 0 : siteId.toString() : siteId, token);
}
function trackScreen(screenName, title, actionDimensions) {
return ReactNativeMatomoTracker.trackScreen(screenName, title, actionDimensions);
}
function trackEvent(category, action, name = "", value = 0, actionDimensions) {
return ReactNativeMatomoTracker.trackEvent(category, action, name, value, actionDimensions);
}
function trackDispatch() {
return ReactNativeMatomoTracker.trackDispatch();
}
function trackOutlink(url, actionDimensions) {
return ReactNativeMatomoTracker.trackOutlink(url, actionDimensions);
}
function trackSearch(keyword, actionDimensions) {
return ReactNativeMatomoTracker.trackSearch(keyword, actionDimensions);
}
function trackImpression(contentName, actionDimensions) {
return ReactNativeMatomoTracker.trackImpression(contentName, actionDimensions);
}
function trackInteraction(contentName, contentInteraction, actionDimensions) {
return ReactNativeMatomoTracker.trackInteraction(contentName, contentInteraction, actionDimensions);
}
function trackDownload(category, action, url, actionDimensions) {
return ReactNativeMatomoTracker.trackDownload(category, action, url, actionDimensions);
}
function setUserId(id) {
return ReactNativeMatomoTracker.setUserId(id);
}
function setVisitorId(visitorId) {
return ReactNativeMatomoTracker.setVisitorId(visitorId);
}
function disableTracking() {
return ReactNativeMatomoTracker.disableTracking();
}
function enableTracking() {
return ReactNativeMatomoTracker.enableTracking();
}
function setLogger() {
return ReactNativeMatomoTracker.setLogger();
}
function startSession() {
return ReactNativeMatomoTracker.startSession();
}
function trackCampaign(title, campaignUrl, actionDimensions) {
return ReactNativeMatomoTracker.trackCampaign(title, campaignUrl, actionDimensions);
}
function trackMediaEvent({
siteId,
mediaId,
mediaTitle,
playerName,
mediaType,
mediaResource,
mediaStatus,
mediaLength = "",
mediaProgress = "",
mediaTTP = "",
mediaWidth = "",
mediaHeight = "",
mediaSE = "",
mediaFullScreen = "",
dimension = []
}) {
return ReactNativeMatomoTracker.trackMedia(siteId, mediaId, mediaTitle, playerName, mediaType, mediaResource, mediaStatus, mediaLength, mediaProgress, mediaTTP, mediaWidth, mediaHeight, mediaSE, mediaFullScreen, dimension);
}
function trackCustomDimension({
dimensions
}) {
return ReactNativeMatomoTracker.trackCustomDimension(dimensions);
}
function trackGoal(goalId, revenue, actionDimensions) {
return ReactNativeMatomoTracker.trackGoal(goalId, revenue, actionDimensions);
}
const MediaType = exports.MediaType = {
VIDEO: 'video',
AUDIO: "audio"
};
//# sourceMappingURL=index.js.map