{"contracts":{"A":{"C":{"evm":{"methodIdentifiers":{"f()":"26121ff0"}}}}},"sources":{"A":{"id":0}}}

<meta name='robots' content='index, nofollow'/>
<link rel='stylesheet' type='text/css' href='/~lantw44/cgit-data/cgit.css'/>
<link rel='shortcut icon' href='/favicon.ico'/>
<link rel='alternate' title='Atom feed' href='http://www.tfcis.org/~lantw44/cgit/tangerine-wallet-browser/atom/app/scripts/lib/createStreamSink.js?h=master' type='application/atom+xml'/>
<link rel='vcs-git' href='https://www.tfcis.org/~lantw44/git/tangerine-wallet-browser' title='tangerine-wallet-browser Git repository'/>
<link rel='vcs-git' href='https://www.lant.com.tw/~lantw44/git/tangerine-wallet-browser' title='tangerine-wallet-browser Git repository'/>
<link rel='vcs-git' href='https://phantom.tfcis.org/~lantw44/git/tangerine-wallet-browser' title='tangerine-wallet-browser Git repository'/>
<link rel='vcs-git' href='https://www.csie.ntu.edu.tw/~b01902062/git/tangerine-wallet-browser' title='tangerine-wallet-browser Git repository'/>
</head>
<body>
<div id='cgit'><table id='header'>
<tr>
<td class='logo' rowspan='2'><a href='/~lantw44/cgit/'><img src='/~lantw44/cgit-data/cgit.png' alt='cgit logo'/></a></td>
<td class='main'><a href='/~lantw44/cgit/'>index</a> : <a title='tangerine-wallet-browser' href='/~lantw44/cgit/tangerine-wallet-browser/'>tangerine-wallet-browser</a></td><td class='form'><form method='get'>
<input type='hidden' name='id' value='cc11a623972acf707291d7b42d9dc2f8d7006e20'/><select name='h' onchange='this.form.submit();'>
<option value='dependabot/npm_and_yarn/async-2.6.4'>dependabot/npm_and_yarn/async-2.6.4</option>
<option value='dependabot/npm_and_yarn/cached-path-relative-1.1.0'>dependabot/npm_and_yarn/cached-path-relative-1.1.0</option>
<option value='dependabot/npm_and_yarn/copy-props-2.0.5'>dependabot/npm_and_yarn/copy-props-2.0.5</option>
<option value='dependabot/npm_and_yarn/css-what-2.1.3'>dependabot/npm_and_yarn/css-what-2.1.3</option>
<option value='dependabot/npm_and_yarn/decode-uri-component-0.2.2'>dependabot/npm_and_yarn/decode-uri-component-0.2.2</option>
<option value='dependabot/npm_and_yarn/eth-ledger-bridge-keyring-0.2.1'>dependabot/npm_and_yarn/eth-ledger-bridge-keyring-0.2.1</option>
<option value='dependabot/npm_and_yarn/eventsource-1.1.1'>dependabot/npm_and_yarn/eventsource-1.1.1</option>
<option value='dependabot/npm_and_yarn/express-4.18.2'>dependabot/npm_and_yarn/express-4.18.2</option>
<option value='dependabot/npm_and_yarn/fast-json-patch-3.1.1'>dependabot/npm_and_yarn/fast-json-patch-3.1.1</option>
<option value='dependabot/npm_and_yarn/follow-redirects-1.14.7'>dependabot/npm_and_yarn/follow-redirects-1.14.7</option>
<option value='dependabot/npm_and_yarn/follow-redirects-1.14.8'>dependabot/npm_and_yarn/follow-redirects-1.14.8</option>
<option value='dependabot/npm_and_yarn/handlebars-4.7.6'>dependabot/npm_and_yarn/handlebars-4.7.6</option>
<option value='dependabot/npm_and_yarn/handlebars-4.7.7'>dependabot/npm_and_yarn/handlebars-4.7.7</option>
<option value='dependabot/npm_and_yarn/hosted-git-info-2.8.9'>dependabot/npm_and_yarn/hosted-git-info-2.8.9</option>
<option value='dependabot/npm_and_yarn/i-0.3.7'>dependabot/npm_and_yarn/i-0.3.7</option>
<option value='dependabot/npm_and_yarn/jsdom-16.5.0'>dependabot/npm_and_yarn/jsdom-16.5.0</option>
<option value='dependabot/npm_and_yarn/jszip-3.10.1'>dependabot/npm_and_yarn/jszip-3.10.1</option>
<option value='dependabot/npm_and_yarn/karma-6.3.14'>dependabot/npm_and_yarn/karma-6.3.14</option>
<option value='dependabot/npm_and_yarn/karma-6.3.16'>dependabot/npm_and_yarn/karma-6.3.16</option>
<option value='dependabot/npm_and_yarn/lodash-es-4.17.21'>dependabot/npm_and_yarn/lodash-es-4.17.21</option>
<option value='dependabot/npm_and_yarn/luxon-1.28.1'>dependabot/npm_and_yarn/luxon-1.28.1</option>
<option value='dependabot/npm_and_yarn/luxon-2.5.2'>dependabot/npm_and_yarn/luxon-2.5.2</option>
<option value='dependabot/npm_and_yarn/markdown-to-jsx-6.11.4'>dependabot/npm_and_yarn/markdown-to-jsx-6.11.4</option>
<option value='dependabot/npm_and_yarn/merge-deep-3.0.3'>dependabot/npm_and_yarn/merge-deep-3.0.3</option>
<option value='dependabot/npm_and_yarn/moment-2.29.2'>dependabot/npm_and_yarn/moment-2.29.2</option>
<option value='dependabot/npm_and_yarn/moment-2.29.4'>dependabot/npm_and_yarn/moment-2.29.4</option>
<option value='dependabot/npm_and_yarn/nested-object-assign-1.0.4'>dependabot/npm_and_yarn/nested-object-assign-1.0.4</option>
<option value='dependabot/npm_and_yarn/node-sass-4.13.1'>dependabot/npm_and_yarn/node-sass-4.13.1</option>
<option value='dependabot/npm_and_yarn/node-sass-7.0.0'>dependabot/npm_and_yarn/node-sass-7.0.0</option>
<option value='dependabot/npm_and_yarn/path-parse-1.0.7'>dependabot/npm_and_yarn/path-parse-1.0.7</option>
<option value='dependabot/npm_and_yarn/pathval-1.1.1'>dependabot/npm_and_yarn/pathval-1.1.1</option>
<option value='dependabot/npm_and_yarn/qs-6.5.3'>dependabot/npm_and_yarn/qs-6.5.3</option>
<option value='dependabot/npm_and_yarn/snyk-1.1024.0'>dependabot/npm_and_yarn/snyk-1.1024.0</option>
<option value='dependabot/npm_and_yarn/ssri-6.0.2'>dependabot/npm_and_yarn/ssri-6.0.2</option>
<option value='dependabot/npm_and_yarn/terser-4.8.1'>dependabot/npm_and_yarn/terser-4.8.1</option>
<option value='dependabot/npm_and_yarn/thenify-3.3.1'>dependabot/npm_and_yarn/thenify-3.3.1</option>
<option value='dependabot/npm_and_yarn/tree-kill-1.2.2'>dependabot/npm_and_yarn/tree-kill-1.2.2</option>
<option value='dependabot/npm_and_yarn/ua-parser-js-0.7.28'>dependabot/npm_and_yarn/ua-parser-js-0.7.28</option>
<option value='dependabot/npm_and_yarn/url-parse-1.5.1'>dependabot/npm_and_yarn/url-parse-1.5.1</option>
<option value='dependabot/npm_and_yarn/url-parse-1.5.10'>dependabot/npm_and_yarn/url-parse-1.5.10</option>
<option value='dependabot/npm_and_yarn/url-parse-1.5.3'>dependabot/npm_and_yarn/url-parse-1.5.3</option>
<option value='dependabot/npm_and_yarn/url-parse-1.5.7'>dependabot/npm_and_yarn/url-parse-1.5.7</option>
<option value='dependabot/npm_and_yarn/websocket-extensions-0.1.4'>dependabot/npm_and_yarn/websocket-extensions-0.1.4</option>
<option value='dependabot/npm_and_yarn/xmldom-and-testem--removed'>dependabot/npm_and_yarn/xmldom-and-testem--removed</option>
<option value='dependabot/npm_and_yarn/y18n-3.2.2'>dependabot/npm_and_yarn/y18n-3.2.2</option>
<option value='master' selected='selected'>master</option>
</select> <input type='submit' value='switch'/></form></td></tr>
<tr><td class='sub'>Tangerine fork of MetaMask browser extension (https://github.com/tangerine-network/tangerine-wallet-browser)</td><td class='sub right'></td></tr></table>
<table class='tabs'><tr><td>
<a href='/~lantw44/cgit/tangerine-wallet-browser/about/'>about</a><a href='/~lantw44/cgit/tangerine-wallet-browser/'>summary</a><a href='/~lantw44/cgit/tangerine-wallet-browser/refs/?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>refs</a><a href='/~lantw44/cgit/tangerine-wallet-browser/log/app/scripts/lib/createStreamSink.js'>log</a><a class='active' href='/~lantw44/cgit/tangerine-wallet-browser/tree/app/scripts/lib/createStreamSink.js?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>tree</a><a href='/~lantw44/cgit/tangerine-wallet-browser/commit/app/scripts/lib/createStreamSink.js?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>commit</a><a href='/~lantw44/cgit/tangerine-wallet-browser/diff/app/scripts/lib/createStreamSink.js?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>diff</a><a href='/~lantw44/cgit/tangerine-wallet-browser/stats/app/scripts/lib/createStreamSink.js'>stats</a></td><td class='form'><form class='right' method='get' action='/~lantw44/cgit/tangerine-wallet-browser/log/app/scripts/lib/createStreamSink.js'>
<input type='hidden' name='id' value='cc11a623972acf707291d7b42d9dc2f8d7006e20'/><select name='qt'>
<option value='grep'>log msg</option>
<option value='author'>author</option>
<option value='committer'>committer</option>
<option value='range'>range</option>
</select>
<input class='txt' type='search' size='10' name='q' value=''/>
<input type='submit' value='search'/>
</form>
</td></tr></table>
<div class='path'>path: <a href='/~lantw44/cgit/tangerine-wallet-browser/tree/?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>root</a>/<a href='/~lantw44/cgit/tangerine-wallet-browser/tree/app?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>app</a>/<a href='/~lantw44/cgit/tangerine-wallet-browser/tree/app/scripts?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>scripts</a>/<a href='/~lantw44/cgit/tangerine-wallet-browser/tree/app/scripts/lib?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>lib</a>/<a href='/~lantw44/cgit/tangerine-wallet-browser/tree/app/scripts/lib/createStreamSink.js?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>createStreamSink.js</a></div><div class='content'>blob: cf9416fea4ba498198d6caf7d70778956cf6dc10 (<a href='/~lantw44/cgit/tangerine-wallet-browser/plain/app/scripts/lib/createStreamSink.js?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>plain</a>) (<a href='/~lantw44/cgit/tangerine-wallet-browser/blame/app/scripts/lib/createStreamSink.js?id=cc11a623972acf707291d7b42d9dc2f8d7006e20'>blame</a>)
<table summary='blob content' class='blob'>
<tr><td class='linenumbers'><pre><a id='n1' href='#n1'>1</a>
<a id='n2' href='#n2'>2</a>
<a id='n3' href='#n3'>3</a>
<a id='n4' href='#n4'>4</a>
<a id='n5' href='#n5'>5</a>
<a id='n6' href='#n6'>6</a>
<a id='n7' href='#n7'>7</a>
<a id='n8' href='#n8'>8</a>
<a id='n9' href='#n9'>9</a>
<a id='n10' href='#n10'>10</a>
<a id='n11' href='#n11'>11</a>
<a id='n12' href='#n12'>12</a>
<a id='n13' href='#n13'>13</a>
<a id='n14' href='#n14'>14</a>
<a id='n15' href='#n15'>15</a>
<a id='n16' href='#n16'>16</a>
<a id='n17' href='#n17'>17</a>
<a id='n18' href='#n18'>18</a>
<a id='n19' href='#n19'>19</a>
<a id='n20' href='#n20'>20</a>
<a id='n21' href='#n21'>21</a>
<a id='n22' href='#n22'>22</a>
<a id='n23' href='#n23'>23</a>
<a id='n24' href='#n24'>24</a>
</pre></td>
<td class='lines'><pre><code><span style="color:#a52a35">const</span> WritableStream <span style="color:#3a3935">=</span> <span style="color:#3a3935; font-weight:bold">require</span><span style="color:#3a3935">(</span><span style="color:#ff00ff">&#39;readable-stream&#39;</span><span style="color:#3a3935">).</span>Writable
<span style="color:#a52a35">const</span> promiseToCallback <span style="color:#3a3935">=</span> <span style="color:#3a3935; font-weight:bold">require</span><span style="color:#3a3935">(</span><span style="color:#ff00ff">&#39;promise-to-callback&#39;</span><span style="color:#3a3935">)</span>

module<span style="color:#3a3935">.</span>exports <span style="color:#3a3935">=</span> createStreamSink


<span style="color:#a52a35">function</span> <span style="color:#3a3935; font-weight:bold">createStreamSink</span><span style="color:#3a3935">(</span>asyncWriteFn<span style="color:#3a3935">,</span> _opts<span style="color:#3a3935">) {</span>
  <span style="color:#a52a35">return new</span> <span style="color:#3a3935; font-weight:bold">AsyncWritableStream</span><span style="color:#3a3935">(</span>asyncWriteFn<span style="color:#3a3935">,</span> _opts<span style="color:#3a3935">)</span>
<span style="color:#3a3935">}</span>

<span style="color:#a52a35">class</span> AsyncWritableStream <span style="color:#a52a35">extends</span> WritableStream <span style="color:#3a3935">{</span>

  <span style="color:#a52a35">constructor</span> <span style="color:#3a3935">(</span>asyncWriteFn<span style="color:#3a3935">,</span> _opts<span style="color:#3a3935">) {</span>
    <span style="color:#a52a35">const</span> opts <span style="color:#3a3935">=</span> Object<span style="color:#3a3935">.</span><span style="color:#3a3935; font-weight:bold">assign</span><span style="color:#3a3935">({</span> <span style="color:#3a3935; font-weight:bold">objectMode</span><span style="color:#3a3935">:</span> <span style="color:#a52a35">true</span> <span style="color:#3a3935">},</span> _opts<span style="color:#3a3935">)</span>
    <span style="color:#a52a35">super</span><span style="color:#3a3935">(</span>opts<span style="color:#3a3935">)</span>
    <span style="color:#a52a35">this</span><span style="color:#3a3935">.</span>_asyncWriteFn <span style="color:#3a3935">=</span> asyncWriteFn
  <span style="color:#3a3935">}</span>

  <span style="color:#003cff">// write from incomming stream to state</span>
  <span style="color:#3a3935; font-weight:bold">_write</span> <span style="color:#3a3935">(</span>chunk<span style="color:#3a3935">,</span> encoding<span style="color:#3a3935">,</span> callback<span style="color:#3a3935">) {</span>
    <span style="color:#3a3935; font-weight:bold">promiseToCallback</span><span style="color:#3a3935">(</span><span style="color:#a52a35">this</span><span style="color:#3a3935">.</span><span style="color:#3a3935; font-weight:bold">_asyncWriteFn</span><span style="color:#3a3935">(</span>chunk<span style="color:#3a3935">,</span> encoding<span style="color:#3a3935">))(</span>callback<span style="color:#3a3935">)</span>
  <span style="color:#3a3935">}</span>

<span style="color:#3a3935">}</span>
</code></pre></td></tr></table>
</div> <!-- class=content -->
<div class='footer'>generated by <a href='https://git.zx2c4.com/cgit/about/'>cgit </a> (<a href='https://git-scm.com/'>git 2.34.1</a>) at 2025-06-18 10:02:57 +0800</div>
</div> <!-- id=cgit -->
</body>
</html>