analytics-plugin-hubspot
Version:
HubSpot plugin for 'analytics' module
90 lines (76 loc) • 2.31 kB
JavaScript
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
function _objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === 'function') {
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
}
ownKeys.forEach(function (key) {
_defineProperty(target, key, source[key]);
});
}
return target;
}
var config = {};
var NAMESPACE = 'hubspot';
var logMessage = function logMessage() {
console.log("".concat(NAMESPACE, " not available in node.js yet. Todo implement https://www.npmjs.com/package/hubspot"));
};
/* Export the integration */
function hubspotPlugin() {
var userConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
// Allow for userland overides of base methods
return {
NAMESPACE: NAMESPACE,
config: _objectSpread({}, config, userConfig),
initialize: function initialize(_ref) {
var config = _ref.config;
logMessage();
},
// page view
page: function page(_ref2) {
var payload = _ref2.payload,
config = _ref2.config;
logMessage();
},
// track event
track: function track(_ref3) {
var payload = _ref3.payload,
config = _ref3.config;
logMessage();
},
// identify user
identify: function identify(_ref4) {
var payload = _ref4.payload;
/* TODO:
hubspot.contacts.get(opts)
hubspot.contacts.getByEmail(email)
hubspot.contacts.getByEmailBatch(emails)
hubspot.contacts.getById(id)
hubspot.contacts.getByIdBatch(ids)
hubspot.contacts.getByToken(utk)
hubspot.contacts.update(id, data)
hubspot.contacts.create(data)
*/
logMessage();
}
};
}
/* This module will shake out unused code and work in browser and node 🎉 */
var index = hubspotPlugin;
export default index;