import React, {useMemo } from "react";
import { processOptions } from "../../_core";
import * as ReactShare from "react-share";
/**
* Componente que renderiza un contador de iteracciones sociales
* @name Reactor.Components.Social.SocialCounter
* @param {string} name
* @param {string} options
* @class
* @example
<social_counter ></social_counter>
*/
export const SocialCounter = ({ name, options, children }) => {
const Component = useMemo(() => counters[name], [name]);
const objOptions = useMemo(() => processOptions(options), [options]);
return (
<Component {...objOptions}>
{children}
</Component>
)
}
const counters = {
facebook: ReactShare.FacebookShareCount,
hatena: ReactShare.HatenaShareCount,
ok: ReactShare.OKShareCount,
pinterest: ReactShare.PinterestShareCount,
reddit: ReactShare.RedditShareCount,
tumblr: ReactShare.TumblrShareCount,
vk: ReactShare.VKShareCount
};