@bitgo/sdk-coin-algo 2.3.15 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.mocharc.yml +1 -1
- package/CHANGELOG.md +6 -0
- package/LICENSE +191 -0
- package/dist/src/algo.d.ts +291 -0
- package/dist/src/algo.d.ts.map +1 -0
- package/dist/src/algo.js +637 -0
- package/dist/src/algoToken.d.ts +32 -0
- package/dist/src/algoToken.d.ts.map +1 -0
- package/dist/src/algoToken.js +82 -0
- package/dist/src/builder.d.ts +3 -0
- package/dist/src/builder.d.ts.map +1 -0
- package/dist/src/builder.js +10 -0
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +45 -0
- package/dist/src/lib/assetTransferBuilder.d.ts +42 -0
- package/dist/src/lib/assetTransferBuilder.d.ts.map +1 -0
- package/dist/src/lib/assetTransferBuilder.js +105 -0
- package/dist/src/lib/errors.d.ts +11 -0
- package/dist/src/lib/errors.d.ts.map +1 -0
- package/dist/src/lib/errors.js +27 -0
- package/dist/src/lib/ifaces.d.ts +45 -0
- package/dist/src/lib/ifaces.d.ts.map +1 -0
- package/dist/src/lib/ifaces.js +3 -0
- package/dist/src/lib/index.d.ts +13 -0
- package/dist/src/lib/index.d.ts.map +1 -0
- package/dist/src/lib/index.js +61 -0
- package/dist/src/lib/keyPair.d.ts +25 -0
- package/dist/src/lib/keyPair.d.ts.map +1 -0
- package/dist/src/lib/keyPair.js +91 -0
- package/dist/src/lib/keyRegistrationBuilder.d.ts +104 -0
- package/dist/src/lib/keyRegistrationBuilder.d.ts.map +1 -0
- package/dist/src/lib/keyRegistrationBuilder.js +240 -0
- package/dist/src/lib/seedEncoding.d.ts +25 -0
- package/dist/src/lib/seedEncoding.d.ts.map +1 -0
- package/dist/src/lib/seedEncoding.js +111 -0
- package/dist/src/lib/transaction.d.ts +75 -0
- package/dist/src/lib/transaction.d.ts.map +1 -0
- package/dist/src/lib/transaction.js +250 -0
- package/dist/src/lib/transactionBuilder.d.ts +210 -0
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder.js +389 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts +16 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilderFactory.js +52 -0
- package/dist/src/lib/transferBuilder.d.ts +40 -0
- package/dist/src/lib/transferBuilder.d.ts.map +1 -0
- package/dist/src/lib/transferBuilder.js +89 -0
- package/dist/src/lib/txnSchema.d.ts +7 -0
- package/dist/src/lib/txnSchema.d.ts.map +1 -0
- package/dist/src/lib/txnSchema.js +68 -0
- package/dist/src/lib/utils.d.ts +254 -0
- package/dist/src/lib/utils.d.ts.map +1 -0
- package/dist/src/lib/utils.js +563 -0
- package/dist/src/register.d.ts +3 -0
- package/dist/src/register.d.ts.map +1 -0
- package/dist/src/register.js +15 -0
- package/dist/src/seedValidator.d.ts +31 -0
- package/dist/src/seedValidator.d.ts.map +1 -0
- package/dist/src/seedValidator.js +103 -0
- package/dist/src/talgo.d.ts +12 -0
- package/dist/src/talgo.d.ts.map +1 -0
- package/dist/src/talgo.js +20 -0
- package/package.json +6 -6
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @prettier
|
|
3
|
+
*/
|
|
4
|
+
import { Algo } from './algo';
|
|
5
|
+
import { BitGoBase, CoinConstructor, NamedCoinConstructor } from '@bitgo/sdk-core';
|
|
6
|
+
import { AlgoTokenConfig } from '@bitgo/statics';
|
|
7
|
+
export declare class AlgoToken extends Algo {
|
|
8
|
+
static readonly tokenNamePattern: RegExp;
|
|
9
|
+
static readonly tokenPattern: RegExp;
|
|
10
|
+
readonly tokenConfig: AlgoTokenConfig;
|
|
11
|
+
private readonly _code;
|
|
12
|
+
constructor(bitgo: BitGoBase, tokenConfig: AlgoTokenConfig);
|
|
13
|
+
static createTokenConstructor(config: AlgoTokenConfig): CoinConstructor;
|
|
14
|
+
static createTokenConstructors(tokenConfigs?: AlgoTokenConfig[]): NamedCoinConstructor[];
|
|
15
|
+
get type(): string;
|
|
16
|
+
get name(): string;
|
|
17
|
+
get coin(): string;
|
|
18
|
+
get network(): string;
|
|
19
|
+
get code(): string;
|
|
20
|
+
get issuer(): string | undefined;
|
|
21
|
+
get decimalPlaces(): number;
|
|
22
|
+
getChain(): string;
|
|
23
|
+
getBaseChain(): string;
|
|
24
|
+
getFullName(): string;
|
|
25
|
+
getBaseFactor(): number;
|
|
26
|
+
/**
|
|
27
|
+
* Flag for sending value of 0
|
|
28
|
+
* @returns {boolean} True if okay to send 0 value, false otherwise
|
|
29
|
+
*/
|
|
30
|
+
valuelessTransferAllowed(): boolean;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=algoToken.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"algoToken.d.ts","sourceRoot":"","sources":["../../src/algoToken.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAgB,eAAe,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACjG,OAAO,EAAE,eAAe,EAAuB,MAAM,gBAAgB,CAAC;AAEtE,qBAAa,SAAU,SAAQ,IAAI;IACjC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,SAAqC;IACrE,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAW;IAC/C,SAAgB,WAAW,EAAE,eAAe,CAAC;IAC7C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEnB,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe;IAkB1D,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe;IAIvE,MAAM,CAAC,uBAAuB,CAAC,YAAY,GAAE,eAAe,EAAwB,GAAG,oBAAoB,EAAE;IAW7G,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM;IAItB,WAAW,IAAI,MAAM;IAIrB,aAAa,IAAI,MAAM;IAIvB;;;OAGG;IACH,wBAAwB,IAAI,OAAO;CAGpC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AlgoToken = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @prettier
|
|
6
|
+
*/
|
|
7
|
+
const algo_1 = require("./algo");
|
|
8
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
9
|
+
const statics_1 = require("@bitgo/statics");
|
|
10
|
+
class AlgoToken extends algo_1.Algo {
|
|
11
|
+
constructor(bitgo, tokenConfig) {
|
|
12
|
+
super(bitgo);
|
|
13
|
+
this.tokenConfig = tokenConfig;
|
|
14
|
+
const match = this.tokenConfig.type.match(AlgoToken.tokenNamePattern) || [];
|
|
15
|
+
const tokenCoin = match[1];
|
|
16
|
+
this._code = match[2];
|
|
17
|
+
const token = match[3];
|
|
18
|
+
if (tokenCoin !== tokenConfig.coin) {
|
|
19
|
+
throw new sdk_core_1.BitGoJsError(`invalid coin found in token: ${this.tokenConfig.type}`);
|
|
20
|
+
}
|
|
21
|
+
if (!token) {
|
|
22
|
+
throw new sdk_core_1.BitGoJsError(`invalid token: ${this.tokenConfig.type}`);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
static createTokenConstructor(config) {
|
|
26
|
+
return (bitgo) => new AlgoToken(bitgo, config);
|
|
27
|
+
}
|
|
28
|
+
static createTokenConstructors(tokenConfigs = statics_1.formattedAlgoTokens) {
|
|
29
|
+
const tokensCtors = [];
|
|
30
|
+
tokenConfigs.forEach((config) => {
|
|
31
|
+
tokensCtors.push({ name: config.type, coinConstructor: AlgoToken.createTokenConstructor(config) });
|
|
32
|
+
if (config.alias) {
|
|
33
|
+
tokensCtors.push({ name: config.alias, coinConstructor: AlgoToken.createTokenConstructor(config) });
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
return tokensCtors;
|
|
37
|
+
}
|
|
38
|
+
get type() {
|
|
39
|
+
return this.tokenConfig.type;
|
|
40
|
+
}
|
|
41
|
+
get name() {
|
|
42
|
+
return this.tokenConfig.name;
|
|
43
|
+
}
|
|
44
|
+
get coin() {
|
|
45
|
+
return this.tokenConfig.coin;
|
|
46
|
+
}
|
|
47
|
+
get network() {
|
|
48
|
+
return this.tokenConfig.network;
|
|
49
|
+
}
|
|
50
|
+
get code() {
|
|
51
|
+
return this._code;
|
|
52
|
+
}
|
|
53
|
+
get issuer() {
|
|
54
|
+
return undefined; // Not defined for Algorand
|
|
55
|
+
}
|
|
56
|
+
get decimalPlaces() {
|
|
57
|
+
return this.tokenConfig.decimalPlaces;
|
|
58
|
+
}
|
|
59
|
+
getChain() {
|
|
60
|
+
return this.tokenConfig.type;
|
|
61
|
+
}
|
|
62
|
+
getBaseChain() {
|
|
63
|
+
return this.coin;
|
|
64
|
+
}
|
|
65
|
+
getFullName() {
|
|
66
|
+
return 'Algo Token';
|
|
67
|
+
}
|
|
68
|
+
getBaseFactor() {
|
|
69
|
+
return Math.pow(10, this.tokenConfig.decimalPlaces);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Flag for sending value of 0
|
|
73
|
+
* @returns {boolean} True if okay to send 0 value, false otherwise
|
|
74
|
+
*/
|
|
75
|
+
valuelessTransferAllowed() {
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.AlgoToken = AlgoToken;
|
|
80
|
+
AlgoToken.tokenNamePattern = /^([^:]+):(?:([^.]+)-)?([0-9]+)$/;
|
|
81
|
+
AlgoToken.tokenPattern = /[0-9]/;
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxnb1Rva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FsZ29Ub2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILGlDQUE4QjtBQUM5Qiw4Q0FBaUc7QUFDakcsNENBQXNFO0FBRXRFLE1BQWEsU0FBVSxTQUFRLFdBQUk7SUFNakMsWUFBWSxLQUFnQixFQUFFLFdBQTRCO1FBQ3hELEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNiLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBRS9CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFNUUsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2QixJQUFJLFNBQVMsS0FBSyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbkMsTUFBTSxJQUFJLHVCQUFZLENBQUMsZ0NBQWdDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNsRixDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLHVCQUFZLENBQUMsa0JBQWtCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNwRSxDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxNQUF1QjtRQUNuRCxPQUFPLENBQUMsS0FBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSSxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxNQUFNLENBQUMsdUJBQXVCLENBQUMsZUFBa0MsNkJBQW1CO1FBQ2xGLE1BQU0sV0FBVyxHQUEyQixFQUFFLENBQUM7UUFDL0MsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzlCLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsU0FBUyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDakIsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxTQUFTLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3RHLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sU0FBUyxDQUFDLENBQUMsMkJBQTJCO0lBQy9DLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRDs7O09BR0c7SUFDSCx3QkFBd0I7UUFDdEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOztBQXpGSCw4QkEwRkM7QUF6RmlCLDBCQUFnQixHQUFHLGlDQUFpQyxDQUFDO0FBQ3JELHNCQUFZLEdBQVcsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgQWxnbyB9IGZyb20gJy4vYWxnbyc7XG5pbXBvcnQgeyBCaXRHb0Jhc2UsIEJpdEdvSnNFcnJvciwgQ29pbkNvbnN0cnVjdG9yLCBOYW1lZENvaW5Db25zdHJ1Y3RvciB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBBbGdvVG9rZW5Db25maWcsIGZvcm1hdHRlZEFsZ29Ub2tlbnMgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5cbmV4cG9ydCBjbGFzcyBBbGdvVG9rZW4gZXh0ZW5kcyBBbGdvIHtcbiAgc3RhdGljIHJlYWRvbmx5IHRva2VuTmFtZVBhdHRlcm4gPSAvXihbXjpdKyk6KD86KFteLl0rKS0pPyhbMC05XSspJC87XG4gIHN0YXRpYyByZWFkb25seSB0b2tlblBhdHRlcm46IFJlZ0V4cCA9IC9bMC05XS87XG4gIHB1YmxpYyByZWFkb25seSB0b2tlbkNvbmZpZzogQWxnb1Rva2VuQ29uZmlnO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb2RlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgdG9rZW5Db25maWc6IEFsZ29Ub2tlbkNvbmZpZykge1xuICAgIHN1cGVyKGJpdGdvKTtcbiAgICB0aGlzLnRva2VuQ29uZmlnID0gdG9rZW5Db25maWc7XG5cbiAgICBjb25zdCBtYXRjaCA9IHRoaXMudG9rZW5Db25maWcudHlwZS5tYXRjaChBbGdvVG9rZW4udG9rZW5OYW1lUGF0dGVybikgfHwgW107XG5cbiAgICBjb25zdCB0b2tlbkNvaW4gPSBtYXRjaFsxXTtcbiAgICB0aGlzLl9jb2RlID0gbWF0Y2hbMl07XG4gICAgY29uc3QgdG9rZW4gPSBtYXRjaFszXTtcblxuICAgIGlmICh0b2tlbkNvaW4gIT09IHRva2VuQ29uZmlnLmNvaW4pIHtcbiAgICAgIHRocm93IG5ldyBCaXRHb0pzRXJyb3IoYGludmFsaWQgY29pbiBmb3VuZCBpbiB0b2tlbjogJHt0aGlzLnRva2VuQ29uZmlnLnR5cGV9YCk7XG4gICAgfVxuICAgIGlmICghdG9rZW4pIHtcbiAgICAgIHRocm93IG5ldyBCaXRHb0pzRXJyb3IoYGludmFsaWQgdG9rZW46ICR7dGhpcy50b2tlbkNvbmZpZy50eXBlfWApO1xuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVUb2tlbkNvbnN0cnVjdG9yKGNvbmZpZzogQWxnb1Rva2VuQ29uZmlnKTogQ29pbkNvbnN0cnVjdG9yIHtcbiAgICByZXR1cm4gKGJpdGdvOiBCaXRHb0Jhc2UpID0+IG5ldyBBbGdvVG9rZW4oYml0Z28sIGNvbmZpZyk7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlVG9rZW5Db25zdHJ1Y3RvcnModG9rZW5Db25maWdzOiBBbGdvVG9rZW5Db25maWdbXSA9IGZvcm1hdHRlZEFsZ29Ub2tlbnMpOiBOYW1lZENvaW5Db25zdHJ1Y3RvcltdIHtcbiAgICBjb25zdCB0b2tlbnNDdG9yczogTmFtZWRDb2luQ29uc3RydWN0b3JbXSA9IFtdO1xuICAgIHRva2VuQ29uZmlncy5mb3JFYWNoKChjb25maWcpID0+IHtcbiAgICAgIHRva2Vuc0N0b3JzLnB1c2goeyBuYW1lOiBjb25maWcudHlwZSwgY29pbkNvbnN0cnVjdG9yOiBBbGdvVG9rZW4uY3JlYXRlVG9rZW5Db25zdHJ1Y3Rvcihjb25maWcpIH0pO1xuICAgICAgaWYgKGNvbmZpZy5hbGlhcykge1xuICAgICAgICB0b2tlbnNDdG9ycy5wdXNoKHsgbmFtZTogY29uZmlnLmFsaWFzLCBjb2luQ29uc3RydWN0b3I6IEFsZ29Ub2tlbi5jcmVhdGVUb2tlbkNvbnN0cnVjdG9yKGNvbmZpZykgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHRva2Vuc0N0b3JzO1xuICB9XG5cbiAgZ2V0IHR5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy50eXBlO1xuICB9XG5cbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5uYW1lO1xuICB9XG5cbiAgZ2V0IGNvaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5jb2luO1xuICB9XG5cbiAgZ2V0IG5ldHdvcmsoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5uZXR3b3JrO1xuICB9XG5cbiAgZ2V0IGNvZGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29kZTtcbiAgfVxuXG4gIGdldCBpc3N1ZXIoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkOyAvLyBOb3QgZGVmaW5lZCBmb3IgQWxnb3JhbmRcbiAgfVxuXG4gIGdldCBkZWNpbWFsUGxhY2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuZGVjaW1hbFBsYWNlcztcbiAgfVxuXG4gIGdldENoYWluKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcudHlwZTtcbiAgfVxuXG4gIGdldEJhc2VDaGFpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvaW47XG4gIH1cblxuICBnZXRGdWxsTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnQWxnbyBUb2tlbic7XG4gIH1cblxuICBnZXRCYXNlRmFjdG9yKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgucG93KDEwLCB0aGlzLnRva2VuQ29uZmlnLmRlY2ltYWxQbGFjZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZsYWcgZm9yIHNlbmRpbmcgdmFsdWUgb2YgMFxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiBva2F5IHRvIHNlbmQgMCB2YWx1ZSwgZmFsc2Ugb3RoZXJ3aXNlXG4gICAqL1xuICB2YWx1ZWxlc3NUcmFuc2ZlckFsbG93ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/builder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,OAAO,CAAC;AAElD,eAAO,MAAM,UAAU,aAAc,MAAM,KAAG,yBAE7C,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getBuilder = void 0;
|
|
4
|
+
const statics_1 = require("@bitgo/statics");
|
|
5
|
+
const lib_1 = require("./lib");
|
|
6
|
+
const getBuilder = (coinName) => {
|
|
7
|
+
return new lib_1.TransactionBuilderFactory(statics_1.coins.get(coinName));
|
|
8
|
+
};
|
|
9
|
+
exports.getBuilder = getBuilder;
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDRDQUF1QztBQUN2QywrQkFBa0Q7QUFFM0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxRQUFnQixFQUE2QixFQUFFO0lBQ3hFLE9BQU8sSUFBSSwrQkFBeUIsQ0FBQyxlQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7QUFDNUQsQ0FBQyxDQUFDO0FBRlcsUUFBQSxVQUFVLGNBRXJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29pbnMgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi9saWInO1xuXG5leHBvcnQgY29uc3QgZ2V0QnVpbGRlciA9IChjb2luTmFtZTogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSA9PiB7XG4gIHJldHVybiBuZXcgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeShjb2lucy5nZXQoY29pbk5hbWUpKTtcbn07XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,OAAO,KAAK,OAAO,MAAM,OAAO,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
19
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
|
+
};
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.AlgoLib = void 0;
|
|
40
|
+
__exportStar(require("./algo"), exports);
|
|
41
|
+
__exportStar(require("./talgo"), exports);
|
|
42
|
+
exports.AlgoLib = __importStar(require("./lib"));
|
|
43
|
+
__exportStar(require("./algoToken"), exports);
|
|
44
|
+
__exportStar(require("./register"), exports);
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEseUNBQXVCO0FBQ3ZCLDBDQUF3QjtBQUN4QixpREFBaUM7QUFDakMsOENBQTRCO0FBQzVCLDZDQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWxnbyc7XG5leHBvcnQgKiBmcm9tICcuL3RhbGdvJztcbmV4cG9ydCAqIGFzIEFsZ29MaWIgZnJvbSAnLi9saWInO1xuZXhwb3J0ICogZnJvbSAnLi9hbGdvVG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlcic7XG4iXX0=
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
2
|
+
import algosdk from 'algosdk';
|
|
3
|
+
import { BaseAddress, TransactionType } from '@bitgo/sdk-core';
|
|
4
|
+
import { TransferBuilder } from './transferBuilder';
|
|
5
|
+
import { Transaction } from './transaction';
|
|
6
|
+
export declare class AssetTransferBuilder extends TransferBuilder {
|
|
7
|
+
private _tokenId;
|
|
8
|
+
constructor(coinConfig: Readonly<CoinConfig>);
|
|
9
|
+
/**
|
|
10
|
+
* Sets the token id.
|
|
11
|
+
|
|
12
|
+
* The token id uniquely identifies the asset.
|
|
13
|
+
*
|
|
14
|
+
* @param {number} id The token id.
|
|
15
|
+
* @returns {AssetTransferBuilder} This transaction builder.
|
|
16
|
+
*
|
|
17
|
+
* @see https://developer.algorand.org/docs/reference/transactions/#asset-transfer-transaction
|
|
18
|
+
*/
|
|
19
|
+
tokenId(id: number): this;
|
|
20
|
+
/**
|
|
21
|
+
* Sets the parameters of the transaction builder to allowlist an asset.
|
|
22
|
+
*
|
|
23
|
+
* To allow list an asset, you send 0 units of the asset to yourself.
|
|
24
|
+
*
|
|
25
|
+
* This method sets the tokenId, sender, receiver, asset amount, and
|
|
26
|
+
* fee parameters to their respective values to allowlist and asset.
|
|
27
|
+
*
|
|
28
|
+
* @param {number} tokenId The unique identifier of the asset.
|
|
29
|
+
* @param {BaseAddress} userAddress The address of the user.
|
|
30
|
+
* @returns {AssetTransferBuilder} This transaction builder.
|
|
31
|
+
*/
|
|
32
|
+
allowListAsset(tokenId: number, userAddress: BaseAddress): this;
|
|
33
|
+
protected buildAlgoTxn(): algosdk.Transaction;
|
|
34
|
+
protected get transactionType(): TransactionType;
|
|
35
|
+
/** @inheritdoc */
|
|
36
|
+
protected fromImplementation(rawTransaction: Uint8Array | string): Transaction;
|
|
37
|
+
validateRawTransaction(rawTransaction: Uint8Array | string): void;
|
|
38
|
+
/** @inheritdoc */
|
|
39
|
+
validateTransaction(txn: Transaction): void;
|
|
40
|
+
protected validateFields(tokenId: number, assetAmount: number | bigint, receiver: string): void;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=assetTransferBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assetTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/assetTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,WAAW,EAA2B,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,qBAAa,oBAAqB,SAAQ,eAAe;IACvD,OAAO,CAAC,QAAQ,CAAS;gBAEb,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI5C;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IASzB;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAW/D,SAAS,CAAC,YAAY,IAAI,OAAO,CAAC,WAAW;IAc7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,UAAU,GAAG,MAAM,GAAG,WAAW;IAc9E,sBAAsB,CAAC,cAAc,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IAWjE,kBAAkB;IAClB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAK3C,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;CAmBhG"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.AssetTransferBuilder = void 0;
|
|
7
|
+
const algosdk_1 = __importDefault(require("algosdk"));
|
|
8
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
9
|
+
const transferBuilder_1 = require("./transferBuilder");
|
|
10
|
+
const txnSchema_1 = require("./txnSchema");
|
|
11
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
12
|
+
class AssetTransferBuilder extends transferBuilder_1.TransferBuilder {
|
|
13
|
+
constructor(coinConfig) {
|
|
14
|
+
super(coinConfig);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Sets the token id.
|
|
18
|
+
|
|
19
|
+
* The token id uniquely identifies the asset.
|
|
20
|
+
*
|
|
21
|
+
* @param {number} id The token id.
|
|
22
|
+
* @returns {AssetTransferBuilder} This transaction builder.
|
|
23
|
+
*
|
|
24
|
+
* @see https://developer.algorand.org/docs/reference/transactions/#asset-transfer-transaction
|
|
25
|
+
*/
|
|
26
|
+
tokenId(id) {
|
|
27
|
+
if (id <= 0) {
|
|
28
|
+
throw new Error('Asset index must be a uint64 value');
|
|
29
|
+
}
|
|
30
|
+
this._tokenId = id;
|
|
31
|
+
return this;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Sets the parameters of the transaction builder to allowlist an asset.
|
|
35
|
+
*
|
|
36
|
+
* To allow list an asset, you send 0 units of the asset to yourself.
|
|
37
|
+
*
|
|
38
|
+
* This method sets the tokenId, sender, receiver, asset amount, and
|
|
39
|
+
* fee parameters to their respective values to allowlist and asset.
|
|
40
|
+
*
|
|
41
|
+
* @param {number} tokenId The unique identifier of the asset.
|
|
42
|
+
* @param {BaseAddress} userAddress The address of the user.
|
|
43
|
+
* @returns {AssetTransferBuilder} This transaction builder.
|
|
44
|
+
*/
|
|
45
|
+
allowListAsset(tokenId, userAddress) {
|
|
46
|
+
this.tokenId(tokenId);
|
|
47
|
+
this.sender(userAddress);
|
|
48
|
+
this.to(userAddress);
|
|
49
|
+
this.isFlatFee(true);
|
|
50
|
+
this.fee({ fee: '1000' });
|
|
51
|
+
this.amount(0);
|
|
52
|
+
return this;
|
|
53
|
+
}
|
|
54
|
+
buildAlgoTxn() {
|
|
55
|
+
return algosdk_1.default.makeAssetTransferTxnWithSuggestedParams(this._sender, this._to, this._closeRemainderTo, undefined, this._amount, this._note, this._tokenId, this.suggestedParams, this._reKeyTo);
|
|
56
|
+
}
|
|
57
|
+
get transactionType() {
|
|
58
|
+
return sdk_core_1.TransactionType.Send;
|
|
59
|
+
}
|
|
60
|
+
/** @inheritdoc */
|
|
61
|
+
fromImplementation(rawTransaction) {
|
|
62
|
+
const tx = super.fromImplementation(rawTransaction);
|
|
63
|
+
const algoTx = tx.getAlgoTransaction();
|
|
64
|
+
if (!algoTx) {
|
|
65
|
+
throw new sdk_core_1.InvalidTransactionError('Transaction is empty');
|
|
66
|
+
}
|
|
67
|
+
this._tokenId = algoTx.assetIndex;
|
|
68
|
+
this._amount = algoTx.amount || 0;
|
|
69
|
+
this._to = algosdk_1.default.encodeAddress(algoTx.to.publicKey);
|
|
70
|
+
return tx;
|
|
71
|
+
}
|
|
72
|
+
validateRawTransaction(rawTransaction) {
|
|
73
|
+
const { txn: algoTxn } = utils_1.default.decodeAlgoTxn(rawTransaction);
|
|
74
|
+
if (algoTxn.type !== algosdk_1.default.TransactionType.axfer) {
|
|
75
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${algoTxn.type}. Expected ${algosdk_1.default.TransactionType.axfer}`);
|
|
76
|
+
}
|
|
77
|
+
this.validateFields(algoTxn.assetIndex, algoTxn.amount, algosdk_1.default.encodeAddress(algoTxn.to.publicKey));
|
|
78
|
+
}
|
|
79
|
+
/** @inheritdoc */
|
|
80
|
+
validateTransaction(txn) {
|
|
81
|
+
super.validateTransaction(txn);
|
|
82
|
+
this.validateFields(this._tokenId, this._amount, this._to);
|
|
83
|
+
}
|
|
84
|
+
validateFields(tokenId, assetAmount, receiver) {
|
|
85
|
+
let validationResult;
|
|
86
|
+
if (this._sender !== this._to) {
|
|
87
|
+
validationResult = txnSchema_1.AssetTransferTxnSchema.validate({
|
|
88
|
+
tokenId,
|
|
89
|
+
assetAmount,
|
|
90
|
+
receiver,
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
validationResult = txnSchema_1.AssetToggleTxnSchema.validate({
|
|
95
|
+
tokenId,
|
|
96
|
+
receiver,
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
if (validationResult.error) {
|
|
100
|
+
throw new sdk_core_1.InvalidTransactionError(`Transaction validation failed: ${validationResult.error.message}`);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
exports.AssetTransferBuilder = AssetTransferBuilder;
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRUcmFuc2ZlckJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2Fzc2V0VHJhbnNmZXJCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLHNEQUE4QjtBQUM5Qiw4Q0FBd0Y7QUFDeEYsdURBQW9EO0FBRXBELDJDQUEyRTtBQUMzRSxvREFBNEI7QUFFNUIsTUFBYSxvQkFBcUIsU0FBUSxpQ0FBZTtJQUd2RCxZQUFZLFVBQWdDO1FBQzFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsT0FBTyxDQUFDLEVBQVU7UUFDaEIsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBRW5CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0gsY0FBYyxDQUFDLE9BQWUsRUFBRSxXQUF3QjtRQUN0RCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWYsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRVMsWUFBWTtRQUNwQixPQUFPLGlCQUFPLENBQUMsdUNBQXVDLENBQ3BELElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLEdBQUcsRUFDUixJQUFJLENBQUMsaUJBQWlCLEVBQ3RCLFNBQVMsRUFDVCxJQUFJLENBQUMsT0FBTyxFQUNaLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsZUFBZSxFQUNwQixJQUFJLENBQUMsUUFBUSxDQUNkLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLGNBQW1DO1FBQzlELE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNwRCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksa0NBQXVCLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUM1RCxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLEdBQUcsR0FBRyxpQkFBTyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXRELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELHNCQUFzQixDQUFDLGNBQW1DO1FBQ3hELE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsZUFBSyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM3RCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssaUJBQU8sQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkQsTUFBTSxJQUFJLGtDQUF1QixDQUMvQiw2QkFBNkIsT0FBTyxDQUFDLElBQUksY0FBYyxpQkFBTyxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FDdkYsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRSxpQkFBTyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDdkcsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixtQkFBbUIsQ0FBQyxHQUFnQjtRQUNsQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFUyxjQUFjLENBQUMsT0FBZSxFQUFFLFdBQTRCLEVBQUUsUUFBZ0I7UUFDdEYsSUFBSSxnQkFBZ0IsQ0FBQztRQUNyQixJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQzlCLGdCQUFnQixHQUFHLGtDQUFzQixDQUFDLFFBQVEsQ0FBQztnQkFDakQsT0FBTztnQkFDUCxXQUFXO2dCQUNYLFFBQVE7YUFDVCxDQUFDLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNOLGdCQUFnQixHQUFHLGdDQUFvQixDQUFDLFFBQVEsQ0FBQztnQkFDL0MsT0FBTztnQkFDUCxRQUFRO2FBQ1QsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDM0IsTUFBTSxJQUFJLGtDQUF1QixDQUFDLGtDQUFrQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN4RyxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBdEhELG9EQXNIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgYWxnb3NkayBmcm9tICdhbGdvc2RrJztcbmltcG9ydCB7IEJhc2VBZGRyZXNzLCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBBc3NldFRyYW5zZmVyVHhuU2NoZW1hLCBBc3NldFRvZ2dsZVR4blNjaGVtYSB9IGZyb20gJy4vdHhuU2NoZW1hJztcbmltcG9ydCBVdGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIEFzc2V0VHJhbnNmZXJCdWlsZGVyIGV4dGVuZHMgVHJhbnNmZXJCdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdG9rZW5JZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdG9rZW4gaWQuXG5cbiAgICogVGhlIHRva2VuIGlkIHVuaXF1ZWx5IGlkZW50aWZpZXMgdGhlIGFzc2V0LlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gaWQgVGhlIHRva2VuIGlkLlxuICAgKiBAcmV0dXJucyB7QXNzZXRUcmFuc2ZlckJ1aWxkZXJ9IFRoaXMgdHJhbnNhY3Rpb24gYnVpbGRlci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RldmVsb3Blci5hbGdvcmFuZC5vcmcvZG9jcy9yZWZlcmVuY2UvdHJhbnNhY3Rpb25zLyNhc3NldC10cmFuc2Zlci10cmFuc2FjdGlvblxuICAgKi9cbiAgdG9rZW5JZChpZDogbnVtYmVyKTogdGhpcyB7XG4gICAgaWYgKGlkIDw9IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQXNzZXQgaW5kZXggbXVzdCBiZSBhIHVpbnQ2NCB2YWx1ZScpO1xuICAgIH1cbiAgICB0aGlzLl90b2tlbklkID0gaWQ7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIHRvIGFsbG93bGlzdCBhbiBhc3NldC5cbiAgICpcbiAgICogVG8gYWxsb3cgbGlzdCBhbiBhc3NldCwgeW91IHNlbmQgMCB1bml0cyBvZiB0aGUgYXNzZXQgdG8geW91cnNlbGYuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIHNldHMgdGhlIHRva2VuSWQsIHNlbmRlciwgcmVjZWl2ZXIsIGFzc2V0IGFtb3VudCwgYW5kXG4gICAqIGZlZSBwYXJhbWV0ZXJzIHRvIHRoZWlyIHJlc3BlY3RpdmUgdmFsdWVzIHRvIGFsbG93bGlzdCBhbmQgYXNzZXQuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSB0b2tlbklkIFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgYXNzZXQuXG4gICAqIEBwYXJhbSB7QmFzZUFkZHJlc3N9IHVzZXJBZGRyZXNzIFRoZSBhZGRyZXNzIG9mIHRoZSB1c2VyLlxuICAgKiBAcmV0dXJucyB7QXNzZXRUcmFuc2ZlckJ1aWxkZXJ9IFRoaXMgdHJhbnNhY3Rpb24gYnVpbGRlci5cbiAgICovXG4gIGFsbG93TGlzdEFzc2V0KHRva2VuSWQ6IG51bWJlciwgdXNlckFkZHJlc3M6IEJhc2VBZGRyZXNzKTogdGhpcyB7XG4gICAgdGhpcy50b2tlbklkKHRva2VuSWQpO1xuICAgIHRoaXMuc2VuZGVyKHVzZXJBZGRyZXNzKTtcbiAgICB0aGlzLnRvKHVzZXJBZGRyZXNzKTtcbiAgICB0aGlzLmlzRmxhdEZlZSh0cnVlKTtcbiAgICB0aGlzLmZlZSh7IGZlZTogJzEwMDAnIH0pO1xuICAgIHRoaXMuYW1vdW50KDApO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcm90ZWN0ZWQgYnVpbGRBbGdvVHhuKCk6IGFsZ29zZGsuVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBhbGdvc2RrLm1ha2VBc3NldFRyYW5zZmVyVHhuV2l0aFN1Z2dlc3RlZFBhcmFtcyhcbiAgICAgIHRoaXMuX3NlbmRlcixcbiAgICAgIHRoaXMuX3RvLFxuICAgICAgdGhpcy5fY2xvc2VSZW1haW5kZXJUbyxcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIHRoaXMuX2Ftb3VudCxcbiAgICAgIHRoaXMuX25vdGUsXG4gICAgICB0aGlzLl90b2tlbklkLFxuICAgICAgdGhpcy5zdWdnZXN0ZWRQYXJhbXMsXG4gICAgICB0aGlzLl9yZUtleVRvXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TZW5kO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBmcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb246IFVpbnQ4QXJyYXkgfCBzdHJpbmcpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHggPSBzdXBlci5mcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIGNvbnN0IGFsZ29UeCA9IHR4LmdldEFsZ29UcmFuc2FjdGlvbigpO1xuICAgIGlmICghYWxnb1R4KSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIGlzIGVtcHR5Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5fdG9rZW5JZCA9IGFsZ29UeC5hc3NldEluZGV4O1xuICAgIHRoaXMuX2Ftb3VudCA9IGFsZ29UeC5hbW91bnQgfHwgMDtcbiAgICB0aGlzLl90byA9IGFsZ29zZGsuZW5jb2RlQWRkcmVzcyhhbGdvVHgudG8ucHVibGljS2V5KTtcblxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIHZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb246IFVpbnQ4QXJyYXkgfCBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCB7IHR4bjogYWxnb1R4biB9ID0gVXRpbHMuZGVjb2RlQWxnb1R4bihyYXdUcmFuc2FjdGlvbik7XG4gICAgaWYgKGFsZ29UeG4udHlwZSAhPT0gYWxnb3Nkay5UcmFuc2FjdGlvblR5cGUuYXhmZXIpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgYEludmFsaWQgVHJhbnNhY3Rpb24gVHlwZTogJHthbGdvVHhuLnR5cGV9LiBFeHBlY3RlZCAke2FsZ29zZGsuVHJhbnNhY3Rpb25UeXBlLmF4ZmVyfWBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy52YWxpZGF0ZUZpZWxkcyhhbGdvVHhuLmFzc2V0SW5kZXgsIGFsZ29UeG4uYW1vdW50LCBhbGdvc2RrLmVuY29kZUFkZHJlc3MoYWxnb1R4bi50by5wdWJsaWNLZXkpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHR4bjogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci52YWxpZGF0ZVRyYW5zYWN0aW9uKHR4bik7XG4gICAgdGhpcy52YWxpZGF0ZUZpZWxkcyh0aGlzLl90b2tlbklkLCB0aGlzLl9hbW91bnQsIHRoaXMuX3RvKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB2YWxpZGF0ZUZpZWxkcyh0b2tlbklkOiBudW1iZXIsIGFzc2V0QW1vdW50OiBudW1iZXIgfCBiaWdpbnQsIHJlY2VpdmVyOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsZXQgdmFsaWRhdGlvblJlc3VsdDtcbiAgICBpZiAodGhpcy5fc2VuZGVyICE9PSB0aGlzLl90bykge1xuICAgICAgdmFsaWRhdGlvblJlc3VsdCA9IEFzc2V0VHJhbnNmZXJUeG5TY2hlbWEudmFsaWRhdGUoe1xuICAgICAgICB0b2tlbklkLFxuICAgICAgICBhc3NldEFtb3VudCxcbiAgICAgICAgcmVjZWl2ZXIsXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFsaWRhdGlvblJlc3VsdCA9IEFzc2V0VG9nZ2xlVHhuU2NoZW1hLnZhbGlkYXRlKHtcbiAgICAgICAgdG9rZW5JZCxcbiAgICAgICAgcmVjZWl2ZXIsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBUcmFuc2FjdGlvbiB2YWxpZGF0aW9uIGZhaWxlZDogJHt2YWxpZGF0aW9uUmVzdWx0LmVycm9yLm1lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BuildTransactionError } from '@bitgo/sdk-core';
|
|
2
|
+
export declare class InsufficientFeeError extends BuildTransactionError {
|
|
3
|
+
constructor(providedFee: number, minimum: number);
|
|
4
|
+
}
|
|
5
|
+
export declare class AddressValidationError extends BuildTransactionError {
|
|
6
|
+
constructor(malformedAddress: string);
|
|
7
|
+
}
|
|
8
|
+
export declare class KeyDilutionError extends BuildTransactionError {
|
|
9
|
+
constructor(incorrectValue: number);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,qBAAa,oBAAqB,SAAQ,qBAAqB;gBACjD,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAOjD;AAED,qBAAa,sBAAuB,SAAQ,qBAAqB;gBACnD,gBAAgB,EAAE,MAAM;CAIrC;AACD,qBAAa,gBAAiB,SAAQ,qBAAqB;gBAC7C,cAAc,EAAE,MAAM;CAMnC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KeyDilutionError = exports.AddressValidationError = exports.InsufficientFeeError = void 0;
|
|
4
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
5
|
+
class InsufficientFeeError extends sdk_core_1.BuildTransactionError {
|
|
6
|
+
constructor(providedFee, minimum) {
|
|
7
|
+
super(`The provided fee of '${providedFee}' microalgos cannot be less than the ` +
|
|
8
|
+
`minimum fee of '${minimum}' microalgos`);
|
|
9
|
+
this.name = InsufficientFeeError.name;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.InsufficientFeeError = InsufficientFeeError;
|
|
13
|
+
class AddressValidationError extends sdk_core_1.BuildTransactionError {
|
|
14
|
+
constructor(malformedAddress) {
|
|
15
|
+
super(`The address '${malformedAddress}' is not a well-formed algorand address`);
|
|
16
|
+
this.name = AddressValidationError.name;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.AddressValidationError = AddressValidationError;
|
|
20
|
+
class KeyDilutionError extends sdk_core_1.BuildTransactionError {
|
|
21
|
+
constructor(incorrectValue) {
|
|
22
|
+
super(`The keyDilution value '${incorrectValue}' must be less than or equal to the square root of the voteKey validity range.`);
|
|
23
|
+
this.name = KeyDilutionError.name;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.KeyDilutionError = KeyDilutionError;
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQXdEO0FBRXhELE1BQWEsb0JBQXFCLFNBQVEsZ0NBQXFCO0lBQzdELFlBQVksV0FBbUIsRUFBRSxPQUFlO1FBQzlDLEtBQUssQ0FDSCx3QkFBd0IsV0FBVyx1Q0FBdUM7WUFDeEUsbUJBQW1CLE9BQU8sY0FBYyxDQUMzQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUM7SUFDeEMsQ0FBQztDQUNGO0FBUkQsb0RBUUM7QUFFRCxNQUFhLHNCQUF1QixTQUFRLGdDQUFxQjtJQUMvRCxZQUFZLGdCQUF3QjtRQUNsQyxLQUFLLENBQUMsZ0JBQWdCLGdCQUFnQix5Q0FBeUMsQ0FBQyxDQUFDO1FBQ2pGLElBQUksQ0FBQyxJQUFJLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQUxELHdEQUtDO0FBQ0QsTUFBYSxnQkFBaUIsU0FBUSxnQ0FBcUI7SUFDekQsWUFBWSxjQUFzQjtRQUNoQyxLQUFLLENBQ0gsMEJBQTBCLGNBQWMsZ0ZBQWdGLENBQ3pILENBQUM7UUFDRixJQUFJLENBQUMsSUFBSSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQztJQUNwQyxDQUFDO0NBQ0Y7QUFQRCw0Q0FPQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBJbnN1ZmZpY2llbnRGZWVFcnJvciBleHRlbmRzIEJ1aWxkVHJhbnNhY3Rpb25FcnJvciB7XG4gIGNvbnN0cnVjdG9yKHByb3ZpZGVkRmVlOiBudW1iZXIsIG1pbmltdW06IG51bWJlcikge1xuICAgIHN1cGVyKFxuICAgICAgYFRoZSBwcm92aWRlZCBmZWUgb2YgJyR7cHJvdmlkZWRGZWV9JyBtaWNyb2FsZ29zIGNhbm5vdCBiZSBsZXNzIHRoYW4gdGhlIGAgK1xuICAgICAgICBgbWluaW11bSBmZWUgb2YgJyR7bWluaW11bX0nIG1pY3JvYWxnb3NgXG4gICAgKTtcbiAgICB0aGlzLm5hbWUgPSBJbnN1ZmZpY2llbnRGZWVFcnJvci5uYW1lO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBZGRyZXNzVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgQnVpbGRUcmFuc2FjdGlvbkVycm9yIHtcbiAgY29uc3RydWN0b3IobWFsZm9ybWVkQWRkcmVzczogc3RyaW5nKSB7XG4gICAgc3VwZXIoYFRoZSBhZGRyZXNzICcke21hbGZvcm1lZEFkZHJlc3N9JyBpcyBub3QgYSB3ZWxsLWZvcm1lZCBhbGdvcmFuZCBhZGRyZXNzYCk7XG4gICAgdGhpcy5uYW1lID0gQWRkcmVzc1ZhbGlkYXRpb25FcnJvci5uYW1lO1xuICB9XG59XG5leHBvcnQgY2xhc3MgS2V5RGlsdXRpb25FcnJvciBleHRlbmRzIEJ1aWxkVHJhbnNhY3Rpb25FcnJvciB7XG4gIGNvbnN0cnVjdG9yKGluY29ycmVjdFZhbHVlOiBudW1iZXIpIHtcbiAgICBzdXBlcihcbiAgICAgIGBUaGUga2V5RGlsdXRpb24gdmFsdWUgJyR7aW5jb3JyZWN0VmFsdWV9JyBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byB0aGUgc3F1YXJlIHJvb3Qgb2YgdGhlIHZvdGVLZXkgdmFsaWRpdHkgcmFuZ2UuYFxuICAgICk7XG4gICAgdGhpcy5uYW1lID0gS2V5RGlsdXRpb25FcnJvci5uYW1lO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import algosdk from 'algosdk';
|
|
2
|
+
export interface TxData {
|
|
3
|
+
id: string;
|
|
4
|
+
type?: string;
|
|
5
|
+
from: string;
|
|
6
|
+
to?: string;
|
|
7
|
+
fee: number;
|
|
8
|
+
amount?: string;
|
|
9
|
+
firstRound: number;
|
|
10
|
+
lastRound: number;
|
|
11
|
+
note?: Uint8Array;
|
|
12
|
+
voteKey?: string;
|
|
13
|
+
selectionKey?: string;
|
|
14
|
+
voteFirst?: number;
|
|
15
|
+
voteLast?: number;
|
|
16
|
+
voteKeyDilution?: number;
|
|
17
|
+
stateProofKey?: string;
|
|
18
|
+
tokenId?: number;
|
|
19
|
+
genesisID: string;
|
|
20
|
+
genesisHash: string | Buffer;
|
|
21
|
+
closeRemainderTo?: string;
|
|
22
|
+
nonParticipation?: boolean;
|
|
23
|
+
txType?: string;
|
|
24
|
+
tokenName?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface Address {
|
|
27
|
+
publicKey: Uint8Array;
|
|
28
|
+
checksum: Uint8Array;
|
|
29
|
+
}
|
|
30
|
+
export interface Seed {
|
|
31
|
+
seed: Uint8Array;
|
|
32
|
+
checksum: Uint8Array;
|
|
33
|
+
}
|
|
34
|
+
export interface EncodedTx {
|
|
35
|
+
rawTransaction: Uint8Array;
|
|
36
|
+
txn: algosdk.Transaction;
|
|
37
|
+
signed: boolean;
|
|
38
|
+
signers?: string[];
|
|
39
|
+
signedBy?: string[];
|
|
40
|
+
}
|
|
41
|
+
export interface Account {
|
|
42
|
+
addr: string;
|
|
43
|
+
sk: Uint8Array;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=ifaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ifaces.d.ts","sourceRoot":"","sources":["../../../src/lib/ifaces.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,UAAU,CAAC;IACtB,QAAQ,EAAE,UAAU,CAAC;CACtB;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,UAAU,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,cAAc,EAAE,UAAU,CAAC;IAC3B,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,UAAU,CAAC;CAChB"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9pZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhbGdvc2RrIGZyb20gJ2FsZ29zZGsnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFR4RGF0YSB7XG4gIGlkOiBzdHJpbmc7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGZyb206IHN0cmluZztcbiAgdG8/OiBzdHJpbmc7XG4gIGZlZTogbnVtYmVyO1xuICBhbW91bnQ/OiBzdHJpbmc7XG4gIGZpcnN0Um91bmQ6IG51bWJlcjtcbiAgbGFzdFJvdW5kOiBudW1iZXI7XG4gIG5vdGU/OiBVaW50OEFycmF5O1xuICB2b3RlS2V5Pzogc3RyaW5nO1xuICBzZWxlY3Rpb25LZXk/OiBzdHJpbmc7XG4gIHZvdGVGaXJzdD86IG51bWJlcjtcbiAgdm90ZUxhc3Q/OiBudW1iZXI7XG4gIHZvdGVLZXlEaWx1dGlvbj86IG51bWJlcjtcbiAgc3RhdGVQcm9vZktleT86IHN0cmluZztcbiAgdG9rZW5JZD86IG51bWJlcjtcbiAgZ2VuZXNpc0lEOiBzdHJpbmc7XG4gIGdlbmVzaXNIYXNoOiBzdHJpbmcgfCBCdWZmZXI7XG4gIGNsb3NlUmVtYWluZGVyVG8/OiBzdHJpbmc7XG4gIG5vblBhcnRpY2lwYXRpb24/OiBib29sZWFuO1xuICB0eFR5cGU/OiBzdHJpbmc7XG4gIHRva2VuTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRyZXNzIHtcbiAgcHVibGljS2V5OiBVaW50OEFycmF5O1xuICBjaGVja3N1bTogVWludDhBcnJheTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWVkIHtcbiAgc2VlZDogVWludDhBcnJheTtcbiAgY2hlY2tzdW06IFVpbnQ4QXJyYXk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW5jb2RlZFR4IHtcbiAgcmF3VHJhbnNhY3Rpb246IFVpbnQ4QXJyYXk7XG4gIHR4bjogYWxnb3Nkay5UcmFuc2FjdGlvbjtcbiAgc2lnbmVkOiBib29sZWFuO1xuICBzaWduZXJzPzogc3RyaW5nW107XG4gIHNpZ25lZEJ5Pzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWNjb3VudCB7XG4gIGFkZHI6IHN0cmluZztcbiAgc2s6IFVpbnQ4QXJyYXk7XG59XG4iXX0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import utils from './utils';
|
|
2
|
+
import * as Interface from './ifaces';
|
|
3
|
+
export { KeyPair } from './keyPair';
|
|
4
|
+
export { TransactionBuilder } from './transactionBuilder';
|
|
5
|
+
export { TransferBuilder } from './transferBuilder';
|
|
6
|
+
export { KeyRegistrationBuilder } from './keyRegistrationBuilder';
|
|
7
|
+
export { Transaction } from './transaction';
|
|
8
|
+
export { AssetTransferBuilder } from './assetTransferBuilder';
|
|
9
|
+
export { TransactionBuilderFactory } from './transactionBuilderFactory';
|
|
10
|
+
export { InsufficientFeeError, AddressValidationError } from './errors';
|
|
11
|
+
export { Interface };
|
|
12
|
+
export { utils as algoUtils };
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,KAAK,SAAS,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.algoUtils = exports.Interface = exports.AddressValidationError = exports.InsufficientFeeError = exports.TransactionBuilderFactory = exports.AssetTransferBuilder = exports.Transaction = exports.KeyRegistrationBuilder = exports.TransferBuilder = exports.TransactionBuilder = exports.KeyPair = void 0;
|
|
40
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
41
|
+
exports.algoUtils = utils_1.default;
|
|
42
|
+
const Interface = __importStar(require("./ifaces"));
|
|
43
|
+
exports.Interface = Interface;
|
|
44
|
+
var keyPair_1 = require("./keyPair");
|
|
45
|
+
Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return keyPair_1.KeyPair; } });
|
|
46
|
+
var transactionBuilder_1 = require("./transactionBuilder");
|
|
47
|
+
Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return transactionBuilder_1.TransactionBuilder; } });
|
|
48
|
+
var transferBuilder_1 = require("./transferBuilder");
|
|
49
|
+
Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
|
|
50
|
+
var keyRegistrationBuilder_1 = require("./keyRegistrationBuilder");
|
|
51
|
+
Object.defineProperty(exports, "KeyRegistrationBuilder", { enumerable: true, get: function () { return keyRegistrationBuilder_1.KeyRegistrationBuilder; } });
|
|
52
|
+
var transaction_1 = require("./transaction");
|
|
53
|
+
Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return transaction_1.Transaction; } });
|
|
54
|
+
var assetTransferBuilder_1 = require("./assetTransferBuilder");
|
|
55
|
+
Object.defineProperty(exports, "AssetTransferBuilder", { enumerable: true, get: function () { return assetTransferBuilder_1.AssetTransferBuilder; } });
|
|
56
|
+
var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
|
|
57
|
+
Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
|
|
58
|
+
var errors_1 = require("./errors");
|
|
59
|
+
Object.defineProperty(exports, "InsufficientFeeError", { enumerable: true, get: function () { return errors_1.InsufficientFeeError; } });
|
|
60
|
+
Object.defineProperty(exports, "AddressValidationError", { enumerable: true, get: function () { return errors_1.AddressValidationError; } });
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9EQUE0QjtBQVlWLG9CQVpYLGVBQUssQ0FZZTtBQVgzQixvREFBc0M7QUFVN0IsOEJBQVM7QUFSbEIscUNBQW9DO0FBQTNCLGtHQUFBLE9BQU8sT0FBQTtBQUNoQiwyREFBMEQ7QUFBakQsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4QixtRUFBa0U7QUFBekQsZ0lBQUEsc0JBQXNCLE9BQUE7QUFDL0IsNkNBQTRDO0FBQW5DLDBHQUFBLFdBQVcsT0FBQTtBQUNwQiwrREFBOEQ7QUFBckQsNEhBQUEsb0JBQW9CLE9BQUE7QUFDN0IseUVBQXdFO0FBQS9ELHNJQUFBLHlCQUF5QixPQUFBO0FBQ2xDLG1DQUF3RTtBQUEvRCw4R0FBQSxvQkFBb0IsT0FBQTtBQUFFLGdIQUFBLHNCQUFzQixPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0ICogYXMgSW50ZXJmYWNlIGZyb20gJy4vaWZhY2VzJztcblxuZXhwb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5leHBvcnQgeyBLZXlSZWdpc3RyYXRpb25CdWlsZGVyIH0gZnJvbSAnLi9rZXlSZWdpc3RyYXRpb25CdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5leHBvcnQgeyBBc3NldFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vYXNzZXRUcmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5leHBvcnQgeyBJbnN1ZmZpY2llbnRGZWVFcnJvciwgQWRkcmVzc1ZhbGlkYXRpb25FcnJvciB9IGZyb20gJy4vZXJyb3JzJztcbmV4cG9ydCB7IEludGVyZmFjZSB9O1xuZXhwb3J0IHsgdXRpbHMgYXMgYWxnb1V0aWxzIH07XG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Ed25519KeyPair, DefaultKeys, KeyPairOptions } from '@bitgo/sdk-core';
|
|
2
|
+
export declare class KeyPair extends Ed25519KeyPair {
|
|
3
|
+
/**
|
|
4
|
+
* Public constructor. By default, creates a key pair with a random master seed.
|
|
5
|
+
*
|
|
6
|
+
* @param { KeyPairOptions } source Either a master seed, a private key, or a public key
|
|
7
|
+
*/
|
|
8
|
+
constructor(source?: KeyPairOptions);
|
|
9
|
+
/** @inheritdoc */
|
|
10
|
+
recordKeysFromPrivateKeyInProtocolFormat(prv: string): DefaultKeys;
|
|
11
|
+
/** @inheritdoc */
|
|
12
|
+
recordKeysFromPublicKeyInProtocolFormat(pub: string): DefaultKeys;
|
|
13
|
+
/** @inheritdoc */
|
|
14
|
+
getAddress(): string;
|
|
15
|
+
/** @inheritdoc */
|
|
16
|
+
getKeys(): DefaultKeys;
|
|
17
|
+
/**
|
|
18
|
+
* Getting the base64 private key for signing an algo transaction.
|
|
19
|
+
*
|
|
20
|
+
* @returns {Uint8Array} base64 private key
|
|
21
|
+
* @see https://developer.algorand.org/docs/features/accounts/#transformation-private-key-to-base64-private-key
|
|
22
|
+
*/
|
|
23
|
+
getSigningKey(): Uint8Array;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=keyPair.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyPair.d.ts","sourceRoot":"","sources":["../../../src/lib/keyPair.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAc,MAAM,iBAAiB,CAAC;AAG1F,qBAAa,OAAQ,SAAQ,cAAc;IACzC;;;;OAIG;gBACS,MAAM,CAAC,EAAE,cAAc;IAInC,kBAAkB;IAClB,wCAAwC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAOlE,kBAAkB;IAClB,uCAAuC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAKjE,kBAAkB;IAClB,UAAU,IAAI,MAAM;IAIpB,kBAAkB;IAClB,OAAO,IAAI,WAAW;IAYtB;;;;;OAKG;IACH,aAAa,IAAI,UAAU;CAM5B"}
|