parse
Version:
Parse JavaScript SDK
29 lines • 1.06 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.track = track;
var _CoreManager = _interopRequireDefault(require("./CoreManager"));
function track(name, dimensions) {
name = name || '';
name = name.replace(/^\s*/, '');
name = name.replace(/\s*$/, '');
if (name.length === 0) {
throw new TypeError('A name for the custom event must be provided');
}
for (var key in dimensions) {
if (typeof key !== 'string' || typeof dimensions[key] !== 'string') {
throw new TypeError('track() dimensions expects keys and values of type "string".');
}
}
return _CoreManager.default.getAnalyticsController().track(name, dimensions);
}
var DefaultController = {
track: function (name, dimensions) {
var RESTController = _CoreManager.default.getRESTController();
return RESTController.request('POST', 'events/' + name, {
dimensions: dimensions
});
}
};
_CoreManager.default.setAnalyticsController(DefaultController);