HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux ip-10-0-8-47 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:31:58 UTC 2024 aarch64
User: ubuntu (1000)
PHP: 8.1.2-1ubuntu2.22
Disabled: NONE
Upload Files
File: /var/www/javago-api-updates/node_modules/mysql2/lib/results_stream.js
'use strict';

const Readable = require('stream').Readable;

// copy-paste from https://github.com/mysqljs/mysql/blob/master/lib/protocol/sequences/Query.js
module.exports = function (command, connectionStream) {
  command.stream = function (options) {
    let stream;

    options = options || {};
    options.objectMode = true;
    (stream = new Readable(options)),
      (stream._read = function () {
        connectionStream.resume();
      });

    this.on('result', (row, i) => {
      if (!stream.push(row)) {
        connectionStream.pause();
      }
      stream.emit('result', row, i); // replicate old emitter
    });

    this.on('error', (err) => {
      stream.emit('error', err); // Pass on any errors
    });

    this.on('end', () => {
      stream.push(null); // pushing null, indicating EOF
    });

    this.on('fields', (fields, i) => {
      stream.emit('fields', fields, i); // replicate old emitter
    });

    return stream;
  };
};