Summary: Bumps [eslint-plugin-react](https://github.com/yannickcr/eslint-plugin-react) from 7.20.5 to 7.21.2. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/yannickcr/eslint-plugin-react/blob/master/CHANGELOG.md">eslint-plugin-react's changelog</a>.</em></p> <blockquote> <h2>[7.21.2] - 2020.09.24</h2> <h3>Fixed</h3> <ul> <li>[<code>prop-types</code>]: handle RestElement in destructured param (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2805">#2805</a>[] <a href="https://github.com/hank121314">hank121314</a>)</li> </ul> <p><a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2805">#2805</a>: <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/pull/2805">yannickcr/eslint-plugin-react#2805</a></p> <h2>[7.21.1] - 2020.09.23</h2> <h3>Fixed</h3> <ul> <li>[<code>jsx-handler-names</code>]: avoid a crash when an inline prop is not a MemberExpression (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2803">#2803</a>[] <a href="https://github.com/willheslam">willheslam</a>)</li> </ul> <p><a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2803">#2803</a>: <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2803">yannickcr/eslint-plugin-react#2803</a></p> <h2>[7.21.0] - 2020.09.22</h2> <h3>Added</h3> <ul> <li>[<code>button-has-type</code>]: support trivial ternary expressions (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2748">#2748</a>[] <a href="https://github.com/Hypnosphi">Hypnosphi</a>)</li> <li>[<code>jsx-handler-names</code>]: add <code>checkInlineFunction</code> option (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2761">#2761</a>[] <a href="https://github.com/dididy">dididy</a>)</li> <li>[<code>jsx-no-literals</code>]: add <code>noAttributeStrings</code> option (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2782">#2782</a>[] <a href="https://github.com/TaLeaMonet">TaLeaMonet</a>)</li> <li>[<code>prop-types</code>]: add support for <code>PropTypes.exact</code> (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2740">#2740</a>[] <a href="https://github.com/jzabala">jzabala</a>)</li> <li>[<code>jsx-filename-extension</code>]: Add allow option (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2746">#2746</a>[] <a href="https://github.com/remcohaszing">remcohaszing</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>[<code>function-component-definition</code>]: ignore object properties (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2771">#2771</a>[] <a href="https://github.com/stefan-wullems">stefan-wullems</a>)</li> <li>[<code>forbid-component-props</code>]: Implemented support for "namespaced" components (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2767">#2767</a>[] <a href="https://github.com/mnn">mnn</a>)</li> <li>[<code>prefer-read-only-props</code>]: support Flow <code>$ReadOnly</code> (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2772">#2772</a>[], <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2779">#2779</a>[], <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2770">#2770</a>[] <a href="https://github.com/karolina-benitez">karolina-benitez</a>)</li> <li>[<code>jsx-handler-names</code>]: handle whitespace (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2789">#2789</a>[] <a href="https://github.com/AriPerkkio">AriPerkkio</a>)</li> <li>[<code>prop-types</code>]: Detect TypeScript types for destructured default prop values (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2780">#2780</a>[] <a href="https://github.com/sunghyunjo">sunghyunjo</a>)</li> <li>[<code>jsx-pascal-case</code>]: Handle single character namespaced component (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2791">#2791</a>[] <a href="https://github.com/daviferreira">daviferreira</a>)</li> <li>[<code>jsx-closing-bracket-location</code>]: In <code>tag-aligned</code>, made a distinction between tabs and spaces (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2796">#2796</a>[] <a href="https://github.com/Moong0122">Moong0122</a>)</li> <li>[<code>jsx-handler-names</code>]: false positive when handler name begins with number (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/1689">#1689</a>[] <a href="https://github.com/jsphstls">jsphstls</a>)</li> <li>[<code>prop-types</code>]: Detect JSX returned by sequential expression (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2801">#2801</a>[] <a href="https://github.com/mikol">mikol</a>)</li> <li>[<code>jsx-props-no-multi-spaces</code>]: "Expected no line gap between" false positive (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2792">#2792</a>[] <a href="https://github.com/karolina-benitez">karolina-benitez</a>)</li> <li>[<code>no-unknown-property</code>]: check attributes with any input case (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2790">#2790</a>[] <a href="https://github.com/julienw">julienw</a>)</li> <li>[<code>prop-types</code>]/[<code>no-unused-prop-types</code>]: handle CallExpression in ReturnType (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2802">#2802</a>[] <a href="https://github.com/hank121314">hank121314</a>)</li> <li>[<code>jsx-uses-react</code>]: mark fragment variables as used (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2775">#2775</a>[] <a href="https://github.com/remcohaszing">remcohaszing</a>)</li> <li>[<code>no-unused-prop-types</code>]: improve component declared props detection (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2755">#2755</a>[] <a href="https://github.com/jzabala">jzabala</a>)</li> <li>[<code>jsx-props-no-multi-spaces</code>]: Show error in multi-line props (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2756">#2756</a>[] <a href="https://github.com/iiison">iiison</a>)</li> </ul> <h3>Changed</h3> <ul> <li>[Tests] [<code>jsx-one-expression-per-line</code>]: add passing tests (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2799">#2799</a>[] <a href="https://github.com/TaLeaMonet">TaLeaMonet</a>)</li> <li>[Tests] [<code>prop-types</code>]: add test (<a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2757">#2757</a>[] <a href="https://github.com/jzabala">jzabala</a>)</li> </ul> <p><a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2802">#2802</a>: <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/pull/2802">yannickcr/eslint-plugin-react#2802</a> <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2801">#2801</a>: <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/pull/2801">yannickcr/eslint-plugin-react#2801</a> <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2799">#2799</a>: <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/pull/2799">yannickcr/eslint-plugin-react#2799</a> <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2796">#2796</a>: <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/pull/2796">yannickcr/eslint-plugin-react#2796</a> <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2792">#2792</a>: <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/pull/2792">yannickcr/eslint-plugin-react#2792</a> <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/issues/2791">#2791</a>: <a href="https://github-redirect.dependabot.com/yannickcr/eslint-plugin-react/pull/2791">yannickcr/eslint-plugin-react#2791</a></p> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/yannickcr/eslint-plugin-react/commits">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/configuring-github-dependabot-security-updates) 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-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> 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) </details> Pull Request resolved: https://github.com/facebook/flipper/pull/1548 Reviewed By: cekkaewnumchai Differential Revision: D24078464 Pulled By: passy fbshipit-source-id: 07892b6417cfa9579028a2df72c1ae1744f9369a
flipper-sdk-api
SDK to build Flipper clients for JS based apps
Installation
yarn add flipper-client-sdk
Usage
Example
class SeaMammalPlugin extends AbsctractFlipperPlugin {
getId(): string {
return 'sea-mammals';
}
runInBackground(): boolean {
return true;
}
newRow(row: {id: string, url: string, title: string}) {
this.connection?.send("newRow", row)
}
}
const flipperClient = newWebviewClient();
cosnt plugin = new SeaMammalPlugin();
flipperClient.addPlugin();
flipperClient.start('Example JS App');
plugin.newRow({id: '1', title: 'Dolphin', url: 'example.com'})