@whitesev/utils 2.11.3 → 2.11.4

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.esm.js CHANGED
@@ -237,7 +237,7 @@ const clearTimeout$1 = (timerId) => loadOrReturnBroker().clearTimeout(timerId);
237
237
  const setInterval$1 = (...args) => loadOrReturnBroker().setInterval(...args);
238
238
  const setTimeout$1 = (...args) => loadOrReturnBroker().setTimeout(...args);
239
239
 
240
- const version = "2.11.3";
240
+ const version = "2.11.4";
241
241
 
242
242
  /* eslint-disable */
243
243
  // ==UserScript==
@@ -8480,6 +8480,58 @@ class Utils {
8480
8480
  }
8481
8481
  });
8482
8482
  }
8483
+ calcPositionDistance(...args) {
8484
+ let position = {
8485
+ x: 0,
8486
+ y: 0,
8487
+ };
8488
+ let otherPosition = {
8489
+ x: 0,
8490
+ y: 0,
8491
+ };
8492
+ if (typeof args[0] === "object" && args[0] != null && typeof args[1] === "object" && args[1] != null) {
8493
+ position = args[0];
8494
+ otherPosition = args[1];
8495
+ }
8496
+ else if (args.length === 4) {
8497
+ position = {
8498
+ x: args[0],
8499
+ y: args[1],
8500
+ };
8501
+ otherPosition = {
8502
+ x: args[2],
8503
+ y: args[3],
8504
+ };
8505
+ }
8506
+ else {
8507
+ throw new Error("Invalid arguments");
8508
+ }
8509
+ if (typeof position.x === "string") {
8510
+ position.x = Number(position.x);
8511
+ }
8512
+ if (isNaN(position.x)) {
8513
+ throw new Error(`Invalid x: ${position.x}`);
8514
+ }
8515
+ if (typeof position.y === "string") {
8516
+ position.y = Number(position.y);
8517
+ }
8518
+ if (isNaN(position.y)) {
8519
+ throw new Error(`Invalid y: ${position.y}`);
8520
+ }
8521
+ if (typeof otherPosition.x === "string") {
8522
+ otherPosition.x = Number(otherPosition.x);
8523
+ }
8524
+ if (isNaN(otherPosition.x)) {
8525
+ throw new Error(`Invalid x: ${otherPosition.x}`);
8526
+ }
8527
+ if (typeof otherPosition.y === "string") {
8528
+ otherPosition.y = Number(otherPosition.y);
8529
+ }
8530
+ if (isNaN(otherPosition.y)) {
8531
+ throw new Error(`Invalid y: ${otherPosition.y}`);
8532
+ }
8533
+ return Math.sqrt(Math.pow(otherPosition.x - position.x, 2) + Math.pow(otherPosition.y - position.y, 2));
8534
+ }
8483
8535
  }
8484
8536
  const utils = new Utils();
8485
8537