@ocap/util 1.18.25 → 1.18.27

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/lib/index.d.ts CHANGED
@@ -4,6 +4,7 @@ import { LiteralUnion } from 'type-fest';
4
4
  import rightPad from 'lodash/padEnd';
5
5
  import leftPad from 'lodash/padStart';
6
6
  import BN from 'bn.js';
7
+ export declare const isBase58btc: (data: any) => boolean;
7
8
  export declare type BytesType = string | Buffer | Uint8Array;
8
9
  export declare type EncodingType = LiteralUnion<'hex' | 'base16' | 'base58' | 'base64' | 'Uint8Array' | 'buffer', string>;
9
10
  export declare type KeyPairType = {
package/lib/index.js CHANGED
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.formatTxType = exports.toDid = exports.toAddress = exports.fromBase64 = exports.toBase64 = exports.fromBase58 = exports.toBase58 = exports.toBuffer = exports.toUint8Array = exports.isUUID = exports.UUID = exports.isUint8Array = exports.fromTokenToUnit = exports.fromUnitToToken = exports.numberToString = exports.toHex = exports.hexToBytes = exports.bytesToHex = exports.numberToHex = exports.hexToNumber = exports.hexToUtf8 = exports.utf8ToHex = exports.toBN = exports.isHex = exports.isHexStrict = exports.isBigNumber = exports.isBN = exports.stripHexPrefix = exports.isHexPrefixed = exports.numberToBN = exports.rightPad = exports.leftPad = exports.BN = void 0;
29
+ exports.formatTxType = exports.toDid = exports.toAddress = exports.fromBase64 = exports.toBase64 = exports.fromBase58 = exports.toBase58 = exports.toBuffer = exports.toUint8Array = exports.isUUID = exports.UUID = exports.isUint8Array = exports.fromTokenToUnit = exports.fromUnitToToken = exports.numberToString = exports.toHex = exports.hexToBytes = exports.bytesToHex = exports.numberToHex = exports.hexToNumber = exports.hexToUtf8 = exports.utf8ToHex = exports.toBN = exports.isHex = exports.isHexStrict = exports.isBigNumber = exports.isBN = exports.stripHexPrefix = exports.isHexPrefixed = exports.numberToBN = exports.rightPad = exports.leftPad = exports.BN = exports.isBase58btc = void 0;
30
30
  const isBoolean_1 = __importDefault(require("lodash/isBoolean"));
31
31
  const isString_1 = __importDefault(require("lodash/isString"));
32
32
  const isNumber_1 = __importDefault(require("lodash/isNumber"));
@@ -55,8 +55,18 @@ const isBase58btc = (data) => {
55
55
  if (typeof data !== 'string') {
56
56
  return false;
57
57
  }
58
- return data[0] === 'z';
58
+ if (data[0] === 'z') {
59
+ try {
60
+ base58btc.decode(data);
61
+ return true;
62
+ }
63
+ catch (err) {
64
+ return false;
65
+ }
66
+ }
67
+ return false;
59
68
  };
69
+ exports.isBase58btc = isBase58btc;
60
70
  /**
61
71
  * Returns a BN object, converts a number value to a BN
62
72
  * @param {string|number|BN} `arg` input a string number, hex string number, number, BigNumber or BN object
@@ -337,7 +347,7 @@ const toHex = (value, returnType = false) => {
337
347
  if (isUint8Array(value) || Buffer.isBuffer(value)) {
338
348
  return returnType ? 'bytes' : (0, exports.bytesToHex)(value);
339
349
  }
340
- if (isBase58btc(value)) {
350
+ if ((0, exports.isBase58btc)(value)) {
341
351
  return returnType ? 'bytes' : (0, exports.bytesToHex)(base58btc.decode(value));
342
352
  }
343
353
  if ((0, isBoolean_1.default)(value)) {
@@ -500,7 +510,7 @@ function toUint8Array(v) {
500
510
  else if (isUint8Array(v)) {
501
511
  vb = new Uint8Array(v);
502
512
  }
503
- else if (isBase58btc(v)) {
513
+ else if ((0, exports.isBase58btc)(v)) {
504
514
  vb = new Uint8Array(base58btc.decode(v));
505
515
  }
506
516
  else if (typeof v === 'string') {
@@ -531,7 +541,7 @@ exports.toBase58 = toBase58;
531
541
  * Decode base58 string
532
542
  */
533
543
  function fromBase58(v) {
534
- if (isBase58btc(v) === false) {
544
+ if ((0, exports.isBase58btc)(v) === false) {
535
545
  throw new Error('fromBase58 expect strict base58 encoded string as input');
536
546
  }
537
547
  return Buffer.from(base58btc.decode(v));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ocap/util",
3
- "version": "1.18.25",
3
+ "version": "1.18.27",
4
4
  "description": "utils shared across multiple forge js libs, works in both node.js and browser",
5
5
  "keywords": [
6
6
  "arcblock",
@@ -66,5 +66,5 @@
66
66
  "bugs": {
67
67
  "url": "https://github.com/ArcBlock/asset-chain/issues"
68
68
  },
69
- "gitHead": "87830209c1f24e374c6b6577a9c08c6ead30a4be"
69
+ "gitHead": "f71e1836ecfed490799a2e5cc12f7450b22461a5"
70
70
  }