measurement-framework
Version:
Collection of Javascript code to implement a browser based measurement system for websites. It uses a cookie to store a users action on a webpage and let you map thoose actions to a particular state in the user journey.
30 lines (27 loc) • 949 B
JavaScript
import window from "window"
import forEach from "lodash-es/forEach"
import dataLayerPush from "./helpers/dataLayerPush"
function klarnaCheckout(klarnaCheckoutCallback) {
if (window._klarnaCheckout) {
let klarnaEvents = ["change", "shipping_address_change", "order_total_change", "can_not_complete_order"]
let callBackObj = {}
forEach(klarnaEvents, function (klarnaEvent) {
callBackObj[klarnaEvent] = function (data) {
let dlObj = {
"klarna": data
}
klarnaCheckoutCallback(dlObj)
dataLayerPush(dlObj, "Klarna Checkout")
}
})
console.log(callBackObj)
window._klarnaCheckout(function (api) {
console.log("Klarna mounted")
console.log(api)
api.on(callBackObj)
})
} else {
console.log("no klarna")
}
}
export default klarnaCheckout