@bitgo-beta/sdk-coin-ada 2.3.14-beta.980 → 2.3.14-beta.982
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/lib/index.d.ts +1 -0
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +5 -1
- package/dist/src/lib/messages/cip8/cip8Message.d.ts +18 -0
- package/dist/src/lib/messages/cip8/cip8Message.d.ts.map +1 -0
- package/dist/src/lib/messages/cip8/cip8Message.js +117 -0
- package/dist/src/lib/messages/cip8/cip8MessageBuilder.d.ts +19 -0
- package/dist/src/lib/messages/cip8/cip8MessageBuilder.d.ts.map +1 -0
- package/dist/src/lib/messages/cip8/cip8MessageBuilder.js +27 -0
- package/dist/src/lib/messages/cip8/index.d.ts +3 -0
- package/dist/src/lib/messages/cip8/index.d.ts.map +1 -0
- package/dist/src/lib/messages/cip8/index.js +19 -0
- package/dist/src/lib/messages/cip8/utils.d.ts +24 -0
- package/dist/src/lib/messages/cip8/utils.d.ts.map +1 -0
- package/dist/src/lib/messages/cip8/utils.js +73 -0
- package/dist/src/lib/messages/index.d.ts +3 -0
- package/dist/src/lib/messages/index.d.ts.map +1 -0
- package/dist/src/lib/messages/index.js +19 -0
- package/dist/src/lib/messages/messageBuilderFactory.d.ts +7 -0
- package/dist/src/lib/messages/messageBuilderFactory.d.ts.map +1 -0
- package/dist/src/lib/messages/messageBuilderFactory.js +20 -0
- package/package.json +6 -6
package/dist/src/lib/index.d.ts
CHANGED
|
@@ -11,4 +11,5 @@ export { StakingWithdrawBuilder } from './stakingWithdrawBuilder';
|
|
|
11
11
|
export { StakingPledgeBuilder } from './stakingPledgeBuilder';
|
|
12
12
|
export { VoteDelegationBuilder } from './voteDelegationBuilder';
|
|
13
13
|
export { Utils };
|
|
14
|
+
export * from './messages';
|
|
14
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,CAAC;AACjB,cAAc,YAAY,CAAC"}
|
package/dist/src/lib/index.js
CHANGED
|
@@ -32,6 +32,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
32
32
|
return result;
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
36
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
|
+
};
|
|
35
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
39
|
exports.Utils = exports.VoteDelegationBuilder = exports.StakingPledgeBuilder = exports.StakingWithdrawBuilder = exports.StakingDeactivateBuilder = exports.StakingClaimRewardsBuilder = exports.StakingActivateBuilder = exports.TransactionBuilderFactory = exports.TransferBuilder = exports.TransactionBuilder = exports.Transaction = exports.KeyPair = void 0;
|
|
37
40
|
const Utils = __importStar(require("./utils"));
|
|
@@ -58,4 +61,5 @@ var stakingPledgeBuilder_1 = require("./stakingPledgeBuilder");
|
|
|
58
61
|
Object.defineProperty(exports, "StakingPledgeBuilder", { enumerable: true, get: function () { return stakingPledgeBuilder_1.StakingPledgeBuilder; } });
|
|
59
62
|
var voteDelegationBuilder_1 = require("./voteDelegationBuilder");
|
|
60
63
|
Object.defineProperty(exports, "VoteDelegationBuilder", { enumerable: true, get: function () { return voteDelegationBuilder_1.VoteDelegationBuilder; } });
|
|
61
|
-
|
|
64
|
+
__exportStar(require("./messages"), exports);
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUFpQztBQWF4QixzQkFBSztBQVhkLHFDQUFvQztBQUEzQixrR0FBQSxPQUFPLE9BQUE7QUFDaEIsNkNBQTRDO0FBQW5DLDBHQUFBLFdBQVcsT0FBQTtBQUNwQiwyREFBMEQ7QUFBakQsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4Qix5RUFBd0U7QUFBL0Qsc0lBQUEseUJBQXlCLE9BQUE7QUFDbEMsbUVBQWtFO0FBQXpELGdJQUFBLHNCQUFzQixPQUFBO0FBQy9CLDJFQUEwRTtBQUFqRSx3SUFBQSwwQkFBMEIsT0FBQTtBQUNuQyx1RUFBc0U7QUFBN0Qsb0lBQUEsd0JBQXdCLE9BQUE7QUFDakMsbUVBQWtFO0FBQXpELGdJQUFBLHNCQUFzQixPQUFBO0FBQy9CLCtEQUE4RDtBQUFyRCw0SEFBQSxvQkFBb0IsT0FBQTtBQUM3QixpRUFBZ0U7QUFBdkQsOEhBQUEscUJBQXFCLE9BQUE7QUFFOUIsNkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgVXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCB7IEtleVBhaXIgfSBmcm9tICcuL2tleVBhaXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnknO1xuZXhwb3J0IHsgU3Rha2luZ0FjdGl2YXRlQnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ0FjdGl2YXRlQnVpbGRlcic7XG5leHBvcnQgeyBTdGFraW5nQ2xhaW1SZXdhcmRzQnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ0NsYWltUmV3YXJkc0J1aWxkZXInO1xuZXhwb3J0IHsgU3Rha2luZ0RlYWN0aXZhdGVCdWlsZGVyIH0gZnJvbSAnLi9zdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXInO1xuZXhwb3J0IHsgU3Rha2luZ1dpdGhkcmF3QnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ1dpdGhkcmF3QnVpbGRlcic7XG5leHBvcnQgeyBTdGFraW5nUGxlZGdlQnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ1BsZWRnZUJ1aWxkZXInO1xuZXhwb3J0IHsgVm90ZURlbGVnYXRpb25CdWlsZGVyIH0gZnJvbSAnLi92b3RlRGVsZWdhdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVXRpbHMgfTtcbmV4cG9ydCAqIGZyb20gJy4vbWVzc2FnZXMnO1xuIl19
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { BaseMessage, MessageOptions, Signature } from '@bitgo-beta/sdk-core';
|
|
2
|
+
/**
|
|
3
|
+
* Implementation of Message for CIP8 standard
|
|
4
|
+
*/
|
|
5
|
+
export declare class Cip8Message extends BaseMessage {
|
|
6
|
+
constructor(options: MessageOptions);
|
|
7
|
+
/**
|
|
8
|
+
* Returns the hash of the CIP-8 prefixed message
|
|
9
|
+
*/
|
|
10
|
+
getSignablePayload(): Promise<string | Buffer>;
|
|
11
|
+
getBroadcastableSignatures(): Signature[];
|
|
12
|
+
/**
|
|
13
|
+
* Validates required fields and returns common setup objects
|
|
14
|
+
* @private
|
|
15
|
+
*/
|
|
16
|
+
private validateAndGetCommonSetup;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=cip8Message.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cip8Message.d.ts","sourceRoot":"","sources":["../../../../../src/lib/messages/cip8/cip8Message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAuB,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAInG;;GAEG;AACH,qBAAa,WAAY,SAAQ,WAAW;gBAC9B,OAAO,EAAE,cAAc;IAOnC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAmBpD,0BAA0B,IAAI,SAAS,EAAE;IA4BzC;;;OAGG;IACH,OAAO,CAAC,yBAAyB;CAsBlC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.Cip8Message = void 0;
|
|
37
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
38
|
+
const CardanoSL = __importStar(require("@emurgo/cardano-serialization-lib-nodejs"));
|
|
39
|
+
const utils_1 = require("./utils");
|
|
40
|
+
/**
|
|
41
|
+
* Implementation of Message for CIP8 standard
|
|
42
|
+
*/
|
|
43
|
+
class Cip8Message extends sdk_core_1.BaseMessage {
|
|
44
|
+
constructor(options) {
|
|
45
|
+
super({
|
|
46
|
+
...options,
|
|
47
|
+
type: sdk_core_1.MessageStandardType.CIP8,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Returns the hash of the CIP-8 prefixed message
|
|
52
|
+
*/
|
|
53
|
+
async getSignablePayload() {
|
|
54
|
+
if (!this.signablePayload) {
|
|
55
|
+
const { addressCborBytes } = this.validateAndGetCommonSetup();
|
|
56
|
+
const { sigStructureCborBytes } = (0, utils_1.createCSLSigStructure)(addressCborBytes, this.payload);
|
|
57
|
+
this.signablePayload = Buffer.from(sigStructureCborBytes);
|
|
58
|
+
}
|
|
59
|
+
return this.signablePayload;
|
|
60
|
+
}
|
|
61
|
+
/*
|
|
62
|
+
* Returns broadcastable signatures in COSE format according to CIP8 standard
|
|
63
|
+
*
|
|
64
|
+
* This method transforms the internal signatures into a format suitable for broadcasting
|
|
65
|
+
* by constructing COSE (CBOR Object Signing and Encryption) objects that comply with
|
|
66
|
+
* the CIP8 message signing specification.
|
|
67
|
+
*
|
|
68
|
+
* @returns Array of signatures with COSE-formatted signature data and public keys
|
|
69
|
+
* @throws Error if required setup validation fails
|
|
70
|
+
*/
|
|
71
|
+
getBroadcastableSignatures() {
|
|
72
|
+
if (!this.signatures.length) {
|
|
73
|
+
return [];
|
|
74
|
+
}
|
|
75
|
+
const signature = this.signatures[0].signature;
|
|
76
|
+
const publicKeyHex = this.signatures[0].publicKey.pub;
|
|
77
|
+
const { addressCborBytes } = this.validateAndGetCommonSetup();
|
|
78
|
+
const { protectedHeaderCborBytes, payloadBytes } = (0, utils_1.createCSLSigStructure)(addressCborBytes, this.payload);
|
|
79
|
+
const coseObjectsOutput = (0, utils_1.constructCSLCoseObjects)(protectedHeaderCborBytes, payloadBytes, signature, CardanoSL.PublicKey.from_bytes(Buffer.from(publicKeyHex, 'hex')));
|
|
80
|
+
const coseObjectsBuffer = (0, utils_1.coseObjectsOutputToBuffer)(coseObjectsOutput);
|
|
81
|
+
return [
|
|
82
|
+
{
|
|
83
|
+
signature: coseObjectsBuffer,
|
|
84
|
+
publicKey: {
|
|
85
|
+
pub: publicKeyHex,
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
];
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Validates required fields and returns common setup objects
|
|
92
|
+
* @private
|
|
93
|
+
*/
|
|
94
|
+
validateAndGetCommonSetup() {
|
|
95
|
+
if (!this.payload) {
|
|
96
|
+
throw new Error('Payload is required to build a CIP8 message');
|
|
97
|
+
}
|
|
98
|
+
if (!this.signers || this.signers.length === 0) {
|
|
99
|
+
throw new Error('A signer address is required to build a CIP8 message');
|
|
100
|
+
}
|
|
101
|
+
let cslAddress;
|
|
102
|
+
try {
|
|
103
|
+
cslAddress = CardanoSL.Address.from_bech32(this.signers[0]);
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
// Convert string errors to proper Error objects
|
|
107
|
+
if (typeof error === 'string') {
|
|
108
|
+
throw new Error(`Invalid signer address: ${error}`);
|
|
109
|
+
}
|
|
110
|
+
throw error;
|
|
111
|
+
}
|
|
112
|
+
const addressCborBytes = cslAddress.to_bytes();
|
|
113
|
+
return { addressCborBytes };
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
exports.Cip8Message = Cip8Message;
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2lwOE1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21lc3NhZ2VzL2NpcDgvY2lwOE1lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsbURBQW1HO0FBQ25HLG9GQUFzRTtBQUN0RSxtQ0FBb0c7QUFFcEc7O0dBRUc7QUFDSCxNQUFhLFdBQVksU0FBUSxzQkFBVztJQUMxQyxZQUFZLE9BQXVCO1FBQ2pDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSw4QkFBbUIsQ0FBQyxJQUFJO1NBQy9CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxrQkFBa0I7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUMxQixNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztZQUM5RCxNQUFNLEVBQUUscUJBQXFCLEVBQUUsR0FBRyxJQUFBLDZCQUFxQixFQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN4RixJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUM1RCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSCwwQkFBMEI7UUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDL0MsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDO1FBRXRELE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1FBQzlELE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxZQUFZLEVBQUUsR0FBRyxJQUFBLDZCQUFxQixFQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV6RyxNQUFNLGlCQUFpQixHQUFHLElBQUEsK0JBQXVCLEVBQy9DLHdCQUF3QixFQUN4QixZQUFZLEVBQ1osU0FBUyxFQUNULFNBQVMsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQ2pFLENBQUM7UUFDRixNQUFNLGlCQUFpQixHQUFHLElBQUEsaUNBQXlCLEVBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN2RSxPQUFPO1lBQ0w7Z0JBQ0UsU0FBUyxFQUFFLGlCQUFpQjtnQkFDNUIsU0FBUyxFQUFFO29CQUNULEdBQUcsRUFBRSxZQUFZO2lCQUNsQjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSyx5QkFBeUI7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7UUFDakUsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQy9DLE1BQU0sSUFBSSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztRQUMxRSxDQUFDO1FBRUQsSUFBSSxVQUE2QixDQUFDO1FBQ2xDLElBQUksQ0FBQztZQUNILFVBQVUsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixnREFBZ0Q7WUFDaEQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN0RCxDQUFDO1lBQ0QsTUFBTSxLQUFLLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLENBQUM7SUFDOUIsQ0FBQztDQUNGO0FBcEZELGtDQW9GQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VNZXNzYWdlLCBNZXNzYWdlT3B0aW9ucywgTWVzc2FnZVN0YW5kYXJkVHlwZSwgU2lnbmF0dXJlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0ICogYXMgQ2FyZGFub1NMIGZyb20gJ0BlbXVyZ28vY2FyZGFuby1zZXJpYWxpemF0aW9uLWxpYi1ub2RlanMnO1xuaW1wb3J0IHsgY29uc3RydWN0Q1NMQ29zZU9iamVjdHMsIGNvc2VPYmplY3RzT3V0cHV0VG9CdWZmZXIsIGNyZWF0ZUNTTFNpZ1N0cnVjdHVyZSB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIEltcGxlbWVudGF0aW9uIG9mIE1lc3NhZ2UgZm9yIENJUDggc3RhbmRhcmRcbiAqL1xuZXhwb3J0IGNsYXNzIENpcDhNZXNzYWdlIGV4dGVuZHMgQmFzZU1lc3NhZ2Uge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBNZXNzYWdlT3B0aW9ucykge1xuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICB0eXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlLkNJUDgsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgaGFzaCBvZiB0aGUgQ0lQLTggcHJlZml4ZWQgbWVzc2FnZVxuICAgKi9cbiAgYXN5bmMgZ2V0U2lnbmFibGVQYXlsb2FkKCk6IFByb21pc2U8c3RyaW5nIHwgQnVmZmVyPiB7XG4gICAgaWYgKCF0aGlzLnNpZ25hYmxlUGF5bG9hZCkge1xuICAgICAgY29uc3QgeyBhZGRyZXNzQ2JvckJ5dGVzIH0gPSB0aGlzLnZhbGlkYXRlQW5kR2V0Q29tbW9uU2V0dXAoKTtcbiAgICAgIGNvbnN0IHsgc2lnU3RydWN0dXJlQ2JvckJ5dGVzIH0gPSBjcmVhdGVDU0xTaWdTdHJ1Y3R1cmUoYWRkcmVzc0Nib3JCeXRlcywgdGhpcy5wYXlsb2FkKTtcbiAgICAgIHRoaXMuc2lnbmFibGVQYXlsb2FkID0gQnVmZmVyLmZyb20oc2lnU3RydWN0dXJlQ2JvckJ5dGVzKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc2lnbmFibGVQYXlsb2FkO1xuICB9XG5cbiAgLypcbiAgICogUmV0dXJucyBicm9hZGNhc3RhYmxlIHNpZ25hdHVyZXMgaW4gQ09TRSBmb3JtYXQgYWNjb3JkaW5nIHRvIENJUDggc3RhbmRhcmRcbiAgICpcbiAgICogVGhpcyBtZXRob2QgdHJhbnNmb3JtcyB0aGUgaW50ZXJuYWwgc2lnbmF0dXJlcyBpbnRvIGEgZm9ybWF0IHN1aXRhYmxlIGZvciBicm9hZGNhc3RpbmdcbiAgICogYnkgY29uc3RydWN0aW5nIENPU0UgKENCT1IgT2JqZWN0IFNpZ25pbmcgYW5kIEVuY3J5cHRpb24pIG9iamVjdHMgdGhhdCBjb21wbHkgd2l0aFxuICAgKiB0aGUgQ0lQOCBtZXNzYWdlIHNpZ25pbmcgc3BlY2lmaWNhdGlvbi5cbiAgICpcbiAgICogQHJldHVybnMgQXJyYXkgb2Ygc2lnbmF0dXJlcyB3aXRoIENPU0UtZm9ybWF0dGVkIHNpZ25hdHVyZSBkYXRhIGFuZCBwdWJsaWMga2V5c1xuICAgKiBAdGhyb3dzIEVycm9yIGlmIHJlcXVpcmVkIHNldHVwIHZhbGlkYXRpb24gZmFpbHNcbiAgICovXG4gIGdldEJyb2FkY2FzdGFibGVTaWduYXR1cmVzKCk6IFNpZ25hdHVyZVtdIHtcbiAgICBpZiAoIXRoaXMuc2lnbmF0dXJlcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCBzaWduYXR1cmUgPSB0aGlzLnNpZ25hdHVyZXNbMF0uc2lnbmF0dXJlO1xuICAgIGNvbnN0IHB1YmxpY0tleUhleCA9IHRoaXMuc2lnbmF0dXJlc1swXS5wdWJsaWNLZXkucHViO1xuXG4gICAgY29uc3QgeyBhZGRyZXNzQ2JvckJ5dGVzIH0gPSB0aGlzLnZhbGlkYXRlQW5kR2V0Q29tbW9uU2V0dXAoKTtcbiAgICBjb25zdCB7IHByb3RlY3RlZEhlYWRlckNib3JCeXRlcywgcGF5bG9hZEJ5dGVzIH0gPSBjcmVhdGVDU0xTaWdTdHJ1Y3R1cmUoYWRkcmVzc0Nib3JCeXRlcywgdGhpcy5wYXlsb2FkKTtcblxuICAgIGNvbnN0IGNvc2VPYmplY3RzT3V0cHV0ID0gY29uc3RydWN0Q1NMQ29zZU9iamVjdHMoXG4gICAgICBwcm90ZWN0ZWRIZWFkZXJDYm9yQnl0ZXMsXG4gICAgICBwYXlsb2FkQnl0ZXMsXG4gICAgICBzaWduYXR1cmUsXG4gICAgICBDYXJkYW5vU0wuUHVibGljS2V5LmZyb21fYnl0ZXMoQnVmZmVyLmZyb20ocHVibGljS2V5SGV4LCAnaGV4JykpXG4gICAgKTtcbiAgICBjb25zdCBjb3NlT2JqZWN0c0J1ZmZlciA9IGNvc2VPYmplY3RzT3V0cHV0VG9CdWZmZXIoY29zZU9iamVjdHNPdXRwdXQpO1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIHNpZ25hdHVyZTogY29zZU9iamVjdHNCdWZmZXIsXG4gICAgICAgIHB1YmxpY0tleToge1xuICAgICAgICAgIHB1YjogcHVibGljS2V5SGV4LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyByZXF1aXJlZCBmaWVsZHMgYW5kIHJldHVybnMgY29tbW9uIHNldHVwIG9iamVjdHNcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgdmFsaWRhdGVBbmRHZXRDb21tb25TZXR1cCgpIHtcbiAgICBpZiAoIXRoaXMucGF5bG9hZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQYXlsb2FkIGlzIHJlcXVpcmVkIHRvIGJ1aWxkIGEgQ0lQOCBtZXNzYWdlJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5zaWduZXJzIHx8IHRoaXMuc2lnbmVycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQSBzaWduZXIgYWRkcmVzcyBpcyByZXF1aXJlZCB0byBidWlsZCBhIENJUDggbWVzc2FnZScpO1xuICAgIH1cblxuICAgIGxldCBjc2xBZGRyZXNzOiBDYXJkYW5vU0wuQWRkcmVzcztcbiAgICB0cnkge1xuICAgICAgY3NsQWRkcmVzcyA9IENhcmRhbm9TTC5BZGRyZXNzLmZyb21fYmVjaDMyKHRoaXMuc2lnbmVyc1swXSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIENvbnZlcnQgc3RyaW5nIGVycm9ycyB0byBwcm9wZXIgRXJyb3Igb2JqZWN0c1xuICAgICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHNpZ25lciBhZGRyZXNzOiAke2Vycm9yfWApO1xuICAgICAgfVxuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuXG4gICAgY29uc3QgYWRkcmVzc0Nib3JCeXRlcyA9IGNzbEFkZHJlc3MudG9fYnl0ZXMoKTtcbiAgICByZXR1cm4geyBhZGRyZXNzQ2JvckJ5dGVzIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
2
|
+
import { BaseMessageBuilder, IMessage, MessageOptions } from '@bitgo-beta/sdk-core';
|
|
3
|
+
/**
|
|
4
|
+
* Builder for CIP-8 messages
|
|
5
|
+
*/
|
|
6
|
+
export declare class Cip8MessageBuilder extends BaseMessageBuilder {
|
|
7
|
+
/**
|
|
8
|
+
* Base constructor.
|
|
9
|
+
* @param _coinConfig BaseCoin from statics library
|
|
10
|
+
*/
|
|
11
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
12
|
+
/**
|
|
13
|
+
* Builds a CIP-8 message instance with the provided options
|
|
14
|
+
* @param options Options to create the message
|
|
15
|
+
* @returns A Promise that resolves to a Cip8Message instance
|
|
16
|
+
*/
|
|
17
|
+
buildMessage(options: MessageOptions): Promise<IMessage>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=cip8MessageBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cip8MessageBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/lib/messages/cip8/cip8MessageBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;AAEzG;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,kBAAkB;IACxD;;;OAGG;gBACgB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAIpD;;;;OAIG;IACG,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;CAG/D"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Cip8MessageBuilder = void 0;
|
|
4
|
+
const cip8Message_1 = require("./cip8Message");
|
|
5
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
6
|
+
/**
|
|
7
|
+
* Builder for CIP-8 messages
|
|
8
|
+
*/
|
|
9
|
+
class Cip8MessageBuilder extends sdk_core_1.BaseMessageBuilder {
|
|
10
|
+
/**
|
|
11
|
+
* Base constructor.
|
|
12
|
+
* @param _coinConfig BaseCoin from statics library
|
|
13
|
+
*/
|
|
14
|
+
constructor(_coinConfig) {
|
|
15
|
+
super(_coinConfig, sdk_core_1.MessageStandardType.CIP8);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Builds a CIP-8 message instance with the provided options
|
|
19
|
+
* @param options Options to create the message
|
|
20
|
+
* @returns A Promise that resolves to a Cip8Message instance
|
|
21
|
+
*/
|
|
22
|
+
async buildMessage(options) {
|
|
23
|
+
return new cip8Message_1.Cip8Message(options);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.Cip8MessageBuilder = Cip8MessageBuilder;
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2lwOE1lc3NhZ2VCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tZXNzYWdlcy9jaXA4L2NpcDhNZXNzYWdlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQ0FBNEM7QUFFNUMsbURBQXlHO0FBRXpHOztHQUVHO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSw2QkFBa0I7SUFDeEQ7OztPQUdHO0lBQ0gsWUFBbUIsV0FBaUM7UUFDbEQsS0FBSyxDQUFDLFdBQVcsRUFBRSw4QkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBdUI7UUFDeEMsT0FBTyxJQUFJLHlCQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEMsQ0FBQztDQUNGO0FBakJELGdEQWlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENpcDhNZXNzYWdlIH0gZnJvbSAnLi9jaXA4TWVzc2FnZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBCYXNlTWVzc2FnZUJ1aWxkZXIsIElNZXNzYWdlLCBNZXNzYWdlT3B0aW9ucywgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcblxuLyoqXG4gKiBCdWlsZGVyIGZvciBDSVAtOCBtZXNzYWdlc1xuICovXG5leHBvcnQgY2xhc3MgQ2lwOE1lc3NhZ2VCdWlsZGVyIGV4dGVuZHMgQmFzZU1lc3NhZ2VCdWlsZGVyIHtcbiAgLyoqXG4gICAqIEJhc2UgY29uc3RydWN0b3IuXG4gICAqIEBwYXJhbSBfY29pbkNvbmZpZyBCYXNlQ29pbiBmcm9tIHN0YXRpY3MgbGlicmFyeVxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnLCBNZXNzYWdlU3RhbmRhcmRUeXBlLkNJUDgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkcyBhIENJUC04IG1lc3NhZ2UgaW5zdGFuY2Ugd2l0aCB0aGUgcHJvdmlkZWQgb3B0aW9uc1xuICAgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25zIHRvIGNyZWF0ZSB0aGUgbWVzc2FnZVxuICAgKiBAcmV0dXJucyBBIFByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIENpcDhNZXNzYWdlIGluc3RhbmNlXG4gICAqL1xuICBhc3luYyBidWlsZE1lc3NhZ2Uob3B0aW9uczogTWVzc2FnZU9wdGlvbnMpOiBQcm9taXNlPElNZXNzYWdlPiB7XG4gICAgcmV0dXJuIG5ldyBDaXA4TWVzc2FnZShvcHRpb25zKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/messages/cip8/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./cip8Message"), exports);
|
|
18
|
+
__exportStar(require("./cip8MessageBuilder"), exports);
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21lc3NhZ2VzL2NpcDgvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUE4QjtBQUM5Qix1REFBcUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NpcDhNZXNzYWdlJztcbmV4cG9ydCAqIGZyb20gJy4vY2lwOE1lc3NhZ2VCdWlsZGVyJztcbiJdfQ==
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Buffer } from 'buffer';
|
|
2
|
+
import * as CSL from '@emurgo/cardano-serialization-lib-nodejs';
|
|
3
|
+
export declare function bytesToHex(bytes: Uint8Array | Buffer): string;
|
|
4
|
+
export interface CSLSigStructureOutput {
|
|
5
|
+
sigStructureCborBytes: Uint8Array;
|
|
6
|
+
protectedHeaderCborBytes: Uint8Array;
|
|
7
|
+
payloadBytes: Buffer;
|
|
8
|
+
}
|
|
9
|
+
export interface CSLCoseObjectsOutput {
|
|
10
|
+
manualCoseSign1Hex: string;
|
|
11
|
+
manualCoseKeyHex: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Creates the CSL signature structure for off-chain message signing.
|
|
15
|
+
*
|
|
16
|
+
* @param addressCborBytes - The CBOR bytes of the CSL address.
|
|
17
|
+
* @param message - The message to be signed.
|
|
18
|
+
* @returns An object containing the signature structure CBOR bytes, protected header CBOR bytes, and payload bytes.
|
|
19
|
+
*/
|
|
20
|
+
export declare function createCSLSigStructure(addressCborBytes: Uint8Array, message: string): CSLSigStructureOutput;
|
|
21
|
+
export declare function constructCSLCoseObjects(protectedHeaderCborBytes: Uint8Array, payloadBytes: Buffer, cslSignatureBytes: Uint8Array, paymentPubKey: CSL.PublicKey): CSLCoseObjectsOutput;
|
|
22
|
+
export declare function coseObjectsOutputToBuffer(output: CSLCoseObjectsOutput): Buffer;
|
|
23
|
+
export declare function bufferToCoseObjectsOutput(buffer: Buffer): Promise<CSLCoseObjectsOutput>;
|
|
24
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/lib/messages/cip8/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,GAAG,MAAM,0CAA0C,CAAC;AAIhE,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,CAE7D;AAED,MAAM,WAAW,qBAAqB;IACpC,qBAAqB,EAAE,UAAU,CAAC;IAClC,wBAAwB,EAAE,UAAU,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,gBAAgB,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAoB1G;AAGD,wBAAgB,uBAAuB,CACrC,wBAAwB,EAAE,UAAU,EACpC,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,UAAU,EAC7B,aAAa,EAAE,GAAG,CAAC,SAAS,GAC3B,oBAAoB,CA4BtB;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAE9E;AAED,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAE7F"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.bytesToHex = bytesToHex;
|
|
4
|
+
exports.createCSLSigStructure = createCSLSigStructure;
|
|
5
|
+
exports.constructCSLCoseObjects = constructCSLCoseObjects;
|
|
6
|
+
exports.coseObjectsOutputToBuffer = coseObjectsOutputToBuffer;
|
|
7
|
+
exports.bufferToCoseObjectsOutput = bufferToCoseObjectsOutput;
|
|
8
|
+
const buffer_1 = require("buffer");
|
|
9
|
+
const cbor_1 = require("cbor");
|
|
10
|
+
// Helper function to convert a Uint8Array or Buffer to a hex string
|
|
11
|
+
function bytesToHex(bytes) {
|
|
12
|
+
return buffer_1.Buffer.from(bytes).toString('hex');
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Creates the CSL signature structure for off-chain message signing.
|
|
16
|
+
*
|
|
17
|
+
* @param addressCborBytes - The CBOR bytes of the CSL address.
|
|
18
|
+
* @param message - The message to be signed.
|
|
19
|
+
* @returns An object containing the signature structure CBOR bytes, protected header CBOR bytes, and payload bytes.
|
|
20
|
+
*/
|
|
21
|
+
function createCSLSigStructure(addressCborBytes, message) {
|
|
22
|
+
// Payload
|
|
23
|
+
const payloadBytes = buffer_1.Buffer.from(message, 'utf-8');
|
|
24
|
+
// Protected Header
|
|
25
|
+
const protectedHeaderMap = new Map();
|
|
26
|
+
protectedHeaderMap.set(1, -8); // Algorithm ID: EdDSA
|
|
27
|
+
protectedHeaderMap.set('address', buffer_1.Buffer.from(addressCborBytes));
|
|
28
|
+
const protectedHeaderCborBytes = cbor_1.Encoder.encode(protectedHeaderMap);
|
|
29
|
+
// Sig_structure
|
|
30
|
+
const sigStructureArray = [
|
|
31
|
+
'Signature1',
|
|
32
|
+
buffer_1.Buffer.from(protectedHeaderCborBytes),
|
|
33
|
+
buffer_1.Buffer.from([]), // Empty external_aad
|
|
34
|
+
buffer_1.Buffer.from(payloadBytes),
|
|
35
|
+
];
|
|
36
|
+
const sigStructureCborBytes = cbor_1.Encoder.encode(sigStructureArray);
|
|
37
|
+
return { sigStructureCborBytes, protectedHeaderCborBytes, payloadBytes };
|
|
38
|
+
}
|
|
39
|
+
// COSE objects construction function
|
|
40
|
+
function constructCSLCoseObjects(protectedHeaderCborBytes, payloadBytes, cslSignatureBytes, paymentPubKey) {
|
|
41
|
+
// COSE_Sign1 Construction
|
|
42
|
+
const unprotectedHeadersMap = new Map();
|
|
43
|
+
unprotectedHeadersMap.set('hashed', false);
|
|
44
|
+
const coseSign1Array = [
|
|
45
|
+
buffer_1.Buffer.from(protectedHeaderCborBytes),
|
|
46
|
+
unprotectedHeadersMap,
|
|
47
|
+
buffer_1.Buffer.from(payloadBytes),
|
|
48
|
+
buffer_1.Buffer.from(cslSignatureBytes),
|
|
49
|
+
];
|
|
50
|
+
const finalCoseSign1CborBytes = cbor_1.Encoder.encode(coseSign1Array);
|
|
51
|
+
/* // directly encoding the coseSign1Array without prepending the 0xD2 tag.
|
|
52
|
+
* const coseSign1PayloadBytes = Encoder.encode(coseSign1Array);
|
|
53
|
+
* const coseSign1Tag = Buffer.from([0xD2]); // Tag 18 for COSE_Sign1
|
|
54
|
+
* const finalCoseSign1CborBytes = Buffer.concat([coseSign1Tag, coseSign1PayloadBytes]);
|
|
55
|
+
*/
|
|
56
|
+
const manualCoseSign1Hex = bytesToHex(finalCoseSign1CborBytes);
|
|
57
|
+
// COSE_Key Construction
|
|
58
|
+
const coseKeyMap = new Map();
|
|
59
|
+
coseKeyMap.set(1, 1); // kty: OKP (Octet Key Pair)
|
|
60
|
+
coseKeyMap.set(3, -8); // alg: EdDSA
|
|
61
|
+
coseKeyMap.set(-1, 6); // crv: Ed25519
|
|
62
|
+
coseKeyMap.set(-2, buffer_1.Buffer.from(paymentPubKey.as_bytes())); // x: public_key_bytes (Ed25519 public key)
|
|
63
|
+
const finalCoseKeyCborBytes = cbor_1.Encoder.encode(coseKeyMap);
|
|
64
|
+
const manualCoseKeyHex = bytesToHex(finalCoseKeyCborBytes);
|
|
65
|
+
return { manualCoseSign1Hex, manualCoseKeyHex };
|
|
66
|
+
}
|
|
67
|
+
function coseObjectsOutputToBuffer(output) {
|
|
68
|
+
return buffer_1.Buffer.from(cbor_1.Encoder.encode(output));
|
|
69
|
+
}
|
|
70
|
+
async function bufferToCoseObjectsOutput(buffer) {
|
|
71
|
+
return await cbor_1.Decoder.decodeFirst(buffer);
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21lc3NhZ2VzL2NpcDgvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFLQSxnQ0FFQztBQW9CRCxzREFvQkM7QUFHRCwwREFpQ0M7QUFFRCw4REFFQztBQUVELDhEQUVDO0FBM0ZELG1DQUFnQztBQUVoQywrQkFBd0M7QUFFeEMsb0VBQW9FO0FBQ3BFLFNBQWdCLFVBQVUsQ0FBQyxLQUEwQjtJQUNuRCxPQUFPLGVBQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFhRDs7Ozs7O0dBTUc7QUFDSCxTQUFnQixxQkFBcUIsQ0FBQyxnQkFBNEIsRUFBRSxPQUFlO0lBQ2pGLFVBQVU7SUFDVixNQUFNLFlBQVksR0FBRyxlQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUVuRCxtQkFBbUI7SUFDbkIsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLEdBQUcsRUFBd0IsQ0FBQztJQUMzRCxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxzQkFBc0I7SUFDckQsa0JBQWtCLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxlQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztJQUNqRSxNQUFNLHdCQUF3QixHQUFHLGNBQU8sQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUVwRSxnQkFBZ0I7SUFDaEIsTUFBTSxpQkFBaUIsR0FBVTtRQUMvQixZQUFZO1FBQ1osZUFBTSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztRQUNyQyxlQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLHFCQUFxQjtRQUN0QyxlQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztLQUMxQixDQUFDO0lBQ0YsTUFBTSxxQkFBcUIsR0FBRyxjQUFPLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFaEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxDQUFDO0FBQzNFLENBQUM7QUFFRCxxQ0FBcUM7QUFDckMsU0FBZ0IsdUJBQXVCLENBQ3JDLHdCQUFvQyxFQUNwQyxZQUFvQixFQUNwQixpQkFBNkIsRUFDN0IsYUFBNEI7SUFFNUIsMEJBQTBCO0lBQzFCLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQztJQUNyRCxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNDLE1BQU0sY0FBYyxHQUFVO1FBQzVCLGVBQU0sQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUM7UUFDckMscUJBQXFCO1FBQ3JCLGVBQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3pCLGVBQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUM7S0FDL0IsQ0FBQztJQUNGLE1BQU0sdUJBQXVCLEdBQUcsY0FBTyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUMvRDs7OztPQUlHO0lBQ0gsTUFBTSxrQkFBa0IsR0FBRyxVQUFVLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUUvRCx3QkFBd0I7SUFDeEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQztJQUMxQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLDRCQUE0QjtJQUNsRCxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYTtJQUNwQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBZTtJQUN0QyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLGVBQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLDJDQUEyQztJQUN0RyxNQUFNLHFCQUFxQixHQUFHLGNBQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekQsTUFBTSxnQkFBZ0IsR0FBRyxVQUFVLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUUzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQztBQUNsRCxDQUFDO0FBRUQsU0FBZ0IseUJBQXlCLENBQUMsTUFBNEI7SUFDcEUsT0FBTyxlQUFNLENBQUMsSUFBSSxDQUFDLGNBQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztBQUM3QyxDQUFDO0FBRU0sS0FBSyxVQUFVLHlCQUF5QixDQUFDLE1BQWM7SUFDNUQsT0FBTyxNQUFNLGNBQU8sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1ZmZlciB9IGZyb20gJ2J1ZmZlcic7XG5pbXBvcnQgKiBhcyBDU0wgZnJvbSAnQGVtdXJnby9jYXJkYW5vLXNlcmlhbGl6YXRpb24tbGliLW5vZGVqcyc7XG5pbXBvcnQgeyBEZWNvZGVyLCBFbmNvZGVyIH0gZnJvbSAnY2Jvcic7XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBjb252ZXJ0IGEgVWludDhBcnJheSBvciBCdWZmZXIgdG8gYSBoZXggc3RyaW5nXG5leHBvcnQgZnVuY3Rpb24gYnl0ZXNUb0hleChieXRlczogVWludDhBcnJheSB8IEJ1ZmZlcik6IHN0cmluZyB7XG4gIHJldHVybiBCdWZmZXIuZnJvbShieXRlcykudG9TdHJpbmcoJ2hleCcpO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENTTFNpZ1N0cnVjdHVyZU91dHB1dCB7XG4gIHNpZ1N0cnVjdHVyZUNib3JCeXRlczogVWludDhBcnJheTtcbiAgcHJvdGVjdGVkSGVhZGVyQ2JvckJ5dGVzOiBVaW50OEFycmF5O1xuICBwYXlsb2FkQnl0ZXM6IEJ1ZmZlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDU0xDb3NlT2JqZWN0c091dHB1dCB7XG4gIG1hbnVhbENvc2VTaWduMUhleDogc3RyaW5nO1xuICBtYW51YWxDb3NlS2V5SGV4OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlcyB0aGUgQ1NMIHNpZ25hdHVyZSBzdHJ1Y3R1cmUgZm9yIG9mZi1jaGFpbiBtZXNzYWdlIHNpZ25pbmcuXG4gKlxuICogQHBhcmFtIGFkZHJlc3NDYm9yQnl0ZXMgLSBUaGUgQ0JPUiBieXRlcyBvZiB0aGUgQ1NMIGFkZHJlc3MuXG4gKiBAcGFyYW0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIHRvIGJlIHNpZ25lZC5cbiAqIEByZXR1cm5zIEFuIG9iamVjdCBjb250YWluaW5nIHRoZSBzaWduYXR1cmUgc3RydWN0dXJlIENCT1IgYnl0ZXMsIHByb3RlY3RlZCBoZWFkZXIgQ0JPUiBieXRlcywgYW5kIHBheWxvYWQgYnl0ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDU0xTaWdTdHJ1Y3R1cmUoYWRkcmVzc0Nib3JCeXRlczogVWludDhBcnJheSwgbWVzc2FnZTogc3RyaW5nKTogQ1NMU2lnU3RydWN0dXJlT3V0cHV0IHtcbiAgLy8gUGF5bG9hZFxuICBjb25zdCBwYXlsb2FkQnl0ZXMgPSBCdWZmZXIuZnJvbShtZXNzYWdlLCAndXRmLTgnKTtcblxuICAvLyBQcm90ZWN0ZWQgSGVhZGVyXG4gIGNvbnN0IHByb3RlY3RlZEhlYWRlck1hcCA9IG5ldyBNYXA8bnVtYmVyIHwgc3RyaW5nLCBhbnk+KCk7XG4gIHByb3RlY3RlZEhlYWRlck1hcC5zZXQoMSwgLTgpOyAvLyBBbGdvcml0aG0gSUQ6IEVkRFNBXG4gIHByb3RlY3RlZEhlYWRlck1hcC5zZXQoJ2FkZHJlc3MnLCBCdWZmZXIuZnJvbShhZGRyZXNzQ2JvckJ5dGVzKSk7XG4gIGNvbnN0IHByb3RlY3RlZEhlYWRlckNib3JCeXRlcyA9IEVuY29kZXIuZW5jb2RlKHByb3RlY3RlZEhlYWRlck1hcCk7XG5cbiAgLy8gU2lnX3N0cnVjdHVyZVxuICBjb25zdCBzaWdTdHJ1Y3R1cmVBcnJheTogYW55W10gPSBbXG4gICAgJ1NpZ25hdHVyZTEnLFxuICAgIEJ1ZmZlci5mcm9tKHByb3RlY3RlZEhlYWRlckNib3JCeXRlcyksXG4gICAgQnVmZmVyLmZyb20oW10pLCAvLyBFbXB0eSBleHRlcm5hbF9hYWRcbiAgICBCdWZmZXIuZnJvbShwYXlsb2FkQnl0ZXMpLFxuICBdO1xuICBjb25zdCBzaWdTdHJ1Y3R1cmVDYm9yQnl0ZXMgPSBFbmNvZGVyLmVuY29kZShzaWdTdHJ1Y3R1cmVBcnJheSk7XG5cbiAgcmV0dXJuIHsgc2lnU3RydWN0dXJlQ2JvckJ5dGVzLCBwcm90ZWN0ZWRIZWFkZXJDYm9yQnl0ZXMsIHBheWxvYWRCeXRlcyB9O1xufVxuXG4vLyBDT1NFIG9iamVjdHMgY29uc3RydWN0aW9uIGZ1bmN0aW9uXG5leHBvcnQgZnVuY3Rpb24gY29uc3RydWN0Q1NMQ29zZU9iamVjdHMoXG4gIHByb3RlY3RlZEhlYWRlckNib3JCeXRlczogVWludDhBcnJheSxcbiAgcGF5bG9hZEJ5dGVzOiBCdWZmZXIsXG4gIGNzbFNpZ25hdHVyZUJ5dGVzOiBVaW50OEFycmF5LFxuICBwYXltZW50UHViS2V5OiBDU0wuUHVibGljS2V5XG4pOiBDU0xDb3NlT2JqZWN0c091dHB1dCB7XG4gIC8vIENPU0VfU2lnbjEgQ29uc3RydWN0aW9uXG4gIGNvbnN0IHVucHJvdGVjdGVkSGVhZGVyc01hcCA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XG4gIHVucHJvdGVjdGVkSGVhZGVyc01hcC5zZXQoJ2hhc2hlZCcsIGZhbHNlKTtcbiAgY29uc3QgY29zZVNpZ24xQXJyYXk6IGFueVtdID0gW1xuICAgIEJ1ZmZlci5mcm9tKHByb3RlY3RlZEhlYWRlckNib3JCeXRlcyksXG4gICAgdW5wcm90ZWN0ZWRIZWFkZXJzTWFwLFxuICAgIEJ1ZmZlci5mcm9tKHBheWxvYWRCeXRlcyksXG4gICAgQnVmZmVyLmZyb20oY3NsU2lnbmF0dXJlQnl0ZXMpLFxuICBdO1xuICBjb25zdCBmaW5hbENvc2VTaWduMUNib3JCeXRlcyA9IEVuY29kZXIuZW5jb2RlKGNvc2VTaWduMUFycmF5KTtcbiAgLyogLy8gZGlyZWN0bHkgZW5jb2RpbmcgdGhlIGNvc2VTaWduMUFycmF5IHdpdGhvdXQgcHJlcGVuZGluZyB0aGUgMHhEMiB0YWcuXG4gICAqIGNvbnN0IGNvc2VTaWduMVBheWxvYWRCeXRlcyA9IEVuY29kZXIuZW5jb2RlKGNvc2VTaWduMUFycmF5KTtcbiAgICogY29uc3QgY29zZVNpZ24xVGFnID0gQnVmZmVyLmZyb20oWzB4RDJdKTsgLy8gVGFnIDE4IGZvciBDT1NFX1NpZ24xXG4gICAqIGNvbnN0IGZpbmFsQ29zZVNpZ24xQ2JvckJ5dGVzID0gQnVmZmVyLmNvbmNhdChbY29zZVNpZ24xVGFnLCBjb3NlU2lnbjFQYXlsb2FkQnl0ZXNdKTtcbiAgICovXG4gIGNvbnN0IG1hbnVhbENvc2VTaWduMUhleCA9IGJ5dGVzVG9IZXgoZmluYWxDb3NlU2lnbjFDYm9yQnl0ZXMpO1xuXG4gIC8vIENPU0VfS2V5IENvbnN0cnVjdGlvblxuICBjb25zdCBjb3NlS2V5TWFwID0gbmV3IE1hcDxudW1iZXIsIGFueT4oKTtcbiAgY29zZUtleU1hcC5zZXQoMSwgMSk7IC8vIGt0eTogT0tQIChPY3RldCBLZXkgUGFpcilcbiAgY29zZUtleU1hcC5zZXQoMywgLTgpOyAvLyBhbGc6IEVkRFNBXG4gIGNvc2VLZXlNYXAuc2V0KC0xLCA2KTsgLy8gY3J2OiBFZDI1NTE5XG4gIGNvc2VLZXlNYXAuc2V0KC0yLCBCdWZmZXIuZnJvbShwYXltZW50UHViS2V5LmFzX2J5dGVzKCkpKTsgLy8geDogcHVibGljX2tleV9ieXRlcyAoRWQyNTUxOSBwdWJsaWMga2V5KVxuICBjb25zdCBmaW5hbENvc2VLZXlDYm9yQnl0ZXMgPSBFbmNvZGVyLmVuY29kZShjb3NlS2V5TWFwKTtcbiAgY29uc3QgbWFudWFsQ29zZUtleUhleCA9IGJ5dGVzVG9IZXgoZmluYWxDb3NlS2V5Q2JvckJ5dGVzKTtcblxuICByZXR1cm4geyBtYW51YWxDb3NlU2lnbjFIZXgsIG1hbnVhbENvc2VLZXlIZXggfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvc2VPYmplY3RzT3V0cHV0VG9CdWZmZXIob3V0cHV0OiBDU0xDb3NlT2JqZWN0c091dHB1dCk6IEJ1ZmZlciB7XG4gIHJldHVybiBCdWZmZXIuZnJvbShFbmNvZGVyLmVuY29kZShvdXRwdXQpKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGJ1ZmZlclRvQ29zZU9iamVjdHNPdXRwdXQoYnVmZmVyOiBCdWZmZXIpOiBQcm9taXNlPENTTENvc2VPYmplY3RzT3V0cHV0PiB7XG4gIHJldHVybiBhd2FpdCBEZWNvZGVyLmRlY29kZUZpcnN0KGJ1ZmZlcik7XG59XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/messages/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,QAAQ,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./messageBuilderFactory"), exports);
|
|
18
|
+
__exportStar(require("./cip8"), exports);
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL21lc3NhZ2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwREFBd0M7QUFDeEMseUNBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlQnVpbGRlckZhY3RvcnknO1xuZXhwb3J0ICogZnJvbSAnLi9jaXA4JztcbiJdfQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
2
|
+
import { BaseMessageBuilderFactory, IMessageBuilder, MessageStandardType } from '@bitgo-beta/sdk-core';
|
|
3
|
+
export declare class MessageBuilderFactory extends BaseMessageBuilderFactory {
|
|
4
|
+
constructor(coinConfig: Readonly<CoinConfig>);
|
|
5
|
+
getMessageBuilder(type: MessageStandardType): IMessageBuilder;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=messageBuilderFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messageBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../src/lib/messages/messageBuilderFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEvG,qBAAa,qBAAsB,SAAQ,yBAAyB;gBACtD,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAIrC,iBAAiB,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe;CAQrE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MessageBuilderFactory = void 0;
|
|
4
|
+
const cip8_1 = require("./cip8");
|
|
5
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
6
|
+
class MessageBuilderFactory extends sdk_core_1.BaseMessageBuilderFactory {
|
|
7
|
+
constructor(coinConfig) {
|
|
8
|
+
super(coinConfig);
|
|
9
|
+
}
|
|
10
|
+
getMessageBuilder(type) {
|
|
11
|
+
switch (type) {
|
|
12
|
+
case sdk_core_1.MessageStandardType.CIP8:
|
|
13
|
+
return new cip8_1.Cip8MessageBuilder(this.coinConfig);
|
|
14
|
+
default:
|
|
15
|
+
throw new Error(`Invalid message standard ${type}`);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.MessageBuilderFactory = MessageBuilderFactory;
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZUJ1aWxkZXJGYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tZXNzYWdlcy9tZXNzYWdlQnVpbGRlckZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUNBQTRDO0FBRTVDLG1EQUF1RztBQUV2RyxNQUFhLHFCQUFzQixTQUFRLG9DQUF5QjtJQUNsRSxZQUFZLFVBQWdDO1FBQzFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRU0saUJBQWlCLENBQUMsSUFBeUI7UUFDaEQsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUNiLEtBQUssOEJBQW1CLENBQUMsSUFBSTtnQkFDM0IsT0FBTyxJQUFJLHlCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNqRDtnQkFDRSxNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFiRCxzREFhQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENpcDhNZXNzYWdlQnVpbGRlciB9IGZyb20gJy4vY2lwOCc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBCYXNlTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LCBJTWVzc2FnZUJ1aWxkZXIsIE1lc3NhZ2VTdGFuZGFyZFR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBNZXNzYWdlQnVpbGRlckZhY3RvcnkgZXh0ZW5kcyBCYXNlTWVzc2FnZUJ1aWxkZXJGYWN0b3J5IHtcbiAgY29uc3RydWN0b3IoY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihjb2luQ29uZmlnKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNZXNzYWdlQnVpbGRlcih0eXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgTWVzc2FnZVN0YW5kYXJkVHlwZS5DSVA4OlxuICAgICAgICByZXR1cm4gbmV3IENpcDhNZXNzYWdlQnVpbGRlcih0aGlzLmNvaW5Db25maWcpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG1lc3NhZ2Ugc3RhbmRhcmQgJHt0eXBlfWApO1xuICAgIH1cbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo-beta/sdk-coin-ada",
|
|
3
|
-
"version": "2.3.14-beta.
|
|
3
|
+
"version": "2.3.14-beta.982",
|
|
4
4
|
"description": "BitGo SDK coin library for Ada",
|
|
5
5
|
"main": "./dist/src/index.js",
|
|
6
6
|
"types": "./dist/src/index.d.ts",
|
|
@@ -40,9 +40,9 @@
|
|
|
40
40
|
]
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@bitgo-beta/sdk-core": "8.2.1-beta.
|
|
44
|
-
"@bitgo-beta/sdk-lib-mpc": "8.2.0-beta.
|
|
45
|
-
"@bitgo-beta/statics": "15.1.1-beta.
|
|
43
|
+
"@bitgo-beta/sdk-core": "8.2.1-beta.984",
|
|
44
|
+
"@bitgo-beta/sdk-lib-mpc": "8.2.0-beta.976",
|
|
45
|
+
"@bitgo-beta/statics": "15.1.1-beta.987",
|
|
46
46
|
"@emurgo/cardano-serialization-lib-browser": "^12.0.1",
|
|
47
47
|
"@emurgo/cardano-serialization-lib-nodejs": "^12.0.1",
|
|
48
48
|
"bech32": "^2.0.0",
|
|
@@ -54,8 +54,8 @@
|
|
|
54
54
|
"tweetnacl": "^1.0.3"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@bitgo-beta/sdk-api": "1.10.1-beta.
|
|
57
|
+
"@bitgo-beta/sdk-api": "1.10.1-beta.983",
|
|
58
58
|
"@bitgo-beta/sdk-test": "^8.0.92"
|
|
59
59
|
},
|
|
60
|
-
"gitHead": "
|
|
60
|
+
"gitHead": "e67e9a7bd105777316e86fe37f96041f483bef86"
|
|
61
61
|
}
|