diff --git a/app/soapbox/components/emoji_selector.tsx b/app/soapbox/components/emoji_selector.tsx index 15a0146c5..0533f6a69 100644 --- a/app/soapbox/components/emoji_selector.tsx +++ b/app/soapbox/components/emoji_selector.tsx @@ -1,11 +1,11 @@ -import classNames from 'classnames'; +// import classNames from 'classnames'; import React from 'react'; import { HotKeys } from 'react-hotkeys'; import ImmutablePureComponent from 'react-immutable-pure-component'; import { connect } from 'react-redux'; import { getSoapboxConfig } from 'soapbox/actions/soapbox'; -import { Emoji } from 'soapbox/components/ui'; +import { EmojiSelector as RealEmojiSelector } from 'soapbox/components/ui'; import type { List as ImmutableList } from 'immutable'; import type { RootState } from 'soapbox/store'; @@ -106,11 +106,11 @@ class EmojiSelector extends ImmutablePureComponent { } render() { - const { visible, focused, allowedEmoji } = this.props; + const { visible, focused, allowedEmoji, onReact } = this.props; return ( -
{ ))} -
+ */} +
); } diff --git a/app/soapbox/components/ui/emoji-selector/emoji-selector.tsx b/app/soapbox/components/ui/emoji-selector/emoji-selector.tsx new file mode 100644 index 000000000..15fbe595a --- /dev/null +++ b/app/soapbox/components/ui/emoji-selector/emoji-selector.tsx @@ -0,0 +1,56 @@ +import classNames from 'classnames'; +import React from 'react'; + +import { Emoji } from 'soapbox/components/ui'; + +interface IEmojiButton { + emoji: string, + onClick: React.EventHandler, + className?: string, + tabIndex?: number, +} + +const EmojiButton: React.FC = ({ emoji, className, onClick, tabIndex }): JSX.Element => { + return ( + + ); +}; + +interface IEmojiSelector { + emojis: string[], + onReact: (emoji: string) => void, + visible?: boolean, + focused?: boolean, +} + +const EmojiSelector: React.FC = ({ emojis, onReact, visible = false, focused = false }): JSX.Element => { + + const handleReact = (emoji: string): React.EventHandler => { + return (e) => { + onReact(emoji); + e.preventDefault(); + e.stopPropagation(); + }; + }; + + return ( +
+ {emojis.map((emoji, i) => ( + + ))} +
+ ); +}; + +export default EmojiSelector; diff --git a/app/soapbox/components/ui/index.ts b/app/soapbox/components/ui/index.ts index d9cd27fb0..fa60595f5 100644 --- a/app/soapbox/components/ui/index.ts +++ b/app/soapbox/components/ui/index.ts @@ -3,6 +3,7 @@ export { default as Button } from './button/button'; export { Card, CardBody, CardHeader, CardTitle } from './card/card'; export { default as Column } from './column/column'; export { default as Emoji } from './emoji/emoji'; +export { default as EmojiSelector } from './emoji-selector/emoji-selector'; export { default as Form } from './form/form'; export { default as FormActions } from './form-actions/form-actions'; export { default as FormGroup } from './form-group/form-group';