@ardrive/turbo-sdk 1.6.0 → 1.7.0-alpha.2
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/README.md +14 -0
- package/bundles/web.bundle.min.js +44 -13
- package/lib/cjs/common/signer.js +20 -0
- package/lib/cjs/common/token.js +2 -1
- package/lib/cjs/common/upload.js +6 -5
- package/lib/cjs/node/factory.js +21 -6
- package/lib/cjs/node/signer.js +6 -6
- package/lib/cjs/version.js +1 -1
- package/lib/cjs/web/factory.js +8 -0
- package/lib/cjs/web/signer.js +3 -1
- package/lib/esm/common/signer.js +20 -0
- package/lib/esm/common/token.js +2 -1
- package/lib/esm/common/upload.js +6 -5
- package/lib/esm/node/factory.js +22 -7
- package/lib/esm/node/signer.js +4 -6
- package/lib/esm/version.js +1 -1
- package/lib/esm/web/factory.js +9 -1
- package/lib/esm/web/signer.js +2 -2
- package/lib/types/common/signer.d.ts +4 -0
- package/lib/types/common/signer.d.ts.map +1 -1
- package/lib/types/common/token.d.ts.map +1 -1
- package/lib/types/common/upload.d.ts +4 -3
- package/lib/types/common/upload.d.ts.map +1 -1
- package/lib/types/node/factory.d.ts +1 -1
- package/lib/types/node/factory.d.ts.map +1 -1
- package/lib/types/node/signer.d.ts +3 -3
- package/lib/types/node/signer.d.ts.map +1 -1
- package/lib/types/types.d.ts +2 -2
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/version.d.ts +1 -1
- package/lib/types/version.d.ts.map +1 -1
- package/lib/types/web/factory.d.ts.map +1 -1
- package/lib/types/web/signer.d.ts +2 -2
- package/lib/types/web/signer.d.ts.map +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
@@ -195,6 +195,20 @@ const signer = new ArweaveSigner(jwk);
|
|
195
195
|
const turbo = TurboFactory.authenticated({ signer });
|
196
196
|
```
|
197
197
|
|
198
|
+
or with ETH signer
|
199
|
+
|
200
|
+
```typescript
|
201
|
+
const signer = new EthereumSigner(privateKey);
|
202
|
+
const turbo = TurboFactory.authenticated({ signer });
|
203
|
+
```
|
204
|
+
|
205
|
+
or with SOL signer
|
206
|
+
|
207
|
+
```typescript
|
208
|
+
const signer = new HexSolanaSigner(bs58.encode(secretKey));
|
209
|
+
const turbo = TurboFactory.authenticated({ signer });
|
210
|
+
```
|
211
|
+
|
198
212
|
### TurboUnauthenticatedClient
|
199
213
|
|
200
214
|
#### `getSupportedCurrencies()`
|
@@ -95846,9 +95846,9 @@ var require_scrypt = __commonJS({
|
|
95846
95846
|
}
|
95847
95847
|
});
|
95848
95848
|
|
95849
|
-
// node_modules/
|
95849
|
+
// node_modules/arbundles/node_modules/safe-buffer/index.js
|
95850
95850
|
var require_safe_buffer = __commonJS({
|
95851
|
-
"node_modules/
|
95851
|
+
"node_modules/arbundles/node_modules/safe-buffer/index.js"(exports13, module2) {
|
95852
95852
|
"use strict";
|
95853
95853
|
init_dirname();
|
95854
95854
|
init_buffer2();
|
@@ -95908,9 +95908,9 @@ var require_safe_buffer = __commonJS({
|
|
95908
95908
|
}
|
95909
95909
|
});
|
95910
95910
|
|
95911
|
-
// node_modules/base-x/src/index.js
|
95911
|
+
// node_modules/arbundles/node_modules/base-x/src/index.js
|
95912
95912
|
var require_src = __commonJS({
|
95913
|
-
"node_modules/base-x/src/index.js"(exports13, module2) {
|
95913
|
+
"node_modules/arbundles/node_modules/base-x/src/index.js"(exports13, module2) {
|
95914
95914
|
"use strict";
|
95915
95915
|
init_dirname();
|
95916
95916
|
init_buffer2();
|
@@ -96042,9 +96042,9 @@ var require_src = __commonJS({
|
|
96042
96042
|
}
|
96043
96043
|
});
|
96044
96044
|
|
96045
|
-
// node_modules/bs58/index.js
|
96045
|
+
// node_modules/arbundles/node_modules/bs58/index.js
|
96046
96046
|
var require_bs58 = __commonJS({
|
96047
|
-
"node_modules/bs58/index.js"(exports13, module2) {
|
96047
|
+
"node_modules/arbundles/node_modules/bs58/index.js"(exports13, module2) {
|
96048
96048
|
"use strict";
|
96049
96049
|
init_dirname();
|
96050
96050
|
init_buffer2();
|
@@ -130843,7 +130843,7 @@ var import_winston = __toESM(require_winston(), 1);
|
|
130843
130843
|
init_dirname();
|
130844
130844
|
init_buffer2();
|
130845
130845
|
init_process2();
|
130846
|
-
var version21 = "1.
|
130846
|
+
var version21 = "1.7.0-alpha.1";
|
130847
130847
|
|
130848
130848
|
// src/common/logger.ts
|
130849
130849
|
var TurboWinstonLogger = class {
|
@@ -139099,7 +139099,8 @@ var ArweaveToken = class {
|
|
139099
139099
|
const publicKeyB64Url = toB64Url(await signer.getPublicKey());
|
139100
139100
|
tx.setOwner(publicKeyB64Url);
|
139101
139101
|
const dataToSign = await tx.getSignatureData();
|
139102
|
-
const
|
139102
|
+
const signatureUint8Array = await signer.signData(dataToSign);
|
139103
|
+
const signatureBuffer = Buffer2.from(signatureUint8Array);
|
139103
139104
|
const id2 = sha256B64Url(signatureBuffer);
|
139104
139105
|
tx.setSignature({
|
139105
139106
|
id: id2,
|
@@ -139405,8 +139406,10 @@ var TurboUnauthenticatedUploadService = class {
|
|
139405
139406
|
constructor({
|
139406
139407
|
url = defaultUploadServiceURL,
|
139407
139408
|
retryConfig,
|
139408
|
-
logger: logger19 = new TurboWinstonLogger()
|
139409
|
+
logger: logger19 = new TurboWinstonLogger(),
|
139410
|
+
token = "arweave"
|
139409
139411
|
}) {
|
139412
|
+
this.token = token;
|
139410
139413
|
this.logger = logger19;
|
139411
139414
|
this.httpService = new TurboHTTPService({
|
139412
139415
|
url: `${url}/v1`,
|
@@ -139422,7 +139425,7 @@ var TurboUnauthenticatedUploadService = class {
|
|
139422
139425
|
const fileSize = dataItemSizeFactory();
|
139423
139426
|
this.logger.debug("Uploading signed data item...");
|
139424
139427
|
return this.httpService.post({
|
139425
|
-
endpoint: `/tx`,
|
139428
|
+
endpoint: `/tx/${this.token}`,
|
139426
139429
|
signal,
|
139427
139430
|
data: dataItemStreamFactory(),
|
139428
139431
|
headers: {
|
@@ -139437,9 +139440,10 @@ var TurboAuthenticatedUploadService = class extends TurboUnauthenticatedUploadSe
|
|
139437
139440
|
url = defaultUploadServiceURL,
|
139438
139441
|
retryConfig,
|
139439
139442
|
signer,
|
139440
|
-
logger: logger19
|
139443
|
+
logger: logger19,
|
139444
|
+
token
|
139441
139445
|
}) {
|
139442
|
-
super({ url, retryConfig, logger: logger19 });
|
139446
|
+
super({ url, retryConfig, logger: logger19, token });
|
139443
139447
|
this.signer = signer;
|
139444
139448
|
}
|
139445
139449
|
async uploadFile({
|
@@ -139457,7 +139461,7 @@ var TurboAuthenticatedUploadService = class extends TurboUnauthenticatedUploadSe
|
|
139457
139461
|
const fileSize = dataItemSizeFactory();
|
139458
139462
|
this.logger.debug("Uploading signed data item...");
|
139459
139463
|
return this.httpService.post({
|
139460
|
-
endpoint: `/tx`,
|
139464
|
+
endpoint: `/tx/${this.token}`,
|
139461
139465
|
signal,
|
139462
139466
|
data: signedDataItem,
|
139463
139467
|
headers: {
|
@@ -139681,6 +139685,24 @@ var TurboDataItemAbstractSigner = class {
|
|
139681
139685
|
this.logger = logger19;
|
139682
139686
|
this.signer = signer;
|
139683
139687
|
}
|
139688
|
+
get sigConfig() {
|
139689
|
+
if (this.signer instanceof EthereumSigner) {
|
139690
|
+
return {
|
139691
|
+
signatureLength: 65,
|
139692
|
+
ownerLength: 65
|
139693
|
+
};
|
139694
|
+
}
|
139695
|
+
if (this.signer instanceof HexSolanaSigner2) {
|
139696
|
+
return {
|
139697
|
+
signatureLength: 64,
|
139698
|
+
ownerLength: 32
|
139699
|
+
};
|
139700
|
+
}
|
139701
|
+
return {
|
139702
|
+
ownerLength: 512,
|
139703
|
+
signatureLength: 512
|
139704
|
+
};
|
139705
|
+
}
|
139684
139706
|
async generateSignedRequestHeaders() {
|
139685
139707
|
const nonce = randomBytes(16).toString("hex");
|
139686
139708
|
const buffer2 = Buffer2.from(nonce);
|
@@ -139780,6 +139802,13 @@ var TurboFactory = class extends TurboBaseFactory {
|
|
139780
139802
|
let signer;
|
139781
139803
|
if (providedSigner) {
|
139782
139804
|
signer = providedSigner;
|
139805
|
+
if (!token) {
|
139806
|
+
if (signer instanceof EthereumSigner) {
|
139807
|
+
token = "ethereum";
|
139808
|
+
} else if (signer instanceof HexSolanaSigner2) {
|
139809
|
+
token = "solana";
|
139810
|
+
}
|
139811
|
+
}
|
139783
139812
|
} else if (privateKey) {
|
139784
139813
|
signer = new ArweaveSigner(privateKey);
|
139785
139814
|
} else {
|
@@ -139826,8 +139855,10 @@ export {
|
|
139826
139855
|
BRL,
|
139827
139856
|
CAD,
|
139828
139857
|
EUR,
|
139858
|
+
EthereumSigner,
|
139829
139859
|
GBP,
|
139830
139860
|
HKD,
|
139861
|
+
HexSolanaSigner2 as HexSolanaSigner,
|
139831
139862
|
INR,
|
139832
139863
|
JPY,
|
139833
139864
|
SGD,
|
package/lib/cjs/common/signer.js
CHANGED
@@ -17,6 +17,7 @@ exports.TurboDataItemAbstractSigner = void 0;
|
|
17
17
|
* You should have received a copy of the GNU Affero General Public License
|
18
18
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
*/
|
20
|
+
const arbundles_1 = require("arbundles");
|
20
21
|
const crypto_1 = require("crypto");
|
21
22
|
const base64_js_1 = require("../utils/base64.js");
|
22
23
|
/**
|
@@ -27,6 +28,25 @@ class TurboDataItemAbstractSigner {
|
|
27
28
|
this.logger = logger;
|
28
29
|
this.signer = signer;
|
29
30
|
}
|
31
|
+
get sigConfig() {
|
32
|
+
if (this.signer instanceof arbundles_1.EthereumSigner) {
|
33
|
+
return {
|
34
|
+
signatureLength: 65,
|
35
|
+
ownerLength: 65,
|
36
|
+
};
|
37
|
+
}
|
38
|
+
if (this.signer instanceof arbundles_1.HexSolanaSigner) {
|
39
|
+
return {
|
40
|
+
signatureLength: 64,
|
41
|
+
ownerLength: 32,
|
42
|
+
};
|
43
|
+
}
|
44
|
+
// base case, arweave/arconnect signer
|
45
|
+
return {
|
46
|
+
ownerLength: 512,
|
47
|
+
signatureLength: 512,
|
48
|
+
};
|
49
|
+
}
|
30
50
|
async generateSignedRequestHeaders() {
|
31
51
|
const nonce = (0, crypto_1.randomBytes)(16).toString('hex');
|
32
52
|
const buffer = Buffer.from(nonce);
|
package/lib/cjs/common/token.js
CHANGED
@@ -58,7 +58,8 @@ class ArweaveToken {
|
|
58
58
|
const publicKeyB64Url = (0, base64_js_1.toB64Url)(await signer.getPublicKey());
|
59
59
|
tx.setOwner(publicKeyB64Url);
|
60
60
|
const dataToSign = await tx.getSignatureData();
|
61
|
-
const
|
61
|
+
const signatureUint8Array = await signer.signData(dataToSign);
|
62
|
+
const signatureBuffer = Buffer.from(signatureUint8Array);
|
62
63
|
const id = (0, base64_js_1.sha256B64Url)(signatureBuffer);
|
63
64
|
tx.setSignature({
|
64
65
|
id: id,
|
package/lib/cjs/common/upload.js
CHANGED
@@ -6,7 +6,8 @@ const logger_js_1 = require("./logger.js");
|
|
6
6
|
exports.developmentUploadServiceURL = 'https://upload.ardrive.dev';
|
7
7
|
exports.defaultUploadServiceURL = 'https://upload.ardrive.io';
|
8
8
|
class TurboUnauthenticatedUploadService {
|
9
|
-
constructor({ url = exports.defaultUploadServiceURL, retryConfig, logger = new logger_js_1.TurboWinstonLogger(), }) {
|
9
|
+
constructor({ url = exports.defaultUploadServiceURL, retryConfig, logger = new logger_js_1.TurboWinstonLogger(), token = 'arweave', }) {
|
10
|
+
this.token = token;
|
10
11
|
this.logger = logger;
|
11
12
|
this.httpService = new http_js_1.TurboHTTPService({
|
12
13
|
url: `${url}/v1`,
|
@@ -19,7 +20,7 @@ class TurboUnauthenticatedUploadService {
|
|
19
20
|
this.logger.debug('Uploading signed data item...');
|
20
21
|
// TODO: add p-limit constraint or replace with separate upload class
|
21
22
|
return this.httpService.post({
|
22
|
-
endpoint: `/tx`,
|
23
|
+
endpoint: `/tx/${this.token}`,
|
23
24
|
signal,
|
24
25
|
data: dataItemStreamFactory(),
|
25
26
|
headers: {
|
@@ -32,8 +33,8 @@ class TurboUnauthenticatedUploadService {
|
|
32
33
|
exports.TurboUnauthenticatedUploadService = TurboUnauthenticatedUploadService;
|
33
34
|
// NOTE: to avoid redundancy, we use inheritance here - but generally prefer composition over inheritance
|
34
35
|
class TurboAuthenticatedUploadService extends TurboUnauthenticatedUploadService {
|
35
|
-
constructor({ url = exports.defaultUploadServiceURL, retryConfig, signer, logger, }) {
|
36
|
-
super({ url, retryConfig, logger });
|
36
|
+
constructor({ url = exports.defaultUploadServiceURL, retryConfig, signer, logger, token, }) {
|
37
|
+
super({ url, retryConfig, logger, token });
|
37
38
|
this.signer = signer;
|
38
39
|
}
|
39
40
|
async uploadFile({ fileStreamFactory, fileSizeFactory, signal, dataItemOpts, }) {
|
@@ -47,7 +48,7 @@ class TurboAuthenticatedUploadService extends TurboUnauthenticatedUploadService
|
|
47
48
|
this.logger.debug('Uploading signed data item...');
|
48
49
|
// TODO: add p-limit constraint or replace with separate upload class
|
49
50
|
return this.httpService.post({
|
50
|
-
endpoint: `/tx`,
|
51
|
+
endpoint: `/tx/${this.token}`,
|
51
52
|
signal,
|
52
53
|
data: signedDataItem,
|
53
54
|
headers: {
|
package/lib/cjs/node/factory.js
CHANGED
@@ -20,12 +20,21 @@ exports.TurboFactory = void 0;
|
|
20
20
|
const arbundles_1 = require("arbundles");
|
21
21
|
const factory_js_1 = require("../common/factory.js");
|
22
22
|
const index_js_1 = require("../common/index.js");
|
23
|
-
const signer_js_1 = require("
|
23
|
+
const signer_js_1 = require("../web/signer.js");
|
24
|
+
const signer_js_2 = require("./signer.js");
|
24
25
|
class TurboFactory extends factory_js_1.TurboBaseFactory {
|
25
|
-
static authenticated({ privateKey, signer: providedSigner, paymentServiceConfig = {}, uploadServiceConfig = {}, tokenMap, }) {
|
26
|
+
static authenticated({ privateKey, signer: providedSigner, paymentServiceConfig = {}, uploadServiceConfig = {}, tokenMap, token, }) {
|
26
27
|
let signer;
|
27
28
|
if (providedSigner) {
|
28
29
|
signer = providedSigner;
|
30
|
+
if (!token) {
|
31
|
+
if (signer instanceof arbundles_1.EthereumSigner) {
|
32
|
+
token = 'ethereum';
|
33
|
+
}
|
34
|
+
else if (signer instanceof arbundles_1.HexSolanaSigner) {
|
35
|
+
token = 'solana';
|
36
|
+
}
|
37
|
+
}
|
29
38
|
}
|
30
39
|
else if (privateKey) {
|
31
40
|
signer = new arbundles_1.ArweaveSigner(privateKey);
|
@@ -33,10 +42,16 @@ class TurboFactory extends factory_js_1.TurboBaseFactory {
|
|
33
42
|
else {
|
34
43
|
throw new Error('A privateKey or signer must be provided.');
|
35
44
|
}
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
45
|
+
// when in browser, we use TurboWebArweaveSigner
|
46
|
+
const turboSigner = typeof window !== 'undefined'
|
47
|
+
? new signer_js_1.TurboWebArweaveSigner({
|
48
|
+
signer,
|
49
|
+
logger: this.logger,
|
50
|
+
})
|
51
|
+
: new signer_js_2.TurboNodeSigner({
|
52
|
+
signer,
|
53
|
+
logger: this.logger,
|
54
|
+
});
|
40
55
|
const paymentService = new index_js_1.TurboAuthenticatedPaymentService({
|
41
56
|
...paymentServiceConfig,
|
42
57
|
signer: turboSigner,
|
package/lib/cjs/node/signer.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.
|
3
|
+
exports.TurboNodeSigner = exports.HexSolanaSigner = exports.EthereumSigner = exports.ArweaveSigner = exports.ArconnectSigner = void 0;
|
4
4
|
/**
|
5
5
|
* Copyright (C) 2022-2023 Permanent Data Solutions, Inc. All Rights Reserved.
|
6
6
|
*
|
@@ -20,12 +20,14 @@ exports.TurboNodeArweaveSigner = exports.ArweaveSigner = exports.ArconnectSigner
|
|
20
20
|
const arbundles_1 = require("arbundles");
|
21
21
|
Object.defineProperty(exports, "ArconnectSigner", { enumerable: true, get: function () { return arbundles_1.ArconnectSigner; } });
|
22
22
|
Object.defineProperty(exports, "ArweaveSigner", { enumerable: true, get: function () { return arbundles_1.ArweaveSigner; } });
|
23
|
+
Object.defineProperty(exports, "EthereumSigner", { enumerable: true, get: function () { return arbundles_1.EthereumSigner; } });
|
24
|
+
Object.defineProperty(exports, "HexSolanaSigner", { enumerable: true, get: function () { return arbundles_1.HexSolanaSigner; } });
|
23
25
|
const signer_js_1 = require("../common/signer.js");
|
24
26
|
const base64_js_1 = require("../utils/base64.js");
|
25
27
|
/**
|
26
28
|
* Node implementation of TurboDataItemSigner.
|
27
29
|
*/
|
28
|
-
class
|
30
|
+
class TurboNodeSigner extends signer_js_1.TurboDataItemAbstractSigner {
|
29
31
|
constructor(p) {
|
30
32
|
super(p);
|
31
33
|
}
|
@@ -56,9 +58,7 @@ class TurboNodeArweaveSigner extends signer_js_1.TurboDataItemAbstractSigner {
|
|
56
58
|
const anchorLength = 1 + (_anchor ? _anchor.byteLength : 0);
|
57
59
|
const serializedTags = tags && tags.length > 0 ? (0, arbundles_1.serializeTags)(tags) : null;
|
58
60
|
const tagsLength = 16 + (serializedTags ? serializedTags.byteLength : 0);
|
59
|
-
|
60
|
-
const signatureLength = 512;
|
61
|
-
const ownerLength = 512;
|
61
|
+
const { ownerLength, signatureLength } = this.sigConfig;
|
62
62
|
const signatureTypeLength = 2;
|
63
63
|
return [
|
64
64
|
anchorLength,
|
@@ -71,4 +71,4 @@ class TurboNodeArweaveSigner extends signer_js_1.TurboDataItemAbstractSigner {
|
|
71
71
|
].reduce((totalSize, currentSize) => (totalSize += currentSize));
|
72
72
|
}
|
73
73
|
}
|
74
|
-
exports.
|
74
|
+
exports.TurboNodeSigner = TurboNodeSigner;
|
package/lib/cjs/version.js
CHANGED
package/lib/cjs/web/factory.js
CHANGED
@@ -26,6 +26,14 @@ class TurboFactory extends factory_js_1.TurboBaseFactory {
|
|
26
26
|
let signer;
|
27
27
|
if (providedSigner) {
|
28
28
|
signer = providedSigner;
|
29
|
+
if (!token) {
|
30
|
+
if (signer instanceof arbundles_1.EthereumSigner) {
|
31
|
+
token = 'ethereum';
|
32
|
+
}
|
33
|
+
else if (signer instanceof arbundles_1.HexSolanaSigner) {
|
34
|
+
token = 'solana';
|
35
|
+
}
|
36
|
+
}
|
29
37
|
}
|
30
38
|
else if (privateKey) {
|
31
39
|
signer = new arbundles_1.ArweaveSigner(privateKey);
|
package/lib/cjs/web/signer.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.TurboWebArweaveSigner = exports.ArweaveSigner = exports.ArconnectSigner = void 0;
|
3
|
+
exports.TurboWebArweaveSigner = exports.HexSolanaSigner = exports.EthereumSigner = exports.ArweaveSigner = exports.ArconnectSigner = void 0;
|
4
4
|
/**
|
5
5
|
* Copyright (C) 2022-2023 Permanent Data Solutions, Inc. All Rights Reserved.
|
6
6
|
*
|
@@ -20,6 +20,8 @@ exports.TurboWebArweaveSigner = exports.ArweaveSigner = exports.ArconnectSigner
|
|
20
20
|
const arbundles_1 = require("arbundles");
|
21
21
|
Object.defineProperty(exports, "ArconnectSigner", { enumerable: true, get: function () { return arbundles_1.ArconnectSigner; } });
|
22
22
|
Object.defineProperty(exports, "ArweaveSigner", { enumerable: true, get: function () { return arbundles_1.ArweaveSigner; } });
|
23
|
+
Object.defineProperty(exports, "EthereumSigner", { enumerable: true, get: function () { return arbundles_1.EthereumSigner; } });
|
24
|
+
Object.defineProperty(exports, "HexSolanaSigner", { enumerable: true, get: function () { return arbundles_1.HexSolanaSigner; } });
|
23
25
|
const signer_js_1 = require("../common/signer.js");
|
24
26
|
const readableStream_js_1 = require("../utils/readableStream.js");
|
25
27
|
/**
|
package/lib/esm/common/signer.js
CHANGED
@@ -14,6 +14,7 @@
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License
|
15
15
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
16
16
|
*/
|
17
|
+
import { EthereumSigner, HexSolanaSigner } from 'arbundles';
|
17
18
|
import { randomBytes } from 'crypto';
|
18
19
|
import { toB64Url } from '../utils/base64.js';
|
19
20
|
/**
|
@@ -24,6 +25,25 @@ export class TurboDataItemAbstractSigner {
|
|
24
25
|
this.logger = logger;
|
25
26
|
this.signer = signer;
|
26
27
|
}
|
28
|
+
get sigConfig() {
|
29
|
+
if (this.signer instanceof EthereumSigner) {
|
30
|
+
return {
|
31
|
+
signatureLength: 65,
|
32
|
+
ownerLength: 65,
|
33
|
+
};
|
34
|
+
}
|
35
|
+
if (this.signer instanceof HexSolanaSigner) {
|
36
|
+
return {
|
37
|
+
signatureLength: 64,
|
38
|
+
ownerLength: 32,
|
39
|
+
};
|
40
|
+
}
|
41
|
+
// base case, arweave/arconnect signer
|
42
|
+
return {
|
43
|
+
ownerLength: 512,
|
44
|
+
signatureLength: 512,
|
45
|
+
};
|
46
|
+
}
|
27
47
|
async generateSignedRequestHeaders() {
|
28
48
|
const nonce = randomBytes(16).toString('hex');
|
29
49
|
const buffer = Buffer.from(nonce);
|
package/lib/esm/common/token.js
CHANGED
@@ -52,7 +52,8 @@ export class ArweaveToken {
|
|
52
52
|
const publicKeyB64Url = toB64Url(await signer.getPublicKey());
|
53
53
|
tx.setOwner(publicKeyB64Url);
|
54
54
|
const dataToSign = await tx.getSignatureData();
|
55
|
-
const
|
55
|
+
const signatureUint8Array = await signer.signData(dataToSign);
|
56
|
+
const signatureBuffer = Buffer.from(signatureUint8Array);
|
56
57
|
const id = sha256B64Url(signatureBuffer);
|
57
58
|
tx.setSignature({
|
58
59
|
id: id,
|
package/lib/esm/common/upload.js
CHANGED
@@ -3,7 +3,8 @@ import { TurboWinstonLogger } from './logger.js';
|
|
3
3
|
export const developmentUploadServiceURL = 'https://upload.ardrive.dev';
|
4
4
|
export const defaultUploadServiceURL = 'https://upload.ardrive.io';
|
5
5
|
export class TurboUnauthenticatedUploadService {
|
6
|
-
constructor({ url = defaultUploadServiceURL, retryConfig, logger = new TurboWinstonLogger(), }) {
|
6
|
+
constructor({ url = defaultUploadServiceURL, retryConfig, logger = new TurboWinstonLogger(), token = 'arweave', }) {
|
7
|
+
this.token = token;
|
7
8
|
this.logger = logger;
|
8
9
|
this.httpService = new TurboHTTPService({
|
9
10
|
url: `${url}/v1`,
|
@@ -16,7 +17,7 @@ export class TurboUnauthenticatedUploadService {
|
|
16
17
|
this.logger.debug('Uploading signed data item...');
|
17
18
|
// TODO: add p-limit constraint or replace with separate upload class
|
18
19
|
return this.httpService.post({
|
19
|
-
endpoint: `/tx`,
|
20
|
+
endpoint: `/tx/${this.token}`,
|
20
21
|
signal,
|
21
22
|
data: dataItemStreamFactory(),
|
22
23
|
headers: {
|
@@ -28,8 +29,8 @@ export class TurboUnauthenticatedUploadService {
|
|
28
29
|
}
|
29
30
|
// NOTE: to avoid redundancy, we use inheritance here - but generally prefer composition over inheritance
|
30
31
|
export class TurboAuthenticatedUploadService extends TurboUnauthenticatedUploadService {
|
31
|
-
constructor({ url = defaultUploadServiceURL, retryConfig, signer, logger, }) {
|
32
|
-
super({ url, retryConfig, logger });
|
32
|
+
constructor({ url = defaultUploadServiceURL, retryConfig, signer, logger, token, }) {
|
33
|
+
super({ url, retryConfig, logger, token });
|
33
34
|
this.signer = signer;
|
34
35
|
}
|
35
36
|
async uploadFile({ fileStreamFactory, fileSizeFactory, signal, dataItemOpts, }) {
|
@@ -43,7 +44,7 @@ export class TurboAuthenticatedUploadService extends TurboUnauthenticatedUploadS
|
|
43
44
|
this.logger.debug('Uploading signed data item...');
|
44
45
|
// TODO: add p-limit constraint or replace with separate upload class
|
45
46
|
return this.httpService.post({
|
46
|
-
endpoint: `/tx`,
|
47
|
+
endpoint: `/tx/${this.token}`,
|
47
48
|
signal,
|
48
49
|
data: signedDataItem,
|
49
50
|
headers: {
|
package/lib/esm/node/factory.js
CHANGED
@@ -14,15 +14,24 @@
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License
|
15
15
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
16
16
|
*/
|
17
|
-
import { ArweaveSigner } from 'arbundles';
|
17
|
+
import { ArweaveSigner, EthereumSigner, HexSolanaSigner } from 'arbundles';
|
18
18
|
import { TurboBaseFactory } from '../common/factory.js';
|
19
19
|
import { TurboAuthenticatedClient, TurboAuthenticatedPaymentService, TurboAuthenticatedUploadService, } from '../common/index.js';
|
20
|
-
import {
|
20
|
+
import { TurboWebArweaveSigner } from '../web/signer.js';
|
21
|
+
import { TurboNodeSigner } from './signer.js';
|
21
22
|
export class TurboFactory extends TurboBaseFactory {
|
22
|
-
static authenticated({ privateKey, signer: providedSigner, paymentServiceConfig = {}, uploadServiceConfig = {}, tokenMap, }) {
|
23
|
+
static authenticated({ privateKey, signer: providedSigner, paymentServiceConfig = {}, uploadServiceConfig = {}, tokenMap, token, }) {
|
23
24
|
let signer;
|
24
25
|
if (providedSigner) {
|
25
26
|
signer = providedSigner;
|
27
|
+
if (!token) {
|
28
|
+
if (signer instanceof EthereumSigner) {
|
29
|
+
token = 'ethereum';
|
30
|
+
}
|
31
|
+
else if (signer instanceof HexSolanaSigner) {
|
32
|
+
token = 'solana';
|
33
|
+
}
|
34
|
+
}
|
26
35
|
}
|
27
36
|
else if (privateKey) {
|
28
37
|
signer = new ArweaveSigner(privateKey);
|
@@ -30,10 +39,16 @@ export class TurboFactory extends TurboBaseFactory {
|
|
30
39
|
else {
|
31
40
|
throw new Error('A privateKey or signer must be provided.');
|
32
41
|
}
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
42
|
+
// when in browser, we use TurboWebArweaveSigner
|
43
|
+
const turboSigner = typeof window !== 'undefined'
|
44
|
+
? new TurboWebArweaveSigner({
|
45
|
+
signer,
|
46
|
+
logger: this.logger,
|
47
|
+
})
|
48
|
+
: new TurboNodeSigner({
|
49
|
+
signer,
|
50
|
+
logger: this.logger,
|
51
|
+
});
|
37
52
|
const paymentService = new TurboAuthenticatedPaymentService({
|
38
53
|
...paymentServiceConfig,
|
39
54
|
signer: turboSigner,
|
package/lib/esm/node/signer.js
CHANGED
@@ -14,17 +14,17 @@
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License
|
15
15
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
16
16
|
*/
|
17
|
-
import { ArconnectSigner, ArweaveSigner, serializeTags, streamSigner, } from 'arbundles';
|
17
|
+
import { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner, serializeTags, streamSigner, } from 'arbundles';
|
18
18
|
import { TurboDataItemAbstractSigner } from '../common/signer.js';
|
19
19
|
import { fromB64Url } from '../utils/base64.js';
|
20
20
|
/**
|
21
21
|
* Utility exports to avoid clients having to install arbundles
|
22
22
|
*/
|
23
|
-
export { ArconnectSigner, ArweaveSigner };
|
23
|
+
export { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner };
|
24
24
|
/**
|
25
25
|
* Node implementation of TurboDataItemSigner.
|
26
26
|
*/
|
27
|
-
export class
|
27
|
+
export class TurboNodeSigner extends TurboDataItemAbstractSigner {
|
28
28
|
constructor(p) {
|
29
29
|
super(p);
|
30
30
|
}
|
@@ -55,9 +55,7 @@ export class TurboNodeArweaveSigner extends TurboDataItemAbstractSigner {
|
|
55
55
|
const anchorLength = 1 + (_anchor ? _anchor.byteLength : 0);
|
56
56
|
const serializedTags = tags && tags.length > 0 ? serializeTags(tags) : null;
|
57
57
|
const tagsLength = 16 + (serializedTags ? serializedTags.byteLength : 0);
|
58
|
-
|
59
|
-
const signatureLength = 512;
|
60
|
-
const ownerLength = 512;
|
58
|
+
const { ownerLength, signatureLength } = this.sigConfig;
|
61
59
|
const signatureTypeLength = 2;
|
62
60
|
return [
|
63
61
|
anchorLength,
|
package/lib/esm/version.js
CHANGED
package/lib/esm/web/factory.js
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License
|
15
15
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
16
16
|
*/
|
17
|
-
import { ArweaveSigner } from 'arbundles';
|
17
|
+
import { ArweaveSigner, EthereumSigner, HexSolanaSigner } from 'arbundles';
|
18
18
|
import { TurboBaseFactory } from '../common/factory.js';
|
19
19
|
import { TurboAuthenticatedClient, TurboAuthenticatedPaymentService, TurboAuthenticatedUploadService, } from '../common/index.js';
|
20
20
|
import { TurboWebArweaveSigner } from './signer.js';
|
@@ -23,6 +23,14 @@ export class TurboFactory extends TurboBaseFactory {
|
|
23
23
|
let signer;
|
24
24
|
if (providedSigner) {
|
25
25
|
signer = providedSigner;
|
26
|
+
if (!token) {
|
27
|
+
if (signer instanceof EthereumSigner) {
|
28
|
+
token = 'ethereum';
|
29
|
+
}
|
30
|
+
else if (signer instanceof HexSolanaSigner) {
|
31
|
+
token = 'solana';
|
32
|
+
}
|
33
|
+
}
|
26
34
|
}
|
27
35
|
else if (privateKey) {
|
28
36
|
signer = new ArweaveSigner(privateKey);
|
package/lib/esm/web/signer.js
CHANGED
@@ -14,13 +14,13 @@
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License
|
15
15
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
16
16
|
*/
|
17
|
-
import { ArconnectSigner, ArweaveSigner, createData } from 'arbundles';
|
17
|
+
import { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner, createData, } from 'arbundles';
|
18
18
|
import { TurboDataItemAbstractSigner } from '../common/signer.js';
|
19
19
|
import { readableStreamToBuffer } from '../utils/readableStream.js';
|
20
20
|
/**
|
21
21
|
* Utility exports to avoid clients having to install arbundles
|
22
22
|
*/
|
23
|
-
export { ArconnectSigner, ArweaveSigner };
|
23
|
+
export { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner };
|
24
24
|
/**
|
25
25
|
* Web implementation of TurboDataItemSigner.
|
26
26
|
*/
|
@@ -8,6 +8,10 @@ export declare abstract class TurboDataItemAbstractSigner implements TurboDataIt
|
|
8
8
|
protected logger: TurboLogger;
|
9
9
|
protected signer: TurboSigner;
|
10
10
|
constructor({ signer, logger }: TurboDataItemSignerParams);
|
11
|
+
protected get sigConfig(): {
|
12
|
+
ownerLength: number;
|
13
|
+
signatureLength: number;
|
14
|
+
};
|
11
15
|
generateSignedRequestHeaders(): Promise<{
|
12
16
|
'x-public-key': string;
|
13
17
|
'x-nonce': string;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/common/signer.ts"],"names":[],"mappings":";
|
1
|
+
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/common/signer.ts"],"names":[],"mappings":";AAmBA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,yBAAyB,EACzB,gBAAgB,EAChB,WAAW,EACX,0BAA0B,EAC1B,WAAW,EACZ,MAAM,aAAa,CAAC;AAGrB;;GAEG;AACH,8BAAsB,2BACpB,YAAW,mBAAmB;IAE9B,QAAQ,CAAC,YAAY,CAAC,EACpB,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAE5E,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;gBAElB,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,yBAAyB;IAKzD,SAAS,KAAK,SAAS,IAAI;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,CAmB1E;IAEY,4BAA4B;;;;;IAY5B,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/B,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CAGnE"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../../src/common/token.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EACL,MAAM,EACN,mBAAmB,EACnB,UAAU,EACV,WAAW,EACZ,MAAM,aAAa,CAAC;AAKrB,KAAK,cAAc,GAAG;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,qBAAa,YAAa,YAAW,UAAU;IAC7C,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;gBAE7B,EACV,OAEE,EACF,MAAiC,EACjC,KAAY,EACZ,cAIC,GACF,EAAE;QACD,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC;IAOY,cAAc,CAAC,EAC1B,aAAa,EACb,MAAM,EACN,WAAW,EACX,MAAM,GACP,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;
|
1
|
+
{"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../../src/common/token.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EACL,MAAM,EACN,mBAAmB,EACnB,UAAU,EACV,WAAW,EACZ,MAAM,aAAa,CAAC;AAKrB,KAAK,cAAc,GAAG;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,qBAAa,YAAa,YAAW,UAAU;IAC7C,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;gBAE7B,EACV,OAEE,EACF,MAAiC,EACjC,KAAY,EACZ,cAIC,GACF,EAAE;QACD,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC;IAOY,cAAc,CAAC,EAC1B,aAAa,EACb,MAAM,EACN,WAAW,EACX,MAAM,GACP,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAyC3B,uBAAuB,CAAC,EACnC,IAAI,GACL,EAAE;QACD,IAAI,EAAE,MAAM,CAAC;KACd,GAAG,OAAO,CAAC,IAAI,CAAC;IAoDJ,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAqB7D;AAED,eAAO,MAAM,oBAAoB,YAAa,UAAU,KAAK,oBAAY,CAAC;AAC1E,eAAO,MAAM,eAAe,OAAQ,UAAU,KAAK,WACV,CAAC"}
|
@@ -14,19 +14,20 @@
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License
|
15
15
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
16
16
|
*/
|
17
|
-
import { TurboAbortSignal, TurboAuthenticatedUploadServiceConfiguration, TurboAuthenticatedUploadServiceInterface, TurboDataItemSigner, TurboFileFactory, TurboLogger, TurboSignedDataItemFactory, TurboUnauthenticatedUploadServiceConfiguration, TurboUnauthenticatedUploadServiceInterface, TurboUploadDataItemResponse } from '../types.js';
|
17
|
+
import { CreditableTokenType, TurboAbortSignal, TurboAuthenticatedUploadServiceConfiguration, TurboAuthenticatedUploadServiceInterface, TurboDataItemSigner, TurboFileFactory, TurboLogger, TurboSignedDataItemFactory, TurboUnauthenticatedUploadServiceConfiguration, TurboUnauthenticatedUploadServiceInterface, TurboUploadDataItemResponse } from '../types.js';
|
18
18
|
import { TurboHTTPService } from './http.js';
|
19
19
|
export declare const developmentUploadServiceURL = "https://upload.ardrive.dev";
|
20
20
|
export declare const defaultUploadServiceURL = "https://upload.ardrive.io";
|
21
21
|
export declare class TurboUnauthenticatedUploadService implements TurboUnauthenticatedUploadServiceInterface {
|
22
22
|
protected httpService: TurboHTTPService;
|
23
23
|
protected logger: TurboLogger;
|
24
|
-
|
24
|
+
protected token: CreditableTokenType;
|
25
|
+
constructor({ url, retryConfig, logger, token, }: TurboUnauthenticatedUploadServiceConfiguration);
|
25
26
|
uploadSignedDataItem({ dataItemStreamFactory, dataItemSizeFactory, signal, }: TurboSignedDataItemFactory & TurboAbortSignal): Promise<TurboUploadDataItemResponse>;
|
26
27
|
}
|
27
28
|
export declare class TurboAuthenticatedUploadService extends TurboUnauthenticatedUploadService implements TurboAuthenticatedUploadServiceInterface {
|
28
29
|
protected signer: TurboDataItemSigner;
|
29
|
-
constructor({ url, retryConfig, signer, logger, }: TurboAuthenticatedUploadServiceConfiguration);
|
30
|
+
constructor({ url, retryConfig, signer, logger, token, }: TurboAuthenticatedUploadServiceConfiguration);
|
30
31
|
uploadFile({ fileStreamFactory, fileSizeFactory, signal, dataItemOpts, }: TurboFileFactory & TurboAbortSignal): Promise<TurboUploadDataItemResponse>;
|
31
32
|
}
|
32
33
|
//# sourceMappingURL=upload.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../src/common/upload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EACL,gBAAgB,EAChB,4CAA4C,EAC5C,wCAAwC,EACxC,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,0BAA0B,EAC1B,8CAA8C,EAC9C,0CAA0C,EAC1C,2BAA2B,EAC5B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAG7C,eAAO,MAAM,2BAA2B,+BAA+B,CAAC;AACxE,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AAEnE,qBAAa,iCACX,YAAW,0CAA0C;IAErD,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACxC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;
|
1
|
+
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../src/common/upload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,4CAA4C,EAC5C,wCAAwC,EACxC,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,0BAA0B,EAC1B,8CAA8C,EAC9C,0CAA0C,EAC1C,2BAA2B,EAC5B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAG7C,eAAO,MAAM,2BAA2B,+BAA+B,CAAC;AACxE,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AAEnE,qBAAa,iCACX,YAAW,0CAA0C;IAErD,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACxC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,KAAK,EAAE,mBAAmB,CAAC;gBAEzB,EACV,GAA6B,EAC7B,WAAW,EACX,MAAiC,EACjC,KAAiB,GAClB,EAAE,8CAA8C;IAU3C,oBAAoB,CAAC,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,MAAM,GACP,EAAE,0BAA0B,GAC3B,gBAAgB,GAAG,OAAO,CAAC,2BAA2B,CAAC;CAc1D;AAGD,qBAAa,+BACX,SAAQ,iCACR,YAAW,wCAAwC;IAEnD,SAAS,CAAC,MAAM,EAAE,mBAAmB,CAAC;gBAE1B,EACV,GAA6B,EAC7B,WAAW,EACX,MAAM,EACN,MAAM,EACN,KAAK,GACN,EAAE,4CAA4C;IAKzC,UAAU,CAAC,EACf,iBAAiB,EACjB,eAAe,EACf,MAAM,EACN,YAAY,GACb,EAAE,gBAAgB,GACjB,gBAAgB,GAAG,OAAO,CAAC,2BAA2B,CAAC;CAqB1D"}
|
@@ -2,6 +2,6 @@ import { TurboBaseFactory } from '../common/factory.js';
|
|
2
2
|
import { TurboAuthenticatedClient } from '../common/index.js';
|
3
3
|
import { TurboAuthenticatedConfiguration } from '../types.js';
|
4
4
|
export declare class TurboFactory extends TurboBaseFactory {
|
5
|
-
static authenticated({ privateKey, signer: providedSigner, paymentServiceConfig, uploadServiceConfig, tokenMap, }: TurboAuthenticatedConfiguration): TurboAuthenticatedClient;
|
5
|
+
static authenticated({ privateKey, signer: providedSigner, paymentServiceConfig, uploadServiceConfig, tokenMap, token, }: TurboAuthenticatedConfiguration): TurboAuthenticatedClient;
|
6
6
|
}
|
7
7
|
//# sourceMappingURL=factory.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/node/factory.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EACL,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,+BAA+B,EAAe,MAAM,aAAa,CAAC;
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/node/factory.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EACL,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,+BAA+B,EAAe,MAAM,aAAa,CAAC;AAI3E,qBAAa,YAAa,SAAQ,gBAAgB;IAChD,MAAM,CAAC,aAAa,CAAC,EACnB,UAAU,EACV,MAAM,EAAE,cAAc,EACtB,oBAAyB,EACzB,mBAAwB,EACxB,QAAQ,EACR,KAAK,GACN,EAAE,+BAA+B;CA8CnC"}
|
@@ -15,18 +15,18 @@
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
17
17
|
*/
|
18
|
-
import { ArconnectSigner, ArweaveSigner } from 'arbundles';
|
18
|
+
import { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner } from 'arbundles';
|
19
19
|
import { Readable } from 'node:stream';
|
20
20
|
import { TurboDataItemAbstractSigner } from '../common/signer.js';
|
21
21
|
import { DataItemOptions, StreamSizeFactory, TurboDataItemSignerParams } from '../types.js';
|
22
22
|
/**
|
23
23
|
* Utility exports to avoid clients having to install arbundles
|
24
24
|
*/
|
25
|
-
export { ArconnectSigner, ArweaveSigner };
|
25
|
+
export { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner };
|
26
26
|
/**
|
27
27
|
* Node implementation of TurboDataItemSigner.
|
28
28
|
*/
|
29
|
-
export declare class
|
29
|
+
export declare class TurboNodeSigner extends TurboDataItemAbstractSigner {
|
30
30
|
constructor(p: TurboDataItemSignerParams);
|
31
31
|
signDataItem({ fileStreamFactory, fileSizeFactory, dataItemOpts, }: {
|
32
32
|
fileStreamFactory: () => Readable;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/node/signer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EACL,eAAe,EACf,aAAa,
|
1
|
+
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/node/signer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EACL,eAAe,EACf,aAAa,EACb,cAAc,EACd,eAAe,EAGhB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,yBAAyB,EAC1B,MAAM,aAAa,CAAC;AAGrB;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;AAE3E;;GAEG;AACH,qBAAa,eAAgB,SAAQ,2BAA2B;gBAClD,CAAC,EAAE,yBAAyB;IAIlC,YAAY,CAAC,EACjB,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,EAAE;QACD,iBAAiB,EAAE,MAAM,QAAQ,CAAC;QAClC,eAAe,EAAE,iBAAiB,CAAC;QACnC,YAAY,CAAC,EAAE,eAAe,CAAC;KAChC,GAAG,OAAO,CAAC;QACV,qBAAqB,EAAE,MAAM,QAAQ,CAAC;QACtC,mBAAmB,EAAE,iBAAiB,CAAC;KACxC,CAAC;IAyBF,OAAO,CAAC,8BAA8B;CAiCvC"}
|
package/lib/types/types.d.ts
CHANGED
@@ -17,7 +17,7 @@
|
|
17
17
|
* You should have received a copy of the GNU Affero General Public License
|
18
18
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
19
19
|
*/
|
20
|
-
import { ArconnectSigner, ArweaveSigner, DataItemCreateOptions } from 'arbundles';
|
20
|
+
import { ArconnectSigner, ArweaveSigner, DataItemCreateOptions, EthereumSigner, HexSolanaSigner } from 'arbundles';
|
21
21
|
import { IAxiosRetryConfig } from 'axios-retry';
|
22
22
|
import { BigNumber } from 'bignumber.js';
|
23
23
|
import { Readable } from 'node:stream';
|
@@ -185,7 +185,7 @@ export interface TurboLogger {
|
|
185
185
|
debug: (message: string, ...args: unknown[]) => void;
|
186
186
|
}
|
187
187
|
export type DataItemOptions = DataItemCreateOptions;
|
188
|
-
export type TurboSigner = ArconnectSigner | ArweaveSigner;
|
188
|
+
export type TurboSigner = ArconnectSigner | ArweaveSigner | EthereumSigner | HexSolanaSigner;
|
189
189
|
export type TurboAuthenticatedConfiguration = TurboUnauthenticatedConfiguration & {
|
190
190
|
privateKey?: TurboWallet;
|
191
191
|
signer?: TurboSigner;
|
package/lib/types/types.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EACL,eAAe,EACf,aAAa,EACb,qBAAqB,
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/lib/types/version.d.ts
CHANGED
@@ -14,5 +14,5 @@
|
|
14
14
|
* You should have received a copy of the GNU Affero General Public License
|
15
15
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
16
16
|
*/
|
17
|
-
export declare const version = "1.
|
17
|
+
export declare const version = "1.7.0-alpha.1";
|
18
18
|
//# sourceMappingURL=version.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,eAAO,MAAM,OAAO,
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,eAAO,MAAM,OAAO,kBAAkB,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/web/factory.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EACL,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,+BAA+B,EAAe,MAAM,aAAa,CAAC;AAG3E,qBAAa,YAAa,SAAQ,gBAAgB;IAChD,MAAM,CAAC,aAAa,CAAC,EACnB,UAAU,EACV,MAAM,EAAE,cAAc,EACtB,oBAAyB,EACzB,mBAAwB,EACxB,QAAQ,EACR,KAAK,GACN,EAAE,+BAA+B;
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/web/factory.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EACL,wBAAwB,EAGzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,+BAA+B,EAAe,MAAM,aAAa,CAAC;AAG3E,qBAAa,YAAa,SAAQ,gBAAgB;IAChD,MAAM,CAAC,aAAa,CAAC,EACnB,UAAU,EACV,MAAM,EAAE,cAAc,EACtB,oBAAyB,EACzB,mBAAwB,EACxB,QAAQ,EACR,KAAK,GACN,EAAE,+BAA+B;CAuCnC"}
|
@@ -15,13 +15,13 @@
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
17
17
|
*/
|
18
|
-
import { ArconnectSigner, ArweaveSigner } from 'arbundles';
|
18
|
+
import { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner } from 'arbundles';
|
19
19
|
import { TurboDataItemAbstractSigner } from '../common/signer.js';
|
20
20
|
import { StreamSizeFactory, TurboDataItemSignerParams, TurboSignedRequestHeaders, WebTurboFileFactory } from '../types.js';
|
21
21
|
/**
|
22
22
|
* Utility exports to avoid clients having to install arbundles
|
23
23
|
*/
|
24
|
-
export { ArconnectSigner, ArweaveSigner };
|
24
|
+
export { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner };
|
25
25
|
/**
|
26
26
|
* Web implementation of TurboDataItemSigner.
|
27
27
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/web/signer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,
|
1
|
+
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/web/signer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EACL,eAAe,EACf,aAAa,EACb,cAAc,EACd,eAAe,EAEhB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAGrB;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;AAE3E;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,2BAA2B;gBACxD,CAAC,EAAE,yBAAyB;YAI1B,YAAY;IAUb,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAK/B,YAAY,CAAC,EACxB,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,EAAE,mBAAmB,GAAG,OAAO,CAAC;QAE/B,qBAAqB,EAAE,MAAM,MAAM,CAAC;QACpC,mBAAmB,EAAE,iBAAiB,CAAC;KACxC,CAAC;IAoBW,4BAA4B,IAAI,OAAO,CAAC,yBAAyB,CAAC;IAKlE,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CAInE"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@ardrive/turbo-sdk",
|
3
|
-
"version": "1.
|
3
|
+
"version": "1.7.0-alpha.2",
|
4
4
|
"main": "./lib/cjs/node/index.js",
|
5
5
|
"types": "./lib/types/node/index.d.ts",
|
6
6
|
"module": "./lib/esm/node/index.js",
|
@@ -91,6 +91,7 @@
|
|
91
91
|
"@types/sinon": "^10.0.15",
|
92
92
|
"@typescript-eslint/eslint-plugin": "^5.62.0",
|
93
93
|
"@typescript-eslint/parser": "^6.4.0",
|
94
|
+
"bs58": "^5.0.0",
|
94
95
|
"c8": "^8.0.1",
|
95
96
|
"chai": "^4.3.7",
|
96
97
|
"dotenv-cli": "^7.4.1",
|