@@ -241,6 +241,58 @@ public static INotion NewClient(string bearerToken, string version = "2021-08-16
241241 writer . WriteString ( "content" , text . Content ) ;
242242 writer . WriteEndObject ( ) ;
243243 } ) ,
244+ [ typeof ( RichText . Equation ) ] = Writer . GetWriter < RichText > ( "equation" , ( writer , rich_text , options ) =>
245+ {
246+ var text = rich_text as RichText . Equation ;
247+ writer . WriteStartObject ( ) ;
248+ writer . WriteString ( "expression" , text . Expression ) ;
249+ writer . WriteEndObject ( ) ;
250+ } ) ,
251+
252+ [ typeof ( RichText . PageMention ) ] = Writer . GetWriter < RichText > ( "mention" , ( writer , rich_text , options ) =>
253+ {
254+ var pageMention = rich_text as RichText . PageMention ;
255+ writer . WriteStartObject ( ) ;
256+ writer . WriteStartObject ( "page" ) ;
257+ writer . WriteString ( "id" , pageMention . Id . ToString ( ) ) ;
258+ writer . WriteEndObject ( ) ;
259+ writer . WriteEndObject ( ) ;
260+ } ) ,
261+ [ typeof ( RichText . DatabaseMention ) ] = Writer . GetWriter < RichText > ( "mention" , ( writer , rich_text , options ) =>
262+ {
263+ var databaseMention = rich_text as RichText . DatabaseMention ;
264+ writer . WriteStartObject ( ) ;
265+ writer . WriteStartObject ( "database" ) ;
266+ writer . WriteString ( "id" , databaseMention . Id . ToString ( ) ) ;
267+ writer . WriteEndObject ( ) ;
268+ writer . WriteEndObject ( ) ;
269+ } ) ,
270+ [ typeof ( RichText . DateMention ) ] = Writer . GetWriter < RichText > ( "mention" , ( writer , rich_text , options ) =>
271+ {
272+ var dateMention = rich_text as RichText . DateMention ;
273+ writer . WriteStartObject ( ) ;
274+ writer . WriteStartObject ( "date" ) ;
275+ writer . WriteString ( "start" , $ "{ dateMention . Start : o} ") ;
276+ if ( dateMention . End is not null )
277+ writer . WriteString ( "end" , $ "{ dateMention . End : o} ") ;
278+ writer . WriteEndObject ( ) ;
279+ writer . WriteEndObject ( ) ;
280+ } ) ,
281+ [ typeof ( RichText . UserMention ) ] = Writer . GetWriter < RichText > ( "mention" , ( writer , rich_text , options ) =>
282+ {
283+ var userMention = rich_text as RichText . UserMention ;
284+ writer . WriteStartObject ( ) ;
285+ writer . WritePropertyName ( "user" ) ;
286+ JsonSerializer . Serialize ( writer , userMention . User , options ) ;
287+ writer . WriteEndObject ( ) ;
288+ } ) ,
289+ [ typeof ( RichText . Text ) ] = Writer . GetWriter < RichText > ( "text" , ( writer , rich_text , options ) =>
290+ {
291+ var text = rich_text as RichText . Text ;
292+ writer . WriteStartObject ( ) ;
293+ writer . WriteString ( "content" , text . Content ) ;
294+ writer . WriteEndObject ( ) ;
295+ } ) ,
244296 }
245297 } ,
246298 new ParentConverter
0 commit comments