Scott Dodge
4c6f8c54c1
Add emoji prop change check to Emoji component
2017-01-17 23:58:43 -06:00
Etienne Lemay
7e2adc60a2
Merge pull request #29 from savardc/master
...
Fix issue with operator in skin tone logic
2017-01-16 16:42:47 -05:00
Trevor Rundell
c3aae4fb04
wrap localStorage access in try-catch
...
Many browsers may support localStorage, but disable access to it in certain situations. For example, Safari private browsing mode will raise an exception if you try to access localStorage from a third-party domain, resulting in unhandled errors like...
> QuotaExceededError: DOM Exception 22: An attempt was made to add something to storage that exceeded the quota.
The easiest way to handle this for optional features is to simply try-catch all access to localStorage.
2017-01-15 10:52:54 -05:00
Christian Savard
0db181e301
Fix issue with operator in skin tone logic
2016-12-12 21:33:06 -05:00
Etienne Lemay
672a6a4dfc
💄
2016-12-07 20:57:42 -05:00
Etienne Lemay
0295f673b1
Merge pull request #27 from anri-asaturov/master
...
Allow custom namespace for store
2016-12-07 20:56:43 -05:00
Christian Savard
771b1e48f3
Use children passed through props
2016-12-07 15:04:39 -05:00
Anri Asaturov
b3752574b2
Allow custom namespace for store
2016-12-07 01:23:35 +02:00
Etienne Lemay
462ba0cd26
Use dynamic version of emoji-datasource for the default sheet URL
2016-11-30 20:59:56 -05:00
Etienne Lemay
0d39e10a71
Don’t check for backgroundImageFn change in Category#shouldComponentUpdate
...
If the Fn is an anonymous function, it would always re-render the categories even when no other props change.
2016-11-30 20:31:02 -05:00
Marco Munizaga
a4be90aa6e
Add backgroundImageFn to allow local image sheets
2016-11-30 15:16:47 -08:00
Etienne Lemay
dad72bc0fb
Add `native` prop to Emoji
2016-11-01 11:54:25 -04:00
Etienne Lemay
f3c1e94213
Export `unifiedToNative` utils
2016-11-01 11:51:55 -04:00
Etienne Lemay
c4604741d9
Support :colons: syntax
...
i.e. 👍 , 👍 :skin-tone-3:
2016-11-01 11:51:19 -04:00
Etienne Lemay
1dfa58239f
💄
2016-10-26 23:27:55 -04:00
Etienne Lemay
4bc68419b2
Add i18n prop to Picker [ Close #20 ]
2016-10-26 23:23:49 -04:00
Etienne Lemay
86ac1d4ac8
Add sheetSize prop to Picker & Emoji [ Close #18 ]
2016-10-26 21:47:21 -04:00
Etienne Lemay
afe882560e
Set Emoji.propTypes.skin as an enum
2016-10-26 21:11:29 -04:00
Etienne Lemay
ecc086260a
Set Emoji.propTypes.set as an enum
2016-10-26 20:59:21 -04:00
Etienne Lemay
4f2b204c0e
Remove “sheetURL” props & add “set” props
...
- Use sheets from emoji-data repo (from a CDN)
- Easier to setup/use
- Remove sheets from the repo
2016-10-18 21:21:56 -04:00
Etienne Lemay
35a992118a
Use hasOwnProperty to detect if emoji exists
...
Fixes a bug in Firefox where “watch” emoji would throw because apparently `_emojiData = data.emojis['watch']` returns a function instead of the value of the watch key
2016-10-18 19:00:51 -04:00
Etienne Lemay
996c46cd9c
Also split search terms at “-” & “_”
...
Like we do when building the search string in `build-data.js`
2016-10-14 15:56:17 -04:00
Etienne Lemay
44f9914b25
Handle “-1” search
2016-10-14 15:43:18 -04:00
Etienne Lemay
dc93357137
Fix “Recent” category showing up when clicking an emoji for the first time while searching
2016-10-13 21:38:24 -04:00
Etienne Lemay
2aece93395
Support all short_names when getting emoji data [ Fix #15 ]
2016-10-13 16:19:46 -04:00
Etienne Lemay
8f64b3c7d1
Handle unknown emojis [ Fix #14 ]
2016-10-12 20:26:10 -04:00
Etienne Lemay
903395e31f
💄
2016-10-03 21:16:35 -04:00
Etienne Lemay
f31a359f78
Add support for server-side rendering [ Fix #7 ]
2016-10-03 21:16:20 -04:00
Etienne Lemay
7028383509
Update webpack React externals [ Fix #11 , Fix #8 ]
2016-09-29 21:02:05 -04:00
Etienne Lemay
9648c7d8e2
🏬 Emoji Mart™
2016-07-27 11:35:12 -04:00
Etienne Lemay
f7fd6e7d05
Sort search results by score [ Close #1 ]
2016-07-26 15:31:27 -04:00
Etienne Lemay
2b734d8ef6
Export frequently util
2016-07-26 14:53:53 -04:00
Etienne Lemay
65f046b5f3
Force “-” search to only return “-1” emoji
2016-07-22 16:29:05 -04:00
Etienne Lemay
5721f5f694
Support searching for multiple (2) terms
2016-07-22 16:05:14 -04:00
Etienne Lemay
7e9835dd80
utils#intersect
2016-07-22 16:04:30 -04:00
Etienne Lemay
be1e6705c3
Use custom search index instead of lunr
...
Builds the index as the user search
Supports substring search
2016-07-22 14:32:11 -04:00
Etienne Lemay
8da2aa3744
Remove unused fields from data
2016-07-22 12:23:47 -04:00
Etienne Lemay
2d3f789079
Make anchors color customizable
2016-07-21 15:33:18 -04:00
Etienne Lemay
4006308614
Pass native event to mouse handlers
2016-07-21 15:10:33 -04:00
Etienne Lemay
c1c604e8f1
Export sanitized list of emojis in emoji-index
2016-07-20 14:50:44 -04:00
Etienne Lemay
0ebd5c4a5e
Fix circular dependencies
2016-07-20 14:50:44 -04:00
Etienne Lemay
1f5c8dd885
Don’t fallback to `skin: 1` for emojis without skin variations
2016-07-20 14:50:44 -04:00
Etienne Lemay
813f61c3d4
Expose store
2016-07-20 14:50:44 -04:00
Etienne Lemay
e15e5e5bd8
Export emoticons list as an object with emoji id
2016-07-20 14:50:44 -04:00
Etienne Lemay
a51626ae79
Move some reusable logic into utils
2016-07-20 14:50:44 -04:00
Etienne Lemay
ae8dfb4e60
Fix search results when rendering emojis from object
2016-07-18 15:14:46 -04:00
Etienne Lemay
b07e598a8a
Return emoji object in search results
2016-07-18 15:13:23 -04:00
Etienne Lemay
87d3228d0d
Clear search results when unmounting Picker
2016-07-18 14:42:21 -04:00
Etienne Lemay
c3dca431ef
Build and expose a list of all emoticons in emoji-index
2016-07-18 14:33:06 -04:00
Etienne Lemay
2d05276dc4
Fix tokenization of +1/-1 emojis
2016-07-18 14:23:28 -04:00
Etienne Lemay
b0893c39be
Make picker’s title and emoji customizable
2016-07-15 12:50:06 -04:00
Etienne Lemay
2feae02477
Do not use deprecated `isMounted`
2016-07-15 12:31:22 -04:00
Etienne Lemay
9eb8f0b6ac
Only render first 3 categories on first render
2016-07-15 12:24:50 -04:00
Etienne Lemay
f843ad5776
Use <div> instead of <span> w/ <br>
2016-07-12 16:52:18 -04:00
Etienne Lemay
d9f5cd3101
Fix external React lib name
2016-07-11 15:21:13 -04:00
Etienne Lemay
820bb3d966
Do not generate .map files
2016-07-11 15:04:58 -04:00
Etienne Lemay
12878d7d92
Expose emojiIndex
2016-07-11 14:21:44 -04:00
Etienne Lemay
042c381d3e
Support inline picker style
2016-07-11 14:08:41 -04:00
Etienne Lemay
5ebf4464ea
Move search index logic out of search component
2016-07-11 11:28:44 -04:00
Etienne Lemay
510d4b30fd
Add maxResults to Search component
2016-07-08 17:05:26 -04:00
Etienne Lemay
dba6d60a08
Completely hide categories with no emojis
2016-07-08 17:03:41 -04:00
Etienne Lemay
1a3f2525b9
Clear search results when clicking a category anchor
2016-07-08 16:28:43 -04:00
Etienne Lemay
47f2341f53
Refactor search
2016-07-08 14:48:24 -04:00
Etienne Lemay
49ec3b9efe
Normalize emoticons when building data
2016-07-07 17:22:40 -04:00
Etienne Lemay
9e57de33ce
Add emoticons to search index
2016-07-07 17:12:45 -04:00
Etienne Lemay
573ef818f5
List emoticons in emoji preview
...
Ignore when same but lowercase/uppercase
2016-07-07 17:05:37 -04:00
Etienne Lemay
19eea428b8
Manually tokenize search terms and emoji indexes
2016-07-07 17:05:15 -04:00
Etienne Lemay
6237fb7fac
Use category labels based on Apple’s
2016-07-07 14:43:01 -04:00
Etienne Lemay
de98e7a729
Add emojis to recent category on click
2016-07-07 14:33:53 -04:00
Etienne Lemay
a922dbb8c5
Add frequently utils
...
Store and returns frequently used emojis.
If not already in the frequently used, last used emoji will always be added to the array.
2016-07-07 14:33:53 -04:00
Etienne Lemay
75535b7a30
Store skin and use as default
...
Never use `props.skin` once skin is stored
2016-07-07 14:33:53 -04:00
Etienne Lemay
8a022b69fa
Add store utils
2016-07-07 14:33:53 -04:00
Etienne Lemay
122afc07ce
Move raf-polyfill into src/vendor
2016-07-06 15:47:39 -04:00
Etienne Lemay
f202a0282e
Simplify emojis `background-size` and `background-position`
2016-07-06 11:25:13 -04:00
Etienne Lemay
f8165922b5
Add skin picker
2016-06-08 20:22:29 -04:00
Etienne Lemay
5b250ce1db
Scroll to category on anchor click
2016-06-02 14:58:19 -04:00
Etienne Lemay
9d10aa635b
Add index.js to folders
2016-06-02 13:21:31 -04:00
Etienne Lemay
bb70daf89a
Add categories anchors
2016-06-02 11:30:30 -04:00
Etienne Lemay
d9ec7c0352
Add categories SVGs
...
EmojiOne SVGs cleaned up with SVGO cli tool
2016-06-02 11:30:29 -04:00
Etienne Lemay
05857bc8d5
💄
2016-06-01 15:26:19 -04:00
Etienne Lemay
49b8c2d6be
DRY preview/title
2016-06-01 15:25:45 -04:00
Etienne Lemay
ecd2eb5e74
Add “No emoji found” to empty search results
2016-06-01 11:38:11 -04:00
Etienne Lemay
4964d642cf
Update preview default state
2016-06-01 11:05:19 -04:00
Etienne Lemay
030251f2dc
Format emoji data on click
2016-06-01 11:01:59 -04:00
Etienne Lemay
035653cbca
Add skin support to picker
2016-06-01 10:09:15 -04:00
Etienne Lemay
e23d5ce53e
<Emoji /> can either receive an emoji object or short_name
2016-06-01 10:09:15 -04:00
Etienne Lemay
9f99155031
Update Picker default emojiSize
2016-06-01 10:09:15 -04:00
Etienne Lemay
a14ee48c6d
Reset preview when not hovering emojis anymore
2016-06-01 10:09:14 -04:00
Etienne Lemay
fed3733eb4
💄
2016-06-01 10:09:14 -04:00
Etienne Lemay
895a31fecd
Force picker width in px
2016-06-01 10:09:13 -04:00
Etienne Lemay
c3f1c6c661
Implement search
2016-06-01 10:09:11 -04:00
Etienne Lemay
21bb9eb63e
Sticky categories label
2016-06-01 10:08:39 -04:00
Etienne Lemay
e108b00768
Initial commit
2016-06-01 10:07:23 -04:00