@bitgo-beta/sdk-coin-ada 2.3.14-beta.980 → 2.3.14-beta.981

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.
@@ -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"}
@@ -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
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUFpQztBQWF4QixzQkFBSztBQVhkLHFDQUFvQztBQUEzQixrR0FBQSxPQUFPLE9BQUE7QUFDaEIsNkNBQTRDO0FBQW5DLDBHQUFBLFdBQVcsT0FBQTtBQUNwQiwyREFBMEQ7QUFBakQsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4Qix5RUFBd0U7QUFBL0Qsc0lBQUEseUJBQXlCLE9BQUE7QUFDbEMsbUVBQWtFO0FBQXpELGdJQUFBLHNCQUFzQixPQUFBO0FBQy9CLDJFQUEwRTtBQUFqRSx3SUFBQSwwQkFBMEIsT0FBQTtBQUNuQyx1RUFBc0U7QUFBN0Qsb0lBQUEsd0JBQXdCLE9BQUE7QUFDakMsbUVBQWtFO0FBQXpELGdJQUFBLHNCQUFzQixPQUFBO0FBQy9CLCtEQUE4RDtBQUFyRCw0SEFBQSxvQkFBb0IsT0FBQTtBQUM3QixpRUFBZ0U7QUFBdkQsOEhBQUEscUJBQXFCLE9BQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBVdGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5leHBvcnQgeyBTdGFraW5nQWN0aXZhdGVCdWlsZGVyIH0gZnJvbSAnLi9zdGFraW5nQWN0aXZhdGVCdWlsZGVyJztcbmV4cG9ydCB7IFN0YWtpbmdDbGFpbVJld2FyZHNCdWlsZGVyIH0gZnJvbSAnLi9zdGFraW5nQ2xhaW1SZXdhcmRzQnVpbGRlcic7XG5leHBvcnQgeyBTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIgfSBmcm9tICcuL3N0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcic7XG5leHBvcnQgeyBTdGFraW5nV2l0aGRyYXdCdWlsZGVyIH0gZnJvbSAnLi9zdGFraW5nV2l0aGRyYXdCdWlsZGVyJztcbmV4cG9ydCB7IFN0YWtpbmdQbGVkZ2VCdWlsZGVyIH0gZnJvbSAnLi9zdGFraW5nUGxlZGdlQnVpbGRlcic7XG5leHBvcnQgeyBWb3RlRGVsZWdhdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3ZvdGVEZWxlZ2F0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBVdGlscyB9O1xuIl19
64
+ __exportStar(require("./messages"), exports);
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUFpQztBQWF4QixzQkFBSztBQVhkLHFDQUFvQztBQUEzQixrR0FBQSxPQUFPLE9BQUE7QUFDaEIsNkNBQTRDO0FBQW5DLDBHQUFBLFdBQVcsT0FBQTtBQUNwQiwyREFBMEQ7QUFBakQsd0hBQUEsa0JBQWtCLE9BQUE7QUFDM0IscURBQW9EO0FBQTNDLGtIQUFBLGVBQWUsT0FBQTtBQUN4Qix5RUFBd0U7QUFBL0Qsc0lBQUEseUJBQXlCLE9BQUE7QUFDbEMsbUVBQWtFO0FBQXpELGdJQUFBLHNCQUFzQixPQUFBO0FBQy9CLDJFQUEwRTtBQUFqRSx3SUFBQSwwQkFBMEIsT0FBQTtBQUNuQyx1RUFBc0U7QUFBN0Qsb0lBQUEsd0JBQXdCLE9BQUE7QUFDakMsbUVBQWtFO0FBQXpELGdJQUFBLHNCQUFzQixPQUFBO0FBQy9CLCtEQUE4RDtBQUFyRCw0SEFBQSxvQkFBb0IsT0FBQTtBQUM3QixpRUFBZ0U7QUFBdkQsOEhBQUEscUJBQXFCLE9BQUE7QUFFOUIsNkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgVXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCB7IEtleVBhaXIgfSBmcm9tICcuL2tleVBhaXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnknO1xuZXhwb3J0IHsgU3Rha2luZ0FjdGl2YXRlQnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ0FjdGl2YXRlQnVpbGRlcic7XG5leHBvcnQgeyBTdGFraW5nQ2xhaW1SZXdhcmRzQnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ0NsYWltUmV3YXJkc0J1aWxkZXInO1xuZXhwb3J0IHsgU3Rha2luZ0RlYWN0aXZhdGVCdWlsZGVyIH0gZnJvbSAnLi9zdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXInO1xuZXhwb3J0IHsgU3Rha2luZ1dpdGhkcmF3QnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ1dpdGhkcmF3QnVpbGRlcic7XG5leHBvcnQgeyBTdGFraW5nUGxlZGdlQnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ1BsZWRnZUJ1aWxkZXInO1xuZXhwb3J0IHsgVm90ZURlbGVnYXRpb25CdWlsZGVyIH0gZnJvbSAnLi92b3RlRGVsZWdhdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVXRpbHMgfTtcbmV4cG9ydCAqIGZyb20gJy4vbWVzc2FnZXMnO1xuIl19
@@ -0,0 +1,23 @@
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
+ * Validates required fields and returns common setup objects
9
+ * @private
10
+ */
11
+ private validateAndGetCommonSetup;
12
+ /**
13
+ * Returns the hash of the CIP-8 prefixed message
14
+ */
15
+ getSignablePayload(): Promise<string | Buffer>;
16
+ /**
17
+ * Builds the signable payload for a CIP8 message
18
+ * @returns The signable payload as a Buffer
19
+ */
20
+ buildSignablePayload(): string | Buffer;
21
+ getBroadcastableSignatures(): Signature[];
22
+ }
23
+ //# 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;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAwBjC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAOpD;;;OAGG;IACH,oBAAoB,IAAI,MAAM,GAAG,MAAM;IAMvC,0BAA0B,IAAI,SAAS,EAAE;CA2B1C"}
@@ -0,0 +1,114 @@
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
+ * Validates required fields and returns common setup objects
52
+ * @private
53
+ */
54
+ validateAndGetCommonSetup() {
55
+ if (!this.payload) {
56
+ throw new Error('Payload is required to build a CIP8 message');
57
+ }
58
+ if (!this.signers || this.signers.length === 0) {
59
+ throw new Error('A signer address is required to build a CIP8 message');
60
+ }
61
+ let cslAddress;
62
+ try {
63
+ cslAddress = CardanoSL.Address.from_bech32(this.signers[0]);
64
+ }
65
+ catch (error) {
66
+ // Convert string errors to proper Error objects
67
+ if (typeof error === 'string') {
68
+ throw new Error(`Invalid signer address: ${error}`);
69
+ }
70
+ throw error;
71
+ }
72
+ const addressCborBytes = cslAddress.to_bytes();
73
+ return { addressCborBytes };
74
+ }
75
+ /**
76
+ * Returns the hash of the CIP-8 prefixed message
77
+ */
78
+ async getSignablePayload() {
79
+ if (!this.signablePayload) {
80
+ this.signablePayload = this.buildSignablePayload();
81
+ }
82
+ return this.signablePayload;
83
+ }
84
+ /**
85
+ * Builds the signable payload for a CIP8 message
86
+ * @returns The signable payload as a Buffer
87
+ */
88
+ buildSignablePayload() {
89
+ const { addressCborBytes } = this.validateAndGetCommonSetup();
90
+ const { sigStructureCborBytes } = (0, utils_1.createCSLSigStructure)(addressCborBytes, this.payload);
91
+ return Buffer.from(sigStructureCborBytes);
92
+ }
93
+ getBroadcastableSignatures() {
94
+ if (!this.signatures.length) {
95
+ return [];
96
+ }
97
+ const signature = this.signatures[0].signature;
98
+ const publicKeyHex = this.signatures[0].publicKey.pub;
99
+ const { addressCborBytes } = this.validateAndGetCommonSetup();
100
+ const { protectedHeaderCborBytes, payloadBytes } = (0, utils_1.createCSLSigStructure)(addressCborBytes, this.payload);
101
+ const coseObjectsOutput = (0, utils_1.constructCSLCoseObjects)(protectedHeaderCborBytes, payloadBytes, signature, CardanoSL.PublicKey.from_bytes(Buffer.from(publicKeyHex, 'hex')));
102
+ const coseObjectsBuffer = (0, utils_1.coseObjectsOutputToBuffer)(coseObjectsOutput);
103
+ return [
104
+ {
105
+ signature: coseObjectsBuffer,
106
+ publicKey: {
107
+ pub: publicKeyHex,
108
+ },
109
+ },
110
+ ];
111
+ }
112
+ }
113
+ exports.Cip8Message = Cip8Message;
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2lwOE1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21lc3NhZ2VzL2NpcDgvY2lwOE1lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsbURBQW1HO0FBQ25HLG9GQUFzRTtBQUN0RSxtQ0FBb0c7QUFFcEc7O0dBRUc7QUFDSCxNQUFhLFdBQVksU0FBUSxzQkFBVztJQUMxQyxZQUFZLE9BQXVCO1FBQ2pDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSw4QkFBbUIsQ0FBQyxJQUFJO1NBQy9CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSyx5QkFBeUI7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7UUFDakUsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQy9DLE1BQU0sSUFBSSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztRQUMxRSxDQUFDO1FBRUQsSUFBSSxVQUE2QixDQUFDO1FBQ2xDLElBQUksQ0FBQztZQUNILFVBQVUsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixnREFBZ0Q7WUFDaEQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN0RCxDQUFDO1lBQ0QsTUFBTSxLQUFLLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLGtCQUFrQjtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDckQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsb0JBQW9CO1FBQ2xCLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1FBQzlELE1BQU0sRUFBRSxxQkFBcUIsRUFBRSxHQUFHLElBQUEsNkJBQXFCLEVBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hGLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCwwQkFBMEI7UUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDNUIsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDL0MsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDO1FBRXRELE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1FBQzlELE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxZQUFZLEVBQUUsR0FBRyxJQUFBLDZCQUFxQixFQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV6RyxNQUFNLGlCQUFpQixHQUFHLElBQUEsK0JBQXVCLEVBQy9DLHdCQUF3QixFQUN4QixZQUFZLEVBQ1osU0FBUyxFQUNULFNBQVMsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQ2pFLENBQUM7UUFDRixNQUFNLGlCQUFpQixHQUFHLElBQUEsaUNBQXlCLEVBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN2RSxPQUFPO1lBQ0w7Z0JBQ0UsU0FBUyxFQUFFLGlCQUFpQjtnQkFDNUIsU0FBUyxFQUFFO29CQUNULEdBQUcsRUFBRSxZQUFZO2lCQUNsQjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQW5GRCxrQ0FtRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlTWVzc2FnZSwgTWVzc2FnZU9wdGlvbnMsIE1lc3NhZ2VTdGFuZGFyZFR5cGUsIFNpZ25hdHVyZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCAqIGFzIENhcmRhbm9TTCBmcm9tICdAZW11cmdvL2NhcmRhbm8tc2VyaWFsaXphdGlvbi1saWItbm9kZWpzJztcbmltcG9ydCB7IGNvbnN0cnVjdENTTENvc2VPYmplY3RzLCBjb3NlT2JqZWN0c091dHB1dFRvQnVmZmVyLCBjcmVhdGVDU0xTaWdTdHJ1Y3R1cmUgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBJbXBsZW1lbnRhdGlvbiBvZiBNZXNzYWdlIGZvciBDSVA4IHN0YW5kYXJkXG4gKi9cbmV4cG9ydCBjbGFzcyBDaXA4TWVzc2FnZSBleHRlbmRzIEJhc2VNZXNzYWdlIHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogTWVzc2FnZU9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZS5DSVA4LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyByZXF1aXJlZCBmaWVsZHMgYW5kIHJldHVybnMgY29tbW9uIHNldHVwIG9iamVjdHNcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgdmFsaWRhdGVBbmRHZXRDb21tb25TZXR1cCgpIHtcbiAgICBpZiAoIXRoaXMucGF5bG9hZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQYXlsb2FkIGlzIHJlcXVpcmVkIHRvIGJ1aWxkIGEgQ0lQOCBtZXNzYWdlJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5zaWduZXJzIHx8IHRoaXMuc2lnbmVycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQSBzaWduZXIgYWRkcmVzcyBpcyByZXF1aXJlZCB0byBidWlsZCBhIENJUDggbWVzc2FnZScpO1xuICAgIH1cblxuICAgIGxldCBjc2xBZGRyZXNzOiBDYXJkYW5vU0wuQWRkcmVzcztcbiAgICB0cnkge1xuICAgICAgY3NsQWRkcmVzcyA9IENhcmRhbm9TTC5BZGRyZXNzLmZyb21fYmVjaDMyKHRoaXMuc2lnbmVyc1swXSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIENvbnZlcnQgc3RyaW5nIGVycm9ycyB0byBwcm9wZXIgRXJyb3Igb2JqZWN0c1xuICAgICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHNpZ25lciBhZGRyZXNzOiAke2Vycm9yfWApO1xuICAgICAgfVxuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuXG4gICAgY29uc3QgYWRkcmVzc0Nib3JCeXRlcyA9IGNzbEFkZHJlc3MudG9fYnl0ZXMoKTtcblxuICAgIHJldHVybiB7IGFkZHJlc3NDYm9yQnl0ZXMgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBoYXNoIG9mIHRoZSBDSVAtOCBwcmVmaXhlZCBtZXNzYWdlXG4gICAqL1xuICBhc3luYyBnZXRTaWduYWJsZVBheWxvYWQoKTogUHJvbWlzZTxzdHJpbmcgfCBCdWZmZXI+IHtcbiAgICBpZiAoIXRoaXMuc2lnbmFibGVQYXlsb2FkKSB7XG4gICAgICB0aGlzLnNpZ25hYmxlUGF5bG9hZCA9IHRoaXMuYnVpbGRTaWduYWJsZVBheWxvYWQoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc2lnbmFibGVQYXlsb2FkO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkcyB0aGUgc2lnbmFibGUgcGF5bG9hZCBmb3IgYSBDSVA4IG1lc3NhZ2VcbiAgICogQHJldHVybnMgVGhlIHNpZ25hYmxlIHBheWxvYWQgYXMgYSBCdWZmZXJcbiAgICovXG4gIGJ1aWxkU2lnbmFibGVQYXlsb2FkKCk6IHN0cmluZyB8IEJ1ZmZlciB7XG4gICAgY29uc3QgeyBhZGRyZXNzQ2JvckJ5dGVzIH0gPSB0aGlzLnZhbGlkYXRlQW5kR2V0Q29tbW9uU2V0dXAoKTtcbiAgICBjb25zdCB7IHNpZ1N0cnVjdHVyZUNib3JCeXRlcyB9ID0gY3JlYXRlQ1NMU2lnU3RydWN0dXJlKGFkZHJlc3NDYm9yQnl0ZXMsIHRoaXMucGF5bG9hZCk7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKHNpZ1N0cnVjdHVyZUNib3JCeXRlcyk7XG4gIH1cblxuICBnZXRCcm9hZGNhc3RhYmxlU2lnbmF0dXJlcygpOiBTaWduYXR1cmVbXSB7XG4gICAgaWYgKCF0aGlzLnNpZ25hdHVyZXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgY29uc3Qgc2lnbmF0dXJlID0gdGhpcy5zaWduYXR1cmVzWzBdLnNpZ25hdHVyZTtcbiAgICBjb25zdCBwdWJsaWNLZXlIZXggPSB0aGlzLnNpZ25hdHVyZXNbMF0ucHVibGljS2V5LnB1YjtcblxuICAgIGNvbnN0IHsgYWRkcmVzc0Nib3JCeXRlcyB9ID0gdGhpcy52YWxpZGF0ZUFuZEdldENvbW1vblNldHVwKCk7XG4gICAgY29uc3QgeyBwcm90ZWN0ZWRIZWFkZXJDYm9yQnl0ZXMsIHBheWxvYWRCeXRlcyB9ID0gY3JlYXRlQ1NMU2lnU3RydWN0dXJlKGFkZHJlc3NDYm9yQnl0ZXMsIHRoaXMucGF5bG9hZCk7XG5cbiAgICBjb25zdCBjb3NlT2JqZWN0c091dHB1dCA9IGNvbnN0cnVjdENTTENvc2VPYmplY3RzKFxuICAgICAgcHJvdGVjdGVkSGVhZGVyQ2JvckJ5dGVzLFxuICAgICAgcGF5bG9hZEJ5dGVzLFxuICAgICAgc2lnbmF0dXJlLFxuICAgICAgQ2FyZGFub1NMLlB1YmxpY0tleS5mcm9tX2J5dGVzKEJ1ZmZlci5mcm9tKHB1YmxpY0tleUhleCwgJ2hleCcpKVxuICAgICk7XG4gICAgY29uc3QgY29zZU9iamVjdHNCdWZmZXIgPSBjb3NlT2JqZWN0c091dHB1dFRvQnVmZmVyKGNvc2VPYmplY3RzT3V0cHV0KTtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICBzaWduYXR1cmU6IGNvc2VPYmplY3RzQnVmZmVyLFxuICAgICAgICBwdWJsaWNLZXk6IHtcbiAgICAgICAgICBwdWI6IHB1YmxpY0tleUhleCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxufVxuIl19
@@ -0,0 +1,25 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
2
+ import { BaseMessageBuilder, BroadcastableMessage, IMessage } 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
+ * Build a signable message using the CIP-8 standard
14
+ * with previously set input and metadata
15
+ * @returns A signable message
16
+ */
17
+ build(): Promise<IMessage>;
18
+ /**
19
+ * Parse a broadcastable message back into a message
20
+ * @param broadcastMessage The broadcastable message to parse
21
+ * @returns The parsed message
22
+ */
23
+ fromBroadcastFormat(broadcastMessage: BroadcastableMessage): Promise<IMessage>;
24
+ }
25
+ //# 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,EACL,kBAAkB,EAClB,oBAAoB,EAEpB,QAAQ,EAET,MAAM,sBAAsB,CAAC;AAE9B;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,kBAAkB;IACxD;;;OAGG;gBACgB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAIpD;;;;OAIG;IACU,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;IAuBvC;;;;OAIG;IACU,mBAAmB,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAgB5F"}
@@ -0,0 +1,68 @@
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
+ * Build a signable message using the CIP-8 standard
19
+ * with previously set input and metadata
20
+ * @returns A signable message
21
+ */
22
+ async build() {
23
+ try {
24
+ if (!this.payload) {
25
+ throw new Error('Message payload must be set before building the message');
26
+ }
27
+ return new cip8Message_1.Cip8Message({
28
+ coinConfig: this.coinConfig,
29
+ payload: this.payload,
30
+ signatures: this.signatures,
31
+ signers: this.signers,
32
+ metadata: {
33
+ ...this.metadata,
34
+ encoding: 'utf8',
35
+ },
36
+ });
37
+ }
38
+ catch (err) {
39
+ if (err instanceof Error) {
40
+ throw err;
41
+ }
42
+ throw new Error('Failed to build CIP-8 message');
43
+ }
44
+ }
45
+ /**
46
+ * Parse a broadcastable message back into a message
47
+ * @param broadcastMessage The broadcastable message to parse
48
+ * @returns The parsed message
49
+ */
50
+ async fromBroadcastFormat(broadcastMessage) {
51
+ const { type, payload, serializedSignatures, signers, metadata } = broadcastMessage;
52
+ if (type !== sdk_core_1.MessageStandardType.CIP8) {
53
+ throw new Error(`Invalid message type, expected ${sdk_core_1.MessageStandardType.CIP8}`);
54
+ }
55
+ return new cip8Message_1.Cip8Message({
56
+ coinConfig: this.coinConfig,
57
+ payload,
58
+ signatures: (0, sdk_core_1.deserializeSignatures)(serializedSignatures),
59
+ signers,
60
+ metadata: {
61
+ ...metadata,
62
+ encoding: 'utf8',
63
+ },
64
+ });
65
+ }
66
+ }
67
+ exports.Cip8MessageBuilder = Cip8MessageBuilder;
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2lwOE1lc3NhZ2VCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tZXNzYWdlcy9jaXA4L2NpcDhNZXNzYWdlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQ0FBNEM7QUFFNUMsbURBTThCO0FBRTlCOztHQUVHO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSw2QkFBa0I7SUFDeEQ7OztPQUdHO0lBQ0gsWUFBbUIsV0FBaUM7UUFDbEQsS0FBSyxDQUFDLFdBQVcsRUFBRSw4QkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLElBQUksQ0FBQztZQUNILElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2xCLE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztZQUM3RSxDQUFDO1lBQ0QsT0FBTyxJQUFJLHlCQUFXLENBQUM7Z0JBQ3JCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtnQkFDM0IsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO2dCQUNyQixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztnQkFDckIsUUFBUSxFQUFFO29CQUNSLEdBQUcsSUFBSSxDQUFDLFFBQVE7b0JBQ2hCLFFBQVEsRUFBRSxNQUFNO2lCQUNqQjthQUNGLENBQUMsQ0FBQztRQUNMLENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsSUFBSSxHQUFHLFlBQVksS0FBSyxFQUFFLENBQUM7Z0JBQ3pCLE1BQU0sR0FBRyxDQUFDO1lBQ1osQ0FBQztZQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsbUJBQW1CLENBQUMsZ0JBQXNDO1FBQ3JFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxnQkFBZ0IsQ0FBQztRQUNwRixJQUFJLElBQUksS0FBSyw4QkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyw4QkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDRCxPQUFPLElBQUkseUJBQVcsQ0FBQztZQUNyQixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IsT0FBTztZQUNQLFVBQVUsRUFBRSxJQUFBLGdDQUFxQixFQUFDLG9CQUFvQixDQUFDO1lBQ3ZELE9BQU87WUFDUCxRQUFRLEVBQUU7Z0JBQ1IsR0FBRyxRQUFRO2dCQUNYLFFBQVEsRUFBRSxNQUFNO2FBQ2pCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBMURELGdEQTBEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENpcDhNZXNzYWdlIH0gZnJvbSAnLi9jaXA4TWVzc2FnZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQge1xuICBCYXNlTWVzc2FnZUJ1aWxkZXIsXG4gIEJyb2FkY2FzdGFibGVNZXNzYWdlLFxuICBkZXNlcmlhbGl6ZVNpZ25hdHVyZXMsXG4gIElNZXNzYWdlLFxuICBNZXNzYWdlU3RhbmRhcmRUeXBlLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbi8qKlxuICogQnVpbGRlciBmb3IgQ0lQLTggbWVzc2FnZXNcbiAqL1xuZXhwb3J0IGNsYXNzIENpcDhNZXNzYWdlQnVpbGRlciBleHRlbmRzIEJhc2VNZXNzYWdlQnVpbGRlciB7XG4gIC8qKlxuICAgKiBCYXNlIGNvbnN0cnVjdG9yLlxuICAgKiBAcGFyYW0gX2NvaW5Db25maWcgQmFzZUNvaW4gZnJvbSBzdGF0aWNzIGxpYnJhcnlcbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZywgTWVzc2FnZVN0YW5kYXJkVHlwZS5DSVA4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCBhIHNpZ25hYmxlIG1lc3NhZ2UgdXNpbmcgdGhlIENJUC04IHN0YW5kYXJkXG4gICAqIHdpdGggcHJldmlvdXNseSBzZXQgaW5wdXQgYW5kIG1ldGFkYXRhXG4gICAqIEByZXR1cm5zIEEgc2lnbmFibGUgbWVzc2FnZVxuICAgKi9cbiAgcHVibGljIGFzeW5jIGJ1aWxkKCk6IFByb21pc2U8SU1lc3NhZ2U+IHtcbiAgICB0cnkge1xuICAgICAgaWYgKCF0aGlzLnBheWxvYWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdNZXNzYWdlIHBheWxvYWQgbXVzdCBiZSBzZXQgYmVmb3JlIGJ1aWxkaW5nIHRoZSBtZXNzYWdlJyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmV3IENpcDhNZXNzYWdlKHtcbiAgICAgICAgY29pbkNvbmZpZzogdGhpcy5jb2luQ29uZmlnLFxuICAgICAgICBwYXlsb2FkOiB0aGlzLnBheWxvYWQsXG4gICAgICAgIHNpZ25hdHVyZXM6IHRoaXMuc2lnbmF0dXJlcyxcbiAgICAgICAgc2lnbmVyczogdGhpcy5zaWduZXJzLFxuICAgICAgICBtZXRhZGF0YToge1xuICAgICAgICAgIC4uLnRoaXMubWV0YWRhdGEsXG4gICAgICAgICAgZW5jb2Rpbmc6ICd1dGY4JyxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgIHRocm93IGVycjtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGJ1aWxkIENJUC04IG1lc3NhZ2UnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGFyc2UgYSBicm9hZGNhc3RhYmxlIG1lc3NhZ2UgYmFjayBpbnRvIGEgbWVzc2FnZVxuICAgKiBAcGFyYW0gYnJvYWRjYXN0TWVzc2FnZSBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHRvIHBhcnNlXG4gICAqIEByZXR1cm5zIFRoZSBwYXJzZWQgbWVzc2FnZVxuICAgKi9cbiAgcHVibGljIGFzeW5jIGZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZTogQnJvYWRjYXN0YWJsZU1lc3NhZ2UpOiBQcm9taXNlPElNZXNzYWdlPiB7XG4gICAgY29uc3QgeyB0eXBlLCBwYXlsb2FkLCBzZXJpYWxpemVkU2lnbmF0dXJlcywgc2lnbmVycywgbWV0YWRhdGEgfSA9IGJyb2FkY2FzdE1lc3NhZ2U7XG4gICAgaWYgKHR5cGUgIT09IE1lc3NhZ2VTdGFuZGFyZFR5cGUuQ0lQOCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG1lc3NhZ2UgdHlwZSwgZXhwZWN0ZWQgJHtNZXNzYWdlU3RhbmRhcmRUeXBlLkNJUDh9YCk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgQ2lwOE1lc3NhZ2Uoe1xuICAgICAgY29pbkNvbmZpZzogdGhpcy5jb2luQ29uZmlnLFxuICAgICAgcGF5bG9hZCxcbiAgICAgIHNpZ25hdHVyZXM6IGRlc2VyaWFsaXplU2lnbmF0dXJlcyhzZXJpYWxpemVkU2lnbmF0dXJlcyksXG4gICAgICBzaWduZXJzLFxuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgLi4ubWV0YWRhdGEsXG4gICAgICAgIGVuY29kaW5nOiAndXRmOCcsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './cip8Message';
2
+ export * from './cip8MessageBuilder';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -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,3 @@
1
+ export * from './messageBuilderFactory';
2
+ export * from './cip8';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -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.980",
3
+ "version": "2.3.14-beta.981",
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.982",
44
- "@bitgo-beta/sdk-lib-mpc": "8.2.0-beta.974",
45
- "@bitgo-beta/statics": "15.1.1-beta.985",
43
+ "@bitgo-beta/sdk-core": "8.2.1-beta.983",
44
+ "@bitgo-beta/sdk-lib-mpc": "8.2.0-beta.975",
45
+ "@bitgo-beta/statics": "15.1.1-beta.986",
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.981",
57
+ "@bitgo-beta/sdk-api": "1.10.1-beta.982",
58
58
  "@bitgo-beta/sdk-test": "^8.0.92"
59
59
  },
60
- "gitHead": "6559d416d0b710259bf70d563e2dd112323d049e"
60
+ "gitHead": "ea7dabfcaa2c04708a98eda14d56d4481a8eaf6e"
61
61
  }