Files
Martien 5605b9b49a Initial commit: n8n Strike API node
- Add Strike API credentials configuration
- Implement Strike node with 9 resources (Account, Balance, Currency Exchange, Deposit, Invoice, Payment, Payment Method, Payout, Rates)
- Add comprehensive operation descriptions for all resources
- Include CLAUDE.MD documentation
- Set up build configuration with TypeScript, ESLint, and Prettier

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-10 11:00:38 +01:00

61 lines
1.2 KiB
JavaScript

'use strict';
var through = require('through2');
function forward(chunk, enc, cb) {
cb(null, chunk);
}
function toThrough(readable) {
var opts = {
objectMode: readable._readableState.objectMode,
highWaterMark: readable._readableState.highWaterMark,
};
function flush(cb) {
var self = this;
readable.on('readable', onReadable);
readable.on('end', cb);
function onReadable() {
var chunk;
while (chunk = readable.read()) {
self.push(chunk);
}
}
}
var wrapper = through(opts, forward, flush);
var shouldFlow = true;
wrapper.once('pipe', onPipe);
wrapper.on('newListener', onListener);
readable.on('error', wrapper.emit.bind(wrapper, 'error'));
function onListener(event) {
// Once we've seen the data or readable event, check if we need to flow
if (event === 'data' || event === 'readable') {
maybeFlow();
this.removeListener('newListener', onListener);
}
}
function onPipe() {
// If the wrapper is piped, disable flow
shouldFlow = false;
}
function maybeFlow() {
// If we need to flow, end the stream which triggers flush
if (shouldFlow) {
wrapper.end();
}
}
return wrapper;
}
module.exports = toThrough;