Commit Graph

264 Commits (cd29d5b9f62a4820c3d898d55742cd1084322aee)

Author SHA1 Message Date
Etienne Lemay af2fdc71a1
Add `defaultSkin` prop to Picker and allow forcing skin tone with `skin` prop [Ref #165] 2018-03-02 13:45:33 -05:00
Etienne Lemay b0753769fb
Add `onSkinChange` prop to Picker [Close #165] 2018-03-02 13:33:14 -05:00
Etienne Lemay fed9a89c78
Set RECENT_CATEGORY, CUSTOM_CATEGORY and SEARCH_CATEGORY on Picker instances [Fix #166] 2018-03-02 13:25:39 -05:00
vcervellera 88d7e2f506 Emptying custom category when custom prop is cleared 2018-02-22 09:58:10 -05:00
syokenz 6e4dd6765c change to return -1 in Categories sort compareFunction 2018-02-15 22:39:17 +09:00
Etienne Lemay e5441d637e
Merge pull request #159 from scttcper/master
remove unused name
2018-01-15 17:03:42 -05:00
Scott Cooper 8e83059f58 remove unused name 2018-01-10 22:41:50 -08:00
Andrew Beaven 238b2d2ff2 Remove Emoji fallback defaultProp 2018-01-11 10:45:02 +13:00
Andrew Beaven 4008363e73 Don't render fallback inside an emoji `<span>` 2018-01-10 11:38:30 +13:00
Andrew Beaven 818b4a1600 Emoji fallback shouldn't apply styling #157 2018-01-10 11:24:51 +13:00
Etienne Lemay 68a4711658 💄 2018-01-09 15:20:18 -05:00
Etienne Lemay 6d095a072c Add `html` props to Emoji component [Ref #79] 2018-01-09 15:16:59 -05:00
Etienne Lemay 3fa0331d60 Support providing a fallback to unsupported emojis [Fix #157] 2018-01-09 15:16:59 -05:00
Mark Wadden 3c924a1619 Bug fix to ensure that the category ids are not dropped aftering being filtered. 2017-12-21 22:24:36 -05:00
Etienne Lemay e78609b5c0 💄 2017-12-15 15:31:49 -05:00
Etienne Lemay 1119d60b6e Use categories id in SVGs 2017-12-15 15:30:58 -05:00
Etienne Lemay 8f63c38308 Use 256-color indexed sheets by default
Reduces sheets size by half
2017-12-15 15:23:15 -05:00
Etienne Lemay e4977e4f0d Update emoji-datasource to 4.0.2 2017-12-15 15:12:50 -05:00
Etienne Lemay 453f723d5e Fix include / exclude [Fix #149]
Since fdf3c2d
2017-12-15 15:09:46 -05:00
Etienne Lemay 992cd65e81 Sheets now have 51 columns
Since emoji-datasource 4.0.0
2017-12-08 13:37:35 -05:00
Etienne Lemay fdf3c2d3a3 Fix getting category names from i18n
Since the Category names update in emoji-data (4.0.0)
2017-12-08 12:45:31 -05:00
Etienne Lemay 0d18995c3d Handle invalid emoji name in `Emoji` component [Fix #143] 2017-11-09 17:04:13 -08:00
Etienne Lemay 56be88ed41 Move spec out of src 2017-11-08 22:41:57 -08:00
Etienne Lemay cecb92bb9f Reduce svgs/index.js size 10% 2017-11-08 22:34:35 -08:00
Etienne Lemay b24b0ccee5 💄 2017-11-07 19:09:40 -08:00
Eugen Rochko 8df1c418d3 Filter invalid emojis from recent category 2017-10-09 20:23:28 +02:00
Eugen Rochko d781320498 Fix #129 - Passing down a `recent` prop instead of localStorage 2017-10-07 16:26:09 +02:00
Etienne Lemay 3021758115 Prettier 💄 2017-10-07 00:02:29 -04:00
Etienne Lemay bb874f4517 Add tooltip (title) props to both Picker & Emoji 2017-10-06 23:34:06 -04:00
Etienne Lemay 3024f9e190 Merge branch 'master' into fix-useless-rerenders 2017-09-30 11:38:34 -04:00
Etienne Lemay 22d1a0375d Revert Emoji back to a functional component 2017-09-30 11:37:02 -04:00
Etienne Lemay 045c77631d use `background-size: contain` for custom emojis 2017-09-30 11:01:03 -04:00
Etienne Lemay ac709e5cf3 Fix include sorting [Fix #116] 2017-09-29 19:45:52 -04:00
Etienne Lemay 274d8b3862 Set `background-size: cover` for custom emojis [Fix #117] 2017-09-29 19:26:13 -04:00
Etienne Lemay 1a2d400362 Signify custom emoji elements with class [Ref #117] 2017-09-29 19:26:04 -04:00
Etienne Lemay 922ae30a0f Fix TypeError on emoji click when picker has been unmounted [Fix #126]
`isMounted` is being deprecated, so we test against scroll ref being defined
2017-09-29 19:14:24 -04:00
Etienne Lemay 81f39b138a Use SVGs inline 2017-09-29 14:33:08 -04:00
Eugen Rochko fdb88daa31 Remove function binds in render wherever possible, use PureComponent 2017-09-29 16:46:29 +02:00
Etienne Lemay 620576d5a2 Use measure-scrollbar locally instead of a dependency
So that Babel doesn’t become a dependency just for that (lib is using export).
Giving credit to original author.
2017-09-28 20:04:24 -04:00
Etienne Lemay e8dc29bfaa Move data in src
So that it’s then compiled into dist
2017-09-28 20:03:23 -04:00
Etienne Lemay c607fd8864 Add showPreview props to Picker [Fix #42] 2017-09-27 22:07:34 -04:00
Etienne Lemay 9f49499240 Merge branch 'master' into feature-react-16 2017-09-27 20:00:37 -04:00
Eugen Rochko d13e3b5e03 Upgrade to React 16, do not use deprecated ref syntax 2017-09-27 21:27:52 +02:00
Etienne Lemay b5552be2c4 Fix activeCategory when scroll is above minTop 2017-09-25 21:15:07 -04:00
Igor Lobanov 4dc05ef8da Size reduced from 87.35 KB to 79.43 KB 2017-09-17 12:06:42 +03:00
Etienne Lemay b90ca821bc Merge pull request #92 from MeisterLabs/ie-support
Improve support for Internet Explorer
2017-06-23 09:38:21 -04:00
Jakob Krigovsky 385408b51c Include scrollbar width in total picker width 2017-06-23 12:26:30 +02:00
Jakob Krigovsky 164e9d06ed Avoid Array.prototype.find() 2017-06-23 11:47:21 +02:00
Jakob Krigovsky 435250f319 Avoid Array.prototype.fill() 2017-06-23 11:47:21 +02:00
Sam Kelleher 30fa05f3c5
Switch default for simpler code. 2017-05-29 12:36:49 +01:00
Sam Kelleher 32a5206453
Flip wrong way round flag. 2017-05-29 12:30:04 +01:00
Sam Kelleher 184f2824f5
Do not store recent if recent category is hidden. 2017-05-29 12:29:11 +01:00
Etienne Lemay 1d57c216f5 Use svg-jsx for anchors
Fixes a React warning when using svg-inline-react
2017-05-27 14:52:38 -04:00
Etienne Lemay 3332c525d4 Add messenger & facebook sets 2017-05-27 14:15:56 -04:00
Etienne Lemay 33bcbda3d7 Do not render emoji when not supported in set 2017-05-27 13:52:12 -04:00
Etienne Lemay 7d014966e6 Unselect categories when searching 2017-05-27 13:40:54 -04:00
Etienne Lemay 98f2a95913 Use emoji object in `emojisToShowFilter`
So that custom emojis can also be filtered if need be
2017-05-27 13:26:02 -04:00
Etienne Lemay e95f515268 Add “Frequently Used” support to custom emojis 2017-05-27 13:17:21 -04:00
Etienne Lemay e28dc4da55 Make sure last category is selected when scrolled to bottom 2017-05-27 12:58:46 -04:00
Etienne Lemay d8b4c81534 Add include/exclude support to custom emojis 2017-05-27 12:27:47 -04:00
Etienne Lemay 1b77cb8244 Merge branch 'master' into custom-emojis 2017-05-27 11:26:59 -04:00
Etienne Lemay f4bbee1ecd Do not set skin when selecting the same 2017-05-27 11:16:54 -04:00
Etienne Lemay 2c35d5a8a8 Handle empty include/exclude arrays 2017-05-27 11:16:54 -04:00
Etienne Lemay 357653bb37 Do not include search input in the scroll container [Close #58] 2017-05-27 11:16:54 -04:00
Etienne Lemay 0736c65580 Use Emoji function instead of using JSX
So React doesn’t have to mount/unmount functional components
2017-05-27 11:16:54 -04:00
Etienne Lemay d2e37cad6d Functional Emoji component 2017-05-27 11:15:51 -04:00
Etienne Lemay 92985ecf29 Merge branch 'master' into emoji4 2017-05-27 11:03:41 -04:00
Etienne Lemay a4d0b6b410 Use emoji-datasource subpackages for sheets 2017-05-27 10:54:55 -04:00
Etienne Lemay 4a42680380 Merge branch 'master' into updateReact 2017-05-27 10:37:54 -04:00
Jakob Krigovsky 2fdd9fee34 Pass custom emojis to EmojiPicker#search 2017-05-26 12:34:07 +02:00
Jakob Krigovsky 289fc0ffc0 Pass custom emoji data directly to <Preview />
<Preview /> calls getData() itself which will fail for custom emojis because there is no universally available data source for custom emojis. To work around this, we pass the custom emoji data (which <Picker /> received via the `custom` prop) directly to <Preview />.
2017-05-26 12:12:59 +02:00
Jakob Krigovsky d237edc268 Add support for custom emojis to <Picker /> 2017-05-26 12:12:13 +02:00
Jakob Krigovsky d181379480 Add support for custom emojis to <Emoji /> 2017-05-26 12:06:28 +02:00
Sam Kelleher 95be21383d
Allow the fallback emoji to be optional, will display nothing. 2017-05-25 18:27:30 +01:00
Christian Savard 52359b2688 Update react and remove react-addons-test-utils 2017-05-17 16:56:24 -04:00
Christian Savard 3373997cd6 Revert default sheetSize to 64px 2017-05-17 16:33:43 -04:00
Christian Savard 946737cc97 Merge branch 'master' into emoji4 2017-05-17 14:57:39 -04:00
Christian Savard 496ce3ee85 Update to latest emoji-datasource 2017-05-09 11:06:18 -04:00
nsarafa ed5a6f1777 update components from React.PropTypes to PropTypes package to avoid
warning message
2017-05-04 21:38:03 -04:00
Etienne Lemay 46cf7542c3 Update default frequently used 2017-04-24 04:28:39 +02:00
Etienne Lemay f07c0c0638 Update “No Emoji Found” layout 2017-04-18 11:20:17 -04:00
Etienne Lemay b1d5c70bd2 Remove “No emoji found” hover [Close #59] 2017-04-18 11:07:43 -04:00
Etienne Lemay ebd3c6f6f0 Handle include/exclude in search results 2017-04-18 11:00:20 -04:00
Etienne Lemay 4a9497df0e Don’t call useless `emojisToShowFilter` when undefined 2017-04-18 10:22:32 -04:00
Etienne Lemay 046d489d7f Add “No emoji found” to i18n [Close #52] 2017-04-18 09:50:38 -04:00
Etienne Lemay c1bd9ea52c Support including/excluding the recent category 2017-04-08 09:08:42 -04:00
Etienne Lemay 81badd784f Sort categories by `include` props when defined 2017-04-07 16:54:07 -04:00
Etienne Lemay 4926b7bd43 💄 2017-04-04 12:00:32 -04:00
Etienne Lemay bb538ff9a3 Use lowercase category names in include/exclude [Ref #53] 2017-04-04 11:56:08 -04:00
Vincent Taverna a4419720e8 add prop to autofocus search input 2017-04-04 11:07:48 -04:00
Mads Hargreave 5602d3a3e4 Added `include` and `exclude` props to filter emoji categories 2017-04-01 16:02:55 +07:00
Etienne Lemay 1f88be1e8b Handle native change in shouldComponentUpdate 2017-02-17 10:48:57 -05:00
Etienne Lemay fc14f939c1 Fix native emojis size 2017-02-17 10:36:50 -05:00
Etienne Lemay d8f094e455 Rename “displayNative” => “native” for consistency w/ Emoji props 2017-02-17 10:13:59 -05:00
Thomas Osugi 6c2d1e4bf1 Honor perLine with for real
Signed-off-by: Chad Wagner <cwagner@pivotal.io>
2017-02-17 10:10:55 -05:00
Thomas Osugi 8e6c393ab7 [#138343455] Allow picker to display emoji natively rather than from spritesheet
Signed-off-by: Eric Dattore <edattore@pivotal.io>
2017-02-17 10:09:25 -05:00
Etienne Lemay 5c27f17154 Uncomment PR #43 specs 2017-02-17 09:47:14 -05:00
Etienne Lemay 82da9f2c7c Merge pull request #44 from pivotaltracker/add-testing-framework
Add karma/jasmine + tests for emoji-index and picker
2017-02-17 06:41:55 -08:00
Etienne Lemay a957fe196e Merge pull request #45 from smeijer/patch-1
allow style overrides from user
2017-02-17 06:40:40 -08:00
Etienne Lemay 3a554449f5 Merge pull request #46 from pivotaltracker/fix-ie-categories
Fix categories on IE11
2017-02-17 06:40:31 -08:00
Eric Dattore d3c1ab0828 [#139977619] fix regression in search with emoji mart picker 2017-02-16 10:09:10 -07:00
Eric Dattore 07b7bc2c50 [#138880131] fix issue with ie11 picker categories after searching
Signed-off-by: Devin Brown <debrown@pivotal.io>
2017-02-15 15:37:27 -07:00
Stephan Meijer ca27f3af06 allow style overrides from user
Change order of object merge, so the width can be overridden to for example '100%'
2017-02-04 12:00:22 +01:00
Thomas Osugi b9cb654761 Add karma/jasmine + tests for emoji-index and picker 2017-02-02 11:52:07 -07:00
Devin Brown 1a6e0e0fd3 add emojisToShow filter
Signed-off-by: Thomas Osugi <tosugi@pivotal.io>
2017-02-02 10:44:36 -07:00
Scott Dodge 4c6f8c54c1 Add emoji prop change check to Emoji component 2017-01-17 23:58:43 -06:00
Christian Savard 771b1e48f3 Use children passed through props 2016-12-07 15:04:39 -05: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 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 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 8f64b3c7d1 Handle unknown emojis [Fix #14] 2016-10-12 20:26:10 -04:00
Etienne Lemay f31a359f78 Add support for server-side rendering [Fix #7] 2016-10-03 21:16:20 -04:00
Etienne Lemay 9648c7d8e2 🏬 Emoji Mart™ 2016-07-27 11:35:12 -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 0ebd5c4a5e Fix circular dependencies 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 87d3228d0d Clear search results when unmounting Picker 2016-07-18 14:42:21 -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 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 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 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