Comment on #365 Upgrade dialog
Updated with `30deg / steps`. With the same 10 steps, the animation became smoother because the density increases: <https://user-images.githubusercontent.com/108608/103478577-a0d2c200-4e02-11eb-9a3b-c5806de8d85f.gif|spinner>
Comment on #365 Upgrade dialog
*Known issue* Due to limitation of Elasticsearch database, the user will need to submit one more reply for the level-up dialog to appear. After submitting new reply & level up, the dialog will not be triggered until the user submits another reply in the same window. The root cause is that by the time the apollo-client refetches `UserForUpgradeDialog` operation, Elasticsearch database is still indexing the new article-reply, thus the level number before inserting reply is returned instead. User level queries are <https://github.com/cofacts/rumors-api/blob/master/src/graphql/dataLoaders/userLevelLoaderFactory.js#L31-L61|aggregation queries> that only updates after Elasticsearch index is refreshed. *Proposed fix* We can either • Refresh `articles` index inside <https://github.com/cofacts/rumors-api/blob/c2ff8f2c8f7221bf431fb760438d09b01a8e6608/src/graphql/mutations/CreateArticleReply.js#L16|`createArticleReply`>, or • Refresh `articles` index before user level query. Both requires changes to rumors-api server.
Implement `ProfileLink` to handle link to user profile. User profile URL can be complex -- user with slug and user with ID has different URLs, hence different prop to `<Link>` tag. This PR: • adds `ProfileLink` whose `fragments` loads necessary fields from `User` type to generate URLs precisly • adds `hasLink` to `Avatar`. When true, clicking on the avatar brings the user to user profile page.
#375 [Profile-05] Introduce ArticleReplySummary and refactor
• Introduce common component `ArticleReplySummary` for "OOO has marked this message XXX". • Its text color is based on reply type, thus styling is complicated • It's repeated several times across the codebase; its occurrences are all replaced by `ArticleReplySummary` • Refactor `LoadMore` style • So that its surrounding space does not overlap with other margin. • Will be useful in Profile page • Minor refactor of `pages/replies` • Move constant instantiation outside page component *ArticleReplySummary* <https://user-images.githubusercontent.com/108608/103482240-b358f580-4e1a-11eb-8314-428e5e71b0c1.png|image> <https://user-images.githubusercontent.com/108608/103482243-bbb13080-4e1a-11eb-8e89-8259ea8e14f4.png|image>
#242 Block invalid slug for users
As discussed in <https://g0v.hackmd.io/SfPmNj0aRAaQrkQ_Cx1KLQ?view#URL-slug-limits|https://g0v.hackmd.io/SfPmNj0aRAaQrkQ_Cx1KLQ?view#URL-slug-limits> • Convert all to lowercase before checking • ensure URL-safe by checking `encodeURIComopnents` • throw error or return error object (?) for failures
#18 Bump axios from 0.18.0 to 0.18.1
Bumps <https://github.com/axios/axios|axios> from 0.18.0 to 0.18.1. Release notes _Sourced from <https://github.com/axios/axios/releases|axios's releases>._ > *v0.18.1* > > Security Fix: > > • Destroy stream on exceeding maxContentLength (fixes <https://github-redirect.dependabot.com/axios/axios/issues/1098|#1098>) (<https://github-redirect.dependabot.com/axios/axios/issues/1485|#1485>) - Gadzhi Gadzhiev Changelog _Sourced from <https://github.com/axios/axios/blob/v0.18.1/CHANGELOG.md|axios's changelog>._ > *0.18.1 (May 31, 2019)* > > Security Fix: > > • Destroy stream on exceeding maxContentLength (fixes <https://github-redirect.dependabot.com/axios/axios/issues/1098|#1098>) (<https://github-redirect.dependabot.com/axios/axios/pull/1485|#1485>) - Gadzhi Gadzhiev Commits • <https://github.com/axios/axios/commit/face0165de613696d10b1fd2a0e2f7b3852fa018|`face016`> Releasing 0.18.1 • <https://github.com/axios/axios/commit/062876378b2e46aa12cb084dce56dddde1f8172c|`0628763`> Update Changelog for release (0.18.1) • <https://github.com/axios/axios/commit/dc9b29c3411f160009570d369013585693deb154|`dc9b29c`> adjust README to match IE support • <https://github.com/axios/axios/commit/16326d5fe93bb2bf9d793fe04786e3198f298429|`16326d5`> Remove usages of isOldIE in tests • <https://github.com/axios/axios/commit/5a4228b9f82ef9dfb695e10c95d237f4b7afdc14|`5a4228b`> Remove IE10 launcher from karma config • <https://github.com/axios/axios/commit/695b5f7241d7a3b339a768e3d04cfa5d1efd758e|`695b5f7`> Remove isOldIE check in tests • <https://github.com/axios/axios/commit/e314ab00b48be01283f4c48fc2ecaef73fac7c85|`e314ab0`> Remove HTTP 1223 handling • <https://github.com/axios/axios/commit/7efa822b2e8ac47c54f3eafc7fb0c6b52ffaa0c6|`7efa822`> Remove btoa polyfill tests • <https://github.com/axios/axios/commit/f3cdcc7f0125a069998bb3c74337fea99dd98f7b|`f3cdcc7`> Delete btoa polyfill • <https://github.com/axios/axios/commit/efc0b581c828fe0e5e6d39a40d65d1c73181e05c|`efc0b58`> Remove ie8/9 special CORS treatment and btoa polyfill • Additional commits viewable in <https://github.com/axios/axios/compare/v0.18.0...v0.18.1|compare view> <https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores|Dependabot compatibility score> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. * * * Dependabot commands and options You can trigger Dependabot actions by commenting on this PR: • `@dependabot rebase` will rebase this PR • `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it • `@dependabot merge` will merge this PR after your CI passes on it • `@dependabot squash and merge` will squash and merge this PR after your CI passes on it • `@dependabot cancel merge` will cancel a previously requested merge and block automerging • `@dependabot reopen` will reopen this PR if it is closed • `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually • `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) • `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language • `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language • `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language • `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the <https://github.com/cofacts/rumors-fb-bot/network/alerts|Security Alerts page>.
Comment on #237 Adjust line ending for CC attributions
*Pull Request Test Coverage Report for <https://coveralls.io/builds/36105973|Build 1239>* • *0* of *0* changed or added relevant lines in *0* files are covered. • No unchanged relevant lines lost coverage. • Overall coverage remained the same at *86.42%* * * * * * * *:yellow_heart: - <https://coveralls.io|Coveralls>*
Comment on #367 [Profile-01] Profile page header display
Suggested change
Comment on #367 [Profile-01] Profile page header display
Hmm if both `currentUser` and `data` is nullish (which is probably during the first render), `isSelf` will become true.
#376 Update landing page copy & fix styles
• Updates translation -- kudos to Kevin for the <https://docs.google.com/spreadsheets/d/1Y2ag7xK5Hd-tdkfR1mde43a0EPw_SWXH-Pe2GQrdWU4/edit?usp=drive_web&ouid=100298319366825427383|revised translation>! • Fixes the first two items in <https://g0v.hackmd.io/@mrorz/cofacts-meeting-notes/%2F0RX4MsjRRJmBqJSKVilWMA|未竟之處> in 20210106 meeting • Make all links in header to be an tag and hide their underline until mouse hover • Use Material UI `Button` to eliminate the underline button in landing page body • `Navbar` background turns white on desktop when scrolled to the next section as expected *Mobile, English* Note: Google chrome's screenshot mechanism does not trigger scroll events, thus enter animations are not triggered <https://user-images.githubusercontent.com/108608/104150660-8f4a7500-5415-11eb-8682-47f1ead20fbb.png|localhost_3000_(Pixel 2)> *Mobile, Mandarin* Note: Google chrome's screenshot mechanism does not trigger scroll events, thus enter animations are not triggered <https://user-images.githubusercontent.com/108608/104150896-624a9200-5416-11eb-8b05-7aa707cfbcbf.png|localhost_3000_(Pixel 2) (2)>
Comment on #376 Update landing page copy & fix styles
Branch currently deployed to staging 華語:<https://dev.cofacts.org/|https://dev.cofacts.org/> 英語:<https://dev-en.cofacts.org/|https://dev-en.cofacts.org/>
#377 Landing page logo enhancements
From <https://g0v.hackmd.io/@mrorz/cofacts-meeting-notes/%2F0RX4MsjRRJmBqJSKVilWMA|20210106 未竟事項> 1. Landing page 在 desktop 的 logo 剛載入的時候會看到 mobile 版 icon • 可能要改用純 CSS 實作才能避免 2. [nice to have] 當 landing page menu 背景變白之後,可以使用有橘色放大鏡(?)版本的彩色 logo
g0v.hackmd.io
#376 Update landing page copy & fix styles
• Updates translation -- kudos to Kevin for the <https://docs.google.com/spreadsheets/d/1Y2ag7xK5Hd-tdkfR1mde43a0EPw_SWXH-Pe2GQrdWU4/edit?usp=drive_web&ouid=100298319366825427383|revised translation>! • Fixes the first two items in <https://g0v.hackmd.io/@mrorz/cofacts-meeting-notes/%2F0RX4MsjRRJmBqJSKVilWMA|未竟之處> in 20210106 meeting • Make all links in header to be an tag and hide their underline until mouse hover • Use Material UI `Button` to eliminate the underline button in landing page body • `Navbar` background turns white on desktop when scrolled to the next section as expected *Background turning white* <https://user-images.githubusercontent.com/108608/104152078-8e1b4700-5419-11eb-904c-0a4993ee433a.gif|nav> *Mobile, English* Note: Google chrome's screenshot mechanism does not trigger scroll events, thus enter animations are not triggered <https://user-images.githubusercontent.com/108608/104150660-8f4a7500-5415-11eb-8682-47f1ead20fbb.png|localhost_3000_(Pixel 2)> *Mobile, Mandarin* Note: Google chrome's screenshot mechanism does not trigger scroll events, thus enter animations are not triggered <https://user-images.githubusercontent.com/108608/104150896-624a9200-5416-11eb-8b05-7aa707cfbcbf.png|localhost_3000_(Pixel 2) (2)>
筆記國度
LIFF v2 的 replace 模式即將被移除及建議程式寫法
LIFF v2 的 Replace 模式即將於 2021/03/01 被移除,快檢查你的程式吧!
HackMD
# Cofacts 會議記錄 ## 2021 - [20210120 會議記錄](/JUVhhxSmSx62O5SUVuJ1rw) - [20210113 會議記錄](/XvP4q3IkTwCD
#15 Refactor nginx config and add SEO headers
• Refactor nginx config • extract common sections and make use of `include` directive • Canonical URL header • Use HTTP header <https://developers.google.com/search/docs/advanced/crawling/consolidate-duplicate-urls#rel-canonical-link-method|https://developers.google.com/search/docs/advanced/crawling/consolidate-duplicate-urls#rel-canonical-link-method> • Consolidate dup page of the same language <https://developers.google.com/search/docs/advanced/crawling/managing-multi-regional-sites|https://developers.google.com/search/docs/advanced/crawling/managing-multi-regional-sites> to `(*.)<http://cofacts.tw|cofacts.tw>` • hreflang header • Use HTTP header <https://developers.google.com/search/docs/advanced/crawling/localized-versions#expandable-2|https://developers.google.com/search/docs/advanced/crawling/localized-versions#expandable-2> • Return link between `<http://cofacts.tw|cofacts.tw>` and `<http://en.cofacts.tw|en.cofacts.tw>`
Comment on #374 [Profile-02] Introduce <ProfileLink> component for links to user profile
Merged due to inactivity for >10 days
#378 Make profile page accessible for editors themselves only
In response to <https://g0v.hackmd.io/XvP4q3IkTwCDeT1zopaTQg#%E5%BB%BA%E8%AD%B0|Pilot Study suggestions>, we should first keep profile pages to editors themselves for a few moments before opening it up to the public. This PR: • Temporarily remove `hasLink` from `<Avatar>`s • Temporarily use `ProfileTooltip` instead of `ProfileLink` for public places • App menu still uses `ProfileLink`, so that editors can click to their own profile page from main menu This PR is deployed to staging temporarily for testing
From <https://g0v.hackmd.io/XvP4q3IkTwCDeT1zopaTQg?both#Usability|Pilot study result> • Click avatar in profile page to edit avatar • 右下角放一個小鉛筆按鈕,表示這裏可以編輯 Spec TBD
#243 ListArticle filter & sorting fix
From <https://g0v.hackmd.io/XvP4q3IkTwCDeT1zopaTQg#Usability|Profile page pilot study> • Article type filter & article-reply-from-userId filter • Currently the two filters are independent • 目前是「列出 user 有回過、且有一個 reply type 符合要求的 article」 • All filters related to article-replies should be collected together under `bool` query so that it really filters out articles with at lease one article reply that matches _all_ specified article-reply filters • So that we can achieve「列出 user 回成該 reply type 的 article」 • <https://github.com/cofacts/rumors-api/blob/master/src/graphql/queries/ListArticles.js#L395-L444|Related code> • Sort using most commented • 可以透過 <https://hackmd.io/dfAkGHLCShacnOoruGxr0w?view|nested filtered sorting> 達成: filter 出該使用者的 articleReply、用 articleReply 的 `positiveFeedbackCount` 或 `negativeFeedbackCount` 或加總或相減來排序
Facebook Groups
大家好,我這篇文章是教大家怎麼用我寫的工具快速測試 LINE Messaging API 今天新發佈的 mention 功能!
#380 Bump immer from 5.0.0 to 8.0.1
Bumps <https://github.com/immerjs/immer|immer> from 5.0.0 to 8.0.1. Release notes _Sourced from <https://github.com/immerjs/immer/releases|immer's releases>._ > *v8.0.1* > *<https://github.com/immerjs/immer/compare/v8.0.0...v8.0.1|8.0.1> (2021-01-20)* > *Bug Fixes* > > • Fixed security issue <https://github-redirect.dependabot.com/immerjs/immer/issues/738|#738>: prototype pollution possible when applying patches <https://github.com/advisories/GHSA-9qmh-276g-x5pj|CVE-2020-28477> (<https://github.com/immerjs/immer/commit/da2bd4fa0edc9335543089fe7d290d6a346c40c5|da2bd4f>) > > *v8.0.0* > *<https://github.com/immerjs/immer/compare/v7.0.15...v8.0.0|8.0.0> (2020-11-17)* > *feature* > > • Always freeze by default (<https://github-redirect.dependabot.com/immerjs/immer/issues/702|#702>) (<https://github.com/immerjs/immer/commit/a406c8f1e524efabfe641f4eaf742b444e501cc0|a406c8f>) > > *BREAKING CHANGES* > > • always freeze by default, even in production mode. Use `setAutoFreeze(process.env.NODE_ENV !== 'production')` for the old behavior. See <https://github-redirect.dependabot.com/immerjs/immer/issues/687#issuecomment-728881754|immerjs/immer#687> for the rationale. Fixes <https://github-redirect.dependabot.com/immerjs/immer/issues/649|#649>, <https://github-redirect.dependabot.com/immerjs/immer/issues/681|#681>, <https://github-redirect.dependabot.com/immerjs/immer/issues/687|#687> > > *v7.0.15* > *<https://github.com/immerjs/immer/compare/v7.0.14...v7.0.15|7.0.15> (2020-11-17)* > *Bug Fixes* > > • make plugin loading idempotent, fixes <https://github-redirect.dependabot.com/immerjs/immer/issues/692|#692> (<https://github.com/immerjs/immer/commit/754331bb0d0a24ca56399ac7a778f5e87be1c236|754331b>) > > *v7.0.14* > *<https://github.com/immerjs/immer/compare/v7.0.13...v7.0.14|7.0.14> (2020-10-20)* > *Bug Fixes* > > • build issue. Fixes <https://github-redirect.dependabot.com/immerjs/immer/issues/685|#685> (?) (<https://github.com/immerjs/immer/commit/9007be0a68e8c521d23657729036d2eee9f5df83|9007be0>) > > *v7.0.13* > *<https://github.com/immerjs/immer/compare/v7.0.12...v7.0.13|7.0.13> (2020-10-20)* > *Bug Fixes* > > • reconcile if the original value is assigned after creating a draft. Fixes <https://github-redirect.dependabot.com/immerjs/immer/issues/659|#659> (<https://github.com/immerjs/immer/commit/c0e6749e8df3e20d880d61b726b1395167ba2088|c0e6749>) > > *v7.0.12* > *<https://github.com/immerjs/immer/compare/v7.0.11...v7.0.12|7.0.12> (2020-10-20)* > *Bug Fixes* ... (truncated) Commits • <https://github.com/immerjs/immer/commit/da2bd4fa0edc9335543089fe7d290d6a346c40c5|`da2bd4f`> fix: Fixed security issue <https://github-redirect.dependabot.com/immerjs/immer/issues/738|#738>: prototype pollution possible when applying pa... • <https://github.com/immerjs/immer/commit/d75de7031c3430fbcb76fa7b90cf681ba5042df9|`d75de70`> chore: fix Buffer deprecation warning in test (<https://github-redirect.dependabot.com/immerjs/immer/issues/706|#706>) • <https://github.com/immerjs/immer/commit/8fbf93cddb27fe96891b7a7f3218742881dfaae1|`8fbf93c`> docs: Add referential equality to pitfalls (<https://github-redirect.dependabot.com/immerjs/immer/issues/731|#731>) • <https://github.com/immerjs/immer/commit/c21a2ef6d78b683fa6d4bd62ba465cb3542e8c03|`c21a2ef`> docs: Update current.md (<https://github-redirect.dependabot.com/immerjs/immer/issues/728|#728>) • <https://github.com/immerjs/immer/commit/211314c0b3b125bd4acf15f22dfb49eee9fb9729|`211314c`> docs: add cool-store into built-with.md (<https://github-redirect.dependabot.com/immerjs/immer/issues/724|#724>) • <https://github.com/immerjs/immer/commit/e8fd805740f1b0ae788470b93615e51e9bc887a3|`e8fd805`> chore(tests): use UTC date string in tests to be timezone independent (<https://github-redirect.dependabot.com/immerjs/immer/issues/705|#705>) • <https://github.com/immerjs/immer/commit/fe8f5891d4fdd35107ebb252df85332fd8c53543|`fe8f589`> chore(comments): update comments (<https://github-redirect.dependabot.com/immerjs/immer/issues/727|#727>) • <https://github.com/immerjs/immer/commit/d8121d66a5546ab6939c64c23f5486e522c5ceb0|`d8121d6`> chore(docs): Fix typo in pitfalls.md (<https://github-redirect.dependabot.com/immerjs/immer/issues/729|#729>) • <https://github.com/immerjs/immer/commit/5379cddef95a237fd25b450e629054b3e02f95ee|`5379cdd`> chore(docs): Update example-reducer.md (<https://github-redirect.dependabot.com/immerjs/immer/issues/734|#734>) • <https://github.com/immerjs/immer/commit/d3908e12dfb118d44e54f8a2f44f8c6862fad940|`d3908e1`> chore(deps): bump dot-prop from 4.2.0 to 4.2.1 in /website (<https://github-redirect.dependabot.com/immerjs/immer/issues/735|#735>) • Additional commits viewable in <https://github.com/immerjs/immer/compare/v5.0.0...v8.0.1|compare view> <https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores|Dependabot compatibility score> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. * * * Dependabot commands and options You can trigger Dependabot actions by commenting on this PR: • `@dependabot rebase` will rebase this PR • `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it • `@dependabot merge` will merge this PR after your CI passes on it • `@dependabot squash and merge` will squash and merge this PR after your CI passes on it • `@dependabot cancel merge` will cancel a previously requested merge and block automerging • `@dependabot reopen` will reopen this PR if it is closed • `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually • `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) • `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language • `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language • `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language • `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the <https://github.com/cofacts/rumors-site/network/alerts|Security Alerts page>.
#381 feat(ReferenceInput): #362 change text and translate
Using IIFE to workaround in line 61-66 because of unknown translate `ttag` issue.
Review on #381 feat(ReferenceInput): #362 change text and translate
Thanks for taking care of the translation and workaround the possible `ttag` bug! IIFE solution is very elegant and concise :)
Comment on #362 Provide better text for reference input
Resolved by <https://github.com/cofacts/rumors-site/pull/381|#381> <https://github.com/ulayab|@ulayab> ++
Comment on #362 Provide better text for reference input
Reopen because we want to make placeholder 2 lines ``` One line summary » Source URL ``` ``` 來源說明 » 連結網址 ```
Comment on #362 Provide better text for reference input
> Reopen because we want to make placeholder 2 lines > > ``` > One line summary > » Source URL > > ``` > > ``` > 來源說明 > » 連結網址 > > ``` Thanks for the remind! Just make a new PR for it :pray: <https://github.com/cofacts/rumors-site/pull/382|#382>
Review on #383 enhance: #361 change placeholder and translate
Thanks, it's working great!
Review on #382 fix(ReferenceInput): wording fix
Thank you for amending the reference text! Let's ship it <https://github.githubassets.com/images/icons/emoji/shipit.png|:shipit:>
Comment on #362 Provide better text for reference input
Closed in <https://github.com/cofacts/rumors-site/pull/382|#382>, kudos to <https://github.com/ulayab|@ulayab>
Fixes <https://github.com/cofacts/rumors-line-bot/issues/13|#13> *Description* *Response rule* *Introduce self* : Hi cofacts *Ignore message* : Input length less than 10 *Job queue* *GA*
Comment on #362 Provide better text for reference input
Reopen because the reply display should also align with To-be spec <https://user-images.githubusercontent.com/108608/105885506-2df4e980-6044-11eb-8e57-c62d52c7e8e6.png|圖片>
Use this to replace x-accept-license header. Spec: <https://g0v.hackmd.io/51wwLHgvSUqtBDaP-yAVnA|https://g0v.hackmd.io/51wwLHgvSUqtBDaP-yAVnA> Should implement ASAP. <https://g0v.hackmd.io/JUVhhxSmSx62O5SUVuJ1rw#2-%E6%9C%88-License|Meeting note>
#384 Update terms to match suggestion from Lucien
Copy-paste text is not affected. <https://user-images.githubusercontent.com/108608/105947564-4c8acd00-60a4-11eb-99b6-3552e03e7b2d.png|image> <https://user-images.githubusercontent.com/108608/105947635-6af0c880-60a4-11eb-857d-80919b957671.png|image>
#385 Avoid attaching text for logged in users
Avoid attaching text for logged in users so that editors' copy-paste works better. Fixes <https://github.com/cofacts/rumors-site/issues/350|#350>. *Not logged in* Copied text will have footer text attached. <https://user-images.githubusercontent.com/108608/105948364-c53e5900-60a5-11eb-93fe-b5847e133e2c.gif|with-footer> *Logged in* Copied text will contain the selected text only. <https://user-images.githubusercontent.com/108608/105948387-cf605780-60a5-11eb-8a23-02e435ddb7a6.gif|without-footer>
Comment on #353 [#350] Don't insert friend link to clipboard for logged-in users
Closing this in favor of <https://github.com/cofacts/rumors-site/pull/385|#385>
#239 Update LIFF redirect option
Need to mitigate before March deprecation See: <https://taichunmin.idv.tw/blog/2021-01-19-line-liff-v2-replace-deprecated.html|https://taichunmin.idv.tw/blog/2021-01-19-line-liff-v2-replace-deprecated.html>
#386 "The user does not exist" sometimes appears after updating username
user is redirected to their new profile page after updating their username, however, depending on the traffic, sometimes it would be 404'ed.
Comment on #283 Adjust avatar components
Seems covered by <https://github.com/cofacts/rumors-site/pull/357|#357>
台灣事實查核中心
【美國國會山莊事件之後】推特首次發布群眾事實查核機制「Birdwatch」
記者何蕙安/編譯