/* eslint-disable node/no-deprecated-api */

'use strict';

Liferay.Loader.define('commerce-dashboard-web$safer-buffer@2.1.2/dangerous', ['module', 'exports', 'require', 'frontend-js-node-shims$buffer', './safer'], function (module, exports, require) {
  var define = undefined;
  var global = window;
  {
    var buffer = require('frontend-js-node-shims$buffer');
    var Buffer = buffer.Buffer;
    var safer = require('./safer');
    var Safer = safer.Buffer;

    var dangerous = {};

    for (var key in safer) {
      if (!safer.hasOwnProperty(key)) continue;
      dangerous[key] = safer[key];
    }

    var Dangereous = dangerous.Buffer = {};

    // Copy Safer API
    for (key in Safer) {
      if (!Safer.hasOwnProperty(key)) continue;
      Dangereous[key] = Safer[key];
    }

    // Copy those missing unsafe methods, if they are present
    for (key in Buffer) {
      if (!Buffer.hasOwnProperty(key)) continue;
      if (Dangereous.hasOwnProperty(key)) continue;
      Dangereous[key] = Buffer[key];
    }

    if (!Dangereous.allocUnsafe) {
      Dangereous.allocUnsafe = function (size) {
        if (typeof size !== 'number') {
          throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size);
        }
        if (size < 0 || size >= 2 * (1 << 30)) {
          throw new RangeError('The value "' + size + '" is invalid for option "size"');
        }
        return Buffer(size);
      };
    }

    if (!Dangereous.allocUnsafeSlow) {
      Dangereous.allocUnsafeSlow = function (size) {
        if (typeof size !== 'number') {
          throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size);
        }
        if (size < 0 || size >= 2 * (1 << 30)) {
          throw new RangeError('The value "' + size + '" is invalid for option "size"');
        }
        return buffer.SlowBuffer(size);
      };
    }

    module.exports = dangerous;
  }
});
//# sourceMappingURL=dangerous.js.map