@ardrive/turbo-sdk 1.23.3-alpha.test.0 → 1.23.3

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 (35) hide show
  1. package/bundles/web.bundle.min.js +37481 -21198
  2. package/lib/cjs/common/factory.js +3 -3
  3. package/lib/cjs/common/logger.js +73 -41
  4. package/lib/cjs/common/payment.js +2 -2
  5. package/lib/cjs/common/signer.js +1 -1
  6. package/lib/cjs/common/token/arweave.js +1 -1
  7. package/lib/cjs/common/token/ethereum.js +1 -1
  8. package/lib/cjs/common/token/kyve.js +1 -1
  9. package/lib/cjs/common/token/polygon.js +1 -1
  10. package/lib/cjs/common/token/solana.js +1 -1
  11. package/lib/cjs/common/upload.js +1 -1
  12. package/lib/cjs/utils/axiosClient.js +2 -2
  13. package/lib/esm/common/factory.js +4 -4
  14. package/lib/esm/common/logger.js +71 -39
  15. package/lib/esm/common/payment.js +3 -3
  16. package/lib/esm/common/signer.js +2 -2
  17. package/lib/esm/common/token/arweave.js +2 -2
  18. package/lib/esm/common/token/ethereum.js +2 -2
  19. package/lib/esm/common/token/kyve.js +2 -2
  20. package/lib/esm/common/token/polygon.js +2 -2
  21. package/lib/esm/common/token/solana.js +2 -2
  22. package/lib/esm/common/upload.js +2 -2
  23. package/lib/esm/utils/axiosClient.js +3 -3
  24. package/lib/types/common/factory.d.ts +5 -5
  25. package/lib/types/common/factory.d.ts.map +1 -1
  26. package/lib/types/common/logger.d.ts +8 -12
  27. package/lib/types/common/logger.d.ts.map +1 -1
  28. package/lib/types/types.d.ts +4 -4
  29. package/lib/types/types.d.ts.map +1 -1
  30. package/lib/types/version.d.ts +1 -1
  31. package/package.json +3 -2
  32. package/lib/cjs/common/signing/signing.js +0 -205
  33. package/lib/esm/common/signing/signing.js +0 -205
  34. package/lib/types/common/signing/signing.d.ts +0 -16
  35. package/lib/types/common/signing/signing.d.ts.map +0 -1
@@ -24,11 +24,11 @@ const index_js_1 = require("./token/index.js");
24
24
  const turbo_js_1 = require("./turbo.js");
25
25
  const upload_js_1 = require("./upload.js");
26
26
  class TurboBaseFactory {
27
- /* @deprecated - use ConsoleTurboLogger directly */
27
+ /* @deprecated - use TurboWinstonLogger directly */
28
28
  static setLogLevel(level) {
29
29
  this.logger.setLogLevel(level);
30
30
  }
31
- /* @deprecated - use ConsoleTurboLogger directly */
31
+ /* @deprecated - use TurboWinstonLogger directly */
32
32
  static setLogFormat(format) {
33
33
  this.logger.setLogFormat(format);
34
34
  }
@@ -125,4 +125,4 @@ class TurboBaseFactory {
125
125
  }
126
126
  }
127
127
  exports.TurboBaseFactory = TurboBaseFactory;
128
- TurboBaseFactory.logger = logger_js_1.ConsoleTurboLogger.default;
128
+ TurboBaseFactory.logger = logger_js_1.TurboWinstonLogger.default;
@@ -1,60 +1,92 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConsoleTurboLogger = void 0;
3
+ exports.TurboWinstonLogger = void 0;
4
+ /**
5
+ * Copyright (C) 2022-2024 Permanent Data Solutions, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ */
19
+ const winston_1 = require("winston");
4
20
  const version_js_1 = require("../version.js");
