Skip to content

Commit

Permalink
Emoji: use EmojiOne 3.1's PNG assets
Browse files Browse the repository at this point in the history
  • Loading branch information
JoshyPHP committed Nov 11, 2017
1 parent 193dec9 commit 1fc40d1
Show file tree
Hide file tree
Showing 14 changed files with 1,988 additions and 69 deletions.
2 changes: 1 addition & 1 deletion docs/Bundles/Forum.md
Expand Up @@ -53,5 +53,5 @@ $html = TextFormatter::render($xml, [
echo $html;
```
```html
<blockquote><div><cite>John Doe escribió:</cite>Star Wars spoiler <img alt=":)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f642.svg"> <div class="spoiler"><div class="spoiler-header"><button onclick="var a=parentNode.nextSibling.style,b=firstChild.style,c=lastChild.style;b.display=a.display;a.display=c.display=(b.display)?'':'none'"><span>Mostrar</span><span style="display:none">Ocultar</span></button><span class="spoiler-title">Spoiler </span></div><div class="spoiler-content" style="display:none">Spocks kills Dumbledore</div></div></div></blockquote>
<blockquote><div><cite>John Doe escribió:</cite>Star Wars spoiler <img alt=":)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f642.png"> <div class="spoiler"><div class="spoiler-header"><button onclick="var a=parentNode.nextSibling.style,b=firstChild.style,c=lastChild.style;b.display=a.display;a.display=c.display=(b.display)?'':'none'"><span>Mostrar</span><span style="display:none">Ocultar</span></button><span class="spoiler-title">Spoiler </span></div><div class="spoiler-content" style="display:none">Spocks kills Dumbledore</div></div></div></blockquote>
```
2 changes: 1 addition & 1 deletion docs/Getting_started/Using_predefined_bundles.md
Expand Up @@ -30,7 +30,7 @@ assert(TextFormatter::unparse($xml) === $text);
```html
To-do list:
<ul>
<li> Say hello to the world <img alt=":)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f642.svg"></li>
<li> Say hello to the world <img alt=":)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f642.png"></li>
<li> Go to <a href="http://example.com">http://example.com</a></li>
<li> Try to trip the parser with <b>mis<i>nes</i></b><i>ted<u> tags</u></i></li>
<li> Watch this video: <span data-s9e-mediaembed="youtube" style="display:inline-block;width:100%;max-width:640px"><span style="display:block;overflow:hidden;position:relative;padding-bottom:56.25%"><iframe allowfullscreen="" scrolling="no" style="background:url(https://i.ytimg.com/vi/QH2-TGUlwu4/hqdefault.jpg) 50% 50% / cover;border:0;height:100%;left:0;position:absolute;width:100%" src="https://www.youtube.com/embed/QH2-TGUlwu4"></iframe></span></span></li>
Expand Down
2 changes: 1 addition & 1 deletion docs/Internals/API_changes.md
Expand Up @@ -22,7 +22,7 @@ The `branchTableThreshold` property of `s9e\TextFormatter\Configurator\RendererG

The `generateConditionals()` and `generateBranchTable()` methods of `s9e\TextFormatter\Configurator\RendererGenerators\PHP\Quick` have been removed.

The template used by the Emoji plugin is now hardcoded and defaults to using EmojiOne's SVG assets. The following methods have been removed from its configurator:
The template used by the Emoji plugin is now hardcoded and defaults to using EmojiOne 3.1's PNG assets. The following methods have been removed from its configurator:

* `forceImageSize()`
* `omitImageSize()`
Expand Down
2 changes: 1 addition & 1 deletion docs/Plugins/Emoji/Configuration.md
Expand Up @@ -14,5 +14,5 @@ $html = $renderer->render($xml);
echo $html;
```
```html
Hello world <img alt=":D" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f600.svg">
Hello world <img alt=":D" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f600.png">
```
2 changes: 1 addition & 1 deletion docs/Plugins/Emoji/Synopsis.md
Expand Up @@ -18,5 +18,5 @@ $html = $renderer->render($xml);
echo $html;
```
```html
Hello world <img alt="😀" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f600.svg">
Hello world <img alt="😀" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f600.png">
```
19 changes: 14 additions & 5 deletions scripts/patchEmoji.php
Expand Up @@ -5,11 +5,14 @@
$map = [];
$images = [];

$url = 'https://raw.githubusercontent.com/Ranks/emojione/master/emoji.json';
foreach (json_decode(wget($url, 'emojione-')) as $alias => $entry)
$url = 'https://raw.githubusercontent.com/Ranks/emojione-assets/master/emoji.json';
foreach (json_decode(wget($url, 'emojione-')) as $entry)
{
$map[$alias] = $entry->unicode;
$images[$entry->unicode] = 1;
$alias = trim($entry->shortname, ':');
$seq = removeMarks($entry->code_points->fully_qualified);

$map[$alias] = $seq;
$images[$seq] = 1;
}

$url = 'https://raw.githubusercontent.com/github/gemoji/master/db/emoji.json';
Expand Down Expand Up @@ -210,7 +213,13 @@ function utf8ToSeq($str)
}
while (++$i < strlen($str));

$seq = implode('-', $seq);
$seq = removeMarks(implode('-', $seq));

return $seq;
}

function removeMarks($seq)
{
$seq = str_replace('-fe0f', '', $seq);
$seq = str_replace('-200d', '', $seq);

Expand Down
4 changes: 2 additions & 2 deletions src/Bundles/Forum/Renderer.php

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/Plugins/Emoji/Configurator.php
Expand Up @@ -45,7 +45,7 @@ protected function setUp()
$tag->attributes->add($this->attrName)->filterChain->append(
$this->configurator->attributeFilters['#identifier']
);
$tag->template = '<img alt="{.}" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/{@seq}.svg"/>';
$tag->template = '<img alt="{.}" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/{@seq}.png"/>';
}

/**
Expand Down
4 changes: 2 additions & 2 deletions src/Plugins/Emoji/Parser.js

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions src/Plugins/Emoji/Parser.php

Large diffs are not rendered by default.

46 changes: 23 additions & 23 deletions tests/Bundles/data/Forum/021.html
@@ -1,23 +1,23 @@
<img alt=":)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f642.svg"><br>
<img alt=":-)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f642.svg"><br>
<img alt=";)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f609.svg"><br>
<img alt=";-)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f609.svg"><br>
<img alt=":D" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f600.svg"><br>
<img alt=":-D" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f600.svg"><br>
<img alt=":(" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/2639.svg"><br>
<img alt=":-(" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/2639.svg"><br>
<img alt=":-*" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f618.svg"><br>
<img alt=":P" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f61b.svg"><br>
<img alt=":-P" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f61b.svg"><br>
<img alt=":p" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f61b.svg"><br>
<img alt=":-p" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f61b.svg"><br>
<img alt=";P" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f61c.svg"><br>
<img alt=";-P" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f61c.svg"><br>
<img alt=";p" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f61c.svg"><br>
<img alt=";-p" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f61c.svg"><br>
<img alt=":?" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f615.svg"><br>
<img alt=":-?" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f615.svg"><br>
<img alt=":|" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f610.svg"><br>
<img alt=":-|" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f610.svg"><br>
<img alt=":o" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f62e.svg"><br>
<img alt=":lol:" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f602.svg">
<img alt=":)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f642.png"><br>
<img alt=":-)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f642.png"><br>
<img alt=";)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f609.png"><br>
<img alt=";-)" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f609.png"><br>
<img alt=":D" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f600.png"><br>
<img alt=":-D" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f600.png"><br>
<img alt=":(" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/2639.png"><br>
<img alt=":-(" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/2639.png"><br>
<img alt=":-*" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f618.png"><br>
<img alt=":P" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f61b.png"><br>
<img alt=":-P" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f61b.png"><br>
<img alt=":p" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f61b.png"><br>
<img alt=":-p" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f61b.png"><br>
<img alt=";P" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f61c.png"><br>
<img alt=";-P" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f61c.png"><br>
<img alt=";p" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f61c.png"><br>
<img alt=";-p" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f61c.png"><br>
<img alt=":?" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f615.png"><br>
<img alt=":-?" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f615.png"><br>
<img alt=":|" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f610.png"><br>
<img alt=":-|" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f610.png"><br>
<img alt=":o" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f62e.png"><br>
<img alt=":lol:" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f602.png">
6 changes: 3 additions & 3 deletions tests/Plugins/Emoji/ParserTest.php
Expand Up @@ -147,16 +147,16 @@ public function getRenderingTests()
return [
[
'😀',
'<img alt="😀" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f600.svg">'
'<img alt="😀" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f600.png">'
],
[
'😀',
'<img alt="😀" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f600.svg">',
'<img alt="😀" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/1f600.png">',
['tagName' => 'EMOTE']
],
[
':copyright::registered:#️⃣',
'<img alt=":copyright:" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/00a9.svg"><img alt=":registered:" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/00ae.svg"><img alt="#️⃣" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/0023-20e3.svg">'
'<img alt=":copyright:" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/00a9.png"><img alt=":registered:" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/00ae.png"><img alt="#️⃣" class="emoji" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/3.1/png/64/0023-20e3.png">'
],
];
}
Expand Down

0 comments on commit 1fc40d1

Please sign in to comment.