@xylabs/eth-address 2.9.2 → 2.10.0

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.
Files changed (59) hide show
  1. package/dist/EthAddress.d.mts +22 -0
  2. package/dist/{types/EthAddress.d.ts → EthAddress.d.ts} +5 -4
  3. package/dist/EthAddress.js +107 -0
  4. package/dist/EthAddress.js.map +1 -0
  5. package/dist/EthAddress.mjs +81 -0
  6. package/dist/EthAddress.mjs.map +1 -0
  7. package/dist/ellipsize.d.mts +3 -0
  8. package/dist/ellipsize.d.ts +3 -0
  9. package/dist/ellipsize.js +35 -0
  10. package/dist/ellipsize.js.map +1 -0
  11. package/dist/ellipsize.mjs +10 -0
  12. package/dist/ellipsize.mjs.map +1 -0
  13. package/dist/index.d.mts +4 -0
  14. package/dist/index.d.ts +4 -0
  15. package/dist/index.js +113 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/index.mjs +83 -0
  18. package/dist/index.mjs.map +1 -0
  19. package/dist/padHex.d.mts +3 -0
  20. package/dist/{types/padHex.d.ts → padHex.d.ts} +1 -1
  21. package/dist/padHex.js +42 -0
  22. package/dist/padHex.js.map +1 -0
  23. package/dist/padHex.mjs +17 -0
  24. package/dist/padHex.mjs.map +1 -0
  25. package/package.json +32 -18
  26. package/tsup.config.ts +14 -0
  27. package/dist/cjs/EthAddress.js +0 -60
  28. package/dist/cjs/EthAddress.js.map +0 -1
  29. package/dist/cjs/ellipsize.js +0 -10
  30. package/dist/cjs/ellipsize.js.map +0 -1
  31. package/dist/cjs/index.js +0 -7
  32. package/dist/cjs/index.js.map +0 -1
  33. package/dist/cjs/padHex.js +0 -17
  34. package/dist/cjs/padHex.js.map +0 -1
  35. package/dist/docs.json +0 -1086
  36. package/dist/esm/EthAddress.js +0 -56
  37. package/dist/esm/EthAddress.js.map +0 -1
  38. package/dist/esm/ellipsize.js +0 -6
  39. package/dist/esm/ellipsize.js.map +0 -1
  40. package/dist/esm/index.js +0 -4
  41. package/dist/esm/index.js.map +0 -1
  42. package/dist/esm/padHex.js +0 -14
  43. package/dist/esm/padHex.js.map +0 -1
  44. package/dist/types/EthAddress.d.ts.map +0 -1
  45. package/dist/types/ellipsize.d.ts +0 -2
  46. package/dist/types/ellipsize.d.ts.map +0 -1
  47. package/dist/types/index.d.ts +0 -4
  48. package/dist/types/index.d.ts.map +0 -1
  49. package/dist/types/padHex.d.ts.map +0 -1
  50. package/docs/assets/highlight.css +0 -50
  51. package/docs/assets/main.js +0 -58
  52. package/docs/assets/search.js +0 -1
  53. package/docs/assets/style.css +0 -1367
  54. package/docs/classes/EthAddress.html +0 -221
  55. package/docs/functions/ellipsize.html +0 -55
  56. package/docs/functions/isEthAddress.html +0 -56
  57. package/docs/functions/padHex.html +0 -55
  58. package/docs/index.html +0 -85
  59. package/docs/modules.html +0 -51
package/package.json CHANGED
@@ -14,28 +14,39 @@
14
14
  "packages/**/*"
15
15
  ],
16
16
  "description": "Base functionality used throughout XY Labs TypeScript/JavaScript libraries",
17
- "browser": "dist/esm/index.js",
18
- "main": "dist/cjs/index.js",
19
- "module": "dist/esm/index.js",
20
17
  "docs": "dist/docs.json",
