Closed exah closed 8 years ago
Во-первых, не очень круто, что этот PR включает в себя другой PR (Fix duplicate messages). Если возможно, лучше разные правки держать раздельно.
Смысла в том, чтобы делать parser.process(text).use(emoji, md)
вместо md(emoji(text))
не вижу. Может быть, так создается "ощущение плугинистости", но в данном месте это просто лишняя абстракция.
Более того, даже эта абстракция некорректна. md
принимает текст, а возвращает html. Он может быть только последним звеном в цепочке трансформаций. Ну и поскольку emoji
подменяет теги эмодзи на md-разметку, то он может быть только непосредственно до md
.
Я бы оставил только (реально полезные!) функции emoji
и md
, и сделал бы react-компонент MessageBody
, который показывает тела сообщений, используя эти функции.
Неприятно отвергать чей-то код, но -1.
Класс
Parser
не обязательный, если его убрать, можно использовать чистые функции.Но мне, кажется более читабельно будет перечислять плагины через запятую
youtube, twitter, md, emoji
, чем оборачивать их в кучу функций, типаyoutube(twitter(md(emoji(text))))
особенно если их будет много.