Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // lodash
- bonuses = bonuses.concat(_.map((data.bonus || {}).virtual_items, (item) => {
- return _.extend(item, {kind: 'virtual-item'});
- }));
- bonuses = bonuses.concat(_.map((data.bonus || {}).virtual_currency, (item: any) => {
- if (_.isEmpty(item.image_url)) {
- item.image_url = this.projectService.get('virtualCurrencyImage');
- }
- return _.extend(item, {kind: 'virtual-currency'});
- }));
- // ramda
- const getBonus = R.propOr({}, 'bonus');
- const addKind = (kind) => R.merge({kind});
- const imageUrlIsEmpty = R.compose(
- R.isNil,
- R.prop('image_url')
- );
- const setDefaultImageIfEmpty = (defaultImage) => R.cond([
- [imageUrlIsEmpty, R.merge({image_url: defaultImage})],
- [R.T, R.identity]
- ]);
- const setImageAndAddKind = R.compose(
- setDefaultImageIfEmpty(this.projectService.get('virtualCurrencyImage')),
- addKind('virtual_currency')
- );
- const processBonusesItems = R.compose(
- R.map(addKind('virtual-item')),
- R.propOr([], 'virtual_items'),
- getBonus
- );
- const processBonusesCurrency = R.compose(
- R.map(setImageAndAddKind),
- R.propOr([], 'virtual_currency'),
- getBonus
- );
- bonuses = bonuses.concat(processBonusesItems(bonuses));
- bonuses = bonuses.concat(processBonusesCurrency(bonuses));
- // lodash
- const attrName = _(item.unsatisfied_user_attributes)
- .map('name')
- .uniq()
- .value()
- .join(', ');
- // ramda
- const getAttrNamesAsString = R.compose(
- R.join(', '),
- R.uniq,
- R.map(R.prop('name'))
- );
- const attrName = getAttrNamesAsString(item.unsatisfied_user_attributes);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement