summaryrefslogtreecommitdiff
path: root/node_modules/@jet-app/app-store/tmp/src/common/metrics/helpers/media.js
blob: 0b12cf9c9b996ea4968843a8feec0e6c679a711c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import { isNothing, isSome } from "@jet/environment";
import * as objects from "../../../foundation/util/objects";
import * as metricsBuilder from "../builder";
import * as metricsLocation from "./location";
import * as misc from "./misc";
import * as metricsUtil from "./util";
//* *************************
//* Media Metrics
//* *************************
export function addMetricsEventsToVideo(objectGraph, video, options) {
    if (isNothing(video)) {
        return;
    }
    const mediaEventFields = misc.fieldsFromPageInformation(options.pageInformation);
    if (mediaEventFields === null) {
        return;
    }
    mediaEventFields["id"] = metricsUtil.emptyStringIfNullOrUndefined(options.id);
    const idType = metricsUtil.idTypeForMetricsOptions(options);
    if (isSome(idType)) {
        mediaEventFields["idType"] = idType;
    }
    mediaEventFields["type"] = "video";
    mediaEventFields["typeDetails"] = "iTunesStoreContent";
    mediaEventFields["location"] = metricsLocation.createContentLocation(objectGraph, options, "");
    if (options.actionDetails) {
        mediaEventFields["actionDetails"] = options.actionDetails;
    }
    video.templateMediaEvent = metricsBuilder.createMetricsMediaData(objectGraph, mediaEventFields);
    const clickEventFields = objects.shallowCopyOf(mediaEventFields);
    clickEventFields["actionUrl"] = video.videoUrl;
    video.templateClickEvent = metricsBuilder.createMetricsMediaClickData(objectGraph, null, "button", clickEventFields);
}
//# sourceMappingURL=media.js.map