Embed Tweets in an iframe - https://tf.rita.moe

Fix x.com support, add `cards` and `lang` params

+24 -5
+10
index.html
··· 209 209 <tt style="color: green;">conversation</tt> 210 210 - Disable showing previous Tweet in a thread when set to <tt>none</tt> 211 211 </li> 212 + 213 + <li> 214 + <tt style="color: green;">cards</tt> 215 + - Disable showing media previews when set to <tt>hidden</tt> 216 + </li> 217 + 218 + <li> 219 + <tt style="color: green;">lang</tt> 220 + - Language code for the interface (such as <tt>en</tt>) 221 + </li> 212 222 </ul> 213 223 </p> 214 224
+14 -5
show.html
··· 47 47 <p> 48 48 <span id="tweet"></span> 49 49 </p> 50 - <a id="date"></a> 50 + <a id="date" target="_blank"></a> 51 51 </blockquote> 52 52 <script> 53 53 const params = {} ··· 56 56 params[key] = value.replace(/\+/g, ' ') 57 57 } 58 58 59 - const url = params['url'] || '' 59 + const url = params['url']?.replace('x.com', 'twitter.com') || '' 60 60 const datetime = (params['datetime'] || 0) 61 61 const tweet = (params['tweet'] ? params['tweet'] : 'Loading tweet...') 62 62 const authorName = (params['author_name'] ? params['author_name'] : '') 63 - let authorUsername = (params['author_username'] ? params['author_username'] : '') 64 63 const align = params['align'] 65 64 const linkColor = params['link_color'] 66 65 const theme = params['theme'] 66 + const conversation = params['conversation'] 67 + const cards = params['cards'] 68 + const lang = params['lang'] 69 + 70 + let authorUsername = (params['author_username'] ? params['author_username'] : '') 67 71 let formattedDate = 'Unknown date' 68 - const conversation = params['conversation'] 69 72 70 - const m = url.match(/^(?:https?:)?\/\/(?:www\.)?(?:twitter|x)\.com\/([^/]+)\//) 73 + const m = url.match(/^(?:https?:)?\/\/(?:www\.)?twitter\.com\/([^/]+)\//) 71 74 if (m && !authorUsername) { 72 75 authorUsername = m[1] 73 76 } ··· 93 96 } 94 97 if (conversation) { 95 98 t.setAttribute('data-conversation', conversation) 99 + } 100 + if (cards) { 101 + t.setAttribute('data-cards', cards) 102 + } 103 + if (lang) { 104 + t.setAttribute('data-lang', lang) 96 105 } 97 106 98 107 if (authorName) {