5
- class ConsoleTurboLogger {
21
+ class TurboWinstonLogger {
6
22
  constructor({ level = 'info', logFormat = 'simple', } = {}) {
7
- this.level = level;
8
- this.format = logFormat;
9
- this.silent = level === 'none';
10
- }
11
- shouldLog(level) {
12
- if (this.silent)
13
- return false;
14
- const order = ['none', 'error', 'info', 'debug'];
15
- return order.indexOf(level) <= order.indexOf(this.level);
16
- }
17
- formatMessage(level, message, args) {
18
- const base = {
19
- level,
20
- message,
21
- args,
22
- version: version_js_1.version,
23
- timestamp: new Date().toISOString(),
24
- };
25
- return this.format === 'json'
26
- ? JSON.stringify(base)
27
- : `[${base.timestamp}] [${level.toUpperCase()}] ${message} ${args
28
- .map((a) => JSON.stringify(a))
29
- .join(' ')}`;
23
+ this.silent = false;
24
+ if (level === 'none') {
25
+ this.silent = true;
26
+ }
27
+ if (typeof window !== 'undefined') {
28
+ this.logger = console;
29
+ }
30
+ else {
31
+ this.logger = (0, winston_1.createLogger)({
32
+ level,
33
+ silent: this.silent,
34
+ defaultMeta: {
35
+ name: 'turbo-sdk',
36
+ version: version_js_1.version,
37
+ },
38
+ format: winston_1.format.combine(winston_1.format.timestamp(), winston_1.format.json()),
39
+ transports: [
40
+ new winston_1.transports.Console({
41
+ format: getLogFormat(logFormat),
42
+ }),
43
+ ],
44
+ });
45
+ }
30
46
  }
31
47
  info(message, ...args) {
32
- if (this.shouldLog('info')) {
33
- console.info(this.formatMessage('info', message, args));
34
- }
48
+ if (this.silent)
49
+ return;
50
+ this.logger.info(message, ...args);
35
51
  }
36
52
  warn(message, ...args) {
37
- if (this.shouldLog('info')) {
38
- console.warn(this.formatMessage('warn', message, args));
39
- }
53
+ if (this.silent)
54
+ return;
55
+ this.logger.warn(message, ...args);
40
56
  }
41
57
  error(message, ...args) {
42
- if (this.shouldLog('error')) {
43
- console.error(this.formatMessage('error', message, args));
44
- }
58
+ if (this.silent)
59
+ return;
60
+ this.logger.error(message, ...args);
45
61
  }
46
62
  debug(message, ...args) {
47
- if (this.shouldLog('debug')) {
48
- console.debug(this.formatMessage('debug', message, args));
49
- }
63
+ if (this.silent)
64
+ return;
65
+ this.logger.debug(message, ...args);
50
66
  }
51
67
  setLogLevel(level) {
52
- this.level = level;
53
68
  this.silent = level === 'none';
69
+ if ('silent' in this.logger) {
70
+ this.logger.silent = level === 'none';
71
+ }
72
+ if ('level' in this.logger) {
73
+ this.logger.level = level;
74
+ }
54
75
  }
55
76
  setLogFormat(logFormat) {
56
- this.format = logFormat;
77
+ if ('format' in this.logger) {
78
+ this.logger.format = getLogFormat(logFormat);
79
+ }
57
80
  }
58
81
  }
59
- exports.ConsoleTurboLogger = ConsoleTurboLogger;
60
- ConsoleTurboLogger.default = new ConsoleTurboLogger();
82
+ exports.TurboWinstonLogger = TurboWinstonLogger;
83
+ TurboWinstonLogger.default = new TurboWinstonLogger();
84
+ function getLogFormat(logFormat) {
85
+ return winston_1.format.combine((0, winston_1.format)((info) => {
86
+ if (info.stack && info.level !== 'error') {
87
+ delete info.stack;
88
+ }
89
+ return info;
90
+ })(), winston_1.format.errors({ stack: true }), // Ensure errors show a stack trace
91
+ winston_1.format.timestamp(), logFormat === 'json' ? winston_1.format.json() : winston_1.format.simple());
92
+ }
@@ -24,7 +24,7 @@ const index_js_1 = require("./token/index.js");
24
24
  exports.developmentPaymentServiceURL = 'https://payment.ardrive.dev';
25
25
  exports.defaultPaymentServiceURL = 'https://payment.ardrive.io';
26
26
  class TurboUnauthenticatedPaymentService {
27
- constructor({ url = exports.defaultPaymentServiceURL, retryConfig, logger = logger_js_1.ConsoleTurboLogger.default, token = 'arweave', }) {
27
+ constructor({ url = exports.defaultPaymentServiceURL, retryConfig, logger = logger_js_1.TurboWinstonLogger.default, token = 'arweave', }) {
28
28
  this.logger = logger;
29
29
  this.httpService = new http_js_1.TurboHTTPService({
30
30
  url: `${url}/v1`,
@@ -197,7 +197,7 @@ class TurboUnauthenticatedPaymentService {
197
197
  exports.TurboUnauthenticatedPaymentService = TurboUnauthenticatedPaymentService;
198
198
  // NOTE: to avoid redundancy, we use inheritance here - but generally prefer composition over inheritance
199
199
  class TurboAuthenticatedPaymentService extends TurboUnauthenticatedPaymentService {
200
- constructor({ url = exports.defaultPaymentServiceURL, retryConfig, signer, logger = logger_js_1.ConsoleTurboLogger.default, token = 'arweave', tokenTools, }) {
200
+ constructor({ url = exports.defaultPaymentServiceURL, retryConfig, signer, logger = logger_js_1.TurboWinstonLogger.default, token = 'arweave', tokenTools, }) {
201
201
  super({ url, retryConfig, logger, token });
202
202
  this.signer = signer;
203
203
  this.tokenTools = tokenTools;
@@ -38,7 +38,7 @@ const logger_js_1 = require("./logger.js");
38
38
  * Abstract class for signing TurboDataItems.
39
39
  */
40
40
  class TurboDataItemAbstractSigner {
41
- constructor({ signer, logger = logger_js_1.ConsoleTurboLogger.default, token, walletAdapter, }) {
41
+ constructor({ signer, logger = logger_js_1.TurboWinstonLogger.default, token, walletAdapter, }) {
42
42
  this.logger = logger;
43
43
  this.signer = signer;
44
44
  this.token = token;
@@ -30,7 +30,7 @@ const ArweaveClass =
30
30
  // @ts-ignore -- Access the correct class constructor for Arweave
31
31
  arweave_1.default.default?.default || arweave_1.default.default || arweave_1.default;
32
32
  class ArweaveToken {
33
- constructor({ gatewayUrl = 'https://arweave.net', arweave, logger = logger_js_1.ConsoleTurboLogger.default, mintU = true, pollingOptions = {
33
+ constructor({ gatewayUrl = 'https://arweave.net', arweave, logger = logger_js_1.TurboWinstonLogger.default, mintU = true, pollingOptions = {
34
34
  maxAttempts: 10,
35
35
  pollingIntervalMs: 3_000,
36
36
  initialBackoffMs: 7_000,
@@ -25,7 +25,7 @@ exports.weiToTokenAmount = weiToTokenAmount;
25
25
  const ETHToTokenAmount = (eth) => new bignumber_js_1.BigNumber(eth).times(1e18).valueOf();
26
26
  exports.ETHToTokenAmount = ETHToTokenAmount;
27
27
  class EthereumToken {
28
- constructor({ logger = logger_js_1.ConsoleTurboLogger.default, gatewayUrl = constants_js_1.defaultProdGatewayUrls.ethereum, pollingOptions = {
28
+ constructor({ logger = logger_js_1.TurboWinstonLogger.default, gatewayUrl = constants_js_1.defaultProdGatewayUrls.ethereum, pollingOptions = {
29
29
  maxAttempts: 10,
30
30
  pollingIntervalMs: 4_000,
31
31
  initialBackoffMs: 10_000,
@@ -36,7 +36,7 @@ exports.ukyveToTokenAmount = ukyveToTokenAmount;
36
36
  const KYVEToTokenAmount = (sol) => new bignumber_js_1.BigNumber(sol).times(1e6).valueOf();
37
37
  exports.KYVEToTokenAmount = KYVEToTokenAmount;
38
38
  class KyveToken {
39
- constructor({ logger = logger_js_1.ConsoleTurboLogger.default, gatewayUrl = constants_js_1.defaultProdGatewayUrls.kyve, pollingOptions = {
39
+ constructor({ logger = logger_js_1.TurboWinstonLogger.default, gatewayUrl = constants_js_1.defaultProdGatewayUrls.kyve, pollingOptions = {
40
40
  maxAttempts: 5,
41
41
  pollingIntervalMs: 1_000,
42
42
  initialBackoffMs: 500,
@@ -21,7 +21,7 @@ const logger_js_1 = require("../logger.js");
21
21
  const ethereum_js_1 = require("./ethereum.js");
22
22
  exports.POLToTokenAmount = ethereum_js_1.ETHToTokenAmount;
23
23
  class PolygonToken extends ethereum_js_1.EthereumToken {
24
- constructor({ logger = logger_js_1.ConsoleTurboLogger.default, gatewayUrl = constants_js_1.defaultProdGatewayUrls.pol, pollingOptions = {
24
+ constructor({ logger = logger_js_1.TurboWinstonLogger.default, gatewayUrl = constants_js_1.defaultProdGatewayUrls.pol, pollingOptions = {
25
25
  maxAttempts: 10,
26
26
  pollingIntervalMs: 4_000,
27
27
  initialBackoffMs: 5_000,
@@ -31,7 +31,7 @@ exports.lamportToTokenAmount = lamportToTokenAmount;
31
31
  const SOLToTokenAmount = (sol) => new bignumber_js_1.BigNumber(sol).times(1e9).valueOf();
32
32
  exports.SOLToTokenAmount = SOLToTokenAmount;
33
33
  class SolanaToken {
34
- constructor({ logger = logger_js_1.ConsoleTurboLogger.default, gatewayUrl = constants_js_1.defaultProdGatewayUrls.solana, pollingOptions = {
34
+ constructor({ logger = logger_js_1.TurboWinstonLogger.default, gatewayUrl = constants_js_1.defaultProdGatewayUrls.solana, pollingOptions = {
35
35
  maxAttempts: 10,
36
36
  pollingIntervalMs: 2_500,
37
37
  initialBackoffMs: 500,
@@ -33,7 +33,7 @@ exports.creditSharingTagNames = {
33
33
  exports.developmentUploadServiceURL = 'https://upload.ardrive.dev';
34
34
  exports.defaultUploadServiceURL = 'https://upload.ardrive.io';
35
35
  class TurboUnauthenticatedUploadService {
36
- constructor({ url = exports.defaultUploadServiceURL, logger = logger_js_1.ConsoleTurboLogger.default, retryConfig = (0, axiosClient_js_1.defaultRetryConfig)(logger), token = 'arweave', }) {
36
+ constructor({ url = exports.defaultUploadServiceURL, logger = logger_js_1.TurboWinstonLogger.default, retryConfig = (0, axiosClient_js_1.defaultRetryConfig)(logger), token = 'arweave', }) {
37
37
  this.token = token;
38
38
  this.logger = logger;
39
39
  this.httpService = new http_js_1.TurboHTTPService({
@@ -50,7 +50,7 @@ exports.defaultRequestHeaders = {
50
50
  'x-turbo-source-version': version_js_1.version,
51
51
  'x-turbo-source-identifier': 'turbo-sdk',
52
52
  };
53
- const defaultRetryConfig = (logger = logger_js_1.ConsoleTurboLogger.default) => ({
53
+ const defaultRetryConfig = (logger = logger_js_1.TurboWinstonLogger.default) => ({
54
54
  retryDelay: axios_retry_1.default.exponentialDelay,
55
55
  retries: 5,
56
56
  retryCondition: (error) => {
@@ -63,7 +63,7 @@ const defaultRetryConfig = (logger = logger_js_1.ConsoleTurboLogger.default) =>
63
63
  },
64
64
  });
65
65
  exports.defaultRetryConfig = defaultRetryConfig;
66
- const createAxiosInstance = ({ logger = logger_js_1.ConsoleTurboLogger.default, axiosConfig = {}, retryConfig = (0, exports.defaultRetryConfig)(logger), } = {}) => {
66
+ const createAxiosInstance = ({ logger = logger_js_1.TurboWinstonLogger.default, axiosConfig = {}, retryConfig = (0, exports.defaultRetryConfig)(logger), } = {}) => {
67
67
  const axiosInstance = axios_1.default.create({
68
68
  ...axiosConfig,
69
69
  headers: {
@@ -15,17 +15,17 @@
15
15
  */
16
16
  import { EthereumSigner, HexInjectedSolanaSigner, HexSolanaSigner, InjectedEthereumSigner, } from '@dha-team/arbundles';
17
17
  import { isEthereumWalletAdapter, isSolanaWalletAdapter, } from '../types.js';
18
- import { ConsoleTurboLogger } from './logger.js';
18
+ import { TurboWinstonLogger } from './logger.js';
19
19
  import { TurboAuthenticatedPaymentService, TurboUnauthenticatedPaymentService, } from './payment.js';
20
20
  import { defaultTokenMap } from './token/index.js';
21
21
  import { TurboAuthenticatedClient, TurboUnauthenticatedClient, } from './turbo.js';
22
22
  import { TurboUnauthenticatedUploadService } from './upload.js';
23
23
  export class TurboBaseFactory {
24
- /* @deprecated - use ConsoleTurboLogger directly */
24
+ /* @deprecated - use TurboWinstonLogger directly */
25
25
  static setLogLevel(level) {
26
26
  this.logger.setLogLevel(level);
27
27
  }
28
- /* @deprecated - use ConsoleTurboLogger directly */
28
+ /* @deprecated - use TurboWinstonLogger directly */
29
29
  static setLogFormat(format) {
30
30
  this.logger.setLogFormat(format);
31
31
  }
@@ -121,4 +121,4 @@ export class TurboBaseFactory {
121
121
  throw new Error('Unsupported wallet adapter -- wallet adapter is currently only supported for Solana and Ethereum');
122
122
  }
123
123
  }
124
- TurboBaseFactory.logger = ConsoleTurboLogger.default;
124
+ TurboBaseFactory.logger = TurboWinstonLogger.default;
@@ -1,56 +1,88 @@
1
+ /**
2
+ * Copyright (C) 2022-2024 Permanent Data Solutions, Inc.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { createLogger, format, transports, } from 'winston';
1
17
  import { version } from '../version.js';
2
- export class ConsoleTurboLogger {
18
+ export class TurboWinstonLogger {
3
19
  constructor({ level = 'info', logFormat = 'simple', } = {}) {
4
- this.level = level;
5
- this.format = logFormat;
6
- this.silent = level === 'none';
7
- }
8
- shouldLog(level) {
9
- if (this.silent)
10
- return false;
11
- const order = ['none', 'error', 'info', 'debug'];
12
- return order.indexOf(level) <= order.indexOf(this.level);
13
- }
14
- formatMessage(level, message, args) {
15
- const base = {
16
- level,
17
- message,
18
- args,
19
- version,
20
- timestamp: new Date().toISOString(),
21
- };
22
- return this.format === 'json'
23
- ? JSON.stringify(base)
24
- : `[${base.timestamp}] [${level.toUpperCase()}] ${message} ${args
25
- .map((a) => JSON.stringify(a))
26
- .join(' ')}`;
20
+ this.silent = false;
21
+ if (level === 'none') {
22
+ this.silent = true;
23
+ }
24
+ if (typeof window !== 'undefined') {
25
+ this.logger = console;
26
+ }
27
+ else {
28
+ this.logger = createLogger({
29
+ level,
30
+ silent: this.silent,
31
+ defaultMeta: {
32
+ name: 'turbo-sdk',
33
+ version,
34
+ },
35
+ format: format.combine(format.timestamp(), format.json()),
36
+ transports: [
37
+ new transports.Console({
38
+ format: getLogFormat(logFormat),
39
+ }),
40
+ ],
41
+ });
42
+ }
27
43
  }
28
44
  info(message, ...args) {
29
- if (this.shouldLog('info')) {
30
- console.info(this.formatMessage('info', message, args));
31
- }
45
+ if (this.silent)
46
+ return;
47
+ this.logger.info(message, ...args);
32
48
  }
33
49
  warn(message, ...args) {
34
- if (this.shouldLog('info')) {
35
- console.warn(this.formatMessage('warn', message, args));
36
- }
50
+ if (this.silent)
51
+ return;
52
+ this.logger.warn(message, ...args);
37
53
  }
38
54
  error(message, ...args) {
39
- if (this.shouldLog('error')) {
40
- console.error(this.formatMessage('error', message, args));
41
- }
55
+ if (this.silent)
56
+ return;
57
+ this.logger.error(message, ...args);
42
58
  }
43
59
  debug(message, ...args) {
44
- if (this.shouldLog('debug')) {
45
- console.debug(this.formatMessage('debug', message, args));
46
- }
60
+ if (this.silent)
61
+ return;
62
+ this.logger.debug(message, ...args);
47
63
  }
48
64
  setLogLevel(level) {
49
- this.level = level;
50
65
  this.silent = level === 'none';
66
+ if ('silent' in this.logger) {
67
+ this.logger.silent = level === 'none';
68
+ }
69
+ if ('level' in this.logger) {
70
+ this.logger.level = level;
71
+ }
51
72
  }
52
73
  setLogFormat(logFormat) {
53
- this.format = logFormat;
74
+ if ('format' in this.logger) {
75
+ this.logger.format = getLogFormat(logFormat);
76
+ }
54
77
  }
55
78
  }
56
- ConsoleTurboLogger.default = new ConsoleTurboLogger();
79
+ TurboWinstonLogger.default = new TurboWinstonLogger();
80
+ function getLogFormat(logFormat) {
81
+ return format.combine(format((info) => {
82
+ if (info.stack && info.level !== 'error') {
83
+ delete info.stack;
84
+ }
85
+ return info;
86
+ })(), format.errors({ stack: true }), // Ensure errors show a stack trace
87
+ format.timestamp(), logFormat === 'json' ? format.json() : format.simple());
88
+ }
@@ -16,12 +16,12 @@
16
16
  import { BigNumber } from 'bignumber.js';
17
17
  import { Buffer } from 'node:buffer';
18
18
  import { TurboHTTPService } from './http.js';
19
- import { ConsoleTurboLogger } from './logger.js';
19
+ import { TurboWinstonLogger } from './logger.js';
20
20
  import { exponentMap, tokenToBaseMap } from './token/index.js';
21
21
  export const developmentPaymentServiceURL = 'https://payment.ardrive.dev';
22
22
  export const defaultPaymentServiceURL = 'https://payment.ardrive.io';
23
23
  export class TurboUnauthenticatedPaymentService {
24
- constructor({ url = defaultPaymentServiceURL, retryConfig, logger = ConsoleTurboLogger.default, token = 'arweave', }) {
24
+ constructor({ url = defaultPaymentServiceURL, retryConfig, logger = TurboWinstonLogger.default, token = 'arweave', }) {
25
25
  this.logger = logger;
26
26
  this.httpService = new TurboHTTPService({
27
27
  url: `${url}/v1`,
@@ -193,7 +193,7 @@ export class TurboUnauthenticatedPaymentService {
193
193
  }
194
194
  // NOTE: to avoid redundancy, we use inheritance here - but generally prefer composition over inheritance
195
195
  export class TurboAuthenticatedPaymentService extends TurboUnauthenticatedPaymentService {
196
- constructor({ url = defaultPaymentServiceURL, retryConfig, signer, logger = ConsoleTurboLogger.default, token = 'arweave', tokenTools, }) {
196
+ constructor({ url = defaultPaymentServiceURL, retryConfig, signer, logger = TurboWinstonLogger.default, token = 'arweave', tokenTools, }) {
197
197
  super({ url, retryConfig, logger, token });
198
198
  this.signer = signer;
199
199
  this.tokenTools = tokenTools;
@@ -27,12 +27,12 @@ import { Buffer } from 'node:buffer';
27
27
  import nacl from 'tweetnacl';
28
28
  import { isEthereumWalletAdapter, } from '../types.js';
29
29
  import { fromB64Url, ownerToAddress as ownerToB64Address, toB64Url, } from '../utils/base64.js';
30
- import { ConsoleTurboLogger } from './logger.js';
30
+ import { TurboWinstonLogger } from './logger.js';
31
31
  /**
32
32
  * Abstract class for signing TurboDataItems.
33
33
  */
34
34
  export class TurboDataItemAbstractSigner {
35
- constructor({ signer, logger = ConsoleTurboLogger.default, token, walletAdapter, }) {
35
+ constructor({ signer, logger = TurboWinstonLogger.default, token, walletAdapter, }) {
36
36
  this.logger = logger;
37
37
  this.signer = signer;
38
38
  this.token = token;
@@ -18,13 +18,13 @@ import { BigNumber } from 'bignumber.js';
18
18
  import { Buffer } from 'node:buffer';
19
19
  import { sha256B64Url, toB64Url } from '../../utils/base64.js';
20
20
  import { sleep } from '../../utils/common.js';
21
- import { ConsoleTurboLogger } from '../logger.js';
21
+ import { TurboWinstonLogger } from '../logger.js';
22
22
  const ArweaveClass =
23
23
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
24
24
  // @ts-ignore -- Access the correct class constructor for Arweave
25
25
  ArweaveModule.default?.default || ArweaveModule.default || ArweaveModule;
26
26
  export class ArweaveToken {
27
- constructor({ gatewayUrl = 'https://arweave.net', arweave, logger = ConsoleTurboLogger.default, mintU = true, pollingOptions = {
27
+ constructor({ gatewayUrl = 'https://arweave.net', arweave, logger = TurboWinstonLogger.default, mintU = true, pollingOptions = {
28
28
  maxAttempts: 10,
29
29
  pollingIntervalMs: 3_000,
30
30
  initialBackoffMs: 7_000,
@@ -16,11 +16,11 @@
16
16
  import { BigNumber } from 'bignumber.js';
17
17
  import { ethers } from 'ethers';
18
18
  import { defaultProdGatewayUrls } from '../../cli/constants.js';
19
- import { ConsoleTurboLogger } from '../logger.js';
19
+ import { TurboWinstonLogger } from '../logger.js';
20
20
  export const weiToTokenAmount = (wei) => wei;
21
21
  export const ETHToTokenAmount = (eth) => new BigNumber(eth).times(1e18).valueOf();
22
22
  export class EthereumToken {
23
- constructor({ logger = ConsoleTurboLogger.default, gatewayUrl = defaultProdGatewayUrls.ethereum, pollingOptions = {
23
+ constructor({ logger = TurboWinstonLogger.default, gatewayUrl = defaultProdGatewayUrls.ethereum, pollingOptions = {
24
24
  maxAttempts: 10,
25
25
  pollingIntervalMs: 4_000,
26
26
  initialBackoffMs: 10_000,
@@ -21,14 +21,14 @@ import { BigNumber } from 'bignumber.js';
21
21
  import { defaultProdGatewayUrls } from '../../cli/constants.js';
22
22
  import { createAxiosInstance } from '../../utils/axiosClient.js';
23
23
  import { sleep } from '../../utils/common.js';
24
- import { ConsoleTurboLogger } from '../logger.js';
24
+ import { TurboWinstonLogger } from '../logger.js';
25
25
  function hasKyveTxResponse(response) {
26
26
  return response.tx_response !== undefined;
27
27
  }
28
28
  export const ukyveToTokenAmount = (winston) => winston;
29
29
  export const KYVEToTokenAmount = (sol) => new BigNumber(sol).times(1e6).valueOf();
30
30
  export class KyveToken {
31
- constructor({ logger = ConsoleTurboLogger.default, gatewayUrl = defaultProdGatewayUrls.kyve, pollingOptions = {
31
+ constructor({ logger = TurboWinstonLogger.default, gatewayUrl = defaultProdGatewayUrls.kyve, pollingOptions = {
32
32
  maxAttempts: 5,
33
33
  pollingIntervalMs: 1_000,
34
34
  initialBackoffMs: 500,
@@ -14,11 +14,11 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import { defaultProdGatewayUrls } from '../../cli/constants.js';
17
- import { ConsoleTurboLogger } from '../logger.js';
17
+ import { TurboWinstonLogger } from '../logger.js';
18
18
  import { ETHToTokenAmount, EthereumToken } from './ethereum.js';
19
19
  export const POLToTokenAmount = ETHToTokenAmount;
20
20
  export class PolygonToken extends EthereumToken {
21
- constructor({ logger = ConsoleTurboLogger.default, gatewayUrl = defaultProdGatewayUrls.pol, pollingOptions = {
21
+ constructor({ logger = TurboWinstonLogger.default, gatewayUrl = defaultProdGatewayUrls.pol, pollingOptions = {
22
22
  maxAttempts: 10,
23
23
  pollingIntervalMs: 4_000,
24
24
  initialBackoffMs: 5_000,
@@ -19,11 +19,11 @@ import bs58 from 'bs58';
19
19
  import { Buffer } from 'node:buffer';
20
20
  import { defaultProdGatewayUrls } from '../../cli/constants.js';
21
21
  import { sleep } from '../../utils/common.js';
22
- import { ConsoleTurboLogger } from '../logger.js';
22
+ import { TurboWinstonLogger } from '../logger.js';
23
23
  export const lamportToTokenAmount = (winston) => winston;
24
24
  export const SOLToTokenAmount = (sol) => new BigNumber(sol).times(1e9).valueOf();
25
25
  export class SolanaToken {
26
- constructor({ logger = ConsoleTurboLogger.default, gatewayUrl = defaultProdGatewayUrls.solana, pollingOptions = {
26
+ constructor({ logger = TurboWinstonLogger.default, gatewayUrl = defaultProdGatewayUrls.solana, pollingOptions = {
27
27
  maxAttempts: 10,
28
28
  pollingIntervalMs: 2_500,
29
29
  initialBackoffMs: 500,
@@ -20,7 +20,7 @@ import { defaultRetryConfig } from '../utils/axiosClient.js';
20
20
  import { sleep } from '../utils/common.js';
21
21
  import { FailedRequestError } from '../utils/errors.js';
22
22
  import { TurboHTTPService } from './http.js';
23
- import { ConsoleTurboLogger } from './logger.js';
23
+ import { TurboWinstonLogger } from './logger.js';
24
24
  export const creditSharingTagNames = {
25
25
  shareCredits: 'x-approve-payment',
26
26
  sharedWincAmount: 'x-amount',
@@ -30,7 +30,7 @@ export const creditSharingTagNames = {
30
30
  export const developmentUploadServiceURL = 'https://upload.ardrive.dev';
31
31
  export const defaultUploadServiceURL = 'https://upload.ardrive.io';
32
32
  export class TurboUnauthenticatedUploadService {
33
- constructor({ url = defaultUploadServiceURL, logger = ConsoleTurboLogger.default, retryConfig = defaultRetryConfig(logger), token = 'arweave', }) {
33
+ constructor({ url = defaultUploadServiceURL, logger = TurboWinstonLogger.default, retryConfig = defaultRetryConfig(logger), token = 'arweave', }) {
34
34
  this.token = token;
35
35
  this.logger = logger;
36
36
  this.httpService = new TurboHTTPService({
@@ -15,13 +15,13 @@
15
15
  */
16
16
  import axios, { CanceledError } from 'axios';
17
17
  import axiosRetry from 'axios-retry';
18
- import { ConsoleTurboLogger } from '../common/logger.js';
18
+ import { TurboWinstonLogger } from '../common/logger.js';
19
19
  import { version } from '../version.js';
20
20
  export const defaultRequestHeaders = {
21
21
  'x-turbo-source-version': version,
22
22
  'x-turbo-source-identifier': 'turbo-sdk',
23
23
  };
24
- export const defaultRetryConfig = (logger = ConsoleTurboLogger.default) => ({
24
+ export const defaultRetryConfig = (logger = TurboWinstonLogger.default) => ({
25
25
  retryDelay: axiosRetry.exponentialDelay,
26
26
  retries: 5,
27
27
  retryCondition: (error) => {
@@ -33,7 +33,7 @@ export const defaultRetryConfig = (logger = ConsoleTurboLogger.default) => ({
33
33
  logger.debug(`Request failed, ${error}. Retry attempt #${retryCount}...`);
34
34
  },
35
35
  });
36
- export const createAxiosInstance = ({ logger = ConsoleTurboLogger.default, axiosConfig = {}, retryConfig = defaultRetryConfig(logger), } = {}) => {
36
+ export const createAxiosInstance = ({ logger = TurboWinstonLogger.default, axiosConfig = {}, retryConfig = defaultRetryConfig(logger), } = {}) => {
37
37
  const axiosInstance = axios.create({
38
38
  ...axiosConfig,
39
39
  headers: {
@@ -1,16 +1,16 @@
1
1
  import { GetTurboSignerParams, TurboAuthenticatedConfiguration, TurboAuthenticatedUploadServiceConfiguration, TurboAuthenticatedUploadServiceInterface, TurboUnauthenticatedConfiguration } from '../types.js';
2
- import { ConsoleTurboLogger, LogFormat, LogLevel } from './logger.js';
2
+ import { TurboWinstonLogger } from './logger.js';
3
3
  import { TurboDataItemAbstractSigner } from './signer.js';
4
4
  import { TurboAuthenticatedClient, TurboUnauthenticatedClient } from './turbo.js';
5
5
  export declare abstract class TurboBaseFactory {
6
- protected static logger: ConsoleTurboLogger;
7
- static setLogLevel(level: LogLevel): void;
8
- static setLogFormat(format: LogFormat): void;
6
+ protected static logger: TurboWinstonLogger;
7
+ static setLogLevel(level: string): void;
8
+ static setLogFormat(format: string): void;
9
9
  static unauthenticated({ paymentServiceConfig, uploadServiceConfig, token, }?: TurboUnauthenticatedConfiguration): TurboUnauthenticatedClient;
10
10
  protected abstract getSigner({ providedPrivateKey, providedSigner, providedWalletAdapter, logger, token, }: GetTurboSignerParams): TurboDataItemAbstractSigner;
11
11
  protected abstract getAuthenticatedUploadService(config: TurboAuthenticatedUploadServiceConfiguration): TurboAuthenticatedUploadServiceInterface;
12
12
  protected getAuthenticatedTurbo({ privateKey, signer: providedSigner, paymentServiceConfig, uploadServiceConfig, token, gatewayUrl, tokenMap, tokenTools, logger, walletAdapter, }: TurboAuthenticatedConfiguration & {
13
- logger: ConsoleTurboLogger;
13
+ logger: TurboWinstonLogger;
14
14
  }): TurboAuthenticatedClient;
15
15
  private signerFromAdapter;
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/common/factory.ts"],"names":[],"mappings":"AAsBA,OAAO,EACL,oBAAoB,EAEpB,+BAA+B,EAC/B,4CAA4C,EAC5C,wCAAwC,EACxC,iCAAiC,EAIlC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAKtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,YAAY,CAAC;AAGpB,8BAAsB,gBAAgB;IACpC,SAAS,CAAC,MAAM,CAAC,MAAM,qBAA8B;IAGrD,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ;IAKlC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS;IAIrC,MAAM,CAAC,eAAe,CAAC,EACrB,oBAAyB,EACzB,mBAAwB,EACxB,KAAK,GACN,GAAE,iCAAsC;IAqBzC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAC3B,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,MAAM,EACN,KAAK,GACN,EAAE,oBAAoB,GAAG,2BAA2B;IAErD,SAAS,CAAC,QAAQ,CAAC,6BAA6B,CAC9C,MAAM,EAAE,4CAA4C,GACnD,wCAAwC;IAE3C,SAAS,CAAC,qBAAqB,CAAC,EAC9B,UAAU,EACV,MAAM,EAAE,cAAc,EACtB,oBAAyB,EACzB,mBAAwB,EACxB,KAAK,EACL,UAAU,EACV,QAAQ,EACR,UAAU,EACV,MAAM,EACN,aAAa,GACd,EAAE,+BAA+B,GAAG;QAAE,MAAM,EAAE,kBAAkB,CAAA;KAAE;IA6DnE,OAAO,CAAC,iBAAiB;CAuB1B"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/common/factory.ts"],"names":[],"mappings":"AAsBA,OAAO,EACL,oBAAoB,EAEpB,+BAA+B,EAC/B,4CAA4C,EAC5C,wCAAwC,EACxC,iCAAiC,EAIlC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,YAAY,CAAC;AAGpB,8BAAsB,gBAAgB;IACpC,SAAS,CAAC,MAAM,CAAC,MAAM,qBAA8B;IAGrD,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM;IAKhC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM;IAIlC,MAAM,CAAC,eAAe,CAAC,EACrB,oBAAyB,EACzB,mBAAwB,EACxB,KAAK,GACN,GAAE,iCAAsC;IAqBzC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAC3B,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,MAAM,EACN,KAAK,GACN,EAAE,oBAAoB,GAAG,2BAA2B;IAErD,SAAS,CAAC,QAAQ,CAAC,6BAA6B,CAC9C,MAAM,EAAE,4CAA4C,GACnD,wCAAwC;IAE3C,SAAS,CAAC,qBAAqB,CAAC,EAC9B,UAAU,EACV,MAAM,EAAE,cAAc,EACtB,oBAAyB,EACzB,mBAAwB,EACxB,KAAK,EACL,UAAU,EACV,QAAQ,EACR,UAAU,EACV,MAAM,EACN,aAAa,GACd,EAAE,+BAA+B,GAAG;QAAE,MAAM,EAAE,kBAAkB,CAAA;KAAE;IA6DnE,OAAO,CAAC,iBAAiB;CAuB1B"}