const require_rolldown_runtime = require('../../../_virtual/rolldown_runtime.cjs');

//#region ../../node_modules/node-rsa/src/utils.js
var require_utils = /* @__PURE__ */ require_rolldown_runtime.__commonJS({ "../../node_modules/node-rsa/src/utils.js": ((exports, module) => {
	require("crypto");
	/**
	* Break string str each maxLen symbols
	* @param str
	* @param maxLen
	* @returns {string}
	*/
	module.exports.linebrk = function(str, maxLen) {
		var res = "";
		var i = 0;
		while (i + maxLen < str.length) {
			res += str.substring(i, i + maxLen) + "\n";
			i += maxLen;
		}
		return res + str.substring(i, str.length);
	};
	module.exports.detectEnvironment = function() {
		if (typeof window !== "undefined" && window && !(process && process.title === "node")) return "browser";
		return "node";
	};
	/**
	* Trying get a 32-bit unsigned integer from the partial buffer
	* @param buffer
	* @param offset
	* @returns {Number}
	*/
	module.exports.get32IntFromBuffer = function(buffer, offset) {
		offset = offset || 0;
		var size = 0;
		if ((size = buffer.length - offset) > 0) if (size >= 4) return buffer.readUIntBE(offset, size);
		else {
			var res = 0;
			for (var i = offset + size, d = 0; i > offset; i--, d += 2) res += buffer[i - 1] * Math.pow(16, d);
			return res;
		}
		else return NaN;
	};
	module.exports._ = {
		isObject: function(value) {
			var type = typeof value;
			return !!value && (type == "object" || type == "function");
		},
		isString: function(value) {
			return typeof value == "string" || value instanceof String;
		},
		isNumber: function(value) {
			return typeof value == "number" || !isNaN(parseFloat(value)) && isFinite(value);
		},
		omit: function(obj, removeProp) {
			var newObj = {};
			for (var prop in obj) {
				if (!obj.hasOwnProperty(prop) || prop === removeProp) continue;
				newObj[prop] = obj[prop];
			}
			return newObj;
		}
	};
	/**
	* Strips everything around the opening and closing lines, including the lines
	* themselves.
	*/
	module.exports.trimSurroundingText = function(data, opening, closing) {
		var trimStartIndex = 0;
		var trimEndIndex = data.length;
		var openingBoundaryIndex = data.indexOf(opening);
		if (openingBoundaryIndex >= 0) trimStartIndex = openingBoundaryIndex + opening.length;
		var closingBoundaryIndex = data.indexOf(closing, openingBoundaryIndex);
		if (closingBoundaryIndex >= 0) trimEndIndex = closingBoundaryIndex;
		return data.substring(trimStartIndex, trimEndIndex);
	};
}) });

//#endregion
Object.defineProperty(exports, 'default', {
  enumerable: true,
  get: function () {
    return require_utils();
  }
});
//# sourceMappingURL=utils.cjs.map