steamutils 1.5.7 → 1.5.9

Sign up to get free protection for your applications and to get access to all the features.
package/utils.js CHANGED
@@ -7,6 +7,7 @@ import readline from "readline";
7
7
  import https from "https";
8
8
  import { promisify } from "util";
9
9
  import { pipeline } from "stream";
10
+ import _ from "lodash";
10
11
 
11
12
  const isBrowser = typeof window !== "undefined";
12
13
  const g_rgCurrencyData = {
@@ -1078,7 +1079,7 @@ export async function downloadLargeImage(url, filePath) {
1078
1079
  }
1079
1080
 
1080
1081
  //from large text file
1081
- export function readRandomLine(filePath) {
1082
+ export function readRandomLine(filePath, isValidLine) {
1082
1083
  return new Promise((resolve, reject) => {
1083
1084
  const rl = readline.createInterface({
1084
1085
  input: fs.createReadStream(filePath),
@@ -1089,6 +1090,10 @@ export function readRandomLine(filePath) {
1089
1090
  let lineNumber = 0;
1090
1091
 
1091
1092
  rl.on("line", (line) => {
1093
+ if (typeof isValidLine === "function" && !isValidLine(line)) {
1094
+ return;
1095
+ }
1096
+
1092
1097
  lineNumber += 1;
1093
1098
  // Choose this line with probability 1 / lineNumber
1094
1099
  if (Math.random() < 1 / lineNumber) {
@@ -1109,3 +1114,28 @@ export function readRandomLine(filePath) {
1109
1114
  });
1110
1115
  });
1111
1116
  }
1117
+
1118
+ export async function getImageSize(url) {
1119
+ if (!url || typeof url !== "string") {
1120
+ return;
1121
+ }
1122
+ let response = null;
1123
+ try {
1124
+ response = await axios.head(url);
1125
+ } catch (e) {
1126
+ /* empty */
1127
+ }
1128
+ if (!response) {
1129
+ return;
1130
+ }
1131
+ const contentLength = response.headers?.["content-length"];
1132
+ if (contentLength) {
1133
+ const sizeInBytes = parseInt(contentLength, 10);
1134
+ const sizeInMB = sizeInBytes / (1024 * 1024); // Convert to MB
1135
+ return sizeInMB.toFixed(2); // Return size in MB with 2 decimal places
1136
+ }
1137
+ }
1138
+
1139
+ export function getGreetMessage() {
1140
+ return _.sample(["nha", "nhá", "nhé"]);
1141
+ }