diff options
| author | MeiMei <30769358+mei23@users.noreply.github.com> | 2018-10-14 16:56:19 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2018-10-14 16:56:19 +0900 |
| commit | 5dce81c0dbbd6531ecf927fd3c9a381f6ddbf181 (patch) | |
| tree | da0cc748df2b7c7fafa9a062db64f13e98459b45 /src/mfm/parse/elements | |
| parent | expose user recommendation config in /api/meta (#2902) (diff) | |
| download | sharkey-5dce81c0dbbd6531ecf927fd3c9a381f6ddbf181.tar.gz sharkey-5dce81c0dbbd6531ecf927fd3c9a381f6ddbf181.tar.bz2 sharkey-5dce81c0dbbd6531ecf927fd3c9a381f6ddbf181.zip | |
非ASCIIなドメインへのメンションの修正 (#2903)
* punycodeでされたmentionのラベルをunicodeとして表示する
* post-form mentionはpunycodeにする
* mentionの表示はURLもAPI向けもunicodeにする
Diffstat (limited to 'src/mfm/parse/elements')
| -rw-r--r-- | src/mfm/parse/elements/mention.ts | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/mfm/parse/elements/mention.ts b/src/mfm/parse/elements/mention.ts index a95ec00384..ade5954423 100644 --- a/src/mfm/parse/elements/mention.ts +++ b/src/mfm/parse/elements/mention.ts @@ -2,10 +2,12 @@ * Mention */ import parseAcct from '../../../misc/acct/parse'; +import { toUnicode } from 'punycode'; export type TextElementMention = { type: 'mention' content: string + canonical: string username: string host: string }; @@ -15,9 +17,11 @@ export default function(text: string) { if (!match) return null; const mention = match[0]; const { username, host } = parseAcct(mention.substr(1)); + const canonical = host != null ? `@${username}@${toUnicode(host)}` : mention; return { type: 'mention', content: mention, + canonical, username, host } as TextElementMention; |