WNomunomu 2 лет назад
Родитель
Сommit
4701babc24

+ 0 - 55
packages/editor/src/components/CodeMirrorEditor/EmojiHint/EmojiHint.tsx

@@ -1,55 +0,0 @@
-import type { CompletionContext } from '@codemirror/autocomplete';
-import { syntaxTree } from '@codemirror/language';
-import emojiData from 'emoji-mart/data/all.json';
-
-
-const getEmojiDataArray = (): string[] => {
-  const rawEmojiDataArray = emojiData.categories;
-
-  const emojiCategoriesData = [
-    'people',
-    'nature',
-    'foods',
-    'activity',
-    'places',
-    'objects',
-    'symbols',
-    'flags',
-  ];
-
-  const fixedEmojiDataArray: string[] = [];
-
-  emojiCategoriesData.forEach((value) => {
-    const tempArray = rawEmojiDataArray.find(obj => obj.id === value)?.emojis;
-
-    if (tempArray == null) {
-      return;
-    }
-
-    fixedEmojiDataArray.push(...tempArray);
-  });
-
-  return fixedEmojiDataArray;
-};
-
-const emojiDataArray = getEmojiDataArray();
-
-const emojiOptions = emojiDataArray.map(
-  tag => ({ label: `:${tag}`, type: 'keyword' }),
-);
-
-const completeEmojiInput = (context: CompletionContext) => {
-  const nodeBefore = syntaxTree(context.state).resolveInner(context.pos, -1);
-  const textBefore = context.state.sliceDoc(nodeBefore.from, context.pos);
-  const emojiBefore = /:\w*$/.exec(textBefore);
-
-  if (!emojiBefore && !context.explicit) return null;
-
-  console.log('kohsei');
-
-  return {
-    from: emojiBefore ? nodeBefore.from + emojiBefore.index : context.pos,
-    options: emojiOptions,
-    validFor: /^(:\w*)?$/,
-  };
-};

+ 0 - 69
packages/editor/src/components/CodeMirrorEditor/EmojiHint/EmojiHintItem.tsx

@@ -1,69 +0,0 @@
-
-import React, { FC, useState, CSSProperties } from 'react';
-
-
-import { Emoji } from 'emoji-mart';
-import emojiData from 'emoji-mart/data/all.json';
-
-import { useEmojiHintModal } from '~/stores/modal';
-import 'emoji-mart/css/emoji-mart.css';
-
-import type { UseCodeMirrorEditor } from 'src';
-
-type EmojiHintItemProps = {
-  emojiName: string,
-  codeMirrorEditor: UseCodeMirrorEditor | undefined,
-}
-
-export const EmojiHintItem: FC<EmojiHintItemProps> = (props) => {
-  const { emojiName, codeMirrorEditor } = props;
-  const [itemColor, setItemColor] = useState('');
-
-  const view = codeMirrorEditor?.view;
-
-  if (view == null) {
-    return;
-  }
-
-  const cursorIndex = view.state.selection.main.head;
-
-  const { close: closeEmojiHintModal } = useEmojiHintModal();
-
-  const onClickEmojiHintItemHandler = () => {
-    if (cursorIndex == null) {
-      return;
-    }
-
-    view?.dispatch({
-      changes: {
-        from: cursorIndex,
-        insert: `${emojiName}:`,
-      },
-    });
-
-    closeEmojiHintModal();
-  };
-
-  const hoverOnHandler = () => {
-    setItemColor('#0d6efd');
-  };
-
-  const hoverOutHandler = () => {
-    setItemColor('');
-  };
-
-  return (
-    <div>
-      <div
-        className="d-flex align-items-center pt-2 pb-2 ps-2"
-        onMouseEnter={() => hoverOnHandler()}
-        onMouseLeave={() => hoverOutHandler()}
-        style={{ backgroundColor: itemColor }}
-        onClick={() => onClickEmojiHintItemHandler()}
-      >
-        <Emoji emoji={emojiName} size={16} />
-        <p className="mb-0 ps-1">:{emojiName}</p>
-      </div>
-    </div>
-  );
-};