21
- "types": "dist/types/index.d.ts",
18
+ "types": "dist/index.d.ts",
22
19
  "exports": {
23
20
  ".": {
24
- "node": {
25
- "import": "./dist/esm/index.js",
26
- "require": "./dist/cjs/index.js"
21
+ "require": {
22
+ "types": "./dist/index.d.ts",
23
+ "default": "./dist/index.js"
27
24
  },
28
- "browser": {
29
- "import": "./dist/esm/index.js",
30
- "require": "./dist/cjs/index.js"
31
- },
32
- "default": "./dist/esm/index.js"
25
+ "import": {
26
+ "types": "./dist/index.d.mts",
27
+ "default": "./dist/index.mjs"
28
+ }
33
29
  },
34
30
  "./dist/docs.json": {
35
31
  "default": "./dist/docs.json"
36
32
  },
33
+ "./cjs": {
34
+ "default": "./dist/index.js"
35
+ },
36
+ "./docs": {
37
+ "default": "./dist/docs.json"
38
+ },
39
+ "./esm": {
40
+ "default": "./dist/index.mjs"
41
+ },
37
42
  "./package.json": "./package.json"
38
43
  },
44
+ "main": "dist/index.js",
45
+ "module": "dist/index.mjs",
46
+ "scripts": {
47
+ "package-compile": "tsup && publint",
48
+ "package-recompile": "tsup && publint"
49
+ },
39
50
  "homepage": "https://xylabs.com",
40
51
  "keywords": [
41
52
  "xylabs",
@@ -44,13 +55,16 @@
44
55
  "esm"
45
56
  ],
46
57
  "dependencies": {
47
- "@xylabs/assert": "^2.9.2",
48
- "@xylabs/bignumber": "^2.9.2"
58
+ "@xylabs/assert": "~2.10.0",
59
+ "@xylabs/bignumber": "~2.10.0",
60
+ "tslib": "^2.6.2"
49
61
  },
50
62
  "devDependencies": {
51
- "@xylabs/eslint-config": "2.17.17",
52
- "@xylabs/ts-scripts-yarn3": "^2.17.17",
53
- "eslint": "^8.43.0"
63
+ "@xylabs/ts-scripts-yarn3": "^2.19.5",
64
+ "@xylabs/tsconfig": "^2.19.5",
65
+ "@xylabs/tsconfig-jest": "^2.19.5",
66
+ "publint": "^0.2.2",
67
+ "tsup": "^7.2.0"
54
68
  },
55
69
  "publishConfig": {
56
70
  "access": "public"
@@ -60,6 +74,6 @@
60
74
  "url": "https://github.com/xylabs/sdk-js.git"
61
75
  },
62
76
  "sideEffects": false,
63
- "version": "2.9.2",
77
+ "version": "2.10.0",
64
78
  "packageManager": "yarn@3.3.1"
65
79
  }
