@balancy/wasm 1.0.38 → 1.0.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -409,6 +409,8 @@ var Balancy = function() {
409
409
  "__Z29jsbalancyHardPurchaseShopSlotPN7Balancy4Data8BaseDataEPNS_4Core11PaymentInfoEN10emscripten3valEb",
410
410
  "__Z30jsbalancyHardPurchaseGameOfferPN7Balancy4Data8BaseDataEPNS_4Core11PaymentInfoEN10emscripten3valEb",
411
411
  "__Z35jsbalancyHardPurchaseGameOfferGroupPN7Balancy4Data8BaseDataEPNS_5Utils15JsonBasedObjectEPNS_4Core11PaymentInfoEN10emscripten3valEb",
412
+ "__Z29jsbalancyAuth_NameAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_N10emscripten3valE",
413
+ "__Z29jsbalancyLink_NameAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_bN10emscripten3valE",
412
414
  "__Z35jsbalancyDailyBonus_claimNextRewardPN7Balancy4Data8BaseDataE",
413
415
  "__Z38jsbalancyDailyBonus_canClaimNextRewardPN7Balancy4Data8BaseDataE",
414
416
  "__Z47jsbalancyDailyBonus_getSecondsTillTheNextRewardPN7Balancy4Data8BaseDataE",
@@ -526,8 +528,8 @@ var Balancy = function() {
526
528
  "_balancyGetProductsIdAndType",
527
529
  "_balancyGetParsedObject",
528
530
  "_balancyAuth_NameAndPassword",
531
+ "_balancyLink_NameAndPassword",
529
532
  "__Z22jsbalancyAuth_DeviceIdNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valE",
530
- "__Z29jsbalancyAuth_NameAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_N10emscripten3valE",
531
533
  "__Z30jsbalancyAuth_EmailAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_N10emscripten3valE",
532
534
  "_balancyInventory_AddItems",
533
535
  "_balancyInventory_RemoveItems",
@@ -1188,17 +1190,18 @@ var Balancy = function() {
1188
1190
  });
1189
1191
  }
1190
1192
  }
