@trusthab/composable-resources
Version:
migrating https://github.com/knetikmedia/hab-api/tree/integration/app/resources/composable
44 lines (35 loc) • 800 B
JavaScript
const _ = require('lodash');
const composer = require('../../mixin_loader');
module.exports = (App) => {
const { underscore } = require('inflected');
class UserLoginResource {
static mixins() {
return ['Kpi'];
}
getMetricId() {
return 'user_login';
}
getMetricType() {
return 'counter';
}
getValue() {
return 1;
}
customDimensions() {
return true;
}
getDimensions() {
const dimensions = _.pick(this.get('obj'), [
'username',
'personas'
]);
const { personas } = dimensions;
const type = personas && (personas.length > 0 ? personas[0] : null);
return {
username: dimensions.username,
type
};
}
}
return composer(UserLoginResource, App);
};