@twin.org/nft-cli 0.0.1-next.27 → 0.0.1-next.29
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/cjs/index.cjs +16 -45
- package/dist/esm/index.mjs +16 -45
- package/dist/locales/en.json +2 -25
- package/dist/types/models/nftConnectorTypes.d.ts +0 -4
- package/docs/changelog.md +28 -4
- package/docs/examples.md +4 -4
- package/docs/reference/functions/actionCommandNftBurn.md +1 -1
- package/docs/reference/functions/actionCommandNftTransfer.md +1 -1
- package/docs/reference/functions/setupNftConnector.md +1 -1
- package/docs/reference/variables/NftConnectorTypes.md +0 -6
- package/package.json +2 -3
package/dist/cjs/index.cjs
CHANGED
|
@@ -7,7 +7,6 @@ var cryptoCli = require('@twin.org/crypto-cli');
|
|
|
7
7
|
var walletCli = require('@twin.org/wallet-cli');
|
|
8
8
|
var core = require('@twin.org/core');
|
|
9
9
|
var nftConnectorIota = require('@twin.org/nft-connector-iota');
|
|
10
|
-
var nftConnectorIotaStardust = require('@twin.org/nft-connector-iota-stardust');
|
|
11
10
|
var vaultModels = require('@twin.org/vault-models');
|
|
12
11
|
var walletModels = require('@twin.org/wallet-models');
|
|
13
12
|
var commander = require('commander');
|
|
@@ -26,11 +25,7 @@ const NftConnectorTypes = {
|
|
|
26
25
|
/**
|
|
27
26
|
* IOTA.
|
|
28
27
|
*/
|
|
29
|
-
Iota: "iota"
|
|
30
|
-
/**
|
|
31
|
-
* IOTA Stardust.
|
|
32
|
-
*/
|
|
33
|
-
IotaStardust: "iota-stardust"
|
|
28
|
+
Iota: "iota"
|
|
34
29
|
};
|
|
35
30
|
|
|
36
31
|
// Copyright 2024 IOTA Stiftung.
|
|
@@ -61,32 +56,16 @@ function setupVault() {
|
|
|
61
56
|
*/
|
|
62
57
|
function setupNftConnector(options, connector) {
|
|
63
58
|
connector ??= NftConnectorTypes.Iota;
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
instance = new nftConnectorIotaStardust.IotaStardustNftConnector({
|
|
79
|
-
config: {
|
|
80
|
-
clientOptions: {
|
|
81
|
-
nodes: [options.nodeEndpoint],
|
|
82
|
-
localPow: true
|
|
83
|
-
},
|
|
84
|
-
vaultSeedId: options.vaultSeedId,
|
|
85
|
-
walletAddressIndex: options.walletAddressIndex ?? 0
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
return instance;
|
|
59
|
+
return new nftConnectorIota.IotaNftConnector({
|
|
60
|
+
config: {
|
|
61
|
+
clientOptions: {
|
|
62
|
+
url: options.nodeEndpoint
|
|
63
|
+
},
|
|
64
|
+
network: options.network ?? "",
|
|
65
|
+
vaultSeedId: options.vaultSeedId,
|
|
66
|
+
walletAddressIndex: options.walletAddressIndex ?? 0
|
|
67
|
+
}
|
|
68
|
+
});
|
|
90
69
|
}
|
|
91
70
|
|
|
92
71
|
// Copyright 2024 IOTA Stiftung.
|
|
@@ -153,9 +132,7 @@ async function actionCommandNftBurn(opts) {
|
|
|
153
132
|
cliCore.CLIDisplay.spinnerStart();
|
|
154
133
|
await nftConnector.burn(localIdentity, id);
|
|
155
134
|
cliCore.CLIDisplay.spinnerStop();
|
|
156
|
-
cliCore.CLIDisplay.value(core.I18n.formatMessage("commands.common.labels.explore"),
|
|
157
|
-
? `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${nftConnectorIota.IotaNftUtils.nftIdToObjectId(id)}?network=${network}`
|
|
158
|
-
: `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/addr/${nftConnectorIotaStardust.IotaStardustNftUtils.nftIdToAddress(id)}`);
|
|
135
|
+
cliCore.CLIDisplay.value(core.I18n.formatMessage("commands.common.labels.explore"), `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${nftConnectorIota.IotaNftUtils.nftIdToObjectId(id)}?network=${network}`);
|
|
159
136
|
cliCore.CLIDisplay.break();
|
|
160
137
|
cliCore.CLIDisplay.done();
|
|
161
138
|
}
|
|
@@ -285,9 +262,7 @@ async function actionCommandNftMint(opts) {
|
|
|
285
262
|
if (core.Is.stringValue(opts?.env)) {
|
|
286
263
|
await cliCore.CLIUtils.writeEnvFile(opts.env, [`NFT_ID="${nftId}"`], opts.mergeEnv);
|
|
287
264
|
}
|
|
288
|
-
cliCore.CLIDisplay.value(core.I18n.formatMessage("commands.common.labels.explore"),
|
|
289
|
-
? `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${nftConnectorIota.IotaNftUtils.nftIdToObjectId(nftId)}?network=${network}`
|
|
290
|
-
: `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/addr/${nftConnectorIotaStardust.IotaStardustNftUtils.nftIdToAddress(nftId)}`);
|
|
265
|
+
cliCore.CLIDisplay.value(core.I18n.formatMessage("commands.common.labels.explore"), `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${nftConnectorIota.IotaNftUtils.nftIdToObjectId(nftId)}?network=${network}`);
|
|
291
266
|
cliCore.CLIDisplay.break();
|
|
292
267
|
cliCore.CLIDisplay.done();
|
|
293
268
|
}
|
|
@@ -361,9 +336,7 @@ async function actionCommandNftResolve(opts) {
|
|
|
361
336
|
if (core.Is.stringValue(opts?.json)) {
|
|
362
337
|
await cliCore.CLIUtils.writeJsonFile(opts.json, nft, opts.mergeJson);
|
|
363
338
|
}
|
|
364
|
-
cliCore.CLIDisplay.value(core.I18n.formatMessage("commands.common.labels.explore"),
|
|
365
|
-
? `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${nftConnectorIota.IotaNftUtils.nftIdToObjectId(id)}?network=${network}`
|
|
366
|
-
: `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/addr/${nftConnectorIotaStardust.IotaStardustNftUtils.nftIdToAddress(id)}`);
|
|
339
|
+
cliCore.CLIDisplay.value(core.I18n.formatMessage("commands.common.labels.explore"), `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${nftConnectorIota.IotaNftUtils.nftIdToObjectId(id)}?network=${network}`);
|
|
367
340
|
cliCore.CLIDisplay.break();
|
|
368
341
|
cliCore.CLIDisplay.done();
|
|
369
342
|
}
|
|
@@ -442,9 +415,7 @@ async function actionCommandNftTransfer(opts) {
|
|
|
442
415
|
cliCore.CLIDisplay.spinnerStart();
|
|
443
416
|
await nftConnector.transfer(localIdentity, id, recipientIdentity, recipientAddress);
|
|
444
417
|
cliCore.CLIDisplay.spinnerStop();
|
|
445
|
-
cliCore.CLIDisplay.value(core.I18n.formatMessage("commands.common.labels.explore"),
|
|
446
|
-
? `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${nftConnectorIota.IotaNftUtils.nftIdToObjectId(id)}?network=${network}`
|
|
447
|
-
: `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/addr/${nftConnectorIotaStardust.IotaStardustNftUtils.nftIdToAddress(id)}`);
|
|
418
|
+
cliCore.CLIDisplay.value(core.I18n.formatMessage("commands.common.labels.explore"), `${core.StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${nftConnectorIota.IotaNftUtils.nftIdToObjectId(id)}?network=${network}`);
|
|
448
419
|
cliCore.CLIDisplay.break();
|
|
449
420
|
cliCore.CLIDisplay.done();
|
|
450
421
|
}
|
|
@@ -467,7 +438,7 @@ class CLI extends cliCore.CLIBase {
|
|
|
467
438
|
return this.execute({
|
|
468
439
|
title: "TWIN NFT",
|
|
469
440
|
appName: "twin-nft",
|
|
470
|
-
version: "0.0.1-next.
|
|
441
|
+
version: "0.0.1-next.29", // x-release-please-version
|
|
471
442
|
icon: "🌍",
|
|
472
443
|
supportsEnvFiles: true,
|
|
473
444
|
overrideOutputWidth: options?.overrideOutputWidth
|
package/dist/esm/index.mjs
CHANGED
|
@@ -5,7 +5,6 @@ import { buildCommandMnemonic, buildCommandAddress } from '@twin.org/crypto-cli'
|
|
|
5
5
|
import { setupWalletConnector, buildCommandFaucet } from '@twin.org/wallet-cli';
|
|
6
6
|
import { I18n, Is, Converter, StringHelper } from '@twin.org/core';
|
|
7
7
|
import { IotaNftConnector, IotaNftUtils } from '@twin.org/nft-connector-iota';
|
|
8
|
-
import { IotaStardustNftConnector, IotaStardustNftUtils } from '@twin.org/nft-connector-iota-stardust';
|
|
9
8
|
import { VaultConnectorFactory } from '@twin.org/vault-models';
|
|
10
9
|
import { WalletConnectorFactory } from '@twin.org/wallet-models';
|
|
11
10
|
import { Command, Option } from 'commander';
|
|
@@ -23,11 +22,7 @@ const NftConnectorTypes = {
|
|
|
23
22
|
/**
|
|
24
23
|
* IOTA.
|
|
25
24
|
*/
|
|
26
|
-
Iota: "iota"
|
|
27
|
-
/**
|
|
28
|
-
* IOTA Stardust.
|
|
29
|
-
*/
|
|
30
|
-
IotaStardust: "iota-stardust"
|
|
25
|
+
Iota: "iota"
|
|
31
26
|
};
|
|
32
27
|
|
|
33
28
|
// Copyright 2024 IOTA Stiftung.
|
|
@@ -58,32 +53,16 @@ function setupVault() {
|
|
|
58
53
|
*/
|
|
59
54
|
function setupNftConnector(options, connector) {
|
|
60
55
|
connector ??= NftConnectorTypes.Iota;
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
instance = new IotaStardustNftConnector({
|
|
76
|
-
config: {
|
|
77
|
-
clientOptions: {
|
|
78
|
-
nodes: [options.nodeEndpoint],
|
|
79
|
-
localPow: true
|
|
80
|
-
},
|
|
81
|
-
vaultSeedId: options.vaultSeedId,
|
|
82
|
-
walletAddressIndex: options.walletAddressIndex ?? 0
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
return instance;
|
|
56
|
+
return new IotaNftConnector({
|
|
57
|
+
config: {
|
|
58
|
+
clientOptions: {
|
|
59
|
+
url: options.nodeEndpoint
|
|
60
|
+
},
|
|
61
|
+
network: options.network ?? "",
|
|
62
|
+
vaultSeedId: options.vaultSeedId,
|
|
63
|
+
walletAddressIndex: options.walletAddressIndex ?? 0
|
|
64
|
+
}
|
|
65
|
+
});
|
|
87
66
|
}
|
|
88
67
|
|
|
89
68
|
// Copyright 2024 IOTA Stiftung.
|
|
@@ -150,9 +129,7 @@ async function actionCommandNftBurn(opts) {
|
|
|
150
129
|
CLIDisplay.spinnerStart();
|
|
151
130
|
await nftConnector.burn(localIdentity, id);
|
|
152
131
|
CLIDisplay.spinnerStop();
|
|
153
|
-
CLIDisplay.value(I18n.formatMessage("commands.common.labels.explore"),
|
|
154
|
-
? `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${IotaNftUtils.nftIdToObjectId(id)}?network=${network}`
|
|
155
|
-
: `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/addr/${IotaStardustNftUtils.nftIdToAddress(id)}`);
|
|
132
|
+
CLIDisplay.value(I18n.formatMessage("commands.common.labels.explore"), `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${IotaNftUtils.nftIdToObjectId(id)}?network=${network}`);
|
|
156
133
|
CLIDisplay.break();
|
|
157
134
|
CLIDisplay.done();
|
|
158
135
|
}
|
|
@@ -282,9 +259,7 @@ async function actionCommandNftMint(opts) {
|
|
|
282
259
|
if (Is.stringValue(opts?.env)) {
|
|
283
260
|
await CLIUtils.writeEnvFile(opts.env, [`NFT_ID="${nftId}"`], opts.mergeEnv);
|
|
284
261
|
}
|
|
285
|
-
CLIDisplay.value(I18n.formatMessage("commands.common.labels.explore"),
|
|
286
|
-
? `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${IotaNftUtils.nftIdToObjectId(nftId)}?network=${network}`
|
|
287
|
-
: `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/addr/${IotaStardustNftUtils.nftIdToAddress(nftId)}`);
|
|
262
|
+
CLIDisplay.value(I18n.formatMessage("commands.common.labels.explore"), `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${IotaNftUtils.nftIdToObjectId(nftId)}?network=${network}`);
|
|
288
263
|
CLIDisplay.break();
|
|
289
264
|
CLIDisplay.done();
|
|
290
265
|
}
|
|
@@ -358,9 +333,7 @@ async function actionCommandNftResolve(opts) {
|
|
|
358
333
|
if (Is.stringValue(opts?.json)) {
|
|
359
334
|
await CLIUtils.writeJsonFile(opts.json, nft, opts.mergeJson);
|
|
360
335
|
}
|
|
361
|
-
CLIDisplay.value(I18n.formatMessage("commands.common.labels.explore"),
|
|
362
|
-
? `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${IotaNftUtils.nftIdToObjectId(id)}?network=${network}`
|
|
363
|
-
: `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/addr/${IotaStardustNftUtils.nftIdToAddress(id)}`);
|
|
336
|
+
CLIDisplay.value(I18n.formatMessage("commands.common.labels.explore"), `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${IotaNftUtils.nftIdToObjectId(id)}?network=${network}`);
|
|
364
337
|
CLIDisplay.break();
|
|
365
338
|
CLIDisplay.done();
|
|
366
339
|
}
|
|
@@ -439,9 +412,7 @@ async function actionCommandNftTransfer(opts) {
|
|
|
439
412
|
CLIDisplay.spinnerStart();
|
|
440
413
|
await nftConnector.transfer(localIdentity, id, recipientIdentity, recipientAddress);
|
|
441
414
|
CLIDisplay.spinnerStop();
|
|
442
|
-
CLIDisplay.value(I18n.formatMessage("commands.common.labels.explore"),
|
|
443
|
-
? `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${IotaNftUtils.nftIdToObjectId(id)}?network=${network}`
|
|
444
|
-
: `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/addr/${IotaStardustNftUtils.nftIdToAddress(id)}`);
|
|
415
|
+
CLIDisplay.value(I18n.formatMessage("commands.common.labels.explore"), `${StringHelper.trimTrailingSlashes(explorerEndpoint)}/object/${IotaNftUtils.nftIdToObjectId(id)}?network=${network}`);
|
|
445
416
|
CLIDisplay.break();
|
|
446
417
|
CLIDisplay.done();
|
|
447
418
|
}
|
|
@@ -464,7 +435,7 @@ class CLI extends CLIBase {
|
|
|
464
435
|
return this.execute({
|
|
465
436
|
title: "TWIN NFT",
|
|
466
437
|
appName: "twin-nft",
|
|
467
|
-
version: "0.0.1-next.
|
|
438
|
+
version: "0.0.1-next.29", // x-release-please-version
|
|
468
439
|
icon: "🌍",
|
|
469
440
|
supportsEnvFiles: true,
|
|
470
441
|
overrideOutputWidth: options?.overrideOutputWidth
|
package/dist/locales/en.json
CHANGED
|
@@ -208,7 +208,8 @@
|
|
|
208
208
|
"insufficientFunds": "There were insufficient funds to complete the operation",
|
|
209
209
|
"packageNotFoundOnNetwork": "The package \"{packageId}\" was not found on the network",
|
|
210
210
|
"packageObjectError": "Failed to fetch the package object \"{packageId}\"",
|
|
211
|
-
"
|
|
211
|
+
"valueTransactionFailed": "The value transaction failed",
|
|
212
|
+
"transactionFailed": "The transaction failed",
|
|
212
213
|
"addressNotFound": "The address is missing could not be found from the seed \"{address}\""
|
|
213
214
|
},
|
|
214
215
|
"vaultConnectorHelper": {
|
|
@@ -235,21 +236,6 @@
|
|
|
235
236
|
"createFailed": "Failed to create JWS",
|
|
236
237
|
"verifyFailed": "Failed to verify JWS"
|
|
237
238
|
},
|
|
238
|
-
"iotaStardustNftConnector": {
|
|
239
|
-
"inclusionFailed": "The transaction generated for the NFT was not included in a reasonable amount of time",
|
|
240
|
-
"mintingFailed": "Minting the NFT failed",
|
|
241
|
-
"resolvingFailed": "Resolving the NFT failed",
|
|
242
|
-
"burningFailed": "Burning the NFT failed",
|
|
243
|
-
"transferFailed": "Transferring the NFT failed",
|
|
244
|
-
"updateFailed": "Updating the NFT failed",
|
|
245
|
-
"namespaceMismatch": "The namespace in the urn \"{id}\" does not match the namespace of the IOTA NFT connector \"{namespace}\"",
|
|
246
|
-
"insufficientFunds": "There were insufficient funds to complete the operation",
|
|
247
|
-
"walletConnectorMissing": "The wallet connector must be available to perform this operation"
|
|
248
|
-
},
|
|
249
|
-
"iotaStardust": {
|
|
250
|
-
"inclusionFailed": "The transaction generated was not included in a reasonable amount of time",
|
|
251
|
-
"insufficientFunds": "There were insufficient funds to complete the operation"
|
|
252
|
-
},
|
|
253
239
|
"entityStorageVaultConnector": {
|
|
254
240
|
"keyAlreadyExists": "The key \"{existingId}\" already exists in the vault",
|
|
255
241
|
"keyNotFound": "The key \"{notFoundId}\" was not found in the vault",
|
|
@@ -262,15 +248,6 @@
|
|
|
262
248
|
},
|
|
263
249
|
"iotaFaucetConnector": {
|
|
264
250
|
"fundingFailed": "Fund the address from faucet failed"
|
|
265
|
-
},
|
|
266
|
-
"iotaStardustWalletConnector": {
|
|
267
|
-
"transferFailed": "The wallet transfer failed.",
|
|
268
|
-
"inclusionFailed": "The transaction generated was not included in a reasonable amount of time",
|
|
269
|
-
"insufficientFunds": "There were insufficient funds to complete the operation"
|
|
270
|
-
},
|
|
271
|
-
"iotaStardustFaucetConnector": {
|
|
272
|
-
"fundingFailed": "Fund the address from faucet failed",
|
|
273
|
-
"insufficientFunds": "There were insufficient funds to complete the operation"
|
|
274
251
|
}
|
|
275
252
|
},
|
|
276
253
|
"errorNames": {
|
package/docs/changelog.md
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
# @twin.org/nft-cli - Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.1-next.29](https://github.com/twinfoundation/nft/compare/nft-cli-v0.0.1-next.28...nft-cli-v0.0.1-next.29) (2025-05-21)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* update dlt packages ([12c4966](https://github.com/twinfoundation/nft/commit/12c4966bceb926b7cdcf1449165bee09187a426c))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Dependencies
|
|
12
|
+
|
|
13
|
+
* The following workspace dependencies were updated
|
|
14
|
+
* dependencies
|
|
15
|
+
* @twin.org/nft-connector-iota bumped from 0.0.1-next.28 to 0.0.1-next.29
|
|
16
|
+
|
|
17
|
+
## [0.0.1-next.28](https://github.com/twinfoundation/nft/compare/nft-cli-v0.0.1-next.27...nft-cli-v0.0.1-next.28) (2025-05-06)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
* iota rebased release ([8d05d1f](https://github.com/twinfoundation/nft/commit/8d05d1f58c1aacac983c100697ab40a314ad34ea))
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Dependencies
|
|
26
|
+
|
|
27
|
+
* The following workspace dependencies were updated
|
|
28
|
+
* dependencies
|
|
29
|
+
* @twin.org/nft-connector-iota bumped from 0.0.1-next.27 to 0.0.1-next.28
|
|
30
|
+
|
|
3
31
|
## [0.0.1-next.27](https://github.com/twinfoundation/nft/compare/nft-cli-v0.0.1-next.26...nft-cli-v0.0.1-next.27) (2025-04-24)
|
|
4
32
|
|
|
5
33
|
|
|
@@ -13,7 +41,6 @@
|
|
|
13
41
|
* The following workspace dependencies were updated
|
|
14
42
|
* dependencies
|
|
15
43
|
* @twin.org/nft-connector-iota bumped from 0.0.1-next.26 to 0.0.1-next.27
|
|
16
|
-
* @twin.org/nft-connector-iota-stardust bumped from 0.0.1-next.26 to 0.0.1-next.27
|
|
17
44
|
|
|
18
45
|
## [0.0.1-next.26](https://github.com/twinfoundation/nft/compare/nft-cli-v0.0.1-next.25...nft-cli-v0.0.1-next.26) (2025-04-17)
|
|
19
46
|
|
|
@@ -28,7 +55,6 @@
|
|
|
28
55
|
* The following workspace dependencies were updated
|
|
29
56
|
* dependencies
|
|
30
57
|
* @twin.org/nft-connector-iota bumped from 0.0.1-next.25 to 0.0.1-next.26
|
|
31
|
-
* @twin.org/nft-connector-iota-stardust bumped from 0.0.1-next.25 to 0.0.1-next.26
|
|
32
58
|
|
|
33
59
|
## [0.0.1-next.25](https://github.com/twinfoundation/nft/compare/nft-cli-v0.0.1-next.24...nft-cli-v0.0.1-next.25) (2025-04-17)
|
|
34
60
|
|
|
@@ -43,7 +69,6 @@
|
|
|
43
69
|
* The following workspace dependencies were updated
|
|
44
70
|
* dependencies
|
|
45
71
|
* @twin.org/nft-connector-iota bumped from 0.0.1-next.24 to 0.0.1-next.25
|
|
46
|
-
* @twin.org/nft-connector-iota-stardust bumped from 0.0.1-next.24 to 0.0.1-next.25
|
|
47
72
|
|
|
48
73
|
## [0.0.1-next.24](https://github.com/twinfoundation/nft/compare/nft-cli-v0.0.1-next.23...nft-cli-v0.0.1-next.24) (2025-03-28)
|
|
49
74
|
|
|
@@ -58,7 +83,6 @@
|
|
|
58
83
|
* The following workspace dependencies were updated
|
|
59
84
|
* dependencies
|
|
60
85
|
* @twin.org/nft-connector-iota bumped from 0.0.1-next.23 to 0.0.1-next.24
|
|
61
|
-
* @twin.org/nft-connector-iota-stardust bumped from 0.0.1-next.23 to 0.0.1-next.24
|
|
62
86
|
|
|
63
87
|
## v0.0.1-next.23
|
|
64
88
|
|
package/docs/examples.md
CHANGED
|
@@ -84,12 +84,12 @@ twin-nft mnemonic --env wallet.env
|
|
|
84
84
|
twin-nft address --load-env wallet.env --hrp tst --seed !SEED --count 4 --env wallet.env --merge-env
|
|
85
85
|
```
|
|
86
86
|
|
|
87
|
-
To run this on the IOTA
|
|
87
|
+
To run this on the IOTA devnet you will need an env file with the following settings. Store the following config as config.env
|
|
88
88
|
|
|
89
89
|
```shell
|
|
90
|
-
NODE_URL="https://api.
|
|
91
|
-
FAUCET_URL="https://faucet.
|
|
92
|
-
EXPLORER_URL="https://explorer.iota.org
|
|
90
|
+
NODE_URL="https://api.devnet.iota.cafe"
|
|
91
|
+
FAUCET_URL="https://faucet.devnet.iota.cafe"
|
|
92
|
+
EXPLORER_URL="https://explorer.iota.org/?network=devnet"
|
|
93
93
|
```
|
|
94
94
|
|
|
95
95
|
We also need to create a JSON file containing the immutable metadata for the NFT. The following JSON file follows the IRC27 standard for NFT data. Save this file as `immutable.json` to use in the following scripts.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@twin.org/nft-cli",
|
|
3
|
-
"version": "0.0.1-next.
|
|
3
|
+
"version": "0.0.1-next.29",
|
|
4
4
|
"description": "A command line interface for interacting with the nft connectors",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -21,8 +21,7 @@
|
|
|
21
21
|
"@twin.org/entity": "next",
|
|
22
22
|
"@twin.org/entity-storage-connector-memory": "next",
|
|
23
23
|
"@twin.org/nameof": "next",
|
|
24
|
-
"@twin.org/nft-connector-iota": "0.0.1-next.
|
|
25
|
-
"@twin.org/nft-connector-iota-stardust": "0.0.1-next.27",
|
|
24
|
+
"@twin.org/nft-connector-iota": "0.0.1-next.29",
|
|
26
25
|
"@twin.org/vault-connector-entity-storage": "next",
|
|
27
26
|
"@twin.org/vault-models": "next",
|
|
28
27
|
"@twin.org/wallet-cli": "next",
|