From b15e4d3c2e7fa1021007cf178b6453ed12d18fff Mon Sep 17 00:00:00 2001 From: marihachi <marihachi0620@gmail.com> Date: Sun, 21 Mar 2021 00:36:54 +0900 Subject: [PATCH] :cat: --- README.md | 13 +++++++++++-- src/node.ts | 5 ++++- src/util.ts | 2 +- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index a038e83..5ac444a 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # rosee ## Description -A MFM parser implementation with PEG.js (In developing) +A MFM parser implementation with PEG.js ## Installation ``` @@ -12,8 +12,17 @@ TypeScript: ```ts import * as mfm from 'rosee'; +const input = +`<center> +Hello [tada everynyan! 🎉] + +I'm @ai, An bot of misskey! + +https://github.com/syuilo/ai +</center>`; + // parse a MFM text -const result = mfm.parse('good morning ***everynyan!***'); +const result = mfm.parse(input); // parse a MFM plain text const plainResult = mfm.parsePlain('I like the hot soup :soup:​'); diff --git a/src/node.ts b/src/node.ts index 3827b38..1d6456a 100644 --- a/src/node.ts +++ b/src/node.ts @@ -47,7 +47,10 @@ export type MfmInline = MfmEmoji | MfmBold | MfmSmall | MfmItalic | MfmStrike | export type MfmEmoji = { type: 'emoji'; - props: { emoji: string; name: undefined; } | { emoji: undefined; name: string; }; + props: { + emoji?: string; + name?: string; + }; children: []; }; diff --git a/src/util.ts b/src/util.ts index 83b2dc6..4f43873 100644 --- a/src/util.ts +++ b/src/util.ts @@ -1,6 +1,6 @@ import { MfmNode, MfmText } from './node'; -export function createNode(type: string, props?: Record<string, any>, children?: MfmNode[]): MfmNode { +export function createNode(type: string, props: Record<string, any>, children?: MfmNode[]): MfmNode { props = props ?? {}; children = children ?? []; const node = { type, props, children } as MfmNode; -- GitLab