Skip to content

Commit ac2ae6e

Browse files
OttoAllmendingerllm-git
andcommitted
feat(utxo-bin): update module resolution to NodeNext
Update tsconfig to use NodeNext module resolution to support ESM packages, and update import styles across the codebase from CommonJS to ESM style imports to maintain compatibility. BTC-2170 Co-authored-by: llm-git <llm-git@ttll.de>
1 parent a32b05a commit ac2ae6e

File tree

10 files changed

+110
-19
lines changed

10 files changed

+110
-19
lines changed

modules/utxo-bin/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
"bs58check": "^2.1.2",
4040
"cashaddress": "^1.1.0",
4141
"chalk": "4",
42-
"clipboardy-cjs": "^3.0.0",
42+
"clipboardy": "^4.0.0",
4343
"yargs": "^17.3.1"
4444
},
4545
"devDependencies": {

modules/utxo-bin/src/args/parseString.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
import * as process from 'process';
22
import * as fs from 'fs';
33

4-
import clipboardy from 'clipboardy-cjs';
5-
64
type Format = 'hex' | 'base64';
75
export function stringToBuffer(data: string, format: Format | Format[]): Buffer {
86
if (typeof format !== 'string') {
@@ -113,6 +111,7 @@ export async function argToString(argv: ReadStringOptions, input?: string): Prom
113111
if (input) {
114112
throw new Error(`conflicting arguments`);
115113
}
114+
const { default: clipboardy } = await import('clipboardy');
116115
input = await clipboardy.read();
117116
}
118117

modules/utxo-bin/src/args/walletKeys.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import * as assert from 'assert';
1+
import assert from 'assert';
22

33
import * as utxolib from '@bitgo/utxo-lib';
44

modules/utxo-bin/src/format.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { Chalk, Instance } from 'chalk';
2-
import * as archy from 'archy';
2+
import archy from 'archy';
33

44
import { ParserNode, ParserNodeValue } from './Parser';
55

modules/utxo-bin/src/generateAddress.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import * as assert from 'assert';
1+
import assert from 'assert';
22

33
import * as utxolib from '@bitgo/utxo-lib';
44
import { Descriptor } from '@bitgo/wasm-miniscript';

modules/utxo-bin/test/cmdPsbt.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import * as assert from 'assert';
22
import * as fs from 'fs/promises';
33

4-
import * as yargs from 'yargs';
4+
import yargs from 'yargs';
55
import * as utxolib from '@bitgo/utxo-lib';
66
import { Descriptor } from '@bitgo/wasm-miniscript';
77

modules/utxo-bin/test/parseAddress.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import * as assert from 'assert';
1+
import assert from 'assert';
22

3-
import * as yargs from 'yargs';
3+
import yargs from 'yargs';
44
import * as utxolib from '@bitgo/utxo-lib';
55

66
import { formatTreeNoColor, getFixtureString } from './fixtures';

modules/utxo-bin/test/parseTransaction.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import * as assert from 'assert';
1+
import assert from 'assert';
22

3-
import * as yargs from 'yargs';
3+
import yargs from 'yargs';
44
import * as mocha from 'mocha';
55
import * as utxolib from '@bitgo/utxo-lib';
66

modules/utxo-bin/tsconfig.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
{
22
"extends": "../../tsconfig.json",
33
"compilerOptions": {
4+
"module": "NodeNext",
5+
"moduleResolution": "nodenext",
46
"outDir": "./dist",
57
"rootDir": ".",
68
"typeRoots": ["./node_modules/@types", "../../node_modules/@types"],

yarn.lock

Lines changed: 98 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8497,14 +8497,14 @@ cli-width@^3.0.0:
84978497
resolved "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6"
84988498
integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==
84998499

8500-
clipboardy-cjs@^3.0.0:
8501-
version "3.0.0"
8502-
resolved "https://registry.npmjs.org/clipboardy-cjs/-/clipboardy-cjs-3.0.0.tgz#08c164c2937eda76563b95858be955439a7fa766"
8503-
integrity sha512-smpX28a6nKG3Q1uHmziRkWhYn21IAdhqlLGYFmWndhk5O/mjsYzNHXzZz5OPW+qTWzTnPuqLoMBEqdwtA36hdw==
8500+
clipboardy@^4.0.0:
8501+
version "4.0.0"
8502+
resolved "https://registry.npmjs.org/clipboardy/-/clipboardy-4.0.0.tgz#e73ced93a76d19dd379ebf1f297565426dffdca1"
8503+
integrity sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==
85048504
dependencies:
8505-
arch "^2.2.0"
8506-
execa "^5.1.1"
8507-
is-wsl "^2.2.0"
8505+
execa "^8.0.1"
8506+
is-wsl "^3.1.0"
8507+
is64bit "^2.0.0"
85088508

85098509
cliui@^6.0.0:
85108510
version "6.0.0"
@@ -11076,6 +11076,21 @@ execa@^5.0.0, execa@^5.1.1:
1107611076
signal-exit "^3.0.3"
1107711077
strip-final-newline "^2.0.0"
1107811078

11079+
execa@^8.0.1:
11080+
version "8.0.1"
11081+
resolved "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c"
11082+
integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==
11083+
dependencies:
11084+
cross-spawn "^7.0.3"
11085+
get-stream "^8.0.1"
11086+
human-signals "^5.0.0"
11087+
is-stream "^3.0.0"
11088+
merge-stream "^2.0.0"
11089+
npm-run-path "^5.1.0"
11090+
onetime "^6.0.0"
11091+
signal-exit "^4.1.0"
11092+
strip-final-newline "^3.0.0"
11093+
1107911094
executable@^4.1.1:
1108011095
version "4.1.1"
1108111096
resolved "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c"
@@ -11900,6 +11915,11 @@ get-stream@^6.0.0:
1190011915
resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
1190111916
integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
1190211917

11918+
get-stream@^8.0.1:
11919+
version "8.0.1"
11920+
resolved "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz#def9dfd71742cd7754a7761ed43749a27d02eca2"
11921+
integrity sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==
11922+
1190311923
get-symbol-description@^1.1.0:
1190411924
version "1.1.0"
1190511925
resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz#7bdd54e0befe8ffc9f3b4e203220d9f1e881b6ee"
@@ -12708,6 +12728,11 @@ human-signals@^2.1.0:
1270812728
resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
1270912729
integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
1271012730

12731+
human-signals@^5.0.0:
12732+
version "5.0.0"
12733+
resolved "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz#42665a284f9ae0dade3ba41ebc37eb4b852f3a28"
12734+
integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==
12735+
1271112736
humanize-duration@^3.24.0:
1271212737
version "3.32.1"
1271312738
resolved "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.32.1.tgz#922beff5da36fb1cee3de26ada24c592b0fe519b"
@@ -13104,6 +13129,11 @@ is-docker@^2.0.0, is-docker@^2.1.1:
1310413129
resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa"
1310513130
integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==
1310613131

13132+
is-docker@^3.0.0:
13133+
version "3.0.0"
13134+
resolved "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200"
13135+
integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==
13136+
1310713137
is-extglob@^2.1.1:
1310813138
version "2.1.1"
1310913139
resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
@@ -13153,6 +13183,13 @@ is-hex-prefixed@1.0.0:
1315313183
resolved "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554"
1315413184
integrity sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==
1315513185

13186+
is-inside-container@^1.0.0:
13187+
version "1.0.0"
13188+
resolved "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz#e81fba699662eb31dbdaf26766a61d4814717ea4"
13189+
integrity sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==
13190+
dependencies:
13191+
is-docker "^3.0.0"
13192+
1315613193
is-installed-globally@~0.4.0:
1315713194
version "0.4.0"
1315813195
resolved "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520"
@@ -13326,6 +13363,11 @@ is-stream@^2.0.0:
1332613363
resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
1332713364
integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
1332813365

13366+
is-stream@^3.0.0:
13367+
version "3.0.0"
13368+
resolved "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac"
13369+
integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==
13370+
1332913371
is-string@^1.0.7, is-string@^1.1.1:
1333013372
version "1.1.1"
1333113373
resolved "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz#92ea3f3d5c5b6e039ca8677e5ac8d07ea773cbb9"
@@ -13406,6 +13448,20 @@ is-wsl@^2.2.0:
1340613448
dependencies:
1340713449
is-docker "^2.0.0"
1340813450

13451+
is-wsl@^3.1.0:
13452+
version "3.1.0"
13453+
resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz#e1c657e39c10090afcbedec61720f6b924c3cbd2"
13454+
integrity sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==
13455+
dependencies:
13456+
is-inside-container "^1.0.0"
13457+
13458+
is64bit@^2.0.0:
13459+
version "2.0.0"
13460+
resolved "https://registry.npmjs.org/is64bit/-/is64bit-2.0.0.tgz#198c627cbcb198bbec402251f88e5e1a51236c07"
13461+
integrity sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==
13462+
dependencies:
13463+
system-architecture "^0.1.0"
13464+
1340913465
isarray@2.0.1:
1341013466
version "2.0.1"
1341113467
resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e"
@@ -14865,6 +14921,11 @@ mimic-fn@^2.1.0:
1486514921
resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
1486614922
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
1486714923

14924+
mimic-fn@^4.0.0:
14925+
version "4.0.0"
14926+
resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc"
14927+
integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==
14928+
1486814929
mimic-response@^1.0.0, mimic-response@^1.0.1:
1486914930
version "1.0.1"
1487014931
resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
@@ -15742,6 +15803,13 @@ npm-run-path@^4.0.0, npm-run-path@^4.0.1:
1574215803
dependencies:
1574315804
path-key "^3.0.0"
1574415805

15806+
npm-run-path@^5.1.0:
15807+
version "5.3.0"
15808+
resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz#e23353d0ebb9317f174e93417e4a4d82d0249e9f"
15809+
integrity sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==
15810+
dependencies:
15811+
path-key "^4.0.0"
15812+
1574515813
npmlog@^6.0.0, npmlog@^6.0.2:
1574615814
version "6.0.2"
1574715815
resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830"
@@ -15988,6 +16056,13 @@ onetime@^5.1.0, onetime@^5.1.2:
1598816056
dependencies:
1598916057
mimic-fn "^2.1.0"
1599016058

16059+
onetime@^6.0.0:
16060+
version "6.0.0"
16061+
resolved "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4"
16062+
integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==
16063+
dependencies:
16064+
mimic-fn "^4.0.0"
16065+
1599116066
open@^8.0.9, open@^8.4.0:
1599216067
version "8.4.2"
1599316068
resolved "https://registry.npmjs.org/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9"
@@ -16493,6 +16568,11 @@ path-key@^3.0.0, path-key@^3.1.0:
1649316568
resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
1649416569
integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
1649516570

16571+
path-key@^4.0.0:
16572+
version "4.0.0"
16573+
resolved "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18"
16574+
integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==
16575+
1649616576
path-parse@^1.0.7:
1649716577
version "1.0.7"
1649816578
resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
@@ -18688,7 +18768,7 @@ signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7:
1868818768
resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
1868918769
integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
1869018770

18691-
signal-exit@^4.0.1:
18771+
signal-exit@^4.0.1, signal-exit@^4.1.0:
1869218772
version "4.1.0"
1869318773
resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04"
1869418774
integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==
@@ -19357,6 +19437,11 @@ strip-final-newline@^2.0.0:
1935719437
resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
1935819438
integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
1935919439

19440+
strip-final-newline@^3.0.0:
19441+
version "3.0.0"
19442+
resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd"
19443+
integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==
19444+
1936019445
strip-hex-prefix@1.0.0, strip-hex-prefix@^1.0.0:
1936119446
version "1.0.0"
1936219447
resolved "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f"
@@ -19554,6 +19639,11 @@ syntax-error@^1.1.1:
1955419639
dependencies:
1955519640
acorn-node "^1.2.0"
1955619641

19642+
system-architecture@^0.1.0:
19643+
version "0.1.0"
19644+
resolved "https://registry.npmjs.org/system-architecture/-/system-architecture-0.1.0.tgz#71012b3ac141427d97c67c56bc7921af6bff122d"
19645+
integrity sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==
19646+
1955719647
table@^6.0.9:
1955819648
version "6.9.0"
1955919649
resolved "https://registry.npmjs.org/table/-/table-6.9.0.tgz#50040afa6264141c7566b3b81d4d82c47a8668f5"

0 commit comments

Comments
 (0)