package/tsup.config.ts ADDED
@@ -0,0 +1,14 @@
1
+ import { defineConfig } from 'tsup'
2
+
3
+ // eslint-disable-next-line import/no-default-export
4
+ export default defineConfig({
5
+ bundle: true,
6
+ cjsInterop: true,
7
+ clean: true,
8
+ dts: true,
9
+ entry: ['src'],
10
+ format: ['cjs', 'esm'],
11
+ sourcemap: true,
12
+ splitting: false,
13
+ tsconfig: 'tsconfig.json',
14
+ })
@@ -1,60 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EthAddress = exports.isEthAddress = void 0;
4
- const assert_1 = require("@xylabs/assert");
5
- const bignumber_1 = require("@xylabs/bignumber");
6
- const ellipsize_1 = require("./ellipsize");
7
- const padHex_1 = require("./padHex");
8
- const isEthAddress = (obj) => (obj === null || obj === void 0 ? void 0 : obj.type) === EthAddress.type;
9
- exports.isEthAddress = isEthAddress;
10
- class EthAddress {
11
- constructor(address) {
12
- this.type = EthAddress.type;
13
- this.address = address;
14
- }
15
- static fromString(value, base = 16) {
16
- if (value) {
17
- const bn = new bignumber_1.BigNumber(value.startsWith('0x') ? value.substring(2) : value, base);
18
- return new EthAddress(bn);
19
- }
20
- }
21
- static parse(value, base) {
22
- if (typeof value === 'string') {
23
- return this.fromString(value, base);
24
- }
25
- }
26
- equals(address) {
27
- if (address) {
28
- let inAddress;
29
- if (typeof address === 'string') {
30
- inAddress = (0, assert_1.assertEx)(EthAddress.fromString(address), 'Bad Address');
31
- }
32
- else {
33
- inAddress = address;
34
- }
35
- return this.address.eq(inAddress.address);
36
- }
37
- return false;
38
- }
39
- toBigNumber() {
40
- return this.address;
41
- }
42
- toHex() {
43
- return (0, padHex_1.padHex)(this.address.toString(16), 20);
44
- }
45
- toJSON() {
46
- return `0x${this.toHex()}`;
47
- }
48
- toLowerCaseString() {
49
- return this.toString().toLowerCase();
50
- }
51
- toShortString(length = 2) {
52
- return `0x${(0, ellipsize_1.ellipsize)(this.toHex(), length)}`;
53
- }
54
- toString() {
55
- return `0x${this.toHex()}`;
56
- }
57
- }
58
- exports.EthAddress = EthAddress;
59
- EthAddress.type = 'EthAddress';
60
- //# sourceMappingURL=EthAddress.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EthAddress.js","sourceRoot":"","sources":["../../src/EthAddress.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AACzC,iDAA6C;AAE7C,2CAAuC;AACvC,qCAAiC;AAE1B,MAAM,YAAY,GAAG,CAAC,GAAqB,EAAE,EAAE,CAAC,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,MAAK,UAAU,CAAC,IAAI,CAAA;AAAvE,QAAA,YAAY,gBAA2D;AAEpF,MAAa,UAAU;IAOrB,YAAoB,OAAkB;QAJ/B,SAAI,GAAG,UAAU,CAAC,IAAI,CAAA;QAK3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAAc,EAAE,IAAI,GAAG,EAAE;QACzC,IAAI,KAAK,EAAE;YACT,MAAM,EAAE,GAAG,IAAI,qBAAS,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YACnF,OAAO,IAAI,UAAU,CAAC,EAAE,CAAC,CAAA;SAC1B;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAc,EAAE,IAAa;QACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;SACpC;IACH,CAAC;IAEM,MAAM,CAAC,OAAoC;QAChD,IAAI,OAAO,EAAE;YACX,IAAI,SAAqB,CAAA;YACzB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBAC/B,SAAS,GAAG,IAAA,iBAAQ,EAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAA;aACpE;iBAAM;gBACL,SAAS,GAAG,OAAO,CAAA;aACpB;YACD,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;SAC1C;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAEM,KAAK;QACV,OAAO,IAAA,eAAM,EAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;IAC9C,CAAC;IAEM,MAAM;QACX,OAAO,KAAK,IAAI,CAAC,KAAK,EAAE,EAAE,CAAA;IAC5B,CAAC;IAEM,iBAAiB;QACtB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAA;IACtC,CAAC;IAEM,aAAa,CAAC,MAAM,GAAG,CAAC;QAC7B,OAAO,KAAK,IAAA,qBAAS,EAAC,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,EAAE,CAAA;IAC/C,CAAC;IAEM,QAAQ;QACb,OAAO,KAAK,IAAI,CAAC,KAAK,EAAE,EAAE,CAAA;IAC5B,CAAC;;AA3DH,gCA4DC;AA3DQ,eAAI,GAAG,YAAY,AAAf,CAAe"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ellipsize = void 0;
4
- const ellipsize = (value, length = 2) => {
5
- const part1 = value.slice(0, length);
6
- const part2 = value.slice(value.length - length, value.length);
7
- return `${part1}...${part2}`;
8
- };
9
- exports.ellipsize = ellipsize;
10
- //# sourceMappingURL=ellipsize.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ellipsize.js","sourceRoot":"","sources":["../../src/ellipsize.ts"],"names":[],"mappings":";;;AAAO,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE;IACrD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAC9D,OAAO,GAAG,KAAK,MAAM,KAAK,EAAE,CAAA;AAC9B,CAAC,CAAA;AAJY,QAAA,SAAS,aAIrB"}
package/dist/cjs/index.js DELETED
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./ellipsize"), exports);
5
- tslib_1.__exportStar(require("./EthAddress"), exports);
6
- tslib_1.__exportStar(require("./padHex"), exports);
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,sDAA2B;AAC3B,uDAA4B;AAC5B,mDAAwB"}
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.padHex = void 0;
4
- const padHex = (hex, byteCount) => {
5
- let result = hex;
6
- if (hex.length % 2 !== 0) {
7
- result = `0${hex}`;
8
- }
9
- if (byteCount) {
10
- while (result.length / 2 < byteCount) {
11
- result = `00${result}`;
12
- }
13
- }
14
- return result;
15
- };
16
- exports.padHex = padHex;
17
- //# sourceMappingURL=padHex.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"padHex.js","sourceRoot":"","sources":["../../src/padHex.ts"],"names":[],"mappings":";;;AAAA,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,SAAkB,EAAE,EAAE;IACjD,IAAI,MAAM,GAAG,GAAG,CAAA;IAChB,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;QACxB,MAAM,GAAG,IAAI,GAAG,EAAE,CAAA;KACnB;IACD,IAAI,SAAS,EAAE;QACb,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,SAAS,EAAE;YACpC,MAAM,GAAG,KAAK,MAAM,EAAE,CAAA;SACvB;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAEQ,wBAAM"}