1191
- function js_fetch(url, bLoadFile, method, headers, headersCount, body, successCallbackPtr, errorCallbackPtr, callbackPtr, binaryCallbackPtr) {
1193
+ function js_fetch(url, bLoadFile, method, headers, headersCount, body, successCallbackPtr, errorCallbackPtr, callbackPtr, binaryCallbackPtr, requestContextPtr) {
1194
+ var requestId = Date.now() + Math.random();
1192
1195
  var urlString = "";
1193
1196
  var methodString = "";
1194
1197
  var bodyString = null;
1195
1198
  try {
1196
1199
  if (!url) {
1197
- console.error(" URL pointer is null");
1200
+ console.error("[ERROR] [Request ".concat(requestId, "] URL pointer is null"));
1198
1201
  return;
1199
1202
  }
1200
1203
  if (!method) {
1201
- console.error(" Method pointer is null");
1204
+ console.error("[ERROR] [Request ".concat(requestId, "] Method pointer is null"));
1202
1205
  return;
1203
1206
  }
1204
1207
  urlString = UTF8ToString(url);
@@ -1207,51 +1210,92 @@ var Balancy = function() {
1207
1210
  bodyString = UTF8ToString(body);
1208
1211
  }
1209
1212
  if (!urlString || urlString.length === 0) {
1210
- console.error(" URL is empty or invalid");
1213
+ console.error("[ERROR] [Request ".concat(requestId, "] URL is empty or invalid"));
1211
1214
  return;
1212
1215
  }
1213
1216
  if (urlString.includes("\0") || urlString.includes("€")) {
1214
- console.error(" URL contains invalid characters:", urlString);
1217
+ console.error("[ERROR] [Request ".concat(requestId, "] URL contains invalid characters:"), urlString);
1215
1218
  return;
1216
1219
  }
1220
+ console.log("[START] [Request ".concat(requestId, "] Starting ").concat(bLoadFile ? "FILE LOAD" : "API REQUEST"));
1221
+ console.log(" URL: ".concat(urlString));
1222
+ console.log(" Method: ".concat(methodString));
1223
+ if (bodyString) {
1224
+ console.log(" Body: ".concat(bodyString.length > 200 ? bodyString.substring(0, 200) + "..." : bodyString));
1225
+ }
1217
1226
  } catch (error) {
1218
- console.error(" Error reading strings from WASM memory:", error);
1227
+ console.error("[ERROR] [Request ".concat(requestId, "] Error reading strings from WASM memory:"), error);
1219
1228
  return;
1220
1229
  }
1221
- var invokeErrorCallback = function(status, message, callbackPtr) {
1222
- console.log("❌ invokeErrorCallback:", status, message);
1230
+ var invokeErrorCallback = function(status, message) {
1231
+ var details = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "";
1232
+ var fullMessage = "[Request ".concat(requestId, "] ").concat(bLoadFile ? "FILE LOAD" : "API REQUEST", " FAILED: ").concat(methodString, " ").concat(urlString).concat(details ? " - " + details : "");
1233
+ console.error("[ERROR] ".concat(fullMessage));
1234
+ console.error(" Status: ".concat(status));
1235
+ console.error(" Error: ".concat(message || "Unknown error"));
1236
+ if (bodyString) {
1237
+ console.error(" Request Body: ".concat(bodyString.length > 500 ? bodyString.substring(0, 500) + "..." : bodyString));
1238
+ }
1223
1239
  try {
1224
- var errorMessage = message || "Unknown error";
1225
- var errorLength = lengthBytesUTF8(errorMessage) + 1;
1226
- var errorPtr = Module._malloc(errorLength);
1227
- stringToUTF8(errorMessage, errorPtr, errorLength);
1240
+ if (requestContextPtr) {
1241
+ console.log("[MEMORY] [Request ".concat(requestId, "] Cleaning up RequestContext at ").concat(requestContextPtr));
1242
+ Module._free(requestContextPtr);
1243
+ }
1244
+ if (!errorCallbackPtr || !callbackPtr) {
1245
+ console.error("[ERROR] [Request ".concat(requestId, "] Invalid callback pointers: errorCallback=").concat(errorCallbackPtr, ", callback=").concat(callbackPtr));
1246
+ return;
1247
+ }
1248
+ var errorMessage = fullMessage + (message ? " - ".concat(message) : "");
1249
+ var errorLength = lengthBytesUTF8(errorMessage);
1250
+ if (errorLength <= 0 || errorLength > 1048576) {
1251
+ console.error("[ERROR] [Request ".concat(requestId, "] Invalid error message length: ").concat(errorLength));
1252
+ return;
1253
+ }
1254
+ var errorPtr = Module._malloc(errorLength + 1);
1255
+ if (!errorPtr) {
1256
+ console.error("[ERROR] [Request ".concat(requestId, "] Failed to allocate memory for error message"));
1257
+ return;
1258
+ }
1259
+ console.log("[MEMORY] [Request ".concat(requestId, "] Allocated ").concat(errorLength + 1, " bytes for error message at ").concat(errorPtr));
1260
+ stringToUTF8(errorMessage, errorPtr, errorLength + 1);
1261
+ if (typeof Module["dynCall_viii"] !== "function") {
1262
+ console.error("[ERROR] [Request ".concat(requestId, "] dynCall_viii function not available"));
1263
+ Module._free(errorPtr);
1264
+ return;
1265
+ }
1228
1266
  Module["dynCall_viii"](errorCallbackPtr, status, errorPtr, callbackPtr);
1229
1267
  Module._free(errorPtr);
1268
+ console.log("[MEMORY] [Request ".concat(requestId, "] Freed error message memory at ").concat(errorPtr));
1230
1269
  } catch (error) {
1231
- console.error(" Error in error callback:", error);
1270
+ console.error("[ERROR] [Request ".concat(requestId, "] Error in error callback:"), error);
1232
1271
  }
1233
1272
  };
1234
1273
  var headersObj = new Headers;
1235
1274
  var ptrSize = Module.HEAPU32.BYTES_PER_ELEMENT;
1275
+ var headersLogged = [];
1236
1276
  try {
1237
1277
  for(var i = 0; i < headersCount; i += 2){
1238
1278
  var keyPtr = getValue(headers + i * ptrSize, "*");
1239
1279
  var valuePtr = getValue(headers + (i + 1) * ptrSize, "*");
1240
1280
  if (!keyPtr || !valuePtr) {
1241
- console.warn("⚠️ Skipping invalid header pointer at index", i);
1281
+ console.warn("[WARN] [Request ".concat(requestId, "] Skipping invalid header pointer at index"), i);
1242
1282
  continue;
1243
1283
  }
1244
1284
  var key = UTF8ToString(keyPtr);
1245
1285
  var value = UTF8ToString(valuePtr);
1246
1286
  if (!key || !value) {
1247
- console.warn("⚠️ Skipping empty header at index", i);
1287
+ console.warn("[WARN] [Request ".concat(requestId, "] Skipping empty header at index"), i);
1248
1288
  continue;
1249
1289
  }
1250
1290
  headersObj.append(key, value);
1291
+ headersLogged.push("".concat(key, ": ").concat(value));
1292
+ }
1293
+ if (headersLogged.length > 0) {
1294
+ console.log(" Headers: ".concat(headersLogged.join(", ")));
1251
1295
  }
1252
1296
  } catch (error) {
1253
- console.error(" Error processing headers:", error);
1254
- invokeErrorCallback(-1, "Header processing error: " + error.message, callbackPtr);
1297
+ console.error("[ERROR] [Request ".concat(requestId, "] Error processing headers:"), error);
1298
+ invokeErrorCallback(-1, "Header processing error: " + error.message, "");
1255
1299
  return;
1256
1300
  }
1257
1301
  var fetchOptions = {
@@ -1259,19 +1303,24 @@ var Balancy = function() {
1259
1303
  headers: headersObj,
1260
1304
  body: bodyString
1261
1305
  };
1306
+ var startTime = performance.now();
1262
1307
  fetch(urlString, fetchOptions).then(function(response) {
1308
+ var duration = performance.now() - startTime;
1309
+ console.log("[TIMING] [Request ".concat(requestId, "] Fetch completed in ").concat(duration.toFixed(2), "ms"));
1263
1310
  if (!response.ok) {
1264
- console.log(" Response not OK, reading error message");
1311
+ console.error("[ERROR] [Request ".concat(requestId, "] Response not OK, status: ").concat(response.status, " ").concat(response.statusText));
1265
1312
  response.text().then(function(errorMessage) {
1266
- console.log(" Error message:", errorMessage);
1267
- invokeErrorCallback(response.status, errorMessage, callbackPtr);
1313
+ console.error(" Response Body: ".concat(errorMessage));
1314
+ invokeErrorCallback(response.status, errorMessage, "HTTP ".concat(response.status, " ").concat(response.statusText));
1268
1315
  }).catch(function() {
1269
- console.log(" Failed to read error message");
1270
- invokeErrorCallback(response.status, null, callbackPtr);
1316
+ console.error(" Failed to read error response body");
1317
+ invokeErrorCallback(response.status, "HTTP ".concat(response.status, " ").concat(response.statusText), "Could not read response body");
1271
1318
  });
1272
1319
  return;
1273
1320
  }
1321
+ console.log("[SUCCESS] [Request ".concat(requestId, "] Response OK, status: ").concat(response.status));
1274
1322
  var contentType = response.headers.get("content-type") || "";
1323
+ console.log(" Content-Type: ".concat(contentType));
1275
1324
  var binaryExtensions = [
1276
1325
  ".png",
1277
1326
  ".jpg",
@@ -1312,33 +1361,104 @@ var Balancy = function() {
1312
1361
  return contentType.toLowerCase().includes(type);
1313
1362
  });
1314
1363
  var isBinary = contentType.includes("application/octet-stream") || hasBinaryExtension || !isTextMimeType && !contentType.includes("charset");
1364
+ console.log(" Detected as: ".concat(isBinary ? "BINARY" : "TEXT", " data"));
1315
1365
  if (isBinary) {
1316
1366
  response.arrayBuffer().then(function(arrayBuffer) {
1317
1367
  var dataSize = arrayBuffer.byteLength;
1368
+ console.log("[DATA] [Request ".concat(requestId, "] Binary data received: ").concat(dataSize, " bytes"));
1369
+ if (dataSize <= 0 || dataSize > 104857600) {
1370
+ console.error("[ERROR] [Request ".concat(requestId, "] Invalid binary data size: ").concat(dataSize));
1371
+ invokeErrorCallback(-1, "Invalid binary data size: ".concat(dataSize), "");
1372
+ return;
1373
+ }
1318
1374
  var dataPtr = Module._malloc(dataSize);
1375
+ if (!dataPtr) {
1376
+ console.error("[ERROR] [Request ".concat(requestId, "] Failed to allocate ").concat(dataSize, " bytes for binary data"));
1377
+ invokeErrorCallback(-1, "Memory allocation failed for binary data", "");
1378
+ return;
1379
+ }
1380
+ console.log("[MEMORY] [Request ".concat(requestId, "] Allocated ").concat(dataSize, " bytes for binary data at ").concat(dataPtr));
1319
1381
  var dataView = new Uint8Array(arrayBuffer);
1320
1382
  Module.HEAPU8.set(dataView, dataPtr);
1321
- Module["dynCall_viii"](binaryCallbackPtr, dataPtr, dataSize, callbackPtr);
1383
+ try {
1384
+ if (!binaryCallbackPtr || !callbackPtr) {
1385
+ console.error("[ERROR] [Request ".concat(requestId, "] Invalid binary callback pointers: binary=").concat(binaryCallbackPtr, ", callback=").concat(callbackPtr));
1386
+ Module._free(dataPtr);
1387
+ return;
1388
+ }
1389
+ if (typeof Module["dynCall_viii"] !== "function") {
1390
+ console.error("[ERROR] [Request ".concat(requestId, "] dynCall_viii function not available for binary callback"));
1391
+ Module._free(dataPtr);
1392
+ return;
1393
+ }
1394
+ Module["dynCall_viii"](binaryCallbackPtr, dataPtr, dataSize, callbackPtr);
1395
+ console.log("[SUCCESS] [Request ".concat(requestId, "] Binary callback completed successfully"));
1396
+ if (requestContextPtr) {
1397
+ console.log("[MEMORY] [Request ".concat(requestId, "] Cleaning up RequestContext at ").concat(requestContextPtr));
1398
+ Module._free(requestContextPtr);
1399
+ }
1400
+ } catch (error) {
1401
+ console.error("[ERROR] [Request ".concat(requestId, "] Error calling binary callback:"), error);
1402
+ invokeErrorCallback(-1, "Binary callback error: " + error.message, "");
1403
+ }
1322
1404
  Module._free(dataPtr);
1405
+ console.log("[MEMORY] [Request ".concat(requestId, "] Freed binary data memory at ").concat(dataPtr));
1323
1406
  }).catch(function(error) {
1324
- console.log(" Error reading binary data:", error);
1325
- invokeErrorCallback(-1, error.message, callbackPtr);
1407
+ console.error("[ERROR] [Request ".concat(requestId, "] Error reading binary data:"), error);
1408
+ invokeErrorCallback(-1, error.message, "Failed to read binary response");
1326
1409
  });
1327
1410
  } else {
1328
1411
  response.text().then(function(data) {
1329
1412
  var dataLength = lengthBytesUTF8(data);
1413
+ console.log("[DATA] [Request ".concat(requestId, "] Text data received: ").concat(dataLength, " bytes"));
1414
+ if (data.length > 0) {
1415
+ console.log(" Preview: ".concat(data.substring(0, 200)).concat(data.length > 200 ? "..." : ""));
1416
+ }
1417
+ if (dataLength <= 0 || dataLength > 104857600) {
1418
+ console.error("[ERROR] [Request ".concat(requestId, "] Invalid text data size: ").concat(dataLength));
1419
+ invokeErrorCallback(-1, "Invalid text data size: ".concat(dataLength), "");
1420
+ return;
1421
+ }
1330
1422
  var dataPtr = Module._malloc(dataLength + 1);
1331
- stringToUTF8(data, dataPtr, dataLength + 1);
1332
- Module["dynCall_viii"](successCallbackPtr, dataPtr, dataLength, callbackPtr);
1423
+ if (!dataPtr) {
1424
+ console.error("[ERROR] [Request ".concat(requestId, "] Failed to allocate ").concat(dataLength + 1, " bytes for text data"));
1425
+ invokeErrorCallback(-1, "Memory allocation failed for text data", "");
1426
+ return;
1427
+ }
1428
+ console.log("[MEMORY] [Request ".concat(requestId, "] Allocated ").concat(dataLength + 1, " bytes for text data at ").concat(dataPtr));
1429
+ try {
1430
+ stringToUTF8(data, dataPtr, dataLength + 1);
1431
+ if (!successCallbackPtr || !callbackPtr) {
1432
+ console.error("[ERROR] [Request ".concat(requestId, "] Invalid text callback pointers: success=").concat(successCallbackPtr, ", callback=").concat(callbackPtr));
1433
+ Module._free(dataPtr);
1434
+ return;
1435
+ }
1436
+ if (typeof Module["dynCall_viii"] !== "function") {
1437
+ console.error("[ERROR] [Request ".concat(requestId, "] dynCall_viii function not available for text callback"));
1438
+ Module._free(dataPtr);
1439
+ return;
1440
+ }
1441
+ Module["dynCall_viii"](successCallbackPtr, dataPtr, dataLength, callbackPtr);
1442
+ console.log("[SUCCESS] [Request ".concat(requestId, "] Text callback completed successfully"));
1443
+ if (requestContextPtr) {
1444
+ console.log("[MEMORY] [Request ".concat(requestId, "] Cleaning up RequestContext at ").concat(requestContextPtr));
1445
+ Module._free(requestContextPtr);
1446
+ }
1447
+ } catch (error) {
1448
+ console.error("[ERROR] [Request ".concat(requestId, "] Error calling text callback:"), error);
1449
+ invokeErrorCallback(-1, "Text callback error: " + error.message, "");
1450
+ }
1333
1451
  Module._free(dataPtr);
1452
+ console.log("[MEMORY] [Request ".concat(requestId, "] Freed text data memory at ").concat(dataPtr));
1334
1453
  }).catch(function(error) {
1335
- console.log(" Error reading text data:", error);
1336
- invokeErrorCallback(-1, error.message, callbackPtr);
1454
+ console.error("[ERROR] [Request ".concat(requestId, "] Error reading text data:"), error);
1455
+ invokeErrorCallback(-1, error.message, "Failed to read text response");
1337
1456
  });
1338
1457
  }
1339
1458
  }).catch(function(error) {
1340
- console.log("❌ Fetch error:", error);
1341
- invokeErrorCallback(-1, error.message, callbackPtr);
1459
+ var duration = performance.now() - startTime;
1460
+ console.error("[ERROR] [Request ".concat(requestId, "] Fetch error after ").concat(duration.toFixed(2), "ms:"), error);
1461
+ invokeErrorCallback(-1, error.message, "Network fetch failed");
1342
1462
  });
1343
1463
  }
1344
1464
  function js_call_typescript_bridge_send_ack(connectionId, ackId, responseData) {
@@ -7347,6 +7467,8 @@ var Balancy = function() {
7347
7467
  Module["__Z29jsbalancyHardPurchaseShopSlotPN7Balancy4Data8BaseDataEPNS_4Core11PaymentInfoEN10emscripten3valEb"] = createExportWrapper("_Z29jsbalancyHardPurchaseShopSlotPN7Balancy4Data8BaseDataEPNS_4Core11PaymentInfoEN10emscripten3valEb", 4);
7348
7468
  Module["__Z30jsbalancyHardPurchaseGameOfferPN7Balancy4Data8BaseDataEPNS_4Core11PaymentInfoEN10emscripten3valEb"] = createExportWrapper("_Z30jsbalancyHardPurchaseGameOfferPN7Balancy4Data8BaseDataEPNS_4Core11PaymentInfoEN10emscripten3valEb", 4);
7349
7469
  Module["__Z35jsbalancyHardPurchaseGameOfferGroupPN7Balancy4Data8BaseDataEPNS_5Utils15JsonBasedObjectEPNS_4Core11PaymentInfoEN10emscripten3valEb"] = createExportWrapper("_Z35jsbalancyHardPurchaseGameOfferGroupPN7Balancy4Data8BaseDataEPNS_5Utils15JsonBasedObjectEPNS_4Core11PaymentInfoEN10emscripten3valEb", 5);
7470
+ Module["__Z29jsbalancyAuth_NameAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_N10emscripten3valE"] = createExportWrapper("_Z29jsbalancyAuth_NameAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_N10emscripten3valE", 3);
7471
+ Module["__Z29jsbalancyLink_NameAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_bN10emscripten3valE"] = createExportWrapper("_Z29jsbalancyLink_NameAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_bN10emscripten3valE", 4);
7350
7472
  Module["__Z35jsbalancyDailyBonus_claimNextRewardPN7Balancy4Data8BaseDataE"] = createExportWrapper("_Z35jsbalancyDailyBonus_claimNextRewardPN7Balancy4Data8BaseDataE", 1);
7351
7473
  Module["__Z38jsbalancyDailyBonus_canClaimNextRewardPN7Balancy4Data8BaseDataE"] = createExportWrapper("_Z38jsbalancyDailyBonus_canClaimNextRewardPN7Balancy4Data8BaseDataE", 1);
7352
7474
  Module["__Z47jsbalancyDailyBonus_getSecondsTillTheNextRewardPN7Balancy4Data8BaseDataE"] = createExportWrapper("_Z47jsbalancyDailyBonus_getSecondsTillTheNextRewardPN7Balancy4Data8BaseDataE", 1);
@@ -7466,8 +7588,8 @@ var Balancy = function() {
7466
7588
  Module["_balancyGetProductsIdAndType"] = createExportWrapper("balancyGetProductsIdAndType", 1);
7467
7589
  Module["_balancyGetParsedObject"] = createExportWrapper("balancyGetParsedObject", 3);
7468
7590
  Module["_balancyAuth_NameAndPassword"] = createExportWrapper("balancyAuth_NameAndPassword", 3);
7591
+ Module["_balancyLink_NameAndPassword"] = createExportWrapper("balancyLink_NameAndPassword", 4);
7469
7592
  Module["__Z22jsbalancyAuth_DeviceIdNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valE"] = createExportWrapper("_Z22jsbalancyAuth_DeviceIdNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valE", 2);
7470
- Module["__Z29jsbalancyAuth_NameAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_N10emscripten3valE"] = createExportWrapper("_Z29jsbalancyAuth_NameAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_N10emscripten3valE", 3);
7471
7593
  Module["__Z30jsbalancyAuth_EmailAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_N10emscripten3valE"] = createExportWrapper("_Z30jsbalancyAuth_EmailAndPasswordNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES5_N10emscripten3valE", 3);
7472
7594
  Module["_balancyInventory_AddItems"] = createExportWrapper("balancyInventory_AddItems", 2);
7473
7595
  Module["_balancyInventory_RemoveItems"] = createExportWrapper("balancyInventory_RemoveItems", 2);