enhance(federation): use ActivityPub defined property in favour of proprietary property. (#8787)
* add activitypub `source` property * parse MFM from new `source` attribute
This commit is contained in:
		
							parent
							
								
									42f48ffea2
								
							
						
					
					
						commit
						a683a7092d
					
				
					 3 changed files with 20 additions and 3 deletions
				
			
		|  | @ -197,7 +197,14 @@ export async function createNote(value: string | IObject, resolver?: Resolver, s | |||
| 	const cw = note.summary === '' ? null : note.summary; | ||||
| 
 | ||||
| 	// テキストのパース
 | ||||
| 	const text = typeof note._misskey_content !== 'undefined' ? note._misskey_content : (note.content ? htmlToMfm(note.content, note.tag) : null); | ||||
| 	let text: string | null = null; | ||||
| 	if (note.source?.mediaType === 'text/x.misskeymarkdown' && typeof note.source?.content === 'string') { | ||||
| 		text = note.source.content; | ||||
| 	} else if (typeof note._misskey_content === 'string') { | ||||
| 		text = note._misskey_content; | ||||
| 	} else if (typeof note.content === 'string') { | ||||
| 		text = htmlToMfm(note.content, note.tag); | ||||
| 	} | ||||
| 
 | ||||
| 	// vote
 | ||||
| 	if (reply && reply.hasPoll) { | ||||
|  |  | |||
|  | @ -138,6 +138,10 @@ export default async function renderNote(note: Note, dive = true, isTalk = false | |||
| 		summary, | ||||
| 		content, | ||||
| 		_misskey_content: text, | ||||
| 		source: { | ||||
| 			content: text, | ||||
| 			mediaType: "text/x.misskeymarkdown", | ||||
| 		}, | ||||
| 		_misskey_quote: quote, | ||||
| 		quoteUrl: quote, | ||||
| 		published: note.createdAt.toISOString(), | ||||
|  |  | |||
|  | @ -106,7 +106,10 @@ export const isPost = (object: IObject): object is IPost => | |||
| 
 | ||||
| export interface IPost extends IObject { | ||||
| 	type: 'Note' | 'Question' | 'Article' | 'Audio' | 'Document' | 'Image' | 'Page' | 'Video' | 'Event'; | ||||
| 	_misskey_content?: string; | ||||
| 	source?: { | ||||
| 		content: string; | ||||
| 		mediaType: string; | ||||
| 	}; | ||||
| 	_misskey_quote?: string; | ||||
| 	quoteUrl?: string; | ||||
| 	_misskey_talk: boolean; | ||||
|  | @ -114,7 +117,10 @@ export interface IPost extends IObject { | |||
| 
 | ||||
| export interface IQuestion extends IObject { | ||||
| 	type: 'Note' | 'Question'; | ||||
| 	_misskey_content?: string; | ||||
| 	source?: { | ||||
| 		content: string; | ||||
| 		mediaType: string; | ||||
| 	}; | ||||
| 	_misskey_quote?: string; | ||||
| 	quoteUrl?: string; | ||||
| 	oneOf?: IQuestionChoice[